From 5f9b6437da9efe68e75be0df12f8b94bf12f81ac Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Thu, 9 May 2024 11:46:55 +0800 Subject: [PATCH 01/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/dev/DeviceRepairController.java | 8 ++++---- .../java/com/glxp/api/entity/dev/DeviceRepairEntity.java | 6 ++++++ .../com/glxp/api/service/dev/DeviceRepairService.java | 4 ++-- .../api/service/dev/impl/DeviceRepairServiceImpl.java | 7 ++++++- src/main/resources/schemas/schema_v2.4.sql | 5 +++++ 5 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceRepairController.java b/src/main/java/com/glxp/api/controller/dev/DeviceRepairController.java index 9d19c658e..72a95e593 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceRepairController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceRepairController.java @@ -52,14 +52,14 @@ public class DeviceRepairController extends BaseController { /** * 完成我的维修单 * - * @param repairId 维修单id + * @param deviceRepairEntity * @return */ @AuthRuleAnnotation("") - @GetMapping("/udi/device/repair/finishByUser/{repairId}") - public BaseResponse finishByUser(@PathVariable Long repairId) { + @PostMapping("/udi/device/repair/finishByUser/repairId") + public BaseResponse finishByUser(@RequestBody DeviceRepairEntity deviceRepairEntity) { AuthAdmin user = super.getUser(); - deviceRepairService.finishByUser(repairId, user); + deviceRepairService.finishByUser(deviceRepairEntity, user); return ResultVOUtils.successMsg("操作成功"); } diff --git a/src/main/java/com/glxp/api/entity/dev/DeviceRepairEntity.java b/src/main/java/com/glxp/api/entity/dev/DeviceRepairEntity.java index ef5feb4c4..462497de7 100644 --- a/src/main/java/com/glxp/api/entity/dev/DeviceRepairEntity.java +++ b/src/main/java/com/glxp/api/entity/dev/DeviceRepairEntity.java @@ -252,4 +252,10 @@ public class DeviceRepairEntity { */ @TableField(value = "confirmRemark") private String confirmRemark; + + /** + * 维修内容 + */ + @TableField(value = "repairDescription") + private String repairDescription; } diff --git a/src/main/java/com/glxp/api/service/dev/DeviceRepairService.java b/src/main/java/com/glxp/api/service/dev/DeviceRepairService.java index 007bb83b7..1f28dd86b 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceRepairService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceRepairService.java @@ -26,8 +26,8 @@ public interface DeviceRepairService extends IService { * 完成维修 * 同时改变设备状态 * - * @param repairId 维修单id + * @param deviceRepairEntity 维修单id * @param user 用户信息 */ - void finishByUser(Long repairId, AuthAdmin user); + void finishByUser(DeviceRepairEntity deviceRepairEntity, AuthAdmin user); } 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 034ca23dc..202955bee 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 @@ -61,7 +61,11 @@ public class DeviceRepairServiceImpl extends ServiceImpl Date: Fri, 10 May 2024 11:56:39 +0800 Subject: [PATCH 02/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dev/DeviceRepairApplyController.java | 5 +-- .../DeviceRepairApplyDetailController.java | 14 +++++++ .../entity/dev/DeviceCheckDetailEntity.java | 6 +++ .../dev/DeviceRepairApplyDetailEntity.java | 8 +++- .../api/req/dev/DeviceChangeOrderParam.java | 2 +- .../req/dev/DeviceRepairApplyAddParam.java | 2 + ...DeviceRepairApplyListByIdAndCodeQuery.java | 20 +++++++++ .../dev/DeviceRepairApplyDetailService.java | 5 ++- .../impl/DeviceChangeOrderServiceImpl.java | 42 +++++++++---------- .../impl/DeviceCheckDetailServiceImpl.java | 10 +++-- .../DeviceRepairApplyDetailServiceImpl.java | 35 ++++++++++++++-- .../impl/DeviceRepairApplyServiceImpl.java | 21 +++++++--- .../dev/impl/DeviceRepairServiceImpl.java | 7 +++- src/main/resources/schemas/schema_v2.4.sql | 8 +++- 14 files changed, 142 insertions(+), 43 deletions(-) create mode 100644 src/main/java/com/glxp/api/req/dev/DeviceRepairApplyListByIdAndCodeQuery.java 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); From 958aa625ada4f56da30f1c789531be39eecb2dd5 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Fri, 10 May 2024 18:26:04 +0800 Subject: [PATCH 03/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0510?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/dev/DeviceMiniController.java | 68 ++++++ .../dev/DeviceRepairApplyController.java | 13 +- .../dev/DeviceRepairApplyDetailMapper.java | 6 + .../DeviceRepairApplyDetailStatusEnum.java | 4 +- .../dev/DeviceRepairApplyStatusEnum.java | 6 +- .../req/dev/DeviceCheckDetailMiniQuery.java | 29 +++ .../dev/DeviceInfoDetailByDeptCodeQuery.java | 7 + .../api/req/dev/DeviceInfoDetailQuery.java | 3 + .../dev/DeviceRepairApplyDetailMiniQuery.java | 28 +++ .../req/dev/DeviceRepairApplyHallQuery.java | 2 + .../api/req/dev/DeviceRepairApplyQuery.java | 4 + .../DeviceRepairApplyDetailMiniResponse.java | 202 ++++++++++++++++++ .../service/dev/DeviceCheckDetailService.java | 2 + .../dev/DeviceRepairApplyDetailService.java | 4 + .../impl/DeviceCheckDetailServiceImpl.java | 27 ++- .../DeviceRepairApplyDetailServiceImpl.java | 45 +++- .../impl/DeviceRepairApplyServiceImpl.java | 18 +- .../mybatis/mapper/dev/DeviceInfoMapper.xml | 7 + .../dev/DeviceRepairApplyDetailMapper.xml | 64 ++++++ 19 files changed, 521 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java create mode 100644 src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java create mode 100644 src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java create mode 100644 src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java b/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java new file mode 100644 index 000000000..d9f9bfc08 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java @@ -0,0 +1,68 @@ +package com.glxp.api.controller.dev; + + +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.dev.DeviceCheckDetailEntity; +import com.glxp.api.req.dev.*; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; +import com.glxp.api.service.dev.DeviceCheckDetailService; +import com.glxp.api.service.dev.DeviceRepairApplyDetailService; +import groovy.util.logging.Slf4j; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.Valid; +import java.util.List; + +@Slf4j +@RestController +@RequestMapping +@RequiredArgsConstructor +public class DeviceMiniController extends BaseController { + + private final DeviceRepairApplyDetailService deviceRepairApplyDetailService; + private final DeviceCheckDetailService deviceCheckDetailService; + + /** + * 获取明细报修单列表分页 + * + * @param query + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udi/device/repair/apply/detail/mini/page") + public BaseResponse miniPage(@RequestBody @Valid DeviceRepairApplyDetailMiniQuery query) { + List list = deviceRepairApplyDetailService.miniPage(query); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse page = new PageSimpleResponse(); + page.setTotal(pageInfo.getTotal()); + page.setList(pageInfo.getList()); + return ResultVOUtils.success(page); + } + + + /** + * 巡检任务单明细列表 + * + * @param query + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udi/device/check/detail/mini/page") + public BaseResponse miniPage(@RequestBody @Valid DeviceCheckDetailMiniQuery query) { + List list = deviceCheckDetailService.miniPage(query); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse page = new PageSimpleResponse(); + page.setTotal(pageInfo.getTotal()); + page.setList(pageInfo.getList()); + return ResultVOUtils.success(page); + } +} 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 e4be802c2..f50702d38 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java @@ -18,6 +18,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.ArrayList; import java.util.List; @Slf4j @@ -57,9 +58,15 @@ public class DeviceRepairApplyController extends BaseController { @PostMapping("/udi/device/repair/apply/hall/page") public BaseResponse adminPage(@RequestBody DeviceRepairApplyHallQuery query) { DeviceRepairApplyQuery applyQuery = new DeviceRepairApplyQuery(); - applyQuery.setStatus(DeviceRepairApplyStatusEnum.WAIT_PROCESS); - applyQuery.setApplyId(query.getApplyId()); - applyQuery.setApplyDeptCode(query.getApplyDeptCode()); + ArrayList statusEnums = new ArrayList<>(); + if (query.getIsFinish() == 1){ + statusEnums.add(DeviceRepairApplyStatusEnum.FINISH); + }else { + statusEnums.add(DeviceRepairApplyStatusEnum.WAIT_PROCESS); + statusEnums.add(DeviceRepairApplyStatusEnum.PROCESSING); + } + applyQuery.setStatuss(statusEnums); + BeanUtil.copyProperties(query,applyQuery); List list = deviceRepairApplyService.pageList(applyQuery); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse page = new PageSimpleResponse(); diff --git a/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java b/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java index ee83b6b31..2f0070bc0 100644 --- a/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java +++ b/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java @@ -2,6 +2,11 @@ package com.glxp.api.dao.dev; import com.glxp.api.entity.dev.DeviceRepairApplyDetailEntity; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.req.dev.DeviceRepairApplyDetailMiniQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @author Administrator @@ -11,6 +16,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface DeviceRepairApplyDetailMapper extends BaseMapper { + List miniPage(@Param("param") DeviceRepairApplyDetailMiniQuery query); } diff --git a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java index 1b596ffa8..4f3e149de 100644 --- a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java +++ b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java @@ -11,10 +11,10 @@ import lombok.Getter; @AllArgsConstructor public enum DeviceRepairApplyDetailStatusEnum { - WAIT_DIAGNOSIS("wait_diagnosis", "待诊断"), + WAIT_DIAGNOSIS("wait_diagnosis", "待受理"), // WAIT_REPAIR("wait_repair", "待维修"), REPAIRING("repairing", "维修中"), - FINISH("finish", "完成"); + FINISH("finish", "已完成"); @EnumValue diff --git a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java index 95bbea11f..2d898748a 100644 --- a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java +++ b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java @@ -11,10 +11,10 @@ import lombok.Getter; @AllArgsConstructor public enum DeviceRepairApplyStatusEnum { - WAIT_PROCESS("wait_process", "待受理"), - PROCESSING("processing", "受理中"), + WAIT_PROCESS("wait_process", "未受理"), + PROCESSING("processing", "部分受理"), // REPAIRING("repairing", "维修中"), - FINISH("finish", "完成"); + FINISH("finish", "已完成"); @EnumValue diff --git a/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java new file mode 100644 index 000000000..aef28b8c5 --- /dev/null +++ b/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java @@ -0,0 +1,29 @@ +package com.glxp.api.req.dev; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class DeviceCheckDetailMiniQuery extends ListPageRequest { + + /** + * 部门编码 + */ + @NotBlank(message = "缺少部门编码") + private String deptCode; + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + + /** + * 是否完成 + */ + private Boolean finishFlag; + + +} diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java index 989d773ce..be65cbc2c 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java @@ -9,6 +9,13 @@ import javax.validation.constraints.NotNull; @Data public class DeviceInfoDetailByDeptCodeQuery extends ListPageRequest { + + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + /** * 部门编码 */ diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java index 202618519..08c0e85fc 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java @@ -68,4 +68,7 @@ public class DeviceInfoDetailQuery extends ListPageRequest { private String zczbhhzbapzbh; + private String deviceCodeAndUdi; + + } diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java new file mode 100644 index 000000000..9f376a832 --- /dev/null +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java @@ -0,0 +1,28 @@ +package com.glxp.api.req.dev; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class DeviceRepairApplyDetailMiniQuery extends ListPageRequest { + + /** + * 部门编码 + */ + @NotBlank(message = "缺少部门编码") + private String deptCode; + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + + /** + * 状态 待诊断、待维修、维修中、完成', + */ + private String status; + + +} diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java index 9bf85f8a1..e08f0a304 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java @@ -14,4 +14,6 @@ public class DeviceRepairApplyHallQuery extends ListPageRequest { */ String applyDeptCode; + Integer isFinish; + } diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java index 9e3d81ae5..fe06f5ac5 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java @@ -4,6 +4,8 @@ import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class DeviceRepairApplyQuery extends ListPageRequest { @@ -33,4 +35,6 @@ public class DeviceRepairApplyQuery extends ListPageRequest { */ String repairInfo; + List statuss; + } diff --git a/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java b/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java new file mode 100644 index 000000000..435266928 --- /dev/null +++ b/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java @@ -0,0 +1,202 @@ +package com.glxp.api.res.dev; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.glxp.api.enums.dev.DeviceRepairApplyDetailStatusEnum; +import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class DeviceRepairApplyDetailMiniResponse { + + /** + * 报修单id + */ + @TableField(value = "applyId") + private Long applyId; + + /** + * 设备编码 + */ + @TableField(value = "deviceCode") + private String deviceCode; + + /** + * 部门编码 + */ + @TableField(value = "deptCode") + private String deptCode; + + /** + * 部门名称 + */ + @TableField(value = "deptName") + private String deptName; + + /** + * 问题描述 + */ + @TableField(value = "description") + private String description; + + /** + * 诊断信息 + */ + @TableField(value = "diagnosisInfo") + private String diagnosisInfo; + + /** + * 状态 待诊断、待维修、维修中、完成 + */ + @TableField(value = "status") + private DeviceRepairApplyDetailStatusEnum status; + + /** + * 是否需要维修 true/false + */ + @TableField(value = "repairFlag") + private Boolean repairFlag; + + /** + * 维修单id + */ + @TableField(value = "repairId") + private Long repairId; + + /** + * 产品id + */ + @TableField(value = "productId") + private Long productId; + + /** + * UDI码 + */ + @TableField(value = "udi") + private String udi; + + /** + * DI码 + */ + @TableField(value = "nameCode") + private String nameCode; + + /** + * 产品名称 + */ + @TableField(value = "productName") + private String productName; + + /** + * 规格型号 + */ + @TableField(value = "ggxh") + private String ggxh; + + + + /** + * 报修单id + */ + @TableId(value = "id") + private Long id; + +// /** +// * 状态 待受理,受理中,维修中,完成 +// */ +// @TableField(value = "status") +// private DeviceRepairApplyStatusEnum status; + + /** + * 报修部门编码 + */ + @TableField(value = "applyDeptCode") + private String applyDeptCode; + + /** + * 报修部门 + */ + @TableField(value = "applyDeptName") + private String applyDeptName; + + /** + * 报修人id + */ + @TableField(value = "applyUserId") + private Long applyUserId; + + /** + * 报修人姓名 + */ + @TableField(value = "applyUserName") + private String applyUserName; + + /** + * 报修人联系方式 + */ + @TableField(value = "applyUserPhone") + private String applyUserPhone; + + /** + * 报修时间 + */ + @TableField(value = "applyTime") + private LocalDateTime applyTime; + + /** + * 设备数量 + */ + @TableField(value = "deviceCount") + private Integer deviceCount; + + /** + * 完成数量 + */ + @TableField(value = "finishCount") + private Integer finishCount; + + /** + * 确认部门 + */ + @TableField(value = "confirmDeptCode") + private String confirmDeptCode; + + /** + * 确认部门名称 + */ + @TableField(value = "confirmDeptName") + private String confirmDeptName; + + /** + * 确认人id + */ + @TableField(value = "confirmUserId") + private Long confirmUserId; + + /** + * 确认人姓名 + */ + @TableField(value = "confirmUserName") + private String confirmUserName; + + /** + * 确认人联系方式 + */ + @TableField(value = "confirmPhone") + private String confirmPhone; + + /** + * 确认时间 + */ + @TableField(value = "confirmTime") + private LocalDateTime confirmTime; + + /** + * 完成时间 + */ + @TableField(value = "finishTime") + private LocalDateTime finishTime; + +} diff --git a/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java b/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java index 482d72bc7..6d72c15a2 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java @@ -3,6 +3,7 @@ package com.glxp.api.service.dev; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.dev.DeviceCheckDetailEntity; import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.dev.DeviceCheckDetailMiniQuery; import com.glxp.api.req.dev.DeviceCheckDetailParam; import com.glxp.api.req.dev.DeviceCheckDetailQuery; import com.glxp.api.req.dev.DeviceCheckDetailRepairParam; @@ -32,4 +33,5 @@ public interface DeviceCheckDetailService extends IService miniPage(DeviceCheckDetailMiniQuery query); } 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 b36f46949..b180fdbf1 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java @@ -5,8 +5,10 @@ import com.glxp.api.entity.dev.DeviceRepairApplyDetailEntity; 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.DeviceRepairApplyDetailMiniQuery; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; import java.util.List; @@ -34,4 +36,6 @@ public interface DeviceRepairApplyDetailService extends IService miniPage(DeviceRepairApplyDetailMiniQuery query); } diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java index af747b341..40d39091d 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java @@ -3,6 +3,8 @@ package com.glxp.api.service.dev.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; @@ -12,10 +14,7 @@ import com.glxp.api.entity.dev.DeviceCheckDetailItemEntity; import com.glxp.api.entity.dev.DeviceRepairEntity; import com.glxp.api.enums.dev.DeviceStatusEnum; import com.glxp.api.exception.JsonException; -import com.glxp.api.req.dev.DeviceCheckDetailItemFinishParam; -import com.glxp.api.req.dev.DeviceCheckDetailParam; -import com.glxp.api.req.dev.DeviceCheckDetailQuery; -import com.glxp.api.req.dev.DeviceCheckDetailRepairParam; +import com.glxp.api.req.dev.*; import com.glxp.api.service.dev.*; import com.glxp.api.dao.dev.DeviceCheckDetailMapper; import com.glxp.api.util.IntUtil; @@ -145,6 +144,26 @@ public class DeviceCheckDetailServiceImpl extends ServiceImpl miniPage(DeviceCheckDetailMiniQuery query) { + if (query.getPage() != null) { + PageHelper.startPage(query.getPage(), query.getLimit()); + } + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(DeviceCheckDetailEntity.class) + .eq(DeviceCheckDetailEntity::getDeptCode, query.getDeptCode()); + if (StrUtil.isNotBlank(query.getDeviceCodeAndUdi())) { + queryWrapper.and(qW -> { + qW.like(DeviceCheckDetailEntity::getDeviceCode, query.getDeviceCodeAndUdi()) + .or().like(DeviceCheckDetailEntity::getUdi, query.getDeviceCodeAndUdi()); + }); + } + if (query.getFinishFlag() != null) { + queryWrapper.eq(DeviceCheckDetailEntity::getFinishFlag, query.getFinishFlag()); + } + List list = super.list(queryWrapper); + return list; + } } 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 919336a5f..13c5762c5 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 @@ -1,6 +1,9 @@ package com.glxp.api.service.dev.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.BeanUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -15,8 +18,10 @@ import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; 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.DeviceRepairApplyDetailMiniQuery; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; import com.glxp.api.service.dev.*; import com.glxp.api.dao.dev.DeviceRepairApplyDetailMapper; import com.glxp.api.util.SnowflakeUtil; @@ -44,6 +49,8 @@ public class DeviceRepairApplyDetailServiceImpl extends ServiceImpl list = super.list(Wrappers.lambdaQuery(DeviceRepairApplyDetailEntity.class) + .eq(DeviceRepairApplyDetailEntity::getApplyId, applyId) + .eq(DeviceRepairApplyDetailEntity::getStatus, DeviceRepairApplyDetailStatusEnum.WAIT_DIAGNOSIS)); + if (CollectionUtil.isNotEmpty(list)){ + deviceRepairApplyService.update(Wrappers.lambdaUpdate(DeviceRepairApplyEntity.class) + .set(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyStatusEnum.PROCESSING) + .eq(DeviceRepairApplyEntity::getId, applyId)); + }else { + deviceRepairApplyService.update(Wrappers.lambdaUpdate(DeviceRepairApplyEntity.class) + .set(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyStatusEnum.FINISH) + .eq(DeviceRepairApplyEntity::getId, applyId)); + } } @Override @@ -162,6 +193,14 @@ public class DeviceRepairApplyDetailServiceImpl extends ServiceImpl miniPage(DeviceRepairApplyDetailMiniQuery query) { + if (query.getPage() != null) { + PageHelper.startPage(query.getPage(), query.getLimit()); + } + return super.baseMapper.miniPage(query); + } } diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java index 0d6f90e14..598633af0 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.glxp.api.service.dev.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -28,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; +import java.util.stream.Collectors; /** * 针对表【device_repair_apply(设备报修单)】的数据库操作Service实现 @@ -49,14 +51,18 @@ public class DeviceRepairApplyServiceImpl extends ServiceImpl pageList(DeviceRepairApplyQuery query) { - String acceptInfo = query.getAcceptInfo(); - String repairInfo = query.getRepairInfo(); if (query.getPage() != null) { PageHelper.startPage(query.getPage(), query.getLimit()); } + List statuss = query.getStatuss(); + DeviceRepairApplyStatusEnum status = query.getStatus(); + if (status != null){ + statuss.add(status); + } + String acceptInfo = query.getAcceptInfo(); + String repairInfo = query.getRepairInfo(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(DeviceRepairApplyEntity.class); wrapper.eq(query.getApplyId() != null, DeviceRepairApplyEntity::getId, query.getApplyId()) - .eq(query.getStatus() != null, DeviceRepairApplyEntity::getStatus, query.getStatus()) .eq(query.getConfirmUserId() != null, DeviceRepairApplyEntity::getConfirmUserId, query.getConfirmUserId()) .eq(StrUtil.isNotBlank(query.getApplyDeptCode()), DeviceRepairApplyEntity::getApplyDeptCode, query.getApplyDeptCode()) .orderByDesc(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyEntity::getApplyTime); @@ -84,6 +90,12 @@ public class DeviceRepairApplyServiceImpl extends ServiceImpl statusValues = statuss.stream() + .map(DeviceRepairApplyStatusEnum::getKey) // 假设 getStatusValue() 是获取用于查询的字符串值的方法 + .collect(Collectors.toList()); + wrapper.in(DeviceRepairApplyEntity::getStatus, statusValues); + } List list = super.list(wrapper); return list; diff --git a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml index a488af12c..ed3c4393a 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml @@ -86,6 +86,13 @@ and info.productName like concat('%',#{param.productName},'%') + + and ( + info.deviceCode like concat('%',#{param.deviceCodeAndUdi},'%') + or + info.udi like concat('%',#{param.deviceCodeAndUdi},'%') + ) + and info.status != 'destroy' and info.deviceCode not in ( select deviceCode from device_plan_detail where planId = #{param.planId} ) diff --git a/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml index e4a3bc21e..f320e7d3b 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml @@ -44,4 +44,68 @@ supName,confirmUserId,confirmUserName, confirmTime,confirmRemark + + + From 44bc4aa00a14a49ce86bb909df4f40fee2e67a15 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Sun, 12 May 2024 09:14:00 +0800 Subject: [PATCH 04/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0512-=E4=BF=AE=E6=94=B9=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E8=AF=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/req/dev/DevicePlanDetailItemParam.java | 2 +- src/main/java/com/glxp/api/req/dev/DevicePlanDetailParam.java | 2 +- src/main/java/com/glxp/api/req/dev/DevicePlanParam.java | 2 +- .../java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/glxp/api/req/dev/DevicePlanDetailItemParam.java b/src/main/java/com/glxp/api/req/dev/DevicePlanDetailItemParam.java index f143ae9d6..5f70da5c3 100644 --- a/src/main/java/com/glxp/api/req/dev/DevicePlanDetailItemParam.java +++ b/src/main/java/com/glxp/api/req/dev/DevicePlanDetailItemParam.java @@ -55,7 +55,7 @@ public class DevicePlanDetailItemParam { public List getEntity(DeviceCheckItemDictService deviceCheckItemDictService) { List list = deviceCheckItemDictService.listByIds(itemCodes); if (CollectionUtil.isEmpty(list)) { - throw new JsonException("所有项目编码都不存在,疑似非法操作"); + throw new JsonException("项目编码不存在,请确认"); } if (list.size() != itemCodes.size()) { Map> collect = list.stream().collect(Collectors.groupingBy(DeviceCheckItemDictEntity::getCode)); diff --git a/src/main/java/com/glxp/api/req/dev/DevicePlanDetailParam.java b/src/main/java/com/glxp/api/req/dev/DevicePlanDetailParam.java index 3f7e4e41f..5b341ecfc 100644 --- a/src/main/java/com/glxp/api/req/dev/DevicePlanDetailParam.java +++ b/src/main/java/com/glxp/api/req/dev/DevicePlanDetailParam.java @@ -41,7 +41,7 @@ public class DevicePlanDetailParam { public List getEntity(DeviceInfoService deviceInfoService) { List deviceList = deviceInfoService.listByIds(deviceCodes); if (CollectionUtil.isEmpty(deviceList)) { - throw new JsonException("未找到设备,疑似非法操作"); + throw new JsonException("设备编码不存在,请确认"); } List list = deviceList.stream().map(d -> { diff --git a/src/main/java/com/glxp/api/req/dev/DevicePlanParam.java b/src/main/java/com/glxp/api/req/dev/DevicePlanParam.java index ad5c042d2..3d936d116 100644 --- a/src/main/java/com/glxp/api/req/dev/DevicePlanParam.java +++ b/src/main/java/com/glxp/api/req/dev/DevicePlanParam.java @@ -67,7 +67,7 @@ public class DevicePlanParam { public void valid(DeptService deptService) { DeptEntity dept = deptService.selectByCode(chargeDeptCode); if (dept == null) { - throw new JsonException("负责部门不存在,疑似非法操作"); + throw new JsonException("负责部门不存在,请确认"); } if (startDate.isAfter(endDate)) { throw new JsonException("计划开始日期不能在计划结束日期之后"); 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 f8eaf4d73..5084b7598 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyAddParam.java @@ -91,7 +91,7 @@ public class DeviceRepairApplyAddParam { public List getDetailEntityList(Long applyId, DeviceInfoService deviceInfoService, AuthAdmin user) { List list = deviceInfoService.listVoByCodes(details.stream().map(ApplyDetail::getDeviceCode).collect(Collectors.toList()), user.getLocDeptCode(), DeviceStatusEnum.NORMAL); if (list.size() != details.size()) { - throw new JsonException("设备信息不匹配,疑似非法操作"); + throw new JsonException("设备状态异常或信息不符,请确认"); } Map> deviceMap = list.stream().collect(Collectors.groupingBy(DeviceInfoEntity::getDeviceCode)); return details.stream().map(d -> { From 11754a27bbb24a0a9401caf4e2040a4bd1d9a4cc Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Sun, 12 May 2024 10:28:10 +0800 Subject: [PATCH 05/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0512-=E5=A2=9E=E5=8A=A0=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/dev/DeviceInfoController.java | 4 ++-- .../glxp/api/entity/dev/DeviceChangeOrderEntity.java | 8 +++++++- .../com/glxp/api/req/dev/DeviceChangeOrderParam.java | 5 +++++ .../api/req/dev/DeviceInfoDetailByDeptCodeQuery.java | 2 +- .../java/com/glxp/api/vo/dev/DeviceChangeOrderVo.java | 11 +++++++++++ src/main/resources/schemas/schema_v2.4.sql | 3 +++ 6 files changed, 29 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceInfoController.java b/src/main/java/com/glxp/api/controller/dev/DeviceInfoController.java index 5c206de22..5592ea459 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceInfoController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceInfoController.java @@ -151,6 +151,8 @@ public class DeviceInfoController extends BaseController { @AuthRuleAnnotation("") @PostMapping("/udi/device/info/detailByDeptCode/page") public BaseResponse detailByDeptCode(@RequestBody @Valid DeviceInfoDetailByDeptCodeQuery query) { + AuthAdmin user = super.getUser(); + query.setDeptCode(user.getLocDeptCode()); List list = deviceInfoService.detail(query); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse page = new PageSimpleResponse(); @@ -168,8 +170,6 @@ public class DeviceInfoController extends BaseController { @AuthRuleAnnotation("") @PostMapping("/udi/device/detailInfo/page") public BaseResponse detailInfoPage(@RequestBody DeviceInfoDetailQuery query) { - AuthAdmin user = super.getUser(); - query.setDeptCode(user.getLocDeptCode()); List list = deviceInfoService.detail(query); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse page = new PageSimpleResponse(); diff --git a/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java b/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java index d97fa3137..7ec450165 100644 --- a/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java @@ -107,4 +107,10 @@ public class DeviceChangeOrderEntity implements Serializable { @TableField(exist = false) private static final long serialVersionUID = 1L; -} \ No newline at end of file + + /** + * 移除类型 + */ + @TableField(value = "destroyType") + private Integer destroyType; +} 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 0e8312e3a..5aade9ce7 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java @@ -112,6 +112,11 @@ public class DeviceChangeOrderParam { @TableField(value = "createTime") private LocalDateTime createTime; + /** + * 移除类型 + */ + private Integer destroyType; + @Data public static class Item { /** diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java index be65cbc2c..dbf5317f6 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java @@ -19,7 +19,7 @@ public class DeviceInfoDetailByDeptCodeQuery extends ListPageRequest { /** * 部门编码 */ - @NotBlank(message = "缺少部门编码") +// @NotBlank(message = "缺少部门编码") private String deptCode; /** diff --git a/src/main/java/com/glxp/api/vo/dev/DeviceChangeOrderVo.java b/src/main/java/com/glxp/api/vo/dev/DeviceChangeOrderVo.java index ed3923bfa..56882a788 100644 --- a/src/main/java/com/glxp/api/vo/dev/DeviceChangeOrderVo.java +++ b/src/main/java/com/glxp/api/vo/dev/DeviceChangeOrderVo.java @@ -1,6 +1,7 @@ package com.glxp.api.vo.dev; import com.glxp.api.entity.dev.DeviceChangeOrderEntity; +import com.glxp.api.enums.dev.DeviceChangeTypeEnum; import lombok.Data; @Data @@ -17,6 +18,16 @@ public class DeviceChangeOrderVo extends DeviceChangeOrderEntity { public String getTypeName() { if (super.getType() != null) { + DeviceChangeTypeEnum type = super.getType(); + if (type.equals(DeviceChangeTypeEnum.DESTROY)){ + if (super.getDestroyType()!= null){ + if (super.getDestroyType() == 1){ + return "报废"; + }else { + return "销毁"; + } + } + } return super.getType().getDesc(); } return typeName; diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index 2677d3bfc..248713ff1 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -2501,3 +2501,6 @@ ALTER TABLE device_repair CALL Pro_Temp_ColumnWork('device_check_detail', 'applyId', 'bigint DEFAULT NULL COMMENT''报修单id''', 1); +CALL Pro_Temp_ColumnWork('device_change_order', 'destroyType', + 'bigint DEFAULT NULL COMMENT''移除类型 1报废;2销毁''', + 1); From 770caa552c1a6ead4477c2eb18a4268419e206c7 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Sun, 12 May 2024 16:12:51 +0800 Subject: [PATCH 06/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0512-=E5=A2=9E=E5=8A=A0=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E8=AE=BE=E5=A4=87=E7=9A=84=E5=AE=A1=E6=89=B9=E6=B5=81?= =?UTF-8?q?=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/constant/Constant.java | 4 + .../SysApprovalFlowConfigController.java | 14 + .../basic/SysApprovalFlowController.java | 105 ++++++ .../api/entity/basic/SysApprovalFlow.java | 12 + .../entity/basic/SysApprovalFlowConfigMx.java | 21 ++ .../api/entity/basic/SysApprovalFlowMx.java | 21 ++ .../entity/dev/DeviceChangeOrderEntity.java | 12 + .../api/enums/dev/DeviceChangeStatusEnum.java | 1 + .../SysApprovalFlowAddDetailRequest.java | 25 +- .../api/req/dev/DeviceChangeOrderParam.java | 12 +- .../service/basic/SysApprovalFlowService.java | 4 + .../impl/SysApprovalFlowServiceImpl.java | 58 +++- .../impl/DeviceChangeOrderServiceImpl.java | 79 ++++- .../glxp/api/vo/dev/DeviceChangeOrderVo.java | 14 + .../basic/SysApprovalFlowConfigMxMapper.xml | 320 +----------------- .../mapper/dev/DeviceChangeOrderMapper.xml | 4 +- src/main/resources/schemas/schema_v2.4.sql | 44 +++ 17 files changed, 418 insertions(+), 332 deletions(-) diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java index 902d7c91d..57241b98d 100644 --- a/src/main/java/com/glxp/api/constant/Constant.java +++ b/src/main/java/com/glxp/api/constant/Constant.java @@ -32,6 +32,10 @@ public class Constant { public static final String DH_ORDER = "DH"; //到货 public static final String TH_ORDER = "TH"; //退货 + public static final String DEV_DDJ = "DDJ"; //设备登记 + public static final String DEV_DBG = "DBG"; //设备变更 + public static final String DEV_DYC = "DYC"; //设备移除 + /** * 盘点单据前缀 diff --git a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java index a89338cd0..88fa95ac3 100644 --- a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java +++ b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java @@ -59,6 +59,20 @@ public class SysApprovalFlowConfigController { @ApiOperation(value = "新增配置详情") @PostMapping("/udiwms/sysApprovalFlowConfig/addConfigDetail") public BaseResponse addConfigDetail(@RequestBody @Valid SysApprovalFlowAddDetailRequest sysApprovalFlowAddDetailRequest) { + Integer approvalNodeType = sysApprovalFlowAddDetailRequest.getApprovalNodeType(); + if (approvalNodeType == 1){ + String approvalUserId = sysApprovalFlowAddDetailRequest.getApprovalUserId(); + String approvalUserName = sysApprovalFlowAddDetailRequest.getApprovalUserName(); + if (StringUtil.isEmpty(approvalUserId)) return ResultVOUtils.error("审批人主键不可以为空!"); + if (StringUtil.isEmpty(approvalUserName)) return ResultVOUtils.error("审批人名称不可以为空!"); + + }else if(approvalNodeType == 2){ + String approvalPostId = sysApprovalFlowAddDetailRequest.getApprovalPostId(); + String approvalPostName = sysApprovalFlowAddDetailRequest.getApprovalPostName(); + if (StringUtil.isEmpty(approvalPostId)) return ResultVOUtils.error("审批岗位序号不可以为空!"); + if (StringUtil.isEmpty(approvalPostName)) return ResultVOUtils.error("审批岗位名称不可以为空!"); + } + int i = sysApprovalFlowConfigService.addConfigDetail(sysApprovalFlowAddDetailRequest); return ResultVOUtils.success(); } diff --git a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java index 50ccba404..7acc26386 100644 --- a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java +++ b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java @@ -1,17 +1,42 @@ package com.glxp.api.controller.basic; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.auth.AuthAdmin; +import com.glxp.api.entity.auth.DeptEntity; +import com.glxp.api.entity.basic.SysApprovalFlow; +import com.glxp.api.entity.dev.DeviceChangeLogEntity; +import com.glxp.api.entity.dev.DeviceChangeOrderEntity; +import com.glxp.api.entity.dev.DeviceChangeOrderItemEntity; +import com.glxp.api.enums.ApprovalFlowEnum; +import com.glxp.api.enums.dev.DeviceChangeStatusEnum; +import com.glxp.api.enums.dev.DeviceChangeTypeEnum; +import com.glxp.api.enums.dev.DeviceStatusEnum; +import com.glxp.api.exception.JsonException; import com.glxp.api.req.basic.SubmitApprovalFlowRequest; import com.glxp.api.res.basic.SysApprovalFlowDetailResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.auth.DeptService; import com.glxp.api.service.basic.SysApprovalFlowService; +import com.glxp.api.service.dev.DeviceChangeLogService; +import com.glxp.api.service.dev.DeviceChangeOrderItemService; +import com.glxp.api.service.dev.DeviceChangeOrderService; +import com.glxp.api.service.dev.DeviceInfoService; import com.glxp.api.service.system.SystemParamConfigService; +import com.glxp.api.vo.dev.DeviceChangeOrderVo; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; +import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.List; @Slf4j @@ -22,6 +47,18 @@ public class SysApprovalFlowController { private SysApprovalFlowService sysApprovalFlowService; @Resource private SystemParamConfigService systemParamConfigService; + @Resource + private DeviceChangeOrderService deviceChangeOrderService; + @Resource + private DeviceChangeOrderItemService deviceChangeOrderItemService; + @Resource + private DeviceInfoService deviceInfoService; + @Resource + private DeviceChangeLogService deviceChangeLogService; + @Resource + private DeptService deptService; + @Resource + private CustomerService customerService; @ApiOperation(value = "获取流程审批过程") @GetMapping("/udiwms/sysApprovalFlow/approvalFlowDetailList/{approvalFlowId}") @@ -44,4 +81,72 @@ public class SysApprovalFlowController { return ResultVOUtils.success(sys_approval_flow); } + @ApiOperation(value = "是否有节点审批权限") + @GetMapping("/sysApprovalFlow/nodePermissions/{id}") + public BaseResponse nodePermissions(@PathVariable String id) { + boolean b = sysApprovalFlowService.nodePermissions(id); + return ResultVOUtils.success(b); + } + + @ApiOperation(value = "提交节点审批-设备一处") + @PostMapping("/udiwms/sysApprovalFlow/submitApprovalFlow/sbyc") + @Transactional(rollbackFor = Exception.class) + public BaseResponse submitApprovalFlowSbyc(@RequestBody @Valid SubmitApprovalFlowRequest submitApprovalFlowRequest) { + String approvalFlowMxId = submitApprovalFlowRequest.getId(); + sysApprovalFlowService.submitApprovalFlow(submitApprovalFlowRequest); + + //判断是否是最终状态为 审核通过 是 调用 审核通过的后续方法 + SysApprovalFlow sysApprovalFlow = sysApprovalFlowService.getApprovalFlowByMxId(approvalFlowMxId); + Integer status = sysApprovalFlow.getStatus(); + if (status.equals(ApprovalFlowEnum.TG.getCode())){ + //后续方法 + String id = sysApprovalFlow.getId(); + DeviceChangeOrderEntity order = deviceChangeOrderService.getOne(Wrappers.lambdaQuery(DeviceChangeOrderEntity.class).eq(DeviceChangeOrderEntity::getApprovalFlowId, id)); + if (order == null){ + return ResultVOUtils.error("未找到对应的审批流程,请确认"); + } + LocalDateTime now = LocalDateTime.now(); + Long userId = customerService.getUserId(); + AuthAdmin authUserDto = customerService.getUserBean(); + //查询创建人名称 + String userName = authUserDto.getEmployeeName(); + + deviceChangeOrderService.update(Wrappers.lambdaUpdate(DeviceChangeOrderEntity.class) + .set(DeviceChangeOrderEntity::getStatus, DeviceChangeStatusEnum.FINISH) + .set(DeviceChangeOrderEntity::getConfirmTime, now) + .set(DeviceChangeOrderEntity::getConfirmUser, userId) + .set(DeviceChangeOrderEntity::getConfirmUserName, userName) + .eq(DeviceChangeOrderEntity::getApprovalFlowId, id) + .eq(DeviceChangeOrderEntity::getStatus, DeviceChangeStatusEnum.AUDITING)); + + List list = deviceChangeOrderItemService.list(Wrappers.lambdaQuery(DeviceChangeOrderItemEntity.class).eq(DeviceChangeOrderItemEntity::getOrderId, order.getOrderId())); + if (CollectionUtil.isEmpty(list)){ + return ResultVOUtils.error("单据里待移除设备不存在,请确认"); + } + List logs = new ArrayList<>(); + DeviceChangeOrderVo orderVo = BeanUtil.copyProperties(order, DeviceChangeOrderVo.class); + orderVo.setConfirmTime(now); + orderVo.setConfirmUser(userId); + orderVo.setConfirmUserName(userName); + DeptEntity dept = deptService.selectByCode(orderVo.getDeptCode()); + orderVo.setDeptName(dept.getName()); + if (orderVo.getToDeptCode().equals(orderVo.getDeptCode())) { + orderVo.setToDeptName(dept.getName()); + } else { + dept = deptService.selectByCode(orderVo.getToDeptCode()); + orderVo.setToDeptName(dept.getName()); + } + list.forEach( i ->{ + deviceInfoService.changeStatus(i.getDeviceCode(), order.getDeptCode(), DeviceStatusEnum.NORMAL, order.getType() == DeviceChangeTypeEnum.CHANGE ? DeviceStatusEnum.CHANGE : DeviceStatusEnum.DESTROY); + if (order.getType() == DeviceChangeTypeEnum.DESTROY) { + DeviceChangeLogEntity logEntity = DeviceChangeLogEntity.genEntity(i.getDeviceCode(), orderVo); + logs.add(logEntity); + } + }); + if (CollectionUtil.isNotEmpty(logs)) { + deviceChangeLogService.saveBatch(logs); + } + } + return ResultVOUtils.success(); + } } diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java index 8a40970ba..c69606946 100644 --- a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java @@ -76,4 +76,16 @@ public class SysApprovalFlow { @TableField(value = "updateTime") private Date updateTime; + /** + * 下一个节点名字 + */ + @TableField(value = "nextNodeName") + private String nextNodeName; + + /** + * 下一个节点审核类型 + */ + @TableField(value = "nextApprovalNodeType") + private Integer nextApprovalNodeType; + } diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java index dbdb1d214..d0a0a17ef 100644 --- a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java @@ -65,4 +65,25 @@ public class SysApprovalFlowConfigMx { @TableField(value = "updateTime") private Date updateTime; + + /** + * 审批节点类型 + */ + @TableField(value = "approvalNodeType") + private Integer approvalNodeType; + + + /** + * 审批岗位序号 + */ + @TableField(value = "approvalPostId") + private String approvalPostId; + + + /** + * 审批岗位名称 + */ + @TableField(value = "approvalPostName") + private String approvalPostName; + } diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java index 4134113c4..91f6584d8 100644 --- a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java @@ -84,4 +84,25 @@ public class SysApprovalFlowMx { @TableField(value = "updateTime") private Date updateTime; + + /** + * 审批节点类型 + */ + @TableField(value = "approvalNodeType") + private Integer approvalNodeType; + + + /** + * 审批岗位序号 + */ + @TableField(value = "approvalPostId") + private String approvalPostId; + + + /** + * 审批岗位名称 + */ + @TableField(value = "approvalPostName") + private String approvalPostName; + } diff --git a/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java b/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java index 7ec450165..169cfe362 100644 --- a/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/dev/DeviceChangeOrderEntity.java @@ -33,6 +33,12 @@ public class DeviceChangeOrderEntity implements Serializable { @TableId(value = "orderId") private Long orderId; + /** + * 单据号 + */ + @TableField(value = "billNo") + private String billNo; + /** * add:新增入库,change:变更归属 */ @@ -113,4 +119,10 @@ public class DeviceChangeOrderEntity implements Serializable { */ @TableField(value = "destroyType") private Integer destroyType; + + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; } diff --git a/src/main/java/com/glxp/api/enums/dev/DeviceChangeStatusEnum.java b/src/main/java/com/glxp/api/enums/dev/DeviceChangeStatusEnum.java index 6c0375c9d..3c25bcde2 100644 --- a/src/main/java/com/glxp/api/enums/dev/DeviceChangeStatusEnum.java +++ b/src/main/java/com/glxp/api/enums/dev/DeviceChangeStatusEnum.java @@ -14,6 +14,7 @@ public enum DeviceChangeStatusEnum { DRAFT("draft", "草稿"), WAIT_CONFIRM("wait_confirm", "待目标部门确认"), REJECT_CONFIRM("reject_confirm", "目标部门拒绝"), + AUDITING("Auditing", "审核中"), FINISH("finish", "已完成"), // 只有type为change才可以取消 CANCEL("cancel", "已取消"), diff --git a/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java index 653b90983..646019af8 100644 --- a/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java +++ b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java @@ -20,13 +20,13 @@ public class SysApprovalFlowAddDetailRequest { * 审批人主键 */ @TableField(value = "approvalUserId") - @NotEmpty(message = "审批人主键不可以为空!") +// @NotEmpty(message = "审批人主键不可以为空!") private String approvalUserId; /** * 审批人名称 */ @TableField(value = "approvalUserName") - @NotEmpty(message = "审批人名称不可以为空!") +// @NotEmpty(message = "审批人名称不可以为空!") private String approvalUserName; /** @@ -36,4 +36,25 @@ public class SysApprovalFlowAddDetailRequest { @NotNull(message = "排序不可以为空!") private Integer approvalSort; + /** + * 审批节点类型 + */ + @TableField(value = "approvalNodeType") + @NotNull(message = "审批节点类型不可以为空!") + private Integer approvalNodeType; + + /** + * 审批岗位序号 + */ + @TableField(value = "approvalPostId") +// @NotNull(message = "审批岗位序号不可以为空!") + private String approvalPostId; + + /** + * 审批岗位名称 + */ + @TableField(value = "approvalPostName") +// @NotNull(message = "审批岗位名称不可以为空!") + private String approvalPostName; + } 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 5aade9ce7..fb430b653 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceChangeOrderParam.java @@ -5,12 +5,15 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; +import com.glxp.api.constant.Constant; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.dev.DeviceChangeOrderEntity; import com.glxp.api.entity.dev.DeviceChangeOrderItemEntity; import com.glxp.api.enums.dev.DeviceChangeStatusEnum; import com.glxp.api.enums.dev.DeviceChangeTypeEnum; import com.glxp.api.exception.JsonException; +import com.glxp.api.util.GennerOrderUtils; +import com.glxp.api.util.OrderNoTypeBean; import com.glxp.api.util.SnowflakeUtil; import lombok.Data; import org.hibernate.validator.constraints.Length; @@ -40,6 +43,12 @@ public class DeviceChangeOrderParam { @NotNull(message = "类型不能为空") DeviceChangeTypeEnum type; + /** + * 单据号 + */ + @TableField(value = "billNo") + private String billNo; + /** * 目标部门 */ @@ -548,7 +557,7 @@ public class DeviceChangeOrderParam { public DeviceChangeOrderEntity getOrderEntity(AuthAdmin user) { - if (createUser != null) { + if (billNo != null) { DeviceChangeOrderEntity deviceChangeOrderEntity = new DeviceChangeOrderEntity(); BeanUtil.copyProperties(this, deviceChangeOrderEntity); return deviceChangeOrderEntity; @@ -561,6 +570,7 @@ public class DeviceChangeOrderParam { .deptCode(deptCode) .toDeptCode(toDeptCode) .remark(remark) + .destroyType(destroyType) .createUser(user.getId()) .createUserName(user.getEmployeeName()) .createTime(LocalDateTime.now()) diff --git a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java index fab9d2132..f22c4abee 100644 --- a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java +++ b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java @@ -16,4 +16,8 @@ public interface SysApprovalFlowService extends IService { List getDetailList(String approvalFlowId); void submitApprovalFlow(SubmitApprovalFlowRequest submitApprovalFlowRequest); + + SysApprovalFlow getApprovalFlowByMxId(String approvalFlowMxId); + + boolean nodePermissions(String id); } diff --git a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java index 6ee8c4074..bb281c673 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.glxp.api.dao.basic.SysApprovalFlowMapper; import com.glxp.api.dao.basic.SysApprovalFlowMxMapper; +import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.basic.SysApprovalFlow; import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; import com.glxp.api.entity.basic.SysApprovalFlowMx; @@ -64,7 +65,7 @@ public class SysApprovalFlowServiceImpl extends ServiceImpl mxs = new ArrayList<>(); - generateFlowMx(type,approvalFlowId,userId,date,mxs); + generateFlowMx(type,approvalFlowId,userId,date,mxs,sysApprovalFlow); sysApprovalFlowMapper.insert(sysApprovalFlow); sysApprovalFlowMxMapper.insertBatch(mxs); @@ -151,6 +152,43 @@ public class SysApprovalFlowServiceImpl extends ServiceImpl qw = new QueryWrapper<>(); @@ -191,6 +229,7 @@ public class SysApprovalFlowServiceImpl extends ServiceImpl mxs) { + private void generateFlowMx(String type,String approvalFlowId, Long userId, Date date, ArrayList mxs,SysApprovalFlow sysApprovalFlow) { List list = sysApprovalFlowConfigService.getDetailList(type); if (CollectionUtil.isNotEmpty(list)){ + SysApprovalFlowConfigMx sysApprovalFlowConfigMx = list.get(0); + if (sysApprovalFlowConfigMx.getApprovalNodeType() == 1 ){ + sysApprovalFlow.setNextNodeName(sysApprovalFlowConfigMx.getApprovalUserName()); + sysApprovalFlow.setNextApprovalNodeType(1); + }else if (sysApprovalFlowConfigMx.getApprovalNodeType() == 2 ){ + sysApprovalFlow.setNextNodeName(sysApprovalFlowConfigMx.getApprovalPostName()); + sysApprovalFlow.setNextApprovalNodeType(2); + } + list.forEach( item -> { SysApprovalFlowMx sysApprovalFlowMx = new SysApprovalFlowMx(); sysApprovalFlowMx.setId(UUID.randomUUID().toString().replace("-", "")); sysApprovalFlowMx.setApprovalFlowId(approvalFlowId); sysApprovalFlowMx.setApprovalUserId(item.getApprovalUserId()); sysApprovalFlowMx.setApprovalUserName(item.getApprovalUserName()); + sysApprovalFlowMx.setApprovalNodeType(item.getApprovalNodeType()); + sysApprovalFlowMx.setApprovalPostId(item.getApprovalPostId()); + sysApprovalFlowMx.setApprovalPostName(item.getApprovalPostName()); sysApprovalFlowMx.setApprovalStatus(ApprovalStatusEnum.DWSH.getCode()); sysApprovalFlowMx.setApprovalSort(item.getApprovalSort()); @@ -218,6 +269,9 @@ public class SysApprovalFlowServiceImpl extends ServiceImpl listByVo(DeviceChangeOrderQuery query, AuthAdmin user) { @@ -71,6 +88,15 @@ public class DeviceChangeOrderServiceImpl extends ServiceImpl orderItems = param.getDraftOrderItemList(order.getOrderId(), user); @@ -83,6 +109,16 @@ public class DeviceChangeOrderServiceImpl extends ServiceImpl orderItems = param.getOrderItemList(order.getOrderId(), user); List logs = new ArrayList<>(); + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); orderItems.forEach(i -> { if (order.getType() == DeviceChangeTypeEnum.ADD) { // UdiRelevanceResponse productInfo = udiRelevanceService.selectByRelId(i.getProductId().toString()); @@ -131,7 +168,7 @@ public class DeviceChangeOrderServiceImpl extends ServiceImpl - - - - - - - - - - - - - - - - id, `type`, approvalUserId,approvalUserName, approvalSort, `createUser`, createTime, updateUser, updateTime - - - - - delete from sys_approval_flow_config_mx - where id = #{id,jdbcType=VARCHAR} - - - - insert into sys_approval_flow_config_mx (id, `type`, approvalUserId,approvalUserName, - approvalSort, `createUser`, createTime, - updateUser, updateTime) - values (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR}, #{approvalUserName,jdbcType=VARCHAR}, - #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, - #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) - - - - insert into sys_approval_flow_config_mx - - - id, - - - `type`, - - - approvalUserId, - - - approvalUserName, - - - approvalSort, - - - `createUser`, - - - createTime, - - - updateUser, - - - updateTime, - - - - - #{id,jdbcType=VARCHAR}, - - - #{type,jdbcType=VARCHAR}, - - - #{approvalUserId,jdbcType=VARCHAR}, - - - #{approvalUserName,jdbcType=VARCHAR}, - - - #{approvalSort,jdbcType=INTEGER}, - - - #{createUser,jdbcType=VARCHAR}, - - - #{createTime,jdbcType=TIMESTAMP}, - - - #{updateUser,jdbcType=VARCHAR}, - - - #{updateTime,jdbcType=TIMESTAMP}, - - - - - - update sys_approval_flow_config_mx - - - `type` = #{type,jdbcType=VARCHAR}, - - - approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, - - - approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, - - - approvalSort = #{approvalSort,jdbcType=INTEGER}, - - - `createUser` = #{createUser,jdbcType=VARCHAR}, - - - createTime = #{createTime,jdbcType=TIMESTAMP}, - - - updateUser = #{updateUser,jdbcType=VARCHAR}, - - - updateTime = #{updateTime,jdbcType=TIMESTAMP}, - - - where id = #{id,jdbcType=VARCHAR} - - - - update sys_approval_flow_config_mx - set `type` = #{type,jdbcType=VARCHAR}, - approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, - approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, - approvalSort = #{approvalSort,jdbcType=INTEGER}, - `createUser` = #{createUser,jdbcType=VARCHAR}, - createTime = #{createTime,jdbcType=TIMESTAMP}, - updateUser = #{updateUser,jdbcType=VARCHAR}, - updateTime = #{updateTime,jdbcType=TIMESTAMP} - where id = #{id,jdbcType=VARCHAR} - - - - update sys_approval_flow_config_mx - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.type,jdbcType=VARCHAR} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserId,jdbcType=VARCHAR} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserName,jdbcType=VARCHAR} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalSort,jdbcType=INTEGER} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.createUser,jdbcType=VARCHAR} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.updateUser,jdbcType=VARCHAR} - - - - - when id = #{item.id,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP} - - - - where id in - - #{item.id,jdbcType=VARCHAR} - - - - - insert into sys_approval_flow_config_mx - (id, `type`, approvalUserId, approvalUserName, approvalSort, `createUser`, createTime, updateUser, - updateTime) - values - - (#{item.id,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, #{item.approvalUserId,jdbcType=VARCHAR}, - #{item.approvalSort,jdbcType=INTEGER}, #{item.createUser,jdbcType=VARCHAR}, #{item.createTime,jdbcType=TIMESTAMP}, - #{item.updateUser,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP}) - - - - - insert into sys_approval_flow_config_mx - (id, `type`, approvalUserId,approvalUserName, approvalSort, `createUser`, createTime, updateUser, - updateTime) - values - (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR},#{approvalUserName,jdbcType=VARCHAR}, - #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, - #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) - on duplicate key update - id = #{id,jdbcType=VARCHAR}, - `type` = #{type,jdbcType=VARCHAR}, - approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, - approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, - approvalSort = #{approvalSort,jdbcType=INTEGER}, - `createUser` = #{createUser,jdbcType=VARCHAR}, - createTime = #{createTime,jdbcType=TIMESTAMP}, - updateUser = #{updateUser,jdbcType=VARCHAR}, - updateTime = #{updateTime,jdbcType=TIMESTAMP} - - - - insert into sys_approval_flow_config_mx - - - id, - - - `type`, - - - approvalUserId, - - - approvalUserName, - - - approvalSort, - - - `createUser`, - - - createTime, - - - updateUser, - - - updateTime, - - - values - - - #{id,jdbcType=VARCHAR}, - - - #{type,jdbcType=VARCHAR}, - - - #{approvalUserId,jdbcType=VARCHAR}, - - - #{approvalUserName,jdbcType=VARCHAR}, - - - #{approvalSort,jdbcType=INTEGER}, - - - #{createUser,jdbcType=VARCHAR}, - - - #{createTime,jdbcType=TIMESTAMP}, - - - #{updateUser,jdbcType=VARCHAR}, - - - #{updateTime,jdbcType=TIMESTAMP}, - - - on duplicate key update - - - id = #{id,jdbcType=VARCHAR}, - - - `type` = #{type,jdbcType=VARCHAR}, - - - approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, - - - approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, - - - approvalSort = #{approvalSort,jdbcType=INTEGER}, - - - `createUser` = #{createUser,jdbcType=VARCHAR}, - - - createTime = #{createTime,jdbcType=TIMESTAMP}, - - - updateUser = #{updateUser,jdbcType=VARCHAR}, - - - updateTime = #{updateTime,jdbcType=TIMESTAMP}, - - - + diff --git a/src/main/resources/mybatis/mapper/dev/DeviceChangeOrderMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceChangeOrderMapper.xml index 2d7e06a0d..e14ec8e35 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceChangeOrderMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceChangeOrderMapper.xml @@ -29,10 +29,12 @@ createUser,createTime diff --git a/src/main/resources/mybatis/mapper/purchase/PurContractDetailMapper.xml b/src/main/resources/mybatis/mapper/purchase/PurContractDetailMapper.xml new file mode 100644 index 000000000..46a079797 --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurContractDetailMapper.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id, orderIdFk, productId, productUniqueId, nameCode, batchNo, productName, productCompany, + produceDate, expireDate, zczbhhzbapzbh, ggxh, packRatio, supId, supName, `count`, + price, firstSalesInvNo, secSalesInvNo, secSalesListNo, invoiceDate, remark + + + + replace + INTO pur_contract_detail + ( + orderIdFk, + productId, + productUniqueId, + nameCode, + batchNo, + productName, + productCompany, + produceDate, + expireDate, + zczbhhzbapzbh, + ggxh, + packRatio, + supId, + supName, + `count`, + price, + firstSalesInvNo, + secSalesInvNo, + secSalesListNo, + invoiceDate, + remark + ) + values ( + #{orderIdFk}, + #{productId}, + #{productUniqueId}, + #{nameCode}, + #{batchNo}, + #{productName}, + #{productCompany}, + #{produceDate}, + #{expireDate}, + #{zczbhhzbapzbh}, + #{ggxh}, + #{packRatio}, + #{supId}, + #{supName}, + #{count}, + #{price}, + #{firstSalesInvNo}, + #{secSalesInvNo}, + #{secSalesListNo}, + #{invoiceDate}, + #{remark} + ) + + diff --git a/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml b/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml new file mode 100644 index 000000000..9eee36987 --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id, code, `name`, fromCorp, contractDate, invCode, `status`, `type`, payType, startDate, + endDate, amount, payAmount, payDate, invoiceDate, planOrderIdFk, orderIdFk, `createUser`, + updateUser, createTime, updateTime, remark + + + + insert + INTO pur_contract + ( + code, + `name`, + fromCorp, + contractDate, + invCode, + `status`, + `type`, + payType, + startDate, + endDate, + amount, + payAmount, + payDate, + invoiceDate, + planOrderIdFk, + orderIdFk, + `createUser`, + updateUser, + createTime, + updateTime, + remark + ) + values ( + #{code}, + #{name}, + #{fromCorp}, + #{contractDate}, + #{invCode}, + #{status}, + #{type}, + #{payType}, + #{startDate}, + #{endDate}, + #{amount}, + #{payAmount}, + #{payDate}, + #{invoiceDate}, + #{planOrderIdFk}, + #{orderIdFk}, + #{createUser}, + #{updateUser}, + #{createTime}, + #{updateTime}, + #{remark} + ) + + + + + + diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml index 296f3f1b1..0c911b196 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml @@ -92,6 +92,9 @@ AND emergency = #{emergency} + + AND importStatus = #{importStatus} + diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index aa514c59d..b9f56a239 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -2511,14 +2511,12 @@ CALL Pro_Temp_ColumnWork('device_change_order', 'approvalFlowId', CALL Pro_Temp_ColumnWork('device_change_order', 'billNo', ' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT ''单据号'' ', 1); -# INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) -# VALUES ('5', 'sbdj', '设备登记', 5, NULL, NULL, NULL, NULL); -# -# INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) -# VALUES ('6', 'sbbg', '设备变更', 6, NULL, NULL, NULL, NULL); INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) -VALUES ('7', 'sbyc', '设备移除', 7, NULL, NULL, NULL, NULL); +VALUES ('5', 'sbyc', '设备移除', 7, NULL, NULL, NULL, NULL); + +INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) +VALUES ('6', 'cght', '采购合同单据', 6, NULL, NULL, NULL, NULL); CALL Pro_Temp_ColumnWork('sys_approval_flow_config_mx', 'approvalNodeType', ' bigint(0) NOT NULL COMMENT ''审批节点类型 1 人员 2 岗位'' ', @@ -2548,3 +2546,84 @@ CALL Pro_Temp_ColumnWork('sys_approval_flow', 'nextNodeName', CALL Pro_Temp_ColumnWork('sys_approval_flow', 'nextApprovalNodeType', ' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT ''下一个节点审核类型'' ', 1); + +-- ---------------------------- +-- Table structure for pur_contract +-- ---------------------------- +CREATE TABLE IF NOT EXISTS `pur_contract` ( + `id` int(0) NOT NULL AUTO_INCREMENT, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '合同编号', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '合同名称', + `fromCorp` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '往来单位/供应商', + `contractDate` datetime(0) NULL DEFAULT NULL COMMENT '合同签订日期', + `invCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '当前仓库', + `status` int(0) NULL DEFAULT NULL COMMENT '合同状态', + `type` int(0) NULL DEFAULT NULL COMMENT '合同类型', + `payType` int(0) NULL DEFAULT NULL COMMENT '付款方式', + `startDate` datetime(0) NULL DEFAULT NULL COMMENT '开始时间', + `endDate` datetime(0) NULL DEFAULT NULL COMMENT '截止时间', + `amount` decimal(10, 3) NULL DEFAULT NULL COMMENT '合同金额', + `payAmount` decimal(10, 3) NULL DEFAULT NULL COMMENT '实付金额', + `payDate` datetime(0) NULL DEFAULT NULL COMMENT '付款日期', + `invoiceDate` datetime(0) NULL DEFAULT NULL COMMENT '开票日期', + `planOrderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '采购计划ID外键', + `orderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '采购订单外键', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + `approvalFlowId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批表主键(关联审批流程主表)', + `isGenerateOrder` int(0) NULL DEFAULT 0 COMMENT '是否生成订单 1.已生成;0.未生成 ', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '采购合同表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for pur_contract_detail +-- ---------------------------- +CREATE TABLE IF NOT EXISTS `pur_contract_detail` ( + `id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '单据业务ID', + `orderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '关联合同编号', + `productId` bigint(0) NULL DEFAULT NULL COMMENT '产品编码', + `productUniqueId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '产品唯一id uniqueId', + `nameCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '最小销售标识', + `batchNo` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '批次号', + `productName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '产品名称', + `productCompany` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '生产厂家', + `produceDate` date NULL DEFAULT NULL COMMENT '生产日期', + `expireDate` date NULL DEFAULT NULL COMMENT '过期时间', + `zczbhhzbapzbh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '注册证/备案号', + `ggxh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '规格型号', + `packRatio` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '包装级别', + `supId` bigint(0) NULL DEFAULT NULL COMMENT '供应商id', + `supName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '供应商名称', + `count` int(0) NULL DEFAULT NULL COMMENT '订单该产品实际数量', + `price` decimal(10, 2) NULL DEFAULT NULL COMMENT '价格', + `firstSalesInvNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '销售发票号(第一票)', + `secSalesInvNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '销售发票号(第二票)', + `secSalesListNo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '销售清单号(第二票)', + `invoiceDate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '开票日期', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_as_cs COMMENT = '单据业务详情表' ROW_FORMAT = Dynamic; + +CALL Pro_Temp_ColumnWork('pur_plan', 'importStatus', + ' bit(1) NOT NULL DEFAULT b''0'' COMMENT ''是否 导入''', + 1); + +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3679, '合同管理', 1673, 4, 'purContract', NULL, NULL, 1, 0, 'M', '0', '0', NULL, NULL, '超级用户', '2023-02-10 14:52:34', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3680, '待提交合同', 3679, 1, 'purchase/purContract/purContract', 'purchase/purContract/purContract', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-10 16:25:48', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3689, '待审核合同', 3679, 2, 'purchase/purContract/purContractReviewed', 'purchase/purContract/purContractReviewed', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:07:07', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3690, '已完成合同', 3679, 3, 'purchase/purContract/purContractFinish', 'purchase/purContract/purContractFinish', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:27:49', NULL, NULL, NULL); + +CALL Pro_Temp_ColumnWork('pur_plan', 'importStatus', + ' bit(1) NOT NULL DEFAULT b''0'' COMMENT ''是否 导入''', + 1); From 1c5e86da2d302c7ea2fd41a2bdd9ed8a3847dbb0 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 13 May 2024 16:55:39 +0800 Subject: [PATCH 08/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0513-=E7=94=B3=E8=B4=AD=E3=80=81?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E3=80=81=E5=90=88=E5=90=8C=E3=80=81=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=A4=8D=E5=88=B6=E5=88=B0=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/entity/purchase/PurApplyEntity.java | 3 + .../entity/purchase/PurContractEntity.java | 3 + .../entity/purchase/PurOrderDetailEntity.java | 3 + .../api/entity/purchase/PurOrderEntity.java | 3 + .../api/entity/purchase/PurPlanEntity.java | 3 + .../req/purchase/PurApplyDetailRequest.java | 2 + .../api/req/purchase/PurApplyRequest.java | 2 + .../req/purchase/PurOrderDetailRequest.java | 6 + .../api/req/purchase/PurOrderRequest.java | 4 +- .../req/purchase/PurPlanDetailRequest.java | 4 + .../glxp/api/req/purchase/PurPlanRequest.java | 3 + .../mybatis/mapper/purchase/PurApplyDao.xml | 18 ++- .../mapper/purchase/PurApplyDetailDao.xml | 3 + .../mybatis/mapper/purchase/PurOrderDao.xml | 13 +- .../mapper/purchase/PurOrderDetailDao.xml | 3 + .../mybatis/mapper/purchase/PurPlanDao.xml | 15 +- src/main/resources/schemas/schema_v2.4.sql | 128 ++++++++++++++++++ 17 files changed, 198 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java index ec11f930e..e309e4f2e 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java @@ -137,6 +137,9 @@ public class PurApplyEntity { @TableField(value = "approvalFlowId") private String approvalFlowId; + @TableField(value = "pageType") + private Integer pageType; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurContractEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurContractEntity.java index 13878ec9b..479195a71 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurContractEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurContractEntity.java @@ -163,5 +163,8 @@ public class PurContractEntity implements Serializable { @TableField(value = "isGenerateOrder") private Integer isGenerateOrder; + @TableField(value = "pageType") + private Integer pageType; + private static final long serialVersionUID = 1L; } diff --git a/src/main/java/com/glxp/api/entity/purchase/PurOrderDetailEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurOrderDetailEntity.java index d7b3210a5..161d72ccc 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurOrderDetailEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurOrderDetailEntity.java @@ -62,6 +62,9 @@ public class PurOrderDetailEntity { @TableField(value = "destinyId") private String destinyId; + @TableField(exist = false) + private Integer pageType; + public static final String COL_ID = "id"; public static final String COL_ORDERIDFK = "orderIdFk"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java index 0357540b3..8811d0cb9 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java @@ -154,6 +154,9 @@ public class PurOrderEntity { @TableField(value = "approvalFlowId") private String approvalFlowId; + @TableField(value = "pageType") + private Integer pageType; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java index f17a8cc09..ce1d9c97b 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java @@ -156,6 +156,9 @@ public class PurPlanEntity { @TableField(value = "importStatus") private Integer importStatus; + @TableField(value = "pageType") + private Integer pageType; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java index 0e598e7b8..d36240f24 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java @@ -68,4 +68,6 @@ public class PurApplyDetailRequest extends ListPageRequest { */ private String endDate; private String nameCode; + + private Integer pageType; } diff --git a/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java b/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java index 027d7079b..f9b7215c8 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java @@ -115,4 +115,6 @@ public class PurApplyRequest extends ListPageRequest { private Boolean sysApprovalFlow; + private Integer pageType; + } diff --git a/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java index 8624bbfcd..dd51fd420 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurOrderDetailRequest.java @@ -1,6 +1,7 @@ package com.glxp.api.req.purchase; +import com.baomidou.mybatisplus.annotation.TableField; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; @@ -76,4 +77,9 @@ public class PurOrderDetailRequest extends ListPageRequest { */ private String manufactory; private String nameCode; + + + @TableField(value = "pageType") + private Integer pageType; + } diff --git a/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java b/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java index f0069c683..c50082e28 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurOrderRequest.java @@ -1,6 +1,7 @@ package com.glxp.api.req.purchase; +import com.baomidou.mybatisplus.annotation.TableField; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; @@ -98,6 +99,7 @@ public class PurOrderRequest extends ListPageRequest { private String orderBy; private Boolean sysApprovalFlow; - + @TableField(value = "pageType") + private Integer pageType; } diff --git a/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java index b925d8e46..b91ea7ccc 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java @@ -1,6 +1,7 @@ package com.glxp.api.req.purchase; +import com.baomidou.mybatisplus.annotation.TableField; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; @@ -78,4 +79,7 @@ public class PurPlanDetailRequest extends ListPageRequest { private String nameCode; private String checksupId; + @TableField(value = "pageType") + private Integer pageType; + } diff --git a/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java b/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java index 59866cc17..af7202dc7 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java @@ -107,4 +107,7 @@ public class PurPlanRequest extends ListPageRequest { @TableField(value = "importStatus") private Integer importStatus; + @TableField(value = "pageType") + private Integer pageType; + } diff --git a/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml b/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml index b4f0572d9..9747c4156 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml @@ -76,28 +76,31 @@ - AND deptCode = #{deptCode} + AND pur_apply.deptCode = #{deptCode} AND pur_apply.invCode = #{invCode} - AND targetInvCode = #{targetInvCode} + AND pur_apply.targetInvCode = #{targetInvCode} - AND targetDeptCode = #{targetDeptCode} + AND pur_apply.targetDeptCode = #{targetDeptCode} - AND auditUser = #{auditUser} + AND pur_apply.auditUser = #{auditUser} AND pur_apply.createUser = #{createUser} - AND generatePlan = 1 + AND pur_apply.generatePlan = 1 - AND emergency = #{emergency} + AND pur_apply.emergency = #{emergency} + + + AND pur_apply.pageType = #{pageType} @@ -192,6 +195,9 @@ approvalFlowId=#{approvalFlowId}, + + pageType=#{pageType}, + WHERE id = #{id} diff --git a/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml b/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml index 5d65f45a6..f00ca65e1 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml @@ -139,6 +139,9 @@ AND pur_apply.billNo like concat('%', #{billNo}, '%') + + AND pur_apply.pageType = #{pageType} + AND productId like concat('%', #{productId}, '%') diff --git a/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml b/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml index cd406021b..07500e9a2 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml @@ -110,19 +110,22 @@ - AND deptCode = #{deptCode} + AND pur_order.deptCode = #{deptCode} - AND invCode = #{invCode} + AND pur_order.invCode = #{invCode} - AND auditUser = #{auditUser} + AND pur_order.auditUser = #{auditUser} - AND createUser = #{createUser} + AND pur_order.createUser = #{createUser} - AND emergency = #{emergency} + AND pur_order.emergency = #{emergency} + + + AND pur_order.pageType = #{pageType} diff --git a/src/main/resources/mybatis/mapper/purchase/PurOrderDetailDao.xml b/src/main/resources/mybatis/mapper/purchase/PurOrderDetailDao.xml index 828f0e390..56d99e5f4 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurOrderDetailDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurOrderDetailDao.xml @@ -158,6 +158,9 @@ AND pur_order.billNo like concat('%', #{billNo}, '%') + + AND pur_order.pageType = #{pageType} + AND productId like concat('%', #{productId}, '%') diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml index 0c911b196..15017b310 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml @@ -78,22 +78,25 @@ - AND deptCode = #{deptCode} + AND pur_plan.deptCode = #{deptCode} - AND invCode = #{invCode} + AND pur_plan.invCode = #{invCode} - AND auditUser = #{auditUser} + AND pur_plan.auditUser = #{auditUser} - AND createUser = #{createUser} + AND pur_plan.createUser = #{createUser} - AND emergency = #{emergency} + AND pur_plan.emergency = #{emergency} - AND importStatus = #{importStatus} + AND pur_plan.importStatus = #{importStatus} + + + AND pur_plan.pageType = #{pageType} diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index b9f56a239..01e47d3ad 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -2627,3 +2627,131 @@ INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, ` CALL Pro_Temp_ColumnWork('pur_plan', 'importStatus', ' bit(1) NOT NULL DEFAULT b''0'' COMMENT ''是否 导入''', 1); + + +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3691, '申购管理', 1703, 13, 'purApply', NULL, NULL, 1, 0, 'M', '0', '0', NULL, NULL, '超级用户', '2023-02-08 17:01:50', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3692, '计划管理', 1703, 14, 'purPlan', NULL, NULL, 1, 0, 'M', '0', '0', NULL, NULL, '超级用户', '2023-02-10 14:52:34', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3693, '订单管理', 1703, 15, 'purOrder', NULL, NULL, 1, 0, 'M', '0', '0', NULL, NULL, '超级用户', '2023-03-08 10:21:58', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, + `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) + VALUES (3694, '合同管理', 1703, 16, 'purContract', NULL, NULL, 1, 0, 'M', '0', '0', NULL, NULL, '超级用户', '2023-02-10 14:52:34', NULL, NULL, NULL); + +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3695, '新增申购单', 3691, 1, 'purchase/purApply/purApply', 'purchase/purApply/purApply', '{\"pageType\":2}', 1, 0, 'C', + '0', '0', 'purchase:purApply:purApply', NULL, '超级用户', '2023-02-08 17:02:19', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3696, '审核申购单', 3691, 2, 'purchase/purApply/pureApplyAudit', 'purchase/purApply/pureApplyAudit', '{\"pageType\":2}', + 1, 0, 'C', '0', '0', 'purchase:purApply:pureApplyAudit', NULL, '超级用户', '2023-02-10 13:54:03', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3697, '查询申购单', 3691, 3, 'purchase/purApply/pureApplySearch', 'purchase/purApply/pureApplySearch', + '{\"pageType\":2}', 1, 0, 'C', '0', '0', 'purchase:purApply:pureApplySearch', NULL, '超级用户', '2023-02-10 14:47:19', + NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3698, '新增采购计划', 3692, 1, 'purchase/purPlan/purPlan', 'purchase/purPlan/purPlan', '{\"pageType\":2}', 1, 0, 'C', '0', + '0', 'purchase:purPlan:purPlan', NULL, '超级用户', '2023-02-10 16:25:48', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3699, '审核采购计划', 3692, 2, 'purchase/purPlan/purPlanAudit', 'purchase/purPlan/purPlanAudit', '{\"pageType\":2}', 1, 0, + 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:07:07', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3700, '查询采购计划', 3692, 3, 'purchase/purPlan/purPlanSearch', 'purchase/purPlan/purPlanSearch', '{\"pageType\":2}', 1, + 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:27:49', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3701, '新增采购订单', 3693, 1, 'purchase/purOrder/purOrder', 'purchase/purOrder/purOrder', '{\"pageType\":2}', 1, 0, 'C', + '0', '0', NULL, '', '超级用户', '2023-03-08 10:32:25', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3702, '审核采购订单', 3693, 2, 'purchase/purOrder/purOrderAudit', 'purchase/purOrder/purOrderAudit', '{\"pageType\":2}', + 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-03-08 10:33:41', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3703, '查询采购订单', 3693, 3, 'purchase/purOrder/purOrderSearch', 'purchase/purOrder/purOrderSearch', '{\"pageType\":2}', + 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-03-08 10:34:32', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3704, '申购单明细', 3691, 4, 'details', 'purchase/purApply/pureApplySearchDetails', '{\"pageType\":2}', 1, 0, 'C', '0', + '0', NULL, NULL, '超级用户', '2023-04-04 09:30:27', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3705, '采购计划明细', 3692, 4, 'details', 'purchase/purPlan/purPlanSearchDetails', '{\"pageType\":2}', 1, 0, 'C', '0', + '0', NULL, NULL, '超级用户', '2023-04-04 09:32:00', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3706, '采购订单明细', 3693, 4, 'details', 'purchase/purOrder/purOrderSearchDetails', '{\"pageType\":2}', 1, 0, 'C', '0', + '0', NULL, NULL, '超级用户', '2023-04-04 09:32:44', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3707, '我的申购单 ', 3691, 2, 'purchase/purApply/pureApplyMySearch', 'purchase/purApply/pureApplyMySearch', + '{\"pageType\":2}', 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-07-20 17:08:38', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3708, '待提交合同', 3694, 1, 'purchase/purContract/purContract', 'purchase/purContract/purContract', '{\"pageType\":2}', + 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-10 16:25:48', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3709, '待审核合同', 3694, 2, 'purchase/purContract/purContractReviewed', 'purchase/purContract/purContractReviewed', + '{\"pageType\":2}', 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:07:07', NULL, NULL, NULL); +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, + `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, + `update_by`, `update_time`, `remark`) +VALUES (3710, '已完成合同', 3694, 3, 'purchase/purContract/purContractFinish', 'purchase/purContract/purContractFinish', + '{\"pageType\":2}', 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-02-14 11:27:49', NULL, NULL, NULL); + + +UPDATE auth_menu SET `menu_name` = '新增申购单', `parent_id` = 1674, `order_num` = 1, `path` = 'purchase/purApply/purApply', `component` = 'purchase/purApply/purApply', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = 'purchase:purApply:purApply', `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-08 17:02:19', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1675; +UPDATE auth_menu SET `menu_name` = '审核申购单', `parent_id` = 1674, `order_num` = 2, `path` = 'purchase/purApply/pureApplyAudit', `component` = 'purchase/purApply/pureApplyAudit', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = 'purchase:purApply:pureApplyAudit', `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-10 13:54:03', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1677; +UPDATE auth_menu SET `menu_name` = '查询申购单', `parent_id` = 1674, `order_num` = 3, `path` = 'purchase/purApply/pureApplySearch', `component` = 'purchase/purApply/pureApplySearch', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = 'purchase:purApply:pureApplySearch', `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-10 14:47:19', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1678; +UPDATE auth_menu SET `menu_name` = '新增采购计划', `parent_id` = 1679, `order_num` = 1, `path` = 'purchase/purPlan/purPlan', `component` = 'purchase/purPlan/purPlan', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = 'purchase:purPlan:purPlan', `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-10 16:25:48', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1680; +UPDATE auth_menu SET `menu_name` = '审核采购计划', `parent_id` = 1679, `order_num` = 2, `path` = 'purchase/purPlan/purPlanAudit', `component` = 'purchase/purPlan/purPlanAudit', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-14 11:07:07', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1689; +UPDATE auth_menu SET `menu_name` = '查询采购计划', `parent_id` = 1679, `order_num` = 3, `path` = 'purchase/purPlan/purPlanSearch', `component` = 'purchase/purPlan/purPlanSearch', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-14 11:27:49', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1690; +UPDATE auth_menu SET `menu_name` = '新增采购订单', `parent_id` = 1730, `order_num` = 1, `path` = 'purchase/purOrder/purOrder', `component` = 'purchase/purOrder/purOrder', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = '', `create_by` = '超级用户', `create_time` = '2023-03-08 10:32:25', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1731; +UPDATE auth_menu SET `menu_name` = '审核采购订单', `parent_id` = 1730, `order_num` = 2, `path` = 'purchase/purOrder/purOrderAudit', `component` = 'purchase/purOrder/purOrderAudit', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-03-08 10:33:41', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1732; +UPDATE auth_menu SET `menu_name` = '查询采购订单', `parent_id` = 1730, `order_num` = 3, `path` = 'purchase/purOrder/purOrderSearch', `component` = 'purchase/purOrder/purOrderSearch', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-03-08 10:34:32', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1733; +UPDATE auth_menu SET `menu_name` = '申购单明细', `parent_id` = 1674, `order_num` = 4, `path` = 'details', `component` = 'purchase/purApply/pureApplySearchDetails', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-04-04 09:30:27', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1763; +UPDATE auth_menu SET `menu_name` = '采购计划明细', `parent_id` = 1679, `order_num` = 4, `path` = 'details', `component` = 'purchase/purPlan/purPlanSearchDetails', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-04-04 09:32:00', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1764; +UPDATE auth_menu SET `menu_name` = '采购订单明细', `parent_id` = 1730, `order_num` = 4, `path` = 'details', `component` = 'purchase/purOrder/purOrderSearchDetails', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-04-04 09:32:44', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1765; +UPDATE auth_menu SET `menu_name` = '我的申购单 ', `parent_id` = 1674, `order_num` = 2, `path` = 'purchase/purApply/pureApplyMySearch', `component` = 'purchase/purApply/pureApplyMySearch', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-07-20 17:08:38', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 1843; +UPDATE auth_menu SET `menu_name` = '待提交合同', `parent_id` = 3679, `order_num` = 1, `path` = 'purchase/purContract/purContract', `component` = 'purchase/purContract/purContract', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-10 16:25:48', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 3680; +UPDATE auth_menu SET `menu_name` = '待审核合同', `parent_id` = 3679, `order_num` = 2, `path` = 'purchase/purContract/purContractReviewed', `component` = 'purchase/purContract/purContractReviewed', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-14 11:07:07', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 3689; +UPDATE auth_menu SET `menu_name` = '已完成合同', `parent_id` = 3679, `order_num` = 3, `path` = 'purchase/purContract/purContractFinish', `component` = 'purchase/purContract/purContractFinish', `query_param` = '{\"pageType\":1}', `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0', `status` = '0', `perms` = NULL, `icon` = NULL, `create_by` = '超级用户', `create_time` = '2023-02-14 11:27:49', `update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 3690; + + +CALL Pro_Temp_ColumnWork('pur_apply', 'pageType', + ' int NOT NULL DEFAULT b''1'' COMMENT ''1:业务管理;2:设备管理''', + 1); +CALL Pro_Temp_ColumnWork('pur_plan', 'pageType', + ' int NOT NULL DEFAULT b''1'' COMMENT ''1:业务管理;2:设备管理''', + 1); +CALL Pro_Temp_ColumnWork('pur_order', 'pageType', + ' int NOT NULL DEFAULT b''1'' COMMENT ''1:业务管理;2:设备管理''', + 1); +CALL Pro_Temp_ColumnWork('pur_contract', 'pageType', + ' int NOT NULL DEFAULT b''1'' COMMENT ''1:业务管理;2:设备管理''', + 1); From 5e393ab5ab9ad59c9dfa384127df1f1232ace608 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 13 May 2024 18:10:49 +0800 Subject: [PATCH 09/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0513-=E7=94=B3=E8=B4=AD=E3=80=81?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E3=80=81=E5=90=88=E5=90=8C=E3=80=81=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=A4=8D=E5=88=B6=E5=88=B0=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/purchase/PurContractController.java | 2 +- .../java/com/glxp/api/req/purchase/PurContractRequest.java | 4 ++++ .../glxp/api/service/purchase/impl/PurContractService.java | 3 ++- .../resources/mybatis/mapper/purchase/PurContractMapper.xml | 3 +++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/purchase/PurContractController.java b/src/main/java/com/glxp/api/controller/purchase/PurContractController.java index 6fc994640..2bf7cb60d 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurContractController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurContractController.java @@ -197,7 +197,7 @@ public class PurContractController { public BaseResponse importPlan(@RequestBody PurPlanEntity purPlanEntity) { if (purPlanEntity.getId() != null) { - purContractService.importPlan(purPlanEntity.getId()); + purContractService.importPlan(purPlanEntity.getId(),purPlanEntity.getPageType()); } else { return ResultVOUtils.error(999, "参数有误!"); } diff --git a/src/main/java/com/glxp/api/req/purchase/PurContractRequest.java b/src/main/java/com/glxp/api/req/purchase/PurContractRequest.java index 170d90a1e..5607d59da 100644 --- a/src/main/java/com/glxp/api/req/purchase/PurContractRequest.java +++ b/src/main/java/com/glxp/api/req/purchase/PurContractRequest.java @@ -1,5 +1,6 @@ package com.glxp.api.req.purchase; +import com.baomidou.mybatisplus.annotation.TableField; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; @@ -39,4 +40,7 @@ public class PurContractRequest extends ListPageRequest { private Integer isGenerateOrder; private Boolean sysApprovalFlow; + + @TableField(value = "pageType") + private Integer pageType; } diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java b/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java index e23d0ef32..21d32f1d5 100644 --- a/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java @@ -79,7 +79,7 @@ public class PurContractService extends ServiceImpl AND pc.contractDate #{purContractRequest.endDate} + + AND pc.pageType = #{purContractRequest.pageType} + order by id desc From eaf83b2ca3bdf9b228429a6de656f28eefcc03b7 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Tue, 14 May 2024 11:32:46 +0800 Subject: [PATCH 10/10] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BC=98=E5=8C=96-0514-=E5=90=88=E5=90=8C=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../purchase/PurContractController.java | 26 +++++++++++++++---- .../purchase/PurContractEntityResponse.java | 6 +++++ .../purchase/impl/PurContractService.java | 11 ++++++++ .../mybatis/mapper/auth/InvWarehouseDao.xml | 3 +++ .../mapper/purchase/PurContractMapper.xml | 4 +-- 5 files changed, 43 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/purchase/PurContractController.java b/src/main/java/com/glxp/api/controller/purchase/PurContractController.java index 2bf7cb60d..16697c97c 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurContractController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurContractController.java @@ -1,15 +1,13 @@ package com.glxp.api.controller.purchase; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.glxp.api.annotation.RepeatSubmit; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.entity.purchase.PurContractDetailEntity; import com.glxp.api.entity.purchase.PurContractEntity; import com.glxp.api.entity.purchase.PurPlanEntity; -import com.glxp.api.req.purchase.AddPurPlanDetailRequest; -import com.glxp.api.req.purchase.PostPurContractRequest; -import com.glxp.api.req.purchase.PurContractDetailRequest; -import com.glxp.api.req.purchase.PurContractRequest; +import com.glxp.api.req.purchase.*; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.purchase.PurContractEntityResponse; import com.glxp.api.service.auth.CustomerService; @@ -70,7 +68,9 @@ public class PurContractController { String code = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean("HT", "yyyyMMdd")); purContractEntity.setCode(code); } - if (editStatus == 2){//提交审核 + + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + if (editStatus == 2 && sys_approval_flow){//提交审核 String approvalFlowId = sysApprovalFlowService.getApprovalFlowId(); purContractEntity.setApprovalFlowId(approvalFlowId); sysApprovalFlowService.generateFlow(approvalFlowId,purContractEntity.getCode(),type); @@ -204,4 +204,20 @@ public class PurContractController { return ResultVOUtils.success(); } + + /** + * 审核采购合同 + */ + @RepeatSubmit() + @PostMapping("/purchase/contract/auditOrder") + public BaseResponse auditOrder(@RequestBody PurContractRequest purContractRequest) { + String code = purContractRequest.getCode(); + Integer status = purContractRequest.getStatus(); + if (StringUtil.isEmpty(code) || status == null){ + return ResultVOUtils.error(999, "参数有误!"); + } + boolean b = purContractService.auditOrder(purContractRequest); + return ResultVOUtils.success("更新成功!"); + } + } diff --git a/src/main/java/com/glxp/api/res/purchase/PurContractEntityResponse.java b/src/main/java/com/glxp/api/res/purchase/PurContractEntityResponse.java index 41841469b..5b9619e2a 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurContractEntityResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurContractEntityResponse.java @@ -164,5 +164,11 @@ public class PurContractEntityResponse implements Serializable { @TableField(value = "isGenerateOrder") private Integer isGenerateOrder; + /** + * 合同状态 + */ + @TableField(value = "`flowStatus`") + private Integer flowStatus; + private static final long serialVersionUID = 1L; } diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java b/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java index 21d32f1d5..2189b0447 100644 --- a/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurContractService.java @@ -2,6 +2,7 @@ package com.glxp.api.service.purchase.impl; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -113,4 +114,14 @@ public class PurContractService extends ServiceImpl(PurContractEntity.class).eq(PurContractEntity::getCode, code)); + one.setUpdateTime(new Date()); + one.setUpdateUser(userId + ""); + one.setStatus(purContractRequest.getStatus()); + return super.updateById(one); + } } diff --git a/src/main/resources/mybatis/mapper/auth/InvWarehouseDao.xml b/src/main/resources/mybatis/mapper/auth/InvWarehouseDao.xml index 3437e128f..3fb534b85 100644 --- a/src/main/resources/mybatis/mapper/auth/InvWarehouseDao.xml +++ b/src/main/resources/mybatis/mapper/auth/InvWarehouseDao.xml @@ -118,6 +118,9 @@ AND auth_dept.pcode = #{subordinateCode} + + AND auth_warehouse.code = #{code} + group by auth_warehouse.id diff --git a/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml b/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml index a86e3f406..789e1fdc7 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurContractMapper.xml @@ -93,8 +93,8 @@ select pc.id, pc.code, pc.`name`, pc.fromCorp, pc.contractDate, pc.invCode, pc.`type`, pc.payType, pc.startDate, pc.endDate, pc.amount, pc.payAmount, pc.payDate, pc.invoiceDate, pc.planOrderIdFk, pc.orderIdFk, pc.`createUser`, - pc.updateUser, pc.createTime, pc.updateTime, pc.remark,pc.approvalFlowId,pc.isGenerateOrder, - IFNULL(saf.status,0) as status, saf.nextNodeName as nextNodeName , saf.nextApprovalNodeType as nextApprovalNodeType + pc.updateUser, pc.createTime, pc.updateTime, pc.remark,pc.approvalFlowId,pc.isGenerateOrder,IFNULL(pc.status,0) as status, + saf.status as flowStatus, saf.nextNodeName as nextNodeName , saf.nextApprovalNodeType as nextApprovalNodeType from pur_contract pc left join sys_approval_flow saf ON pc.approvalFlowId = saf.id