From 5d02bcebdf3a1059665cc3b4f0e971b9df8d5c91 Mon Sep 17 00:00:00 2001 From: mashuai Date: Wed, 20 Nov 2024 13:27:54 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/biz/enums/BackTaskStatusEnum.java | 2 +- .../controller/BackApplyInfoController.java | 12 ++ .../material/back/domain/BackApplyInfo.java | 5 + .../back/domain/vo/BackApplyRequestVo.java | 2 - .../back/mapper/BackApplyInfoMapper.java | 14 ++ .../back/service/IBackApplyInfoService.java | 7 + .../impl/BackApplyInfoServiceImpl.java | 127 +++++++++++++----- .../material/back/BackApplyInfoMapper.xml | 19 ++- 8 files changed, 144 insertions(+), 44 deletions(-) diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/BackTaskStatusEnum.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/BackTaskStatusEnum.java index 00b463a4..a4dbdf7a 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/BackTaskStatusEnum.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/enums/BackTaskStatusEnum.java @@ -12,7 +12,7 @@ public enum BackTaskStatusEnum { BACK_TASK_NO_FINISHED(0, "退料未完成"), BACK_TASK_TO_REJECT(1, "维修驳回"), - BACK_TASK_IN_FINISHED(3, "退料已完成"); + BACK_TASK_IN_FINISHED(2, "退料已完成"); private final Integer status; private final String statusName; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/controller/BackApplyInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/controller/BackApplyInfoController.java index 672b85a9..58e53773 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/controller/BackApplyInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/controller/BackApplyInfoController.java @@ -174,4 +174,16 @@ public class BackApplyInfoController extends BaseController { public AjaxResult remove(@PathVariable Long id) { return backApplyInfoService.deleteBackApplyInfoById(id); } + + /** + * app内层删除退料任务 + */ + @ApiOperation(value = "app内层删除退料任务") + @PreventRepeatSubmit + @RequiresPermissions("back:info:remove") + @SysLog(title = "退料任务", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除退料任务") + @PostMapping("/delete") + public AjaxResult delete(@RequestBody BackApplyInfo backApplyInfo) { + return backApplyInfoService.delete(backApplyInfo); + } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/BackApplyInfo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/BackApplyInfo.java index d19cbb18..44fe921b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/BackApplyInfo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/BackApplyInfo.java @@ -55,6 +55,11 @@ public class BackApplyInfo { @ApiModelProperty(value = "类型id") private String typeId; + @ApiModelProperty(value = "物资类型") + private String materialType; + + private String materialName; + @ApiModelProperty(value = "类型名称") @Excel(name = "物资类型") private String typeName; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/vo/BackApplyRequestVo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/vo/BackApplyRequestVo.java index 7aca1fcc..f4d995d4 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/vo/BackApplyRequestVo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/domain/vo/BackApplyRequestVo.java @@ -15,8 +15,6 @@ import java.util.List; @Data public class BackApplyRequestVo { - private Long id; - /** * 退料申请信息 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/mapper/BackApplyInfoMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/mapper/BackApplyInfoMapper.java index ccac5e25..3996f451 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/mapper/BackApplyInfoMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/mapper/BackApplyInfoMapper.java @@ -211,4 +211,18 @@ public interface BackApplyInfoMapper { * @return */ int updateBackApplyDetails(BackApplyDetails applyDetail); + + /** + * 删除详情 + * @param backApplyInfo + * @return + */ + int deleteApplyDetails(BackApplyInfo backApplyInfo); + + /** + * 删除详情 + * @param backApplyInfo + * @return + */ + int deleteDetails(BackApplyInfo backApplyInfo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/IBackApplyInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/IBackApplyInfoService.java index fbe37ccb..4d95fd5c 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/IBackApplyInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/IBackApplyInfoService.java @@ -80,4 +80,11 @@ public interface IBackApplyInfoService { * @return */ AjaxResult insertApp(BackApplyRequestVo dto); + + /** + * app内层删除退料任务 + * @param backApplyInfo + * @return + */ + AjaxResult delete(BackApplyInfo backApplyInfo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/impl/BackApplyInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/impl/BackApplyInfoServiceImpl.java index bd87b8da..efef9664 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/impl/BackApplyInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/back/service/impl/BackApplyInfoServiceImpl.java @@ -246,7 +246,6 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { tmTask.setCreateTime(DateUtils.getNowDate()); tmTask.setCreateBy(SecurityUtils.getUsername()); BackApplyInfo backApplyInfo = dto.getBackApplyInfo(); - backApplyInfo.setTaskId(tmTask.getTaskId()); backApplyInfo.setCode(code); backApplyInfo.setCreateBy(SecurityUtils.getUsername()); backApplyInfo.setCreateTime(DateUtils.getNowDate()); @@ -257,6 +256,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { tmTaskAgreement.setCreateTime(DateUtils.getNowDate()); tmTaskAgreement.setCreateBy(SecurityUtils.getUsername()); taskAgreementMapper.insertTmTaskAgreement(tmTaskAgreement); + backApplyInfo.setTaskId(tmTask.getTaskId()); result += backApplyInfoMapper.insertBackApplyInfo(backApplyInfo); } // 保存退料详情 @@ -328,6 +328,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { // 设置每个 MaCodeDto 的独立属性 details.setMaId(maCodeDto.getMaId()); details.setPreNum(1); + details.setApDetection(maCodeDto.getApDetection()); // 插入 CheckDetails result += backApplyInfoMapper.insertCheckDetails(details); if (CollectionUtils.isNotEmpty(maCodeDto.getBmFileInfos())) { @@ -395,7 +396,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { */ @Override public AjaxResult updateBackApplyInfo(BackApplyRequestVo dto) { - if (dto == null || dto.getBackApplyInfo() == null || CollectionUtils.isEmpty(dto.getBackApplyDetailsList())) { + if (dto == null || dto.getBackApplyInfo() == null || dto.getBackApplyInfo().getId() == null || CollectionUtils.isEmpty(dto.getBackApplyDetailsList())) { return AjaxResult.error("参数为空,请重新选择后上传!"); } //对提交的退料详情树木进行校验 @@ -413,48 +414,26 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { return AjaxResult.error("手机号格式不正确,请重新填写!"); } // 查询信息 - Long id = dto.getId(); - BackApplyInfo backApplyInfo = backApplyInfoMapper.selectBackApplyInfoById(id); + Long id = dto.getBackApplyInfo().getId(); List backApplyDetailsList = backApplyInfoMapper.selectBackApplyDetailsListByTaskId(id); List maCodeList = backApplyInfoMapper.selectByCode(id); // 删除相关任务信息 int result = 0; - result += taskMapper.deleteTmTaskByTaskId(backApplyInfo.getTaskId()); - result += taskAgreementMapper.deleteTmTaskAgreementByTaskId(backApplyInfo.getTaskId()); - result += backApplyInfoMapper.deleteBackApplyDetails(backApplyInfo.getId()); - result += backApplyInfoMapper.deleteCheckDetails(backApplyInfo.getId()); + result += backApplyInfoMapper.deleteBackApplyDetails(id); + result += backApplyInfoMapper.deleteCheckDetails(id); // 删除退料详情附件 result += deleteFileInfoForDetails(backApplyDetailsList, id); // 删除编码设备附件 result += deleteFileInfoForMaCodes(maCodeList, id); - if (result > 0) { //执行新增操作 - backApplyInfo.setTaskType(TmTaskTypeEnum.TM_TASK_BACK.getTaskTypeId()); - backApplyInfo.setTaskStatus(BackTaskStatusEnum.BACK_TASK_NO_FINISHED.getStatus()); - backApplyInfo.setId(id); - backApplyInfo.setUpdateTime(DateUtils.getNowDate()); - backApplyInfo.setUpdateBy(SecurityUtils.getUsername()); - backApplyInfo.setBackPerson(dto.getBackApplyInfo().getBackPerson()); - backApplyInfo.setPhone(dto.getBackApplyInfo().getPhone()); - backApplyInfo.setRemark(dto.getBackApplyInfo().getRemark() == null ? backApplyInfo.getRemark() : dto.getBackApplyInfo().getRemark()); - int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_BACK.getTaskTypeId()); - TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_BACK.getTaskTypeId(), BackTaskStatusEnum.BACK_TASK_NO_FINISHED.getStatus(), - null,thisMonthMaxOrder + 1, backApplyInfo.getCode()); - tmTask.setCreateTime(DateUtils.getNowDate()); - tmTask.setCreateBy(SecurityUtils.getUsername()); - // 保存退料信息到 tm_task 表中 - result += taskMapper.insertTmTask(tmTask); - backApplyInfo.setTaskId(tmTask.getTaskId()); - if (result > 0) { - TmTaskAgreement tmTaskAgreement = new TmTaskAgreement(tmTask.getTaskId(), dto.getBackApplyInfo().getAgreementId()); - tmTaskAgreement.setCreateTime(DateUtils.getNowDate()); - tmTaskAgreement.setCreateBy(SecurityUtils.getUsername()); - taskAgreementMapper.insertTmTaskAgreement(tmTaskAgreement); - result += backApplyInfoMapper.updateBackApplyInfo(backApplyInfo); - } + BackApplyInfo info = dto.getBackApplyInfo(); + info.setId(id); + info.setUpdateTime(DateUtils.getNowDate()); + info.setUpdateBy(SecurityUtils.getUsername()); + result += backApplyInfoMapper.updateBackApplyInfo(info); // 保存退料详情 - result = saveBackApplyDetails(dto, backApplyInfo, result); + result = saveBackApplyDetails(dto, info, result); return AjaxResult.success(result); } } catch (Exception e) { @@ -587,7 +566,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { // 设置更新信息 backApplyInfo.setUpdateBy(SecurityUtils.getUsername()); backApplyInfo.setUpdateTime(DateUtils.getNowDate()); - backApplyInfo.setTaskStatus(2); + backApplyInfo.setTaskStatus(BackTaskStatusEnum.BACK_TASK_IN_FINISHED.getStatus()); // 更新任务表及退料申请表状态 result += updateTaskAndBackInfo(backApplyInfo); if (result > 0 && CollectionUtils.isNotEmpty(applyInfoList)) { @@ -646,7 +625,85 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService { */ @Override public AjaxResult insertApp(BackApplyRequestVo dto) { - return null; + int result = 0; + if (dto != null && dto.getBackApplyInfo() != null && CollectionUtils.isEmpty(dto.getBackApplyDetailsList())) { + //只新增主任务单 + //对传入的手机号进行校验 + if (StringUtils.isNotBlank(dto.getBackApplyInfo().getPhone()) && !PhoneUtil.isMobile(dto.getBackApplyInfo().getPhone())) { + return AjaxResult.error("手机号格式不正确,请重新填写!"); + } + //生成退料单号 + String code = getString(); + if (StringUtils.isBlank(code)) { + return AjaxResult.error("后台退料编号生成异常,请重试!"); + } + + int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_BACK.getTaskTypeId()); + TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_BACK.getTaskTypeId(), + BackTaskStatusEnum.BACK_TASK_NO_FINISHED.getStatus(), + null,thisMonthMaxOrder + 1, code); + tmTask.setCreateTime(DateUtils.getNowDate()); + tmTask.setCreateBy(SecurityUtils.getUsername()); + BackApplyInfo backApplyInfo = dto.getBackApplyInfo(); + backApplyInfo.setCode(code); + backApplyInfo.setCreateBy(SecurityUtils.getUsername()); + backApplyInfo.setCreateTime(DateUtils.getNowDate()); + // 保存退料信息到 tm_task 表中 + result += taskMapper.insertTmTask(tmTask); + if (result > 0) { + TmTaskAgreement tmTaskAgreement = new TmTaskAgreement(tmTask.getTaskId(), dto.getBackApplyInfo().getAgreementId()); + tmTaskAgreement.setCreateTime(DateUtils.getNowDate()); + tmTaskAgreement.setCreateBy(SecurityUtils.getUsername()); + taskAgreementMapper.insertTmTaskAgreement(tmTaskAgreement); + backApplyInfo.setTaskId(tmTask.getTaskId()); + result += backApplyInfoMapper.insertBackApplyInfo(backApplyInfo); + } + if (result > 0) { + return AjaxResult.success(); + } + } else if (dto != null && dto.getBackApplyInfo() != null && dto.getBackApplyInfo().getId() != null) { + // 保存退料详情 + result = saveBackApplyDetails(dto, dto.getBackApplyInfo(), result); + if (result > 0) { + return AjaxResult.success(); + } + } else { + return insertBackApplyInfo(dto); + } + return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg()); + } + + /** + * app内层删除退料任务 + * @param backApplyInfo + * @return + */ + @Override + public AjaxResult delete(BackApplyInfo backApplyInfo) { + //先查询相关编码信息 + List maCodeVoList = backApplyInfoMapper.selectByCode(backApplyInfo.getParentId()); + //需要清除明细表以及可能存储的文件信息 + //清除back_apply_details表信息 + int result = backApplyInfoMapper.deleteApplyDetails(backApplyInfo); + //删除back_check_details表信息 + result += backApplyInfoMapper.deleteDetails(backApplyInfo); + //清除file文件表信息 + BmFileInfo fileInfo = new BmFileInfo(); + fileInfo.setTaskId(backApplyInfo.getParentId()); + fileInfo.setModelId(backApplyInfo.getId()); + result += bmFileInfoMapper.deleteBmFileInfoByBizInfo(fileInfo); + if (CollectionUtils.isNotEmpty(maCodeVoList)) { + for (MaCodeVo maCodeVo : maCodeVoList) { + BmFileInfo bmFileInfo = new BmFileInfo(); + bmFileInfo.setTaskId(backApplyInfo.getId()); + bmFileInfo.setModelId(maCodeVo.getMaId()); + result += bmFileInfoMapper.deleteBmFileInfoByBizInfo(bmFileInfo); + } + } + if (result > 0) { + return AjaxResult.success(); + } + return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg()); } /** diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/back/BackApplyInfoMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/back/BackApplyInfoMapper.xml index a000a667..3e8189a4 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/back/BackApplyInfoMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/back/BackApplyInfoMapper.xml @@ -100,9 +100,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mm.ma_id AS maId, mm.ma_code AS maCode, mm.ma_status AS maStatus, - mt1.type_name AS materialName, + mt1.type_name AS typeName, mm.type_id AS typeId, - mt.type_name AS typeName + mt.type_name AS materialName, + mt2.type_name AS materialType FROM lease_out_details lod LEFT JOIN ma_machine mm ON lod.ma_id = mm.ma_id @@ -110,6 +111,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND mt.del_flag = '0' LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id AND mt1.del_flag = '0' + LEFT JOIN ma_type mt2 ON mt1.parent_id = mt2.type_id + AND mt2.del_flag = '0' LEFT JOIN lease_apply_info lai ON lod.parent_id = lai.id LEFT JOIN tm_task_agreement tta ON lai.task_id = tta.task_id LEFT JOIN bm_agreement_info ba ON tta.agreement_id = ba.agreement_id @@ -508,10 +511,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" values (#{info.agreementId},#{info.typeId},#{info.maId},#{many},#{info.startTime},#{info.status},#{info.leaseId},#{info.leasePrice},#{info.buyPrice},'0',#{info.companyId},#{info.leaseType},now()); - - delete from back_apply_info where id = #{id} - - delete from back_apply_info where id = #{id} @@ -523,4 +522,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from back_check_details where parent_id = #{id} + + + delete from back_apply_details where id = #{id} + + + + delete from back_apply_details where parent_id = #{parentId} and type_id = #{typeId} + \ No newline at end of file From 414dafd002345b149e50c67a08edba3d296444a6 Mon Sep 17 00:00:00 2001 From: syruan <321359594@qq.com> Date: Wed, 20 Nov 2024 14:47:23 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=BB=B4=E4=BF=AE=E7=AE=A1=E7=90=86--?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=BB=B4=E4=BF=AE=E5=8D=95=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repair/controller/RepairController.java | 10 +++++ .../repair/domain/RepairTaskDetails.java | 8 ++++ .../repair/domain/vo/RepairTicketVo.java | 36 +++++++++++++++++ .../material/repair/mapper/RepairMapper.java | 12 ++++-- .../repair/service/RepairService.java | 10 ++--- .../service/impl/RepairServiceImpl.java | 39 +++++++++++++++++++ .../mapper/material/repair/RepairMapper.xml | 30 ++++++++++++++ 7 files changed, 137 insertions(+), 8 deletions(-) create mode 100644 bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/vo/RepairTicketVo.java diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/controller/RepairController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/controller/RepairController.java index e5181e3d..52fe317f 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/controller/RepairController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/controller/RepairController.java @@ -24,6 +24,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.ArrayList; import java.util.Arrays; @@ -91,6 +92,15 @@ public class RepairController extends BaseController { return AjaxResult.success(list); } + /** + * 查询维修单 + */ + @ApiOperation(value = "获取维修单详情") + @GetMapping("/getRepairTicketInfo") + public AjaxResult getRepairTicketInfo(@NotBlank(message = "TaskId参数不能为空") String taskId) { + return service.getRepairTicketInfo(taskId); + } + /** * 新增维修记录 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairTaskDetails.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairTaskDetails.java index 118bdea4..1d9f466f 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairTaskDetails.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/RepairTaskDetails.java @@ -97,4 +97,12 @@ public class RepairTaskDetails extends BaseEntity { @ApiModelProperty(value = "关键字") private String keyword; + + public RepairTaskDetails(String taskId) { + this.taskId = taskId; + } + + public RepairTaskDetails() { + } + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/vo/RepairTicketVo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/vo/RepairTicketVo.java new file mode 100644 index 00000000..341a1b42 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/domain/vo/RepairTicketVo.java @@ -0,0 +1,36 @@ +package com.bonus.material.repair.domain.vo; + +import com.bonus.material.repair.domain.RepairTask; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author : 阮世耀 + * @version : 1.0 + * @PackagePath: com.bonus.material.repair.domain.vo + * @CreateTime: 2024-11-20 09:43 + * @Description: 维修任务单VO + */ +@Data +@Api(value = "维修任务单") +@Accessors(chain = true) +public class RepairTicketVo { + + @ApiModelProperty(value = "维修任务信息") + private RepairTask repairTaskInfo; + + @ApiModelProperty(value = "维修物资列表") + private List repairDeviceArray; + + // 覆盖默认get方法,防止空指针异常 + public List getRepairDeviceList() { + if (this.repairDeviceArray == null) {return new ArrayList<>();} + return this.repairDeviceArray; + } + +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairMapper.java index 90ebeed6..a42c3b09 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairMapper.java @@ -24,6 +24,12 @@ public interface RepairMapper { */ List getRepairTaskList(RepairTask bean); + /** + * 获取维修任务列表 + * @param taskId 任务id + */ + RepairTask getRepairTaskInfoByTaskId(Long taskId); + /** * 获取维修详细列表 * @param bean 维修任务详情--查询条件 @@ -49,7 +55,7 @@ public interface RepairMapper { * @param repairer 维修人员 * @param userId 用户id */ - int updateRepairedNum(@Param("id") Long id, @Param("repairNum")int repairNum,@Param("repairer") Long repairer,@Param("userId") Long userId); + int updateRepairedNum(@Param("id") Long id, @Param("repairNum") int repairNum, @Param("repairer") Long repairer, @Param("userId") Long userId); /** * 修改报废数量 @@ -57,7 +63,7 @@ public interface RepairMapper { * @param scrapNum 报废数量 * @param userId 用户id */ - int updateScrapNum(@Param("id")Long id, @Param("scrapNum")int scrapNum,@Param("userId")Long userId); + int updateScrapNum(@Param("id") Long id, @Param("scrapNum") int scrapNum, @Param("userId") Long userId); /** * 新增配件维修记录 @@ -70,7 +76,7 @@ public interface RepairMapper { * @param ids 主键集合 * @param userId 用户id */ - int completeRepair(@Param("ids") ArrayList ids, @Param("userId")Long userId); + int completeRepair(@Param("ids") ArrayList ids, @Param("userId") Long userId); /** * 查询维修人员列表 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/RepairService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/RepairService.java index ee87204d..f15df446 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/RepairService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/RepairService.java @@ -29,6 +29,11 @@ public interface RepairService { */ List getRepairMaTypeList(RepairTaskDetails bean); + /** + * 查询维修单 + */ + AjaxResult getRepairTicketInfo(String taskId); + /** * 提交维修记录 */ @@ -36,8 +41,6 @@ public interface RepairService { /** * 快捷维修记录 - * @param list - * @return */ AjaxResult fastRepairApply(List list); @@ -50,7 +53,6 @@ public interface RepairService { /** * 查询维修人员列表 - * @return */ List selectUserList(); @@ -65,8 +67,6 @@ public interface RepairService { /** * 导出维修列表 - * @param bean - * @return */ List exportRepairTaskList(RepairTask bean); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java index 18bacca9..5471cdf5 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java @@ -2,6 +2,7 @@ package com.bonus.material.repair.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.NumberUtil; import com.bonus.common.biz.enums.RepairTaskStatusEnum; import com.bonus.common.biz.enums.TmTaskTypeEnum; import com.bonus.common.core.exception.ServiceException; @@ -12,6 +13,7 @@ import com.bonus.material.basic.mapper.BmFileInfoMapper; import com.bonus.material.repair.domain.*; import com.bonus.material.repair.domain.vo.RepairDeviceListVo; import com.bonus.material.repair.domain.vo.RepairDeviceVO; +import com.bonus.material.repair.domain.vo.RepairTicketVo; import com.bonus.material.repair.mapper.RepairMapper; import com.bonus.material.repair.service.RepairService; import com.bonus.material.task.mapper.TmTaskMapper; @@ -22,6 +24,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.*; @@ -94,6 +97,42 @@ public class RepairServiceImpl implements RepairService { return new ArrayList<>(resultMap.values()); } + /** + * 查询维修单 + * @param taskId 任务id + */ + @Override + public AjaxResult getRepairTicketInfo(@NotBlank(message = "TaskId参数不能为空") String taskId) { + if (!NumberUtil.isNumber(taskId)) { + return AjaxResult.error("TaskId参数非数字类型,参数类型错误"); + } + try { + long thisTaskId = Long.parseLong(taskId); + // 查询维修任务信息 + RepairTask repairTaskInfo = repairMapper.getRepairTaskInfoByTaskId(thisTaskId); + // 查询维修任务详情 + List repairMaTypeList = getRepairMaTypeList(new RepairTaskDetails(taskId)); + // TODO: 待完善--查询维修配件信息 + List partList = new ArrayList<>(); + if (Objects.isNull(repairTaskInfo)) { + return AjaxResult.error("未查询到维修任务信息"); + } + + // 组装result返回对象 + RepairTicketVo result = new RepairTicketVo() + .setRepairTaskInfo(repairTaskInfo) + .setRepairDeviceArray(repairMaTypeList); + + return AjaxResult.success(result); + } catch (NumberFormatException e) { + return AjaxResult.error("TaskId转换类型时发生错误:" + e.getMessage()); + } catch (DataAccessException e) { + return AjaxResult.error("数据库查询操作失败:" + e.getMessage()); + } catch (Exception e) { + return AjaxResult.error("代码处理异常:" + e.getMessage()); + } + } + /** * 提交维修记录 * @param bean repairApplyRecord diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml index d183abf8..c8658e40 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml @@ -80,6 +80,35 @@ where id = #{id} + + +