diff --git a/xinnengyuan/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java b/xinnengyuan/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java index e5331e41..d9ca5105 100644 --- a/xinnengyuan/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java +++ b/xinnengyuan/ruoyi-common/ruoyi-common-sse/src/main/java/org/dromara/common/sse/controller/SseController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaIgnore; import cn.dev33.satoken.stp.StpUtil; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; +import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.sse.core.SseEmitterManager; import org.dromara.common.sse.dto.SseMessageDto; diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/design/service/impl/BusBillofquantitiesVersionsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/design/service/impl/BusBillofquantitiesVersionsServiceImpl.java index 3e66375f..c04043af 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/design/service/impl/BusBillofquantitiesVersionsServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/design/service/impl/BusBillofquantitiesVersionsServiceImpl.java @@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.bidding.domain.BusBiddingLimitList; +import org.dromara.bidding.service.IBusBiddingLimitListService; import org.dromara.cailiaoshebei.domain.BusTotalsupplyplan; import org.dromara.cailiaoshebei.domain.BusTotalsupplyplanAudit; import org.dromara.cailiaoshebei.service.IBusTotalsupplyplanAuditService; @@ -37,6 +39,8 @@ import org.dromara.design.service.IBusBillofquantitiesService; import org.dromara.design.service.IBusBillofquantitiesVersionsService; import org.dromara.system.domain.vo.SysOssUploadVo; import org.dromara.system.service.ISysOssService; +import org.dromara.tender.domain.BusBillofquantitiesLimitList; +import org.dromara.tender.service.IBusBillofquantitiesLimitListService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Service; @@ -64,6 +68,8 @@ public class BusBillofquantitiesVersionsServiceImpl extends ServiceImpl eq = new LambdaQueryWrapper() + .eq(BusBillofquantitiesVersions::getVersions, id); + BusBillofquantitiesVersions busBillofquantitiesVersions = new BusBillofquantitiesVersions(); + busBillofquantitiesVersions.setStatus(processEvent.getStatus()); + boolean update = this.update(busBillofquantitiesVersions, eq); + //往成本部的投标清单表中新增数据 + if (update && BusinessStatusEnum.FINISH.getStatus().equals(processEvent.getStatus())) { + //根据版本号查询数据 + BusBillofquantitiesVersions versions = this.getOne(eq); + //1、根据查询数据 + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BusBillofquantities::getVersions, id); + List list = busBillofquantitiesService.list(lqw); + List busTotalsupplyplans = BeanUtil.copyToList(list, BusBiddingLimitList.class); + for (BusBiddingLimitList busTotalsupplyplan : busTotalsupplyplans) { + busTotalsupplyplan.setProjectId(versions.getProjectId()); + busTotalsupplyplan.setId(null); + } + boolean b = busBiddingLimitListService.saveBatch(busTotalsupplyplans); + if (!b) { + log.info("新增失败"); + } + } + } + + @EventListener(condition = "#processTaskEvent.flowCode.endsWith('bidEquipmentList')") + public void processTaskPlansHandlerBid(ProcessTaskEvent processTaskEvent) { + log.info("投标清单审核任务创建了{}", processTaskEvent.toString()); + } + + + @EventListener(condition = "#processDeleteEvent.flowCode.endsWith('bidEquipmentList')") + public void processDeletePlansHandlerBid(ProcessDeleteEvent processDeleteEvent) { + log.info("投标清单计划删除流程事件,技术标准文件审核任务执行了{}", processDeleteEvent.toString()); + } + + @org.springframework.context.event.EventListener(condition = "#processEvent.flowCode.endsWith('priceEquipmentList')") + public void processPlansHandlerPrice(ProcessEvent processEvent) { + log.info("限价清单审核任务执行了{}", processEvent.toString()); + String id = processEvent.getBusinessId(); + LambdaQueryWrapper eq = new LambdaQueryWrapper() + .eq(BusBillofquantitiesVersions::getVersions, id); + BusBillofquantitiesVersions busBillofquantitiesVersions = new BusBillofquantitiesVersions(); + busBillofquantitiesVersions.setStatus(processEvent.getStatus()); + boolean update = this.update(busBillofquantitiesVersions, eq); + //往成本部的限价清单表中新增数据 + if (update && BusinessStatusEnum.FINISH.getStatus().equals(processEvent.getStatus())) { + //根据版本号查询数据 + BusBillofquantitiesVersions versions = this.getOne(eq); + //1、根据查询数据 + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BusBillofquantities::getVersions, id); + List list = busBillofquantitiesService.list(lqw); + List busTotalsupplyplans = BeanUtil.copyToList(list, BusBillofquantitiesLimitList.class); + for (BusBillofquantitiesLimitList busTotalsupplyplan : busTotalsupplyplans) { + busTotalsupplyplan.setProjectId(versions.getProjectId()); + busTotalsupplyplan.setId(null); + } + boolean b = busBillofquantitiesLimitListService.saveBatch(busTotalsupplyplans); + if (!b) { + log.info("新增失败"); + } + } + } + + @EventListener(condition = "#processTaskEvent.flowCode.endsWith('priceEquipmentList')") + public void processTaskPlansHandlerPrice(ProcessTaskEvent processTaskEvent) { + log.info("限价清单审核任务创建了{}", processTaskEvent.toString()); + } + + + @EventListener(condition = "#processDeleteEvent.flowCode.endsWith('priceEquipmentList')") + public void processDeletePlansHandlerPrice(ProcessDeleteEvent processDeleteEvent) { + log.info("限价清单计划删除流程事件,技术标准文件审核任务执行了{}", processDeleteEvent.toString()); + } + /** * 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等) diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterController.java new file mode 100644 index 00000000..f254e299 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterController.java @@ -0,0 +1,154 @@ +package org.dromara.patch.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.patch.domain.vo.PdMasterProgressVo; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.patch.domain.vo.PdMasterVo; +import org.dromara.patch.domain.bo.PdMasterBo; +import org.dromara.patch.service.IPdMasterService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 派单 + * + * @author Lion Li + * @date 2025-08-19 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/patch") +public class PdMasterController extends BaseController { + + private final IPdMasterService pdMasterService; + /** + * 新增进度详情 + */ + @SaCheckPermission("patch:master:edit") + @PostMapping("/progress") + public R addProgress(@Validated @RequestBody PdMasterProgressVo progress) { + if (progress.getSlaveId() == null) { + throw new ServiceException("slaveId不能为空,无法更新进度"); + } + // 将slaveId的值赋给updateBy + progress.setUpdateBy(progress.getSlaveId()); + // 如果需要,也可以将slaveName赋给updateByName + progress.setUpdateByName(progress.getSlaveName()); + return toAjax(pdMasterService.addProgress(progress)); + } + + /** + * 修改进度详情 + */ + @SaCheckPermission("patch:master:edit") + @PutMapping("/progress") + public R editProgress(@Validated @RequestBody PdMasterProgressVo progress) { + return toAjax(pdMasterService.editProgress(progress)); + } + + /** + * 删除进度详情 + */ + @SaCheckPermission("patch:master:remove") + @DeleteMapping("/progress/{id}") + public R removeProgress(@PathVariable Long id) { + return toAjax(pdMasterService.removeProgress(id)); + } + + + /** + * 查询派单进度详情列表 + * @param masterId 派单主表ID + * @return 进度详情列表 + */ + @SaCheckPermission("patch:master:query") + @GetMapping("/progress/{masterId}") + public R> getProgressList( + @NotNull(message = "主表ID不能为空") + @PathVariable Long masterId) { + return R.ok(pdMasterService.queryProgressList(masterId)); + } + /** + * 查询派单列表 + */ + @SaCheckPermission("patch:master:list") + @GetMapping("/list") + public TableDataInfo list(PdMasterBo bo, PageQuery pageQuery) { + return pdMasterService.queryPageList(bo, pageQuery); + } + + /** + * 导出派单列表 + */ + @SaCheckPermission("patch:master:export") + @Log(title = "派单", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PdMasterBo bo, HttpServletResponse response) { + List list = pdMasterService.queryList(bo); + ExcelUtil.exportExcel(list, "派单", PdMasterVo.class, response); + } + + /** + * 获取派单详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("patch:master:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(pdMasterService.queryById(id)); + } + + /** + * 新增派单 + */ + @SaCheckPermission("patch:master:add") + @Log(title = "派单", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PdMasterBo bo) { + return toAjax(pdMasterService.insertByBo(bo)); + } + + /** + * 修改派单 + */ + @SaCheckPermission("patch:master:edit") + @Log(title = "派单", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PdMasterBo bo) { + return toAjax(pdMasterService.updateByBo(bo)); + } + + /** + * 删除派单 + * + * @param ids 主键串 + */ + @SaCheckPermission("patch:master:remove") + @Log(title = "派单", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(pdMasterService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterSonController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterSonController.java new file mode 100644 index 00000000..cbbd1009 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterSonController.java @@ -0,0 +1,105 @@ +package org.dromara.patch.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.patch.domain.vo.PdMasterSonVo; +import org.dromara.patch.domain.bo.PdMasterSonBo; +import org.dromara.patch.service.IPdMasterSonService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 派单-进度 + * + * @author Lion Li + * @date 2025-08-19 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/patch/masterSon") +public class PdMasterSonController extends BaseController { + + private final IPdMasterSonService pdMasterSonService; + + /** + * 查询派单-进度列表 + */ + @SaCheckPermission("patch:masterSon:list") + @GetMapping("/list") + public TableDataInfo list(PdMasterSonBo bo, PageQuery pageQuery) { + return pdMasterSonService.queryPageList(bo, pageQuery); + } + + /** + * 导出派单-进度列表 + */ + @SaCheckPermission("patch:masterSon:export") + @Log(title = "派单-进度", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PdMasterSonBo bo, HttpServletResponse response) { + List list = pdMasterSonService.queryList(bo); + ExcelUtil.exportExcel(list, "派单-进度", PdMasterSonVo.class, response); + } + + /** + * 获取派单-进度详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("patch:masterSon:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long id) { + return R.ok(pdMasterSonService.queryById(id)); + } + + /** + * 新增派单-进度 + */ + @SaCheckPermission("patch:masterSon:add") + @Log(title = "派单-进度", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PdMasterSonBo bo) { + return toAjax(pdMasterSonService.insertByBo(bo)); + } + + /** + * 修改派单-进度 + */ + @SaCheckPermission("patch:masterSon:edit") + @Log(title = "派单-进度", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PdMasterSonBo bo) { + return toAjax(pdMasterSonService.updateByBo(bo)); + } + + /** + * 删除派单-进度 + * + * @param ids 主键串 + */ + @SaCheckPermission("patch:masterSon:remove") + @Log(title = "派单-进度", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + return toAjax(pdMasterSonService.deleteWithValidByIds(List.of(ids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterUserController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterUserController.java new file mode 100644 index 00000000..97564522 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/controller/PdMasterUserController.java @@ -0,0 +1,105 @@ +package org.dromara.patch.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.patch.domain.vo.PdMasterUserVo; +import org.dromara.patch.domain.bo.PdMasterUserBo; +import org.dromara.patch.service.IPdMasterUserService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 派单-用户 + * + * @author Lion Li + * @date 2025-08-19 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/patch/masterUser") +public class PdMasterUserController extends BaseController { + + private final IPdMasterUserService pdMasterUserService; + + /** + * 查询派单-用户列表 + */ + @SaCheckPermission("patch:masterUser:list") + @GetMapping("/list") + public TableDataInfo list(PdMasterUserBo bo, PageQuery pageQuery) { + return pdMasterUserService.queryPageList(bo, pageQuery); + } + + /** + * 导出派单-用户列表 + */ + @SaCheckPermission("patch:masterUser:export") + @Log(title = "派单-用户", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(PdMasterUserBo bo, HttpServletResponse response) { + List list = pdMasterUserService.queryList(bo); + ExcelUtil.exportExcel(list, "派单-用户", PdMasterUserVo.class, response); + } + + /** + * 获取派单-用户详细信息 + * + * @param ordersid 主键 + */ + @SaCheckPermission("patch:masterUser:query") + @GetMapping("/{ordersid}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long ordersid) { + return R.ok(pdMasterUserService.queryById(ordersid)); + } + + /** + * 新增派单-用户 + */ + @SaCheckPermission("patch:masterUser:add") + @Log(title = "派单-用户", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody PdMasterUserBo bo) { + return toAjax(pdMasterUserService.insertByBo(bo)); + } + + /** + * 修改派单-用户 + */ + @SaCheckPermission("patch:masterUser:edit") + @Log(title = "派单-用户", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody PdMasterUserBo bo) { + return toAjax(pdMasterUserService.updateByBo(bo)); + } + + /** + * 删除派单-用户 + * + * @param ordersids 主键串 + */ + @SaCheckPermission("patch:masterUser:remove") + @Log(title = "派单-用户", businessType = BusinessType.DELETE) + @DeleteMapping("/{ordersids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ordersids) { + return toAjax(pdMasterUserService.deleteWithValidByIds(List.of(ordersids), true)); + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMaster.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMaster.java new file mode 100644 index 00000000..898969b4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMaster.java @@ -0,0 +1,74 @@ +package org.dromara.patch.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 派单对象 pd_master + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("pd_master") +public class PdMaster extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 项目ID + */ + private Long projectId; + + /** + * 任务名称 + */ + private String taskName; + + /** + * 任务描述 + */ + @TableField("`describe`") + private String describe; + + /** + * 计划完成时间 + */ + private Date pcd; + + /** + * 实际完成时间 + */ + private Date act; + + /** + * 完成进度 + */ + private String completionProgress = "0.00%"; // 设置默认值 + + /** + * 任务状态 + */ + private String taskStatus="0"; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterSon.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterSon.java new file mode 100644 index 00000000..1198d22f --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterSon.java @@ -0,0 +1,46 @@ +package org.dromara.patch.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 派单-进度对象 pd_master_son + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("pd_master_son") +public class PdMasterSon extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 主表任务ID' + */ + private Long ordersId; + + /** + * 进度 + */ + private String progress; + + /** + * 备注 + */ + private String remark; + private Long updateBy; + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterUser.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterUser.java new file mode 100644 index 00000000..eba56a73 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/PdMasterUser.java @@ -0,0 +1,41 @@ +package org.dromara.patch.domain; + +import org.dromara.common.mybatis.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; + +/** + * 派单-用户对象 pd_master_user + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("pd_master_user") +public class PdMasterUser extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 订单id + */ + @TableId(type = IdType.INPUT) + private Long ordersid; + + /** + * 执行人id + */ + private Long slaveid; + + /** + * 执行人名字 + */ + private String slaveName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterBo.java new file mode 100644 index 00000000..ce18d1c1 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterBo.java @@ -0,0 +1,72 @@ +package org.dromara.patch.domain.bo; + +import org.dromara.patch.domain.PdMaster; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 派单业务对象 pd_master + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = PdMaster.class, reverseConvertGenerate = false) +public class PdMasterBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 项目ID + */ + private Long projectId; + + /** + * 任务名称 + */ + private String taskName; + + /** + * 任务描述 + */ + private String describe; + + /** + * 计划完成时间 + */ + private Date pcd; + + /** + * 实际完成时间 + */ + private Date act; + + /** + * 完成进度 + */ + private String completionProgress; + + /** + * 任务状态 + */ + private String taskStatus; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterSonBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterSonBo.java new file mode 100644 index 00000000..23ee240d --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterSonBo.java @@ -0,0 +1,45 @@ +package org.dromara.patch.domain.bo; + +import org.dromara.patch.domain.PdMasterSon; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 派单-进度业务对象 pd_master_son + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = PdMasterSon.class, reverseConvertGenerate = false) +public class PdMasterSonBo extends BaseEntity { + + /** + * + */ + @NotNull(message = "不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 主表任务ID' + */ + private Long ordersId; + + /** + * 进度 + */ + private Long progress; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterUserBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterUserBo.java new file mode 100644 index 00000000..597c90f4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/bo/PdMasterUserBo.java @@ -0,0 +1,41 @@ +package org.dromara.patch.domain.bo; + +import org.dromara.patch.domain.PdMasterUser; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 派单-用户业务对象 pd_master_user + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = PdMasterUser.class, reverseConvertGenerate = false) +public class PdMasterUserBo extends BaseEntity { + + /** + * 订单id + */ + @NotNull(message = "订单id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long ordersid; + + /** + * 执行人id + */ + @NotNull(message = "执行人id不能为空", groups = { AddGroup.class, EditGroup.class }) + private Long slaveid; + + /** + * 执行人名字 + */ + private String slaveName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/dto/ProgressDetailDto.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/dto/ProgressDetailDto.java new file mode 100644 index 00000000..daf3f500 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/dto/ProgressDetailDto.java @@ -0,0 +1,15 @@ +package org.dromara.patch.domain.dto; + +import lombok.Data; +import java.util.Date; + +@Data +public class ProgressDetailDto { + private Long id; + private Long ordersId; + private String progress; + private String remark; + private Date updateTime; + private Long slaveId; + private String slaveName; +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterProgressVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterProgressVo.java new file mode 100644 index 00000000..1c3ad5aa --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterProgressVo.java @@ -0,0 +1,50 @@ +package org.dromara.patch.domain.vo; + +import lombok.Data; +import java.util.Date; + +/** + * 派单进度详情VO + * + * @author Your Name + * @date 2025-08-20 + */ +@Data +public class PdMasterProgressVo { + /** + * 进度ID + */ + private Long id; + + /** + * 主表任务ID + */ + private Long ordersId; + + /** + * 进度 + */ + private String progress; + + /** + * 备注 + */ + private String remark; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 执行人ID + */ + private Long slaveId; + + /** + * 执行人名字 + */ + private String slaveName; + private Long updateBy; // 新增字段 + private String updateByName; // 新增字段 +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterSonVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterSonVo.java new file mode 100644 index 00000000..e064ffb3 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterSonVo.java @@ -0,0 +1,56 @@ +package org.dromara.patch.domain.vo; + +import org.dromara.patch.domain.PdMasterSon; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 派单-进度视图对象 pd_master_son + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = PdMasterSon.class) +public class PdMasterSonVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * + */ + @ExcelProperty(value = "") + private Long id; + + /** + * 主表任务ID' + */ + @ExcelProperty(value = "主表任务ID'") + private Long ordersId; + + /** + * 进度 + */ + @ExcelProperty(value = "进度") + private String progress; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterUserVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterUserVo.java new file mode 100644 index 00000000..68af8e01 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterUserVo.java @@ -0,0 +1,50 @@ +package org.dromara.patch.domain.vo; + +import org.dromara.patch.domain.PdMasterUser; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 派单-用户视图对象 pd_master_user + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = PdMasterUser.class) +public class PdMasterUserVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 订单id + */ + @ExcelProperty(value = "订单id") + private Long ordersid; + + /** + * 执行人id + */ + @ExcelProperty(value = "执行人id") + private Long slaveid; + + /** + * 执行人名字 + */ + @ExcelProperty(value = "执行人名字") + private String slaveName; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterVo.java new file mode 100644 index 00000000..5c72b215 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/domain/vo/PdMasterVo.java @@ -0,0 +1,88 @@ +package org.dromara.patch.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.patch.domain.PdMaster; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 派单视图对象 pd_master + * + * @author Lion Li + * @date 2025-08-19 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = PdMaster.class) +public class PdMasterVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 项目ID + */ + @ExcelProperty(value = "项目ID") + private Long projectId; + + /** + * 任务名称 + */ + @ExcelProperty(value = "任务名称") + private String taskName; + + /** + * 任务描述 + */ + @ExcelProperty(value = "任务描述") + private String describe; + + /** + * 计划完成时间 + */ + @ExcelProperty(value = "计划完成时间") + private Date pcd; + + /** + * 实际完成时间 + */ + @ExcelProperty(value = "实际完成时间") + private Date act; + + /** + * 完成进度 + */ + @ExcelProperty(value = "完成进度") + private String completionProgress; + + /** + * 任务状态 + */ + @ExcelProperty(value = "任务状态") + private String taskStatus; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/enums/TaskStatusEnum.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/enums/TaskStatusEnum.java new file mode 100644 index 00000000..3f7884c5 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/enums/TaskStatusEnum.java @@ -0,0 +1,29 @@ +package org.dromara.patch.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 任务状态枚举 + */ +@AllArgsConstructor +@Getter +public enum TaskStatusEnum { + UNFINISHED("0", "未完成"), + FINISHED("1", "完成"); + + private final String value; // 字典值 + private final String label; // 字典标签 + + /** + * 根据值获取标签 + */ + public static String getLabelByValue(String value) { + for (TaskStatusEnum status : values()) { + if (status.value.equals(value)) { + return status.label; + } + } + return ""; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterMapper.java new file mode 100644 index 00000000..73250958 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterMapper.java @@ -0,0 +1,41 @@ +package org.dromara.patch.mapper; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.dromara.patch.domain.PdMaster; +import org.dromara.patch.domain.dto.ProgressDetailDto; +import org.dromara.patch.domain.vo.PdMasterProgressVo; +import org.dromara.patch.domain.vo.PdMasterVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +import java.util.List; +import java.util.Map; + +/** + * 派单Mapper接口 + * + * @author Lion Li + * @date 2025-08-19 + */ +public interface PdMasterMapper extends BaseMapperPlus { + List selectProgressByMasterId(@Param("masterId") Long masterId); + + // 新增进度详情 + int insertProgress(@Param("progress") PdMasterProgressVo progress); + + // 修改进度详情 + int updateProgress(@Param("progress") PdMasterProgressVo progress); + + // 删除进度详情 + int deleteProgressById(@Param("id") Long id); + Double selectTotalProgressByMasterId(Long masterId); + PdMasterProgressVo selectProgressById(Long id); + int countMasterUser(@Param("ordersId") Long ordersId, @Param("slaveId") Long slaveId); + + int insertMasterUser(@Param("ordersId") Long ordersId, + @Param("slaveId") Long slaveId, + @Param("slaveName") String slaveName); +} + diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterSonMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterSonMapper.java new file mode 100644 index 00000000..46fd8147 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterSonMapper.java @@ -0,0 +1,17 @@ +package org.dromara.patch.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.dromara.patch.domain.PdMasterSon; +import org.dromara.patch.domain.vo.PdMasterSonVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 派单-进度Mapper接口 + * + * @author Lion Li + * @date 2025-08-19 + */ + +public interface PdMasterSonMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterUserMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterUserMapper.java new file mode 100644 index 00000000..fe74d3e4 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/mapper/PdMasterUserMapper.java @@ -0,0 +1,17 @@ +package org.dromara.patch.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.dromara.patch.domain.PdMasterUser; +import org.dromara.patch.domain.vo.PdMasterUserVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 派单-用户Mapper接口 + * + * @author Lion Li + * @date 2025-08-19 + */ + +public interface PdMasterUserMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterService.java new file mode 100644 index 00000000..fc7bbf10 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterService.java @@ -0,0 +1,81 @@ +package org.dromara.patch.service; + +import org.dromara.patch.domain.vo.PdMasterProgressVo; +import org.dromara.patch.domain.vo.PdMasterVo; +import org.dromara.patch.domain.bo.PdMasterBo; +import org.dromara.patch.domain.PdMaster; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 派单Service接口 + * + * @author Lion Li + * @date 2025-08-19 + */ +public interface IPdMasterService extends IService{ + List queryProgressList(Long masterId); + void validEntityBeforeSave(PdMaster entity); + + // 新增进度 + Boolean addProgress(PdMasterProgressVo progress); + + // 修改进度 + Boolean editProgress(PdMasterProgressVo progress); + + // 删除进度 + Boolean removeProgress(Long id); + /** + * 查询派单 + * + * @param id 主键 + * @return 派单 + */ + PdMasterVo queryById(Long id); + + /** + * 分页查询派单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单分页列表 + */ + TableDataInfo queryPageList(PdMasterBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的派单列表 + * + * @param bo 查询条件 + * @return 派单列表 + */ + List queryList(PdMasterBo bo); + + /** + * 新增派单 + * + * @param bo 派单 + * @return 是否新增成功 + */ + Boolean insertByBo(PdMasterBo bo); + + /** + * 修改派单 + * + * @param bo 派单 + * @return 是否修改成功 + */ + Boolean updateByBo(PdMasterBo bo); + + /** + * 校验并批量删除派单信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterSonService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterSonService.java new file mode 100644 index 00000000..492632cc --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterSonService.java @@ -0,0 +1,70 @@ +package org.dromara.patch.service; + +import org.dromara.patch.domain.vo.PdMasterSonVo; +import org.dromara.patch.domain.bo.PdMasterSonBo; +import org.dromara.patch.domain.PdMasterSon; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 派单-进度Service接口 + * + * @author Lion Li + * @date 2025-08-19 + */ +public interface IPdMasterSonService extends IService{ + + /** + * 查询派单-进度 + * + * @param id 主键 + * @return 派单-进度 + */ + PdMasterSonVo queryById(Long id); + + /** + * 分页查询派单-进度列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单-进度分页列表 + */ + TableDataInfo queryPageList(PdMasterSonBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的派单-进度列表 + * + * @param bo 查询条件 + * @return 派单-进度列表 + */ + List queryList(PdMasterSonBo bo); + + /** + * 新增派单-进度 + * + * @param bo 派单-进度 + * @return 是否新增成功 + */ + Boolean insertByBo(PdMasterSonBo bo); + + /** + * 修改派单-进度 + * + * @param bo 派单-进度 + * @return 是否修改成功 + */ + Boolean updateByBo(PdMasterSonBo bo); + + /** + * 校验并批量删除派单-进度信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterUserService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterUserService.java new file mode 100644 index 00000000..dfdae0b0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/IPdMasterUserService.java @@ -0,0 +1,70 @@ +package org.dromara.patch.service; + +import org.dromara.patch.domain.vo.PdMasterUserVo; +import org.dromara.patch.domain.bo.PdMasterUserBo; +import org.dromara.patch.domain.PdMasterUser; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Collection; +import java.util.List; + +/** + * 派单-用户Service接口 + * + * @author Lion Li + * @date 2025-08-19 + */ +public interface IPdMasterUserService extends IService{ + + /** + * 查询派单-用户 + * + * @param ordersid 主键 + * @return 派单-用户 + */ + PdMasterUserVo queryById(Long ordersid); + + /** + * 分页查询派单-用户列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单-用户分页列表 + */ + TableDataInfo queryPageList(PdMasterUserBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的派单-用户列表 + * + * @param bo 查询条件 + * @return 派单-用户列表 + */ + List queryList(PdMasterUserBo bo); + + /** + * 新增派单-用户 + * + * @param bo 派单-用户 + * @return 是否新增成功 + */ + Boolean insertByBo(PdMasterUserBo bo); + + /** + * 修改派单-用户 + * + * @param bo 派单-用户 + * @return 是否修改成功 + */ + Boolean updateByBo(PdMasterUserBo bo); + + /** + * 校验并批量删除派单-用户信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterServiceImpl.java new file mode 100644 index 00000000..edd3caa0 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterServiceImpl.java @@ -0,0 +1,249 @@ +package org.dromara.patch.service.impl; + +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.dromara.patch.domain.vo.PdMasterProgressVo; +import org.dromara.patch.enums.TaskStatusEnum; +import org.springframework.stereotype.Service; +import org.dromara.patch.domain.bo.PdMasterBo; +import org.dromara.patch.domain.vo.PdMasterVo; +import org.dromara.patch.domain.PdMaster; +import org.dromara.patch.mapper.PdMasterMapper; +import org.dromara.patch.service.IPdMasterService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 派单Service业务层处理 + * + * @author Lion Li + * @date 2025-08-19 + */ +@RequiredArgsConstructor +@Service +public class PdMasterServiceImpl extends ServiceImpl implements IPdMasterService { + + private final PdMasterMapper baseMapper; + + @Override + public void validEntityBeforeSave(PdMaster entity) { + // 如果有ID(更新操作),计算总进度 + if (entity.getId() != null) { + Double totalProgress = baseMapper.selectTotalProgressByMasterId(entity.getId()); + entity.setCompletionProgress(String.format("%.2f%%", totalProgress)); + } + + // 根据完成进度更新任务状态 + String progress = entity.getCompletionProgress(); + if ("100.00%".equals(progress)) { + entity.setTaskStatus(TaskStatusEnum.FINISHED.getValue()); + if (entity.getAct() == null) { + entity.setAct(new Date()); + } + } else { + entity.setTaskStatus(TaskStatusEnum.UNFINISHED.getValue()); + } + + if (StringUtils.isBlank(entity.getTaskName())) { + throw new ServiceException("任务名称不能为空"); + } + } + + @Override + public Boolean addProgress(PdMasterProgressVo progress) { + if (progress.getOrdersId() == null) { + throw new ServiceException("主表ID不能为空"); + } + if (baseMapper.selectById(progress.getOrdersId()) == null) { + throw new ServiceException("派单主表不存在"); + } + + // 新增进度到pd_master_son表 + boolean success = baseMapper.insertProgress(progress) > 0; + + if (success) { + // 同时向pd_master_user表插入数据 + // 这里假设progress对象中有updateBy字段,如果没有需要从其他地方获取 + Long updateBy = progress.getUpdateBy(); // 需要确保PdMasterProgressVo有这个字段 + String updateByName = progress.getUpdateByName(); // 需要确保PdMasterProgressVo有这个字段 + + if (updateBy != null) { + // 检查是否已存在关联记录 + int count = baseMapper.countMasterUser(progress.getOrdersId(), updateBy); + if (count == 0) { + // 不存在则插入 + baseMapper.insertMasterUser(progress.getOrdersId(), updateBy, updateByName); + } + } + + updateMasterCompletionProgress(progress.getOrdersId()); + } + return success; + } + @Override + public Boolean editProgress(PdMasterProgressVo progress) { + if (progress.getOrdersId() == null) { + throw new ServiceException("主表ID不能为空"); + } + // 检查进度记录是否存在 + PdMasterProgressVo existingProgress = baseMapper.selectProgressById(progress.getId()); + if (existingProgress == null) { + throw new ServiceException("进度记录不存在"); + } + boolean success = baseMapper.updateProgress(progress) > 0; + if (success) { + updateMasterCompletionProgress(progress.getOrdersId()); + } + return success; + } + + @Override + public Boolean removeProgress(Long id) { + // 先查询进度记录获取主表ID + PdMasterProgressVo progress = baseMapper.selectProgressById(id); + if (progress == null) { + throw new ServiceException("进度记录不存在"); + } + boolean success = baseMapper.deleteProgressById(id) > 0; + if (success) { + updateMasterCompletionProgress(progress.getOrdersId()); + } + return success; + } + + private void updateMasterCompletionProgress(Long masterId) { + PdMaster master = baseMapper.selectById(masterId); + if (master != null) { + // 重新计算总进度 + Double totalProgress = baseMapper.selectTotalProgressByMasterId(masterId); + master.setCompletionProgress(String.format("%.2f%%", totalProgress)); + // 触发校验和状态更新 + validEntityBeforeSave(master); + baseMapper.updateById(master); + } + } + /** + * 根据主表ID查询进度详情列表 + * @param masterId 主表ID + * @return 进度详情列表 + */ + @Override + public List queryProgressList(Long masterId) { + if (masterId == null) { + return List.of(); + } + return baseMapper.selectProgressByMasterId(masterId); + } + /** + * 查询派单 + * + * @param id 主键 + * @return 派单 + */ + @Override + public PdMasterVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询派单列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单分页列表 + */ + @Override + public TableDataInfo queryPageList(PdMasterBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的派单列表 + * + * @param bo 查询条件 + * @return 派单列表 + */ + @Override + public List queryList(PdMasterBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PdMasterBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(PdMaster::getId); + lqw.eq(bo.getProjectId() != null, PdMaster::getProjectId, bo.getProjectId()); + lqw.like(StringUtils.isNotBlank(bo.getTaskName()), PdMaster::getTaskName, bo.getTaskName()); + lqw.eq(StringUtils.isNotBlank(bo.getDescribe()), PdMaster::getDescribe, bo.getDescribe()); + lqw.eq(bo.getPcd() != null, PdMaster::getPcd, bo.getPcd()); + lqw.eq(bo.getAct() != null, PdMaster::getAct, bo.getAct()); + lqw.eq(StringUtils.isNotBlank(bo.getCompletionProgress()), PdMaster::getCompletionProgress, bo.getCompletionProgress()); + lqw.eq(StringUtils.isNotBlank(bo.getTaskStatus()), PdMaster::getTaskStatus, bo.getTaskStatus()); + return lqw; + } + + /** + * 新增派单 + * + * @param bo 派单 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(PdMasterBo bo) { + PdMaster add = MapstructUtils.convert(bo, PdMaster.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改派单 + * + * @param bo 派单 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(PdMasterBo bo) { + PdMaster update = MapstructUtils.convert(bo, PdMaster.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + + + /** + * 校验并批量删除派单信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterSonServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterSonServiceImpl.java new file mode 100644 index 00000000..0cb4dddf --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterSonServiceImpl.java @@ -0,0 +1,131 @@ +package org.dromara.patch.service.impl; + +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.patch.domain.bo.PdMasterSonBo; +import org.dromara.patch.domain.vo.PdMasterSonVo; +import org.dromara.patch.domain.PdMasterSon; +import org.dromara.patch.mapper.PdMasterSonMapper; +import org.dromara.patch.service.IPdMasterSonService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 派单-进度Service业务层处理 + * + * @author Lion Li + * @date 2025-08-19 + */ +@RequiredArgsConstructor +@Service +public class PdMasterSonServiceImpl extends ServiceImpl implements IPdMasterSonService { + + private final PdMasterSonMapper baseMapper; + + /** + * 查询派单-进度 + * + * @param id 主键 + * @return 派单-进度 + */ + @Override + public PdMasterSonVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询派单-进度列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单-进度分页列表 + */ + @Override + public TableDataInfo queryPageList(PdMasterSonBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的派单-进度列表 + * + * @param bo 查询条件 + * @return 派单-进度列表 + */ + @Override + public List queryList(PdMasterSonBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PdMasterSonBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(PdMasterSon::getId); + lqw.eq(bo.getOrdersId() != null, PdMasterSon::getOrdersId, bo.getOrdersId()); + lqw.eq(bo.getProgress() != null, PdMasterSon::getProgress, bo.getProgress()); + return lqw; + } + + /** + * 新增派单-进度 + * + * @param bo 派单-进度 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(PdMasterSonBo bo) { + PdMasterSon add = MapstructUtils.convert(bo, PdMasterSon.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改派单-进度 + * + * @param bo 派单-进度 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(PdMasterSonBo bo) { + PdMasterSon update = MapstructUtils.convert(bo, PdMasterSon.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PdMasterSon entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除派单-进度信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterUserServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterUserServiceImpl.java new file mode 100644 index 00000000..c1bdadb6 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/service/impl/PdMasterUserServiceImpl.java @@ -0,0 +1,131 @@ +package org.dromara.patch.service.impl; + +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.patch.domain.bo.PdMasterUserBo; +import org.dromara.patch.domain.vo.PdMasterUserVo; +import org.dromara.patch.domain.PdMasterUser; +import org.dromara.patch.mapper.PdMasterUserMapper; +import org.dromara.patch.service.IPdMasterUserService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 派单-用户Service业务层处理 + * + * @author Lion Li + * @date 2025-08-19 + */ +@RequiredArgsConstructor +@Service +public class PdMasterUserServiceImpl extends ServiceImpl implements IPdMasterUserService { + + private final PdMasterUserMapper baseMapper; + + /** + * 查询派单-用户 + * + * @param ordersid 主键 + * @return 派单-用户 + */ + @Override + public PdMasterUserVo queryById(Long ordersid){ + return baseMapper.selectVoById(ordersid); + } + + /** + * 分页查询派单-用户列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 派单-用户分页列表 + */ + @Override + public TableDataInfo queryPageList(PdMasterUserBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的派单-用户列表 + * + * @param bo 查询条件 + * @return 派单-用户列表 + */ + @Override + public List queryList(PdMasterUserBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(PdMasterUserBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getOrdersid() != null, PdMasterUser::getOrdersid, bo.getOrdersid()); + lqw.eq(bo.getSlaveid() != null, PdMasterUser::getSlaveid, bo.getSlaveid()); + lqw.like(StringUtils.isNotBlank(bo.getSlaveName()), PdMasterUser::getSlaveName, bo.getSlaveName()); + return lqw; + } + + /** + * 新增派单-用户 + * + * @param bo 派单-用户 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(PdMasterUserBo bo) { + PdMasterUser add = MapstructUtils.convert(bo, PdMasterUser.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setOrdersid(add.getOrdersid()); + } + return flag; + } + + /** + * 修改派单-用户 + * + * @param bo 派单-用户 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(PdMasterUserBo bo) { + PdMasterUser update = MapstructUtils.convert(bo, PdMasterUser.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(PdMasterUser entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除派单-用户信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/util/AjaxResult.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/util/AjaxResult.java new file mode 100644 index 00000000..89574519 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/patch/util/AjaxResult.java @@ -0,0 +1,166 @@ +package org.dromara.patch.util; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; + +/** + * 统一API响应结果封装 + */ +@Data +@NoArgsConstructor +public class AjaxResult implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 状态码 + */ + private int code; + + /** + * 返回内容 + */ + private String msg; + + /** + * 数据对象 + */ + private Object data; + + /** + * 初始化一个新创建的 AjaxResult 对象 + * + * @param code 状态码 + * @param msg 返回内容 + */ + public AjaxResult(int code, String msg) { + this.code = code; + this.msg = msg; + } + + /** + * 初始化一个新创建的 AjaxResult 对象 + * + * @param code 状态码 + * @param msg 返回内容 + * @param data 数据对象 + */ + public AjaxResult(int code, String msg, Object data) { + this.code = code; + this.msg = msg; + this.data = data; + } + + /** + * 返回成功消息 + * + * @return 成功消息 + */ + public static AjaxResult success() { + return AjaxResult.success("操作成功"); + } + + /** + * 返回成功数据 + * + * @return 成功消息 + */ + public static AjaxResult success(Object data) { + return AjaxResult.success("操作成功", data); + } + + /** + * 返回成功消息 + * + * @param msg 返回内容 + * @return 成功消息 + */ + public static AjaxResult success(String msg) { + return AjaxResult.success(msg, null); + } + + /** + * 返回成功消息 + * + * @param msg 返回内容 + * @param data 数据对象 + * @return 成功消息 + */ + public static AjaxResult success(String msg, Object data) { + return new AjaxResult(200, msg, data); + } + + /** + * 返回错误消息 + * + * @return 错误消息 + */ + public static AjaxResult error() { + return AjaxResult.error("操作失败"); + } + + /** + * 返回错误消息 + * + * @param msg 返回内容 + * @return 错误消息 + */ + public static AjaxResult error(String msg) { + return AjaxResult.error(msg, null); + } + + /** + * 返回错误消息 + * + * @param msg 返回内容 + * @param data 数据对象 + * @return 错误消息 + */ + public static AjaxResult error(String msg, Object data) { + return new AjaxResult(500, msg, data); + } + + /** + * 返回错误消息 + * + * @param code 状态码 + * @param msg 返回内容 + * @return 错误消息 + */ + public static AjaxResult error(int code, String msg) { + return new AjaxResult(code, msg, null); + } + + /** + * 是否为成功响应 + * + * @return 结果 + */ + public boolean isSuccess() { + return this.code == 200; + } + + /** + * 方便链式调用 + * + * @param key 键 + * @param value 值 + * @return 数据对象 + */ + public AjaxResult put(String key, Object value) { + if (this.data == null) { + this.data = new HashMap(); + } + + if (this.data instanceof Map) { + @SuppressWarnings("unchecked") + Map map = (Map) this.data; + map.put(key, value); + } + + return this; + } +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java index 46695aa4..0f622e5b 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java @@ -120,4 +120,6 @@ public interface SysUserMapper extends BaseMapperPlus { }) int updateById(@Param(Constants.ENTITY) SysUser user); + List thisAlldepIds(@Param("depId") Long deptId); + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java index 2ba7199f..4985676a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java @@ -2,6 +2,7 @@ package org.dromara.system.service; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.system.domain.SysUser; import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.vo.SysUserExportVo; import org.dromara.system.domain.vo.SysUserVo; @@ -236,5 +237,9 @@ public interface ISysUserService { */ List selectUserListByPostList(List postIds); - + /** + * 获取当前用户所在部门的所有用户 + * @return 结果 + */ + List findThis(); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index fa4826fb..d23c581c 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -686,6 +686,20 @@ public class SysUserServiceImpl implements ISysUserService, UserService { return List.of(); } + /** + * 获取当前用户所在部门的所有用户 + * @return + */ + @Override + public List findThis() { + //1、获取当前用户部门 + Long deptId = LoginHelper.getDeptId(); + //2、查询当前用户所在部门 + List longs = baseMapper.thisAlldepIds(deptId); + //3、查询当前用户所在部门所有用户 + return baseMapper.selectList(new LambdaQueryWrapper().in(SysUser::getDeptId, longs)); + } + /** * 通过用户ID查询用户账户 * diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterMapper.xml new file mode 100644 index 00000000..97d71d4d --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterMapper.xml @@ -0,0 +1,64 @@ + + + + + + + + INSERT INTO pd_master_son (orders_id, progress, remark, update_time, update_by) + VALUES (#{progress.ordersId}, #{progress.progress}, #{progress.remark}, NOW(), #{progress.updateBy}) + + + + + UPDATE pd_master_son + SET progress = #{progress.progress}, + remark = #{progress.remark}, + update_time = NOW() + WHERE id = #{progress.id} + + + + + DELETE FROM pd_master_son WHERE id = #{id} + + + + + + + + INSERT INTO pd_master_user (ordersid, slaveid, slave_name) + VALUES (#{ordersId}, #{slaveId}, #{slaveName}) + + diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterSonMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterSonMapper.xml new file mode 100644 index 00000000..60855ba1 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterSonMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterUserMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterUserMapper.xml new file mode 100644 index 00000000..31fb3734 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/patch/PdMasterUserMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index ded6fa85..fb2e543f 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -69,5 +69,44 @@ select count(*) from sys_user where del_flag = '0' and user_id = #{userId} + +