diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index 13f35bd0b..e2d4ac2d4 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -615,25 +615,6 @@ public class IoOrderController extends BaseController { } -// List otherCodes = getOtherCode(billNo, codeEntities); -// for (IoCodeTempEntity codeTempEntity : otherCodes) { -// boolean isTure = false; -// for (IoCodeTempEntity codeEntity : codeEntities) { -// if (IntUtil.value(codeTempEntity.getId()) != IntUtil.value(codeEntity.getId())) { -// if (StrUtil.nullToEmpty(codeTempEntity.getBatchNo()).equals(StrUtil.nullToEmpty(codeEntity.getBatchNo()))) { -// codeEntity.setCheckStatus(2); -// isTure = true; -// } -// } else { -// if (IntUtil.value(codeTempEntity.getReCount()) != IntUtil.value(codeEntity.getReCount()) || isTure) { -// codeEntity.setCheckStatus(2); -// isTure = true; -// } -// } -// } -// if (!isTure) -// codeTempEntity.setCheckStatus(1); -// } return codeEntities; } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java index a158045c5..faea140b4 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java @@ -19,11 +19,9 @@ import com.glxp.api.entity.inout.IoCodeEntity; import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.http.sync.SpGetHttpClient; -import com.glxp.api.req.inout.FilterOrderDetailResultRequest; -import com.glxp.api.req.inout.ReviewFinishRequest; -import com.glxp.api.req.inout.ReviewSpmsRequest; -import com.glxp.api.req.inout.UpdateExportStatusRequest; +import com.glxp.api.req.inout.*; import com.glxp.api.res.inout.AcceptOrderResponse; +import com.glxp.api.res.inout.IoCodeResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.res.inout.IoOrderResponse; import com.glxp.api.res.sync.SpsSyncOrderResponse; @@ -63,6 +61,29 @@ public class IoOrderReviewController extends BaseController { IoOrderService orderService; @Resource IoCheckInoutService ioCheckInoutService; + @Resource + IoCodeService codeService; + @Resource + IoCodeTempService codeTempService; + @Resource + UdiCalCountUtil calCountUtil; + @Resource + AuthAdminService authAdminService; + @Resource + EntrustReceService entrustReceService; + @Resource + IBasicBussinessTypeService basicBussinessTypeService; + @Resource + GennerOrderUtils gennerOrderUtils; + @Resource + IoAddInoutService addInoutService; + @Resource + HeartService heartService; + @Resource + SpGetHttpClient spGetHttp; + @Resource + InvBusUserService invBusUserService; + //获取验收单据业务详情 @AuthRuleAnnotation("") @@ -88,7 +109,9 @@ public class IoOrderReviewController extends BaseController { } - //获取验收单据业务详情 + /** + * 获取验收单据业务详情 + */ @AuthRuleAnnotation("") @GetMapping("/udiwms/stock/order/accept/getStatus") public BaseResponse getStatus(String billNo) { @@ -169,14 +192,12 @@ public class IoOrderReviewController extends BaseController { } - @Resource - IoCodeService codeService; - @Resource - IoCodeTempService codeTempService; - @Resource - UdiCalCountUtil calCountUtil; - - //前端扫码验收 + /** + * 前端扫码验收 + * + * @param acceptOrderEntity + * @return + */ @AuthRuleAnnotation("") @PostMapping("/udiwms/stock/order/accept/addCode") public BaseResponse acceptAddCode(@RequestBody AcceptOrderResponse acceptOrderEntity) { @@ -231,14 +252,9 @@ public class IoOrderReviewController extends BaseController { return ResultVOUtils.error(500, "非此单条码!"); } - - @Resource - AuthAdminService authAdminService; - @Resource - EntrustReceService entrustReceService; - - - //手持终端验收完成后,更新订单状态 + /** + * 手持终端验收完成后,更新订单状态 + */ @AuthRuleAnnotation("") @PostMapping("/spms/inout/order/check/updateStatus") @Log(title = "单据管理", businessType = BusinessType.UPDATE) @@ -279,14 +295,6 @@ public class IoOrderReviewController extends BaseController { } - @Resource - IBasicBussinessTypeService basicBussinessTypeService; - @Resource - GennerOrderUtils gennerOrderUtils; - @Resource - SystemParamConfigService systemParamConfigService; - @Resource - IoAddInoutService addInoutService; public void transferOrder(IoOrderEntity orderEntity, EntrustReceEntity entrustReceEntity) { List warehouseEntities = codeService.findByOrderId(orderEntity.getBillNo()); @@ -458,30 +466,23 @@ public class IoOrderReviewController extends BaseController { } - @Resource - HeartService heartService; - @Resource - SpGetHttpClient spGetHttp; - - // 新增扫码验收单,本地不存在拉去自助平台待验收单 + /** + * 新增扫码验收单,本地不存在拉去自助平台待验收单 + */ @AuthRuleAnnotation("") @PostMapping("/udiwms/order/reviewSpms") public BaseResponse reviewSpms(@RequestBody ReviewSpmsRequest reviewSpmsRequest) { String billNo = reviewSpmsRequest.getBillNo(); - if (StrUtil.isEmpty(reviewSpmsRequest.getBillNo())) { - // return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); return ResultVOUtils.error(999, "请输入单据号!"); } AcceptOrderResponse acceptOrderEntity = new AcceptOrderResponse(); Long userId = getUserId(); String errMsg = checkReviewAuth(billNo, userId + ""); - EntrustReceEntity entrustReceEntity; if (StrUtil.isNotEmpty(errMsg)) { if (errMsg.equals("委托验收")) { acceptOrderEntity.setEntrust(true); -// else return ResultVOUtils.error(500, "无权限验收!"); } else return ResultVOUtils.error(500, errMsg); } @@ -548,10 +549,13 @@ public class IoOrderReviewController extends BaseController { } - @Resource - InvBusUserService invBusUserService; - - //校验用户是否验收权限 + /** + * 校验用户是否验收权限 + * + * @param orderId + * @param userId + * @return + */ private String checkReviewAuth(String orderId, String userId) { IoOrderEntity orderEntity = orderService.findByBillNo(orderId); if (orderEntity == null) { @@ -579,8 +583,56 @@ public class IoOrderReviewController extends BaseController { } else { return null; } + } + + + //pda获取核对单据 + + /** + * PDA获取待核对单据 + */ + @AuthRuleAnnotation("") + @GetMapping("/udiwms/pda/order/check/getOrder") + public BaseResponse getPdaCheckOrder(PdaCheckRequest pdaCheckRequest) { + IoOrderResponse orderEntity = orderService.findGroupBillNo(pdaCheckRequest.getBillNo()); + if (orderEntity == null) { + return ResultVOUtils.error(500, "单据不存在!"); + } + boolean isExit = invBusUserService.exitBus(getUserId() + "", pdaCheckRequest.getAction()); + if (!isExit) { + return ResultVOUtils.error(500, "无验收权限!"); + } + return ResultVOUtils.success(orderEntity); + + } + + /** + * PDA获取待核对单据-单据详情 + */ + @AuthRuleAnnotation("") + @GetMapping("/udiwms/pda/order/check/getOrderDetail") + public BaseResponse getPdaCheckOrderDetail(PdaCheckRequest pdaCheckRequest) { + FilterOrderDetailResultRequest filterOrderDetailResultRequest = new FilterOrderDetailResultRequest(); + filterOrderDetailResultRequest.setOrderIdFk(pdaCheckRequest.getBillNo()); + List orderDetailResultResponses = orderDetailResultService.filterList(filterOrderDetailResultRequest); + return ResultVOUtils.success(orderDetailResultResponses); + } + /** + * PDA获取待核对单据-单据条码明细 + */ + @AuthRuleAnnotation("") + @GetMapping("/udiwms/pda/order/check/getCodes") + public BaseResponse getPdaCheckOrderCodes(PdaCheckRequest pdaCheckRequest) { + FilterOrderDetailResultRequest filterOrderDetailResultRequest = new FilterOrderDetailResultRequest(); + filterOrderDetailResultRequest.setOrderIdFk(pdaCheckRequest.getBillNo()); + FilterCodeRequest filterCodeRequest = new FilterCodeRequest(); + filterCodeRequest.setOrderId(pdaCheckRequest.getBillNo()); + List codeResponses = codeService.filterList(filterCodeRequest); + return ResultVOUtils.success(codeResponses); + } + } diff --git a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java index ce8dc4f7d..c8c0a68c0 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java @@ -15,6 +15,7 @@ import com.glxp.api.controller.BaseController; import com.glxp.api.controller.inv.InvPreProductController; import com.glxp.api.controller.inv.InvPreinProductController; import com.glxp.api.controller.inv.InvProductController; +import com.glxp.api.dao.auth.InvWarehouseDao; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.InvWarehouseEntity; import com.glxp.api.entity.basic.BasicBusTypeChangeEntity; @@ -102,6 +103,8 @@ public class PurOrderReceiveController extends BaseController { @Resource IoPurChangeService purChangeService; @Resource + InvWarehouseDao invWarehouseDao; + @Resource InvPreProductController invPreProductController; @Resource InvPreinProductController invPreinProductController; @@ -109,7 +112,6 @@ public class PurOrderReceiveController extends BaseController { InvProductController invProductController; - @AuthRuleAnnotation("") @PostMapping("/udiwms/thrsys/order/insertWeb") public BaseResponse addReceive(@RequestBody PurReceiveEntity purReceiveEntity, BindingResult bindingResult) { @@ -149,6 +151,16 @@ public class PurOrderReceiveController extends BaseController { @AuthRuleAnnotation("") @GetMapping("/udiwms/receive/order/filter") public BaseResponse filterReceive(FilterReceiveRequest filterReceiveRequest) { + + if (filterReceiveRequest.getIsUser() != null && filterReceiveRequest.getIsUser()) { + AuthAdmin authAdmin = customerService.getUserBean(); + filterReceiveRequest.setCreateUser(authAdmin.getId() + ""); //查询自己 + } + if (filterReceiveRequest.getIsInvCode() != null && filterReceiveRequest.getIsInvCode()) { + AuthAdmin authAdmin = customerService.getUserBean(); + filterReceiveRequest.setTargetInvCode(authAdmin.getLocInvCode()); + } + List data = receiveService.filterList(filterReceiveRequest); PageInfo pageInfo; pageInfo = new PageInfo<>(data); @@ -235,45 +247,48 @@ public class PurOrderReceiveController extends BaseController { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } //判断库存 - List list = new ArrayList<>(); + List list = new ArrayList<>(); List listinvprein = new ArrayList<>(); List listInv = new ArrayList<>(); - if(updateReceiveDetailRequest.getAdvanceType() == 3){ + //查询仓库类型 + InvWarehouseEntity invWarehouseEntity = invWarehouseDao.filterGroupInvSubAndcode(updateReceiveDetailRequest.getTargetInvCode()); + + if (invWarehouseEntity.getAdvanceType() == 3) { //寄售 FilterInvPreProductRequest request = new FilterInvPreProductRequest(); - // BeanUtils.copyProperties(updateReceiveDetailRequest,request); + // BeanUtils.copyProperties(updateReceiveDetailRequest,request); request.setNameCode(updateReceiveDetailRequest.getNameCode()); request.setInvCode(updateReceiveDetailRequest.getTargetInvCode()); - list = selectFilterInvPreProductRequest(request); + list = selectFilterInvPreProductRequest(request); - }else if(updateReceiveDetailRequest.getAdvanceType() == 2){ + } else if (invWarehouseEntity.getAdvanceType() == 2) { //预验收 FilterInvPreinProductRequest request = new FilterInvPreinProductRequest(); - // BeanUtils.copyProperties(updateReceiveDetailRequest,request); + // BeanUtils.copyProperties(updateReceiveDetailRequest,request); request.setNameCode(updateReceiveDetailRequest.getNameCode()); request.setInvCode(updateReceiveDetailRequest.getTargetInvCode()); - listinvprein = selectfilterListStock(request); + listinvprein = selectfilterListStock(request); - }else{ + } else { FilterInvProductRequest request = new FilterInvProductRequest(); - // BeanUtils.copyProperties(updateReceiveDetailRequest,request); + // BeanUtils.copyProperties(updateReceiveDetailRequest,request); request.setNameCode(updateReceiveDetailRequest.getNameCode()); request.setInvCode(updateReceiveDetailRequest.getTargetInvCode()); listInv = selectFilterInvProductRequest(request); } - if(list != null && list.size()>0 ){ - if( list.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){ + if (list != null && list.size() > 0) { + if (list.get(0).getReCount() < updateReceiveDetailRequest.getCount()) { return ResultVOUtils.error(999, "库存不足!"); } } - if(listinvprein != null && listinvprein.size()>0 ){ - if(listinvprein.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){ + if (listinvprein != null && listinvprein.size() > 0) { + if (listinvprein.get(0).getReCount() < updateReceiveDetailRequest.getCount()) { return ResultVOUtils.error(999, "库存不足!"); } } - if(listInv != null && listInv.size()>0 ){ - if(listInv.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){ + if (listInv != null && listInv.size() > 0) { + if (listInv.get(0).getReCount() < updateReceiveDetailRequest.getCount()) { return ResultVOUtils.error(999, "库存不足!"); } } @@ -287,7 +302,7 @@ public class PurOrderReceiveController extends BaseController { } } - public List selectFilterInvPreProductRequest(FilterInvPreProductRequest filterInvPreProductRequest){ + public List selectFilterInvPreProductRequest(FilterInvPreProductRequest filterInvPreProductRequest) { if (StrUtil.isNotBlank(filterInvPreProductRequest.getUdiCode())) { filterInvPreProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreProductRequest.getUdiCode())); } @@ -302,7 +317,7 @@ public class PurOrderReceiveController extends BaseController { return list; } - public List selectfilterListStock(FilterInvPreinProductRequest filterInvPreinProductRequest){ + public List selectfilterListStock(FilterInvPreinProductRequest filterInvPreinProductRequest) { boolean showSup = false; //前端控制表格显示字段 if (StrUtil.isNotBlank(filterInvPreinProductRequest.getUdiCode())) { filterInvPreinProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreinProductRequest.getUdiCode())); @@ -315,12 +330,12 @@ public class PurOrderReceiveController extends BaseController { } } - List list = invPreinProductService.filterListStock(filterInvPreinProductRequest); + List list = invPreinProductService.filterListStock(filterInvPreinProductRequest); return list; } - public List selectFilterInvProductRequest(FilterInvProductRequest filterInvProductRequest){ + public List selectFilterInvProductRequest(FilterInvProductRequest filterInvProductRequest) { boolean showSup = false; //前端控制表格显示列字段 if (StrUtil.isNotBlank(filterInvProductRequest.getUdiCode())) { filterInvProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvProductRequest.getUdiCode())); @@ -339,8 +354,6 @@ public class PurOrderReceiveController extends BaseController { } - - @AuthRuleAnnotation("") @GetMapping("/udiwms/receive/order/del") public BaseResponse del(String orderIdFk) { diff --git a/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java b/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java index 5b22e8597..25a8d31b9 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java @@ -37,6 +37,9 @@ public class FilterReceiveRequest extends ListPageRequest { private Integer type; private String orderBy; + private Boolean isUser; + private Boolean isInvCode; + private String createUser; } diff --git a/src/main/java/com/glxp/api/req/inout/PdaCheckRequest.java b/src/main/java/com/glxp/api/req/inout/PdaCheckRequest.java new file mode 100644 index 000000000..0b4312faa --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/PdaCheckRequest.java @@ -0,0 +1,12 @@ +package com.glxp.api.req.inout; + +import lombok.Data; + +import javax.validation.constraints.NotEmpty; + +@Data +public class PdaCheckRequest { + @NotEmpty(message = "单据号不能为空") + private String billNo; + private String action; +} diff --git a/src/main/java/com/glxp/api/req/inout/ReviewSpmsRequest.java b/src/main/java/com/glxp/api/req/inout/ReviewSpmsRequest.java index da5ee232b..e873ca9d7 100644 --- a/src/main/java/com/glxp/api/req/inout/ReviewSpmsRequest.java +++ b/src/main/java/com/glxp/api/req/inout/ReviewSpmsRequest.java @@ -6,5 +6,6 @@ import lombok.Data; public class ReviewSpmsRequest { private String billNo; + private String action; } diff --git a/src/main/java/com/glxp/api/service/sync/WebSocketComponent.java b/src/main/java/com/glxp/api/service/sync/WebSocketComponent.java index eb809f0c9..101e7ce64 100644 --- a/src/main/java/com/glxp/api/service/sync/WebSocketComponent.java +++ b/src/main/java/com/glxp/api/service/sync/WebSocketComponent.java @@ -58,6 +58,8 @@ public class WebSocketComponent implements CommandLineRunner { if (message.equals(SocketMsgType.DL_ALL_DATA)) { heartTaskService.pullData(); } + + Thread.sleep(500); //打印服务端返回的数据 log.info("成功获取数据:" + message); } diff --git a/src/main/java/com/glxp/api/util/udi/UdiCalCountUtil.java b/src/main/java/com/glxp/api/util/udi/UdiCalCountUtil.java index 44d964660..632c128a1 100644 --- a/src/main/java/com/glxp/api/util/udi/UdiCalCountUtil.java +++ b/src/main/java/com/glxp/api/util/udi/UdiCalCountUtil.java @@ -14,10 +14,6 @@ public class UdiCalCountUtil { UdiRelevanceService udiRelevanceService; -// public int getActCount(Long relId) { -// UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(relId); -// return getActCount(udiRelevanceResponse); -// } public int getActCount(UdiRelevanceResponse udiRelevanceResponse) { //启用使用单元 diff --git a/src/main/resources/mybatis/mapper/inout/ReceiveDao.xml b/src/main/resources/mybatis/mapper/inout/ReceiveDao.xml index 67cc78f19..12156a300 100644 --- a/src/main/resources/mybatis/mapper/inout/ReceiveDao.xml +++ b/src/main/resources/mybatis/mapper/inout/ReceiveDao.xml @@ -28,6 +28,9 @@ AND invCode = #{invCode} + + AND io.createUser = #{createUser} + AND targetInvCode = #{targetInvCode} diff --git a/src/main/resources/schemas/schema_v2.2.sql b/src/main/resources/schemas/schema_v2.2.sql index 0f04e78d0..f0b244b7e 100644 --- a/src/main/resources/schemas/schema_v2.2.sql +++ b/src/main/resources/schemas/schema_v2.2.sql @@ -18,6 +18,8 @@ CREATE TABLE IF NOT EXISTS `device_inspect_task` `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', `expectedTime` datetime(0) NULL DEFAULT NULL COMMENT '预期结束时间', + `repairType` int NULL DEFAULT NULL COMMENT '报修类型', + `level` int NULL DEFAULT NULL COMMENT '紧急程度', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 @@ -132,3 +134,25 @@ CREATE TABLE IF NOT EXISTS `sync_edit_type` ROW_FORMAT = Dynamic; SET FOREIGN_KEY_CHECKS = 1; + + +CREATE TABLE IF NOT EXISTS `device_repair_order_detail` +( + `id` bigint(0) NOT NULL, + `orderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '项目编号', + `content` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '项目内容', + `type` int(0) NULL DEFAULT NULL COMMENT '项目类型:1:巡检;2:养护', + `remark` 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 '更新人', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_ai_ci + ROW_FORMAT = Dynamic; + + +# 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 (2000, '我的申购单 ', 1674, 2, 'purchase/purApply/pureApplyMySearch', 'purchase/purApply/pureApplyMySearch', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-07-20 17:08:38', NULL, NULL, NULL); +# INSERT ignore INTO `udi_wms_wmd`.`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 (2001, '我的领用单', 1685, 1, 'inout/receive/receiveMySearch', 'inout/receive/receiveMySearch', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2023-08-14 10:35:30', NULL, NULL, NULL); +#