diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java index 4fec0c1f6..e4be802c2 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java @@ -9,10 +9,7 @@ import com.glxp.api.controller.BaseController; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.dev.DeviceRepairApplyEntity; import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; -import com.glxp.api.req.dev.DeviceRepairApplyAddParam; -import com.glxp.api.req.dev.DeviceRepairApplyConfirmParam; -import com.glxp.api.req.dev.DeviceRepairApplyHallQuery; -import com.glxp.api.req.dev.DeviceRepairApplyQuery; +import com.glxp.api.req.dev.*; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.service.dev.DeviceRepairApplyService; import com.glxp.api.vo.dev.DeviceRepairApplyVo; diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyDetailController.java b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyDetailController.java index a4088f7ac..0128fa63e 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyDetailController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyDetailController.java @@ -67,4 +67,18 @@ public class DeviceRepairApplyDetailController extends BaseController { } + /** + * 查出单条的设备保修单 + * + * @param query + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udi/device/repair/apply/listByIdAndCode") + public BaseResponse listByIdAndCode(@RequestBody @Valid DeviceRepairApplyListByIdAndCodeQuery query) { + DeviceRepairApplyDetailEntity entity = deviceRepairApplyDetailService.listByIdAndCode(query); + return ResultVOUtils.success(entity); + } + + } diff --git a/src/main/java/com/glxp/api/entity/dev/DeviceCheckDetailEntity.java b/src/main/java/com/glxp/api/entity/dev/DeviceCheckDetailEntity.java index 66ff6cb13..bfe1b62f5 100644 --- a/src/main/java/com/glxp/api/entity/dev/DeviceCheckDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/dev/DeviceCheckDetailEntity.java @@ -186,4 +186,10 @@ public class DeviceCheckDetailEntity { @TableField(value = "normalFlag") private Boolean normalFlag; + /** + * 报修单id + */ + @TableField(value = "applyId") + private Long applyId; + } diff --git a/src/main/java/com/glxp/api/entity/dev/DeviceRepairApplyDetailEntity.java b/src/main/java/com/glxp/api/entity/dev/DeviceRepairApplyDetailEntity.java index 71dd9762d..8662f43f8 100644 --- a/src/main/java/com/glxp/api/entity/dev/DeviceRepairApplyDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/dev/DeviceRepairApplyDetailEntity.java @@ -201,4 +201,10 @@ public class DeviceRepairApplyDetailEntity { */ @TableField(value = "finishTime") private LocalDateTime finishTime; -} \ No newline at end of file + + /** + * 报修人联系方式 + */ + @TableField(exist = false) + private String repairUserPhone; +} diff --git a/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java b/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java index c87b3e847..0e8312e3a 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java @@ -543,7 +543,7 @@ public class DeviceChangeOrderParam { public DeviceChangeOrderEntity getOrderEntity(AuthAdmin user) { - if (orderId != null) { + if (createUser != null) { DeviceChangeOrderEntity deviceChangeOrderEntity = new DeviceChangeOrderEntity(); BeanUtil.copyProperties(this, deviceChangeOrderEntity); return deviceChangeOrderEntity; diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java index 2ed2f7f10..f8eaf4d73 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java @@ -37,6 +37,8 @@ public class DeviceRepairApplyAddParam { @NotEmpty(message = "请选择至少一个设备进行报修") Set details; + Long taskId; + @Data public static class ApplyDetail { diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyListByIdAndCodeQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyListByIdAndCodeQuery.java new file mode 100644 index 000000000..c52097fce --- /dev/null +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyListByIdAndCodeQuery.java @@ -0,0 +1,20 @@ +package com.glxp.api.req.dev; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +@Data +public class DeviceRepairApplyListByIdAndCodeQuery { + + @NotNull(message = "报修单标识不能为空") + Long applyId; + + /** + * 报修人联系方式 + */ + @NotBlank(message = "设备标识不可以为空") + String deviceCode; + +} diff --git a/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java b/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java index 835cd72c9..b36f46949 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.dev.DeviceRepairApplyEntity; import com.glxp.api.req.dev.DeviceRepairApplyDetailDiagnosisParam; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; +import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; import java.util.List; @@ -31,4 +32,6 @@ public interface DeviceRepairApplyDetailService extends IService logs = new ArrayList<>(); orderItems.forEach(i -> { if (order.getType() == DeviceChangeTypeEnum.ADD) { - UdiRelevanceResponse productInfo = udiRelevanceService.selectByRelId(i.getProductId().toString()); - if (productInfo == null) { - throw new JsonException(String.format("未找到设备 %s", i.getProductName())); - } - i.setNameCode(productInfo.getNameCode()) - .setProductName(productInfo.getCpmctymc()) - .setGgxh(productInfo.getGgxh()) - .setMeasname(productInfo.getMeasname()) - .setManufactory(productInfo.getManufactory()) - .setZczbhhzbapzbh(productInfo.getZczbhhzbapzbh()) - .setSupId(productInfo.getUnitFk()) - .setSupName(productInfo.getSupName()) - ; +// UdiRelevanceResponse productInfo = udiRelevanceService.selectByRelId(i.getProductId().toString()); +// if (productInfo == null) { +// throw new JsonException(String.format("未找到设备 %s", i.getProductName())); +// } +// i.setNameCode(productInfo.getNameCode()) +// .setProductName(productInfo.getCpmctymc()) +// .setGgxh(productInfo.getGgxh()) +// .setMeasname(productInfo.getMeasname()) +// .setManufactory(productInfo.getManufactory()) +// .setZczbhhzbapzbh(productInfo.getZczbhhzbapzbh()) +// .setSupId(productInfo.getUnitFk()) +// .setSupName(productInfo.getSupName()) +// ; DeviceInfoEntity deviceInfoEntity = BeanUtil.copyProperties(i, DeviceInfoEntity.class); deviceInfoEntity.setCheckLock(false); deviceInfoEntity.setCreateUserId(order.getCreateUser()); @@ -120,15 +120,15 @@ public class DeviceChangeOrderServiceImpl extends ServiceImpl implements DeviceCheckDetailService { - final DeviceCheckService deviceCheckService; - final DeviceInfoService deviceInfoService; - final DeviceRepairService deviceRepairService; + @Resource + DeviceCheckService deviceCheckService; + @Resource + DeviceInfoService deviceInfoService; + @Resource + DeviceRepairService deviceRepairService; @Override public List pageList(DeviceCheckDetailQuery query) { diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java index 204783339..919336a5f 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.dev.DeviceCheckDetailEntity; import com.glxp.api.entity.dev.DeviceRepairApplyDetailEntity; import com.glxp.api.entity.dev.DeviceRepairApplyEntity; import com.glxp.api.entity.dev.DeviceRepairEntity; @@ -15,11 +16,9 @@ import com.glxp.api.enums.dev.DeviceStatusEnum; import com.glxp.api.exception.JsonException; import com.glxp.api.req.dev.DeviceRepairApplyDetailDiagnosisParam; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; -import com.glxp.api.service.dev.DeviceInfoService; -import com.glxp.api.service.dev.DeviceRepairApplyDetailService; +import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; +import com.glxp.api.service.dev.*; import com.glxp.api.dao.dev.DeviceRepairApplyDetailMapper; -import com.glxp.api.service.dev.DeviceRepairApplyService; -import com.glxp.api.service.dev.DeviceRepairService; import com.glxp.api.util.SnowflakeUtil; import groovy.util.logging.Slf4j; import lombok.RequiredArgsConstructor; @@ -28,6 +27,7 @@ import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; @@ -42,6 +42,9 @@ public class DeviceRepairApplyDetailServiceImpl extends ServiceImpl implements DeviceRepairApplyService { + @Resource + DeviceInfoService deviceInfoService; + @Resource + DeviceCheckDetailService deviceCheckDetailService; - private final DeviceInfoService deviceInfoService; @Autowired @Lazy @@ -100,8 +103,16 @@ public class DeviceRepairApplyServiceImpl extends ServiceImpl detailEntityList = param.getDetailEntityList(repairApply.getId(), deviceInfoService, user); + Long taskId = param.getTaskId(); detailEntityList.forEach(d -> { deviceInfoService.repairApply(d.getDeviceCode(), d.getDeptCode(), d.getApplyId()); + if (taskId != null){ + deviceCheckDetailService.update(Wrappers.lambdaUpdate(DeviceCheckDetailEntity.class) + .set(DeviceCheckDetailEntity::getApplyId, repairApply.getId()) + .eq(DeviceCheckDetailEntity::getTaskId, taskId) + .eq(DeviceCheckDetailEntity::getDeviceCode, d.getDeviceCode()) + ); + } }); super.save(repairApply); repairApplyDetailService.saveBatch(detailEntityList); diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairServiceImpl.java index 202955bee..6aee14796 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairServiceImpl.java @@ -18,6 +18,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; @@ -30,8 +31,10 @@ import java.util.List; public class DeviceRepairServiceImpl extends ServiceImpl implements DeviceRepairService { - final DeviceRepairApplyDetailService deviceRepairApplyDetailService; - final DeviceInfoService deviceInfoService; + @Resource + DeviceRepairApplyDetailService deviceRepairApplyDetailService; + @Resource + DeviceInfoService deviceInfoService; @Override public List pageList(DeviceRepairQuery query) { diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index e60967548..2677d3bfc 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -2327,7 +2327,7 @@ CALL Pro_Temp_ColumnWork('device_change_order_item', 'startImperativeDate', CALL Pro_Temp_ColumnWork('device_change_order_item', 'startMaintainDate', ' date NULL DEFAULT NULL COMMENT ''开始保养日期''', 1); -CALL Pro_Temp_ColumnWork('device_change_order_item', 'maintainType', +CALL Pro_Temp_ColumnWork('device_change_order_item', 'serviceType', ' varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT''维修组''', 1); CALL Pro_Temp_ColumnWork('device_change_order_item', 'maintainType', @@ -2495,3 +2495,9 @@ SET `menu_name` = '本科室设备', `parent_id` = 1703, `order_num` = 4, `path` CALL Pro_Temp_ColumnWork('device_repair', 'repairDescription', ' varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT''维修内容''', 1); +ALTER TABLE device_repair + MODIFY COLUMN `diagnosisInfo` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '诊断信息' AFTER `description`; + +CALL Pro_Temp_ColumnWork('device_check_detail', 'applyId', + 'bigint DEFAULT NULL COMMENT''报修单id''', + 1);