diff --git a/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java b/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java index 4aae4f5b..8ba6e667 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java +++ b/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java @@ -61,6 +61,7 @@ public class ConstantStatus { public static String ST_WEB_ADD = "1"; //前端新增 public static String ST_THIRD_SEL = "2"; //第三方选入 public static String ST_SCAN_ADD = "3"; //扫码单据转换 + public static String ST_APPLY_ADD = "4"; //采购计划转换 //业务单据详情,DI绑定状态 public static int ORDER_DETAIL_DI_NONE = 2; @@ -154,6 +155,7 @@ public class ConstantStatus { public static final int APPLY_DRAFT = 1;//草稿 public static final int APPLY_UN_AUDIT = 2;//未审核 public static final int APPLY_AUDIT_ED = 3;//已审核 + public static final int APPLY_AUDIT_REJECT = 4;//审核拒绝 //首营审核状态 //20:新增页面,21:审核页面,22:查询页面,23:审核通过,24:未审核或审核不通过的 @@ -165,9 +167,9 @@ public class ConstantStatus { public static final int AUDIT_CHANGE_REJECT = 5;//申请变更不通过 public static final int AUDIT_UN = 6; //已提交未审核 - public static final int CERT_COMPANY=1; //配送企业 - public static final int CERT_MANUFACTURER=2; //生产企业 - public static final int CERT_PRODUCT=3; //产品品种 + public static final int CERT_COMPANY = 1; //配送企业 + public static final int CERT_MANUFACTURER = 2; //生产企业 + public static final int CERT_PRODUCT = 3; //产品品种 } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicBusTypeChangeController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicBusTypeChangeController.java new file mode 100644 index 00000000..4bd8b0d5 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicBusTypeChangeController.java @@ -0,0 +1,92 @@ +package com.glxp.api.admin.controller.basic; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.admin.annotation.AuthRuleAnnotation; +import com.glxp.api.admin.entity.basic.BasicBusTypeChangeEntity; +import com.glxp.api.admin.req.basic.BasicBusTypeChangeRequest; +import com.glxp.api.admin.req.inout.DeleteRequest; +import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.basic.BasicBusTypeChangeResponse; +import com.glxp.api.admin.service.basic.BasicBusTypeChangeService; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.Date; +import java.util.List; + +@RestController +public class BasicBusTypeChangeController { + + @Resource + BasicBusTypeChangeService basicBusTypeChangeService; + + + @AuthRuleAnnotation("") + @GetMapping("/basic/bustype/change/filter") + public BaseResponse filterJoinList(BasicBusTypeChangeRequest basicBusTypeChangeRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List basicBusTypeChangeEntities; + basicBusTypeChangeEntities = basicBusTypeChangeService.filterJoinList( + basicBusTypeChangeRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(basicBusTypeChangeEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(basicBusTypeChangeEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + + + @PostMapping("/basic/bustype/change/insert") + public BaseResponse insertBusType(@RequestBody @Valid BasicBusTypeChangeEntity basicBusTypeChangeEntity, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + basicBusTypeChangeEntity.setUpdateTime(new Date()); + basicBusTypeChangeService.insertBusType(basicBusTypeChangeEntity); + return ResultVOUtils.success("更新成功"); + } + + @PostMapping("/basic/bustype/change/update") + public BaseResponse updateBusType(@RequestBody @Valid BasicBusTypeChangeEntity basicBusTypeChangeEntity, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + basicBusTypeChangeEntity.setUpdateTime(new Date()); + basicBusTypeChangeService.updateBasicBusTypeChange(basicBusTypeChangeEntity); + return ResultVOUtils.success("更新成功"); + } + + + @PostMapping("/basic/bustype/change/delete") + public BaseResponse delBussinessType(@RequestBody DeleteRequest deleteRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + if (deleteRequest != null) { + basicBusTypeChangeService.deleteById(deleteRequest.getId()); + } else { + return ResultVOUtils.error(999, "参数错误"); + } + return ResultVOUtils.success("更新成功"); + } + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java index 9bb322a8..3fb0e5f5 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java @@ -27,6 +27,7 @@ import com.glxp.api.admin.res.basic.UdiRelevanceResponse; import com.glxp.api.admin.res.business.StockOrderDetailQueryProductResponse; import com.glxp.api.admin.res.business.StockOrderDetailResponse; import com.glxp.api.admin.res.info.CompanyProductRelevanceResponse; +import com.glxp.api.admin.res.purchase.SupProductResponse; import com.glxp.api.admin.service.auth.AuthAdminService; import com.glxp.api.admin.service.basic.BussinessLocalTypeService; import com.glxp.api.admin.service.basic.UdiInfoService; @@ -37,6 +38,7 @@ import com.glxp.api.admin.service.business.StockOrderService; import com.glxp.api.admin.service.info.CompanyProductRelevanceService; import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.inout.CodesService; +import com.glxp.api.admin.service.purchase.SupProductService; import com.glxp.api.admin.util.FilterUdiUtils; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; @@ -80,6 +82,8 @@ public class StockOrderDetailController { BussinessLocalTypeService bussinessLocalTypeService; @Resource CodesService codesService; + @Resource + SupProductService supProductService; @AuthRuleAnnotation("") @@ -354,6 +358,22 @@ public class StockOrderDetailController { if (stockOrderDetailEntityList.size() == 0) { return ResultVOUtils.error(ResultEnum.DATA_NOT, "未找到产品"); } + + //供应商选入时需要校验证书是否齐全 + if (stockOrderIdsRequest.getType() == 0) { + String value = systemParamConfigService.selectValueByParamKey("checkCert"); + if (StrUtil.isNotEmpty(value) && value.equals("1")) { + //判断证书是否齐全 + if (StrUtil.isNotEmpty(stockOrderIdsRequest.getZczbhhzbapzbh())) { + SupProductResponse supProductResponse = supProductService.findByPassByReCert(stockOrderIdsRequest.getZczbhhzbapzbh()); + if (supProductResponse == null) { + return ResultVOUtils.error(601, "该产品所对应的资质证书未通过审核,无法配送,请先维护产品资质信息"); + } + } else { + return ResultVOUtils.error(500, "注册证不能为空!"); + } + } + } return ResultVOUtils.success(stockOrderDetailEntityList); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/info/ClassifyCodeController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/info/ClassifyCodeController.java new file mode 100644 index 00000000..826c2160 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/info/ClassifyCodeController.java @@ -0,0 +1,34 @@ +package com.glxp.api.admin.controller.info; + +import com.github.pagehelper.PageInfo; +import com.glxp.api.admin.entity.info.ClassifyCodeEntity; +import com.glxp.api.admin.req.info.FilterClassifyCodeRequest; +import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.service.info.ClassifyCodeService; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +@RestController +public class ClassifyCodeController { + + @Resource + ClassifyCodeService classifyCodeService; + + @GetMapping("spms/classify/code/filter") + public BaseResponse filterList(FilterClassifyCodeRequest filterDeviceKeyRequest) { + List classifyCodeEntities = classifyCodeService.filteClassifyCode(filterDeviceKeyRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(classifyCodeEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(classifyCodeEntities); + return ResultVOUtils.success(pageSimpleResponse); + } + + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java index a36b3c45..6c614db0 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java @@ -11,10 +11,7 @@ import com.glxp.api.admin.controller.inout.utils.CheckOrderUtils; import com.glxp.api.admin.controller.inout.utils.ContrastErpUtil; import com.glxp.api.admin.controller.inout.utils.DataTransUtil; import com.glxp.api.admin.entity.auth.AuthAdmin; -import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity; -import com.glxp.api.admin.entity.basic.BussinessLocalTypeEntity; -import com.glxp.api.admin.entity.basic.BussinessTypeEntity; -import com.glxp.api.admin.entity.basic.UdiRelevanceEntity; +import com.glxp.api.admin.entity.basic.*; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; import com.glxp.api.admin.entity.business.StockOrderEntity; import com.glxp.api.admin.entity.info.SystemParamConfigEntity; @@ -22,6 +19,7 @@ import com.glxp.api.admin.entity.inout.ErpOrderEntity; import com.glxp.api.admin.entity.inout.FilterErpOrderRequest; import com.glxp.api.admin.entity.inout.OrderEntity; import com.glxp.api.admin.entity.inout.WarehouseEntity; +import com.glxp.api.admin.entity.inventory.InvWarehouseEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderEntity; import com.glxp.api.admin.httpclient.ErpOrderClient; @@ -48,6 +46,7 @@ import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.inout.CodesService; import com.glxp.api.admin.service.inout.OrderDetailService; import com.glxp.api.admin.service.inout.OrderService; +import com.glxp.api.admin.service.inventory.InvWarehouseService; import com.glxp.api.admin.service.thrsys.ThrDataService; import com.glxp.api.admin.service.thrsys.ThrOrderDetailService; import com.glxp.api.admin.service.thrsys.ThrOrderService; @@ -225,6 +224,10 @@ public class OrderDetailController { // } } + @Resource + BasicBusTypeChangeService basicBusTypeChangeService; + + @AuthRuleAnnotation("") @GetMapping("/udiwms/erpOrder/addStockOrder") public BaseResponse addStockOrder(FilterOrderRequest filterErpOrderRequest, @@ -249,6 +252,8 @@ public class OrderDetailController { BeanUtils.copyProperties(thrOrderEntity, stockOrderEntity); String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd")); stockOrderEntity.setBillNo(billNo); + + //第三方单据 BussinessOriginTypeResponse bussinessOriginTypeResponse = bussinessOriginTypeService.finByThirdAction(thrOrderEntity.getBillType()); stockOrderEntity.setBillType(bussinessOriginTypeResponse.getLocalAction()); stockOrderEntity.setId(null); @@ -285,8 +290,82 @@ public class OrderDetailController { } stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntityList); } + thrOrderEntity.setAllocateStatus(1); + thrOrderService.updateThrOrder(thrOrderEntity); + return ResultVOUtils.success(); + + } + + @Resource + InvWarehouseService invWarehouseService; + @AuthRuleAnnotation("") + @GetMapping("/udiwms/receive/addStockOrder") + public BaseResponse addReceiveOrder(FilterOrderRequest filterErpOrderRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + ThrOrderEntity thrOrderEntity = thrOrderService.findById(String.valueOf(filterErpOrderRequest.getId())); + if (thrOrderEntity == null) { + return ResultVOUtils.error(ResultEnum.DATA_NOT); + } + StockOrderEntity temp = stockOrderService.findByBillNo(thrOrderEntity.getBillNo()); + if (temp != null) { + return ResultVOUtils.error(500, "单据已被选入,请勿重复选入!"); + } + + StockOrderEntity stockOrderEntity = new StockOrderEntity(); + BeanUtils.copyProperties(thrOrderEntity, stockOrderEntity); + String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd")); + stockOrderEntity.setBillNo(billNo); + + BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.findByAction(thrOrderEntity.getBillType()); + stockOrderEntity.setBillType(basicBusTypeChangeEntity.getTargetBusAction()); + + stockOrderEntity.setId(null); + stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC);//未提交 + stockOrderEntity.setLocStorageCode(thrOrderEntity.getCorpId()); + stockOrderEntity.setInvWarehouseCode(thrOrderEntity.getFromSubInvCode()); + stockOrderEntity.setThirdOrderFk(thrOrderEntity.getBillNo()); + stockOrderEntity.setSourceType(ConstantStatus.ST_THIRD_SEL);//外部提交 + stockOrderEntity.setPrintStatus(ConstantStatus.SORDER_PRINT_UN);//未打印 + stockOrderEntity.setFromSubInvCode(thrOrderEntity.getInvWarehouseCode()); + stockOrderEntity.setCorpId(thrOrderEntity.getLocStorageCode()); + InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCode(thrOrderEntity.getLocStorageCode()); + stockOrderEntity.setCorpName(invWarehouseEntity.getName()); + stockOrderEntity.setBilldate(DateUtil.formatDate(new Date())); + boolean b = stockOrderService.insertStockOrder(stockOrderEntity); + stockOrderEntity = stockOrderService.findByBillNo(billNo); + FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest(); + filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + ""); + List thrOrderDetailEntities = + thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest); + if (thrOrderDetailEntities != null && thrOrderDetailEntities.size() > 0) { + List stockOrderDetailEntityList = new ArrayList<>(); + for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) { + StockOrderDetailEntity stockOrderDetailEntity = new StockOrderDetailEntity(); + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectByThirdId(thrOrderDetailEntity.getProductId(), thrOrderDetailEntity.getThirdSysFk()); + + if (udiRelevanceEntity == null) { + return ResultVOUtils.error(500, "单据里含有未维护的产品信息,选入失败!"); + } + BeanUtils.copyProperties(thrOrderDetailEntity, stockOrderDetailEntity); +// stockOrderDetailEntity.setProductId(thrOrderDetailEntity.getProductId()); + stockOrderDetailEntity.setProductId(udiRelevanceEntity.getId()); + stockOrderDetailEntity.setCount(thrOrderDetailEntity.getCount()); + stockOrderDetailEntity.setReCount(thrOrderDetailEntity.getReCount()); + stockOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId()); + stockOrderDetailEntity.setSweepCount(0); + stockOrderDetailEntityList.add(stockOrderDetailEntity); + } + stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntityList); + } + thrOrderEntity.setAllocateStatus(1); + thrOrderService.updateThrOrder(thrOrderEntity); return ResultVOUtils.success(); + } @Resource @@ -475,21 +554,20 @@ public class OrderDetailController { if (filterErpOrderRequest.getOrderId() == null || filterErpOrderRequest.getOrderId().equals("")) { filterErpOrderRequest.setOrderId("1"); } - String value = systemParamConfigService.selectValueByParamKey("oeder_detail_by_code"); filterErpOrderRequest.setPage(1); filterErpOrderRequest.setLimit(100); List erpOrderEntities = orderDetailService.filterMyErpOrder(filterErpOrderRequest); OrderEntity orderEntity = orderService.findById(filterErpOrderRequest.getOrderId()); - if (orderEntity == null) { - return ResultVOUtils.error(500, "单据不存在!"); - } - BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction()); - - if ((bussinessTypeEntity.getOrderVisibleType() == 1 && orderEntity.getStatus() == 4) || filterErpOrderRequest.getShowType() == 1) { - erpOrderEntities = transferSerList(erpOrderEntities, filterErpOrderRequest.getOrderId()); +// if (orderEntity == null) { +// return ResultVOUtils.error(500, "单据不存在!"); +// } + if (orderEntity != null) { + BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction()); + if ((bussinessTypeEntity.getOrderVisibleType() == 1 && orderEntity.getStatus() == 4) || filterErpOrderRequest.getShowType() == 1) { + erpOrderEntities = transferSerList(erpOrderEntities, filterErpOrderRequest.getOrderId()); + } } - if (CollUtil.isEmpty(erpOrderEntities)) { return spsDirectClient.downloadOrderDetail(filterErpOrderRequest.getOrderId(), customerService.getUserId() + ""); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inventory/InvPreInProductsController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inventory/InvPreInProductsController.java index 5876d952..64d787f0 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inventory/InvPreInProductsController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inventory/InvPreInProductsController.java @@ -100,9 +100,9 @@ public class InvPreInProductsController { if (Constant.SYSTEM_CUSTOMER_ID.equals(filterInvProductRequest.getCustomerId())) { filterInvProductRequest.setCustomerId(null); } - if (StrUtil.isEmpty(filterInvProductRequest.getBatchNo())) { - filterInvProductRequest.setBatchNo("empty"); - } +// if (StrUtil.isEmpty(filterInvProductRequest.getBatchNo())) { +// filterInvProductRequest.setBatchNo("empty"); +// } filterInvProductRequest.setInvStorageCode(null); filterInvProductRequest.setInvWarehouseCode(null); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurApplyController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurApplyController.java index 49195950..78fc2833 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurApplyController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurApplyController.java @@ -9,6 +9,8 @@ import com.glxp.api.admin.constant.ConstantStatus; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; import com.glxp.api.admin.entity.purchase.PurApplyDetailEntity; import com.glxp.api.admin.entity.purchase.PurApplyEntity; +import com.glxp.api.admin.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.admin.entity.purchase.PurPlanEntity; import com.glxp.api.admin.req.purchase.PostPurApplyRequest; import com.glxp.api.admin.req.purchase.PurApplyDetailRequest; import com.glxp.api.admin.req.purchase.PurApplyRequest; @@ -17,6 +19,8 @@ import com.glxp.api.admin.res.purchase.PurApplyResponse; import com.glxp.api.admin.service.auth.CustomerService; import com.glxp.api.admin.service.purchase.IPurApplyDetailService; import com.glxp.api.admin.service.purchase.IPurApplyService; +import com.glxp.api.admin.service.purchase.IPurPlanDetailService; +import com.glxp.api.admin.service.purchase.IPurPlanService; import com.glxp.api.admin.util.GennerOrderUtils; import com.glxp.api.admin.util.MyStrUtil; import com.glxp.api.admin.util.OrderNoTypeBean; @@ -46,9 +50,13 @@ public class PurApplyController { @Resource IPurApplyService purApplyService; - @Resource IPurApplyDetailService purApplyDetailService; + @Resource + IPurPlanService purPlanService; + @Resource + IPurPlanDetailService purPlanDetailService; + @Resource CustomerService customerService; @@ -141,13 +149,41 @@ public class PurApplyController { @PostMapping("/purchase/apply/auditOrder") public BaseResponse auditOrder(@RequestBody PurApplyRequest purApplyRequest) { + + Integer userId = customerService.getUserId(); PurApplyEntity purApplyEntity = new PurApplyEntity(); BeanUtils.copyProperties(purApplyRequest, purApplyEntity); + purApplyEntity.setUpdateTime(new Date()); + purApplyEntity.setAuditTime(new Date()); + purApplyEntity.setAuditBy(userId + ""); purApplyService.update(purApplyEntity); - //审核通过后转换成采购计划单 - + if (purApplyEntity.getStatus() == ConstantStatus.APPLY_AUDIT_ED) { + PurPlanEntity purPlanEntity = new PurPlanEntity(); + String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd")); + + purPlanEntity.setBillNo(billNo); + purPlanEntity.setBillDate(new Date()); + purPlanEntity.setStatus(ConstantStatus.APPLY_UN_AUDIT); + purPlanEntity.setLocStorageCode(purApplyEntity.getLocStorageCode()); + purPlanEntity.setInvWarehouseCode(purApplyEntity.getInvWarehouseCode()); + purPlanEntity.setDeptCode(purApplyEntity.getDeptCode()); + purPlanEntity.setCreateBy(purApplyEntity.getAuditBy()); + purPlanEntity.setCreateTime(new Date()); + purPlanEntity.setUpdateTime(new Date()); + + purPlanService.insert(purPlanEntity); + List purApplyDetailEntities = purApplyDetailService.findByOrderId(purApplyEntity.getId() + ""); + if (CollUtil.isNotEmpty(purApplyDetailEntities)) { + for (PurApplyDetailEntity purApplyDetailEntity : purApplyDetailEntities) { + PurPlanDetailEntity purPlanDetailEntity = new PurPlanDetailEntity(); + BeanUtils.copyProperties(purApplyDetailEntity, purPlanDetailEntity); + purPlanDetailEntity.setOrderIdFk(purPlanEntity.getId() + ""); + purPlanDetailService.insert(purPlanDetailEntity); + } + } + } return ResultVOUtils.success("更新成功!"); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurPlanController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurPlanController.java index e8f0cdca..808047b7 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurPlanController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/PurPlanController.java @@ -1,21 +1,35 @@ package com.glxp.api.admin.controller.purchase; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.annotation.RepeatSubmit; import com.glxp.api.admin.constant.Constant; +import com.glxp.api.admin.constant.ConstantStatus; +import com.glxp.api.admin.entity.basic.BasicUnitMaintainEntity; +import com.glxp.api.admin.entity.basic.BussinessLocalTypeEntity; +import com.glxp.api.admin.entity.basic.BussinessTypeEntity; +import com.glxp.api.admin.entity.basic.UdiRelevanceEntity; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; +import com.glxp.api.admin.entity.business.StockOrderEntity; +import com.glxp.api.admin.entity.inout.WarehouseEntity; import com.glxp.api.admin.entity.purchase.PurPlanDetailEntity; import com.glxp.api.admin.entity.purchase.PurPlanEntity; import com.glxp.api.admin.req.purchase.PostPurPlanRequest; import com.glxp.api.admin.req.purchase.PurPlanDetailRequest; import com.glxp.api.admin.req.purchase.PurPlanRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.basic.UdiRelevanceResponse; import com.glxp.api.admin.res.purchase.PurPlanResponse; import com.glxp.api.admin.service.auth.CustomerService; +import com.glxp.api.admin.service.basic.BasicUnitMaintainService; +import com.glxp.api.admin.service.basic.BussinessLocalTypeService; +import com.glxp.api.admin.service.basic.UdiRelevanceService; +import com.glxp.api.admin.service.business.StockOrderDetailService; import com.glxp.api.admin.service.purchase.IPurPlanDetailService; import com.glxp.api.admin.service.purchase.IPurPlanService; +import com.glxp.api.admin.util.DateUtil; import com.glxp.api.admin.util.GennerOrderUtils; import com.glxp.api.admin.util.OrderNoTypeBean; import com.glxp.api.common.res.BaseResponse; @@ -27,9 +41,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.constraints.NotEmpty; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; /** @@ -41,7 +53,6 @@ import java.util.List; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/purchase/plan") public class PurPlanController { @@ -54,13 +65,21 @@ public class PurPlanController { CustomerService customerService; @Resource GennerOrderUtils gennerOrderUtils; + @Resource + BasicUnitMaintainService basicUnitMaintainService; + @Resource + BussinessLocalTypeService bussinessLocalTypeService; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + StockOrderDetailService stockOrderDetailService; /** * 新增采购计划 */ @RepeatSubmit() @AuthRuleAnnotation("") - @PostMapping("/postOrder") + @PostMapping("/purchase/plan/postOrder") public BaseResponse postOrder(@RequestBody PostPurPlanRequest postPurPlanRequest) { Integer userId = customerService.getUserId(); @@ -79,15 +98,88 @@ public class PurPlanController { purPlanDetailService.deleteByOrderId(purApplyEntity.getId() + ""); } } + List purPlanDetailEntities = new ArrayList<>(); if (CollUtil.isNotEmpty(postPurPlanRequest.getSubErpOrders())) { for (StockOrderDetailEntity stockOrderDetailEntity : postPurPlanRequest.getSubErpOrders()) { PurPlanDetailEntity purApplyDetailEntity = new PurPlanDetailEntity(); BeanUtils.copyProperties(stockOrderDetailEntity, purApplyDetailEntity); purApplyDetailEntity.setOrderIdFk(purApplyEntity.getId() + ""); purPlanDetailService.insert(purApplyDetailEntity); + purPlanDetailEntities.add(purApplyDetailEntity); } } + + //转换成业务单据 + if (postPurPlanRequest.getEditStatus() == ConstantStatus.APPLY_AUDIT_ED) { + + + if (CollUtil.isNotEmpty(purPlanDetailEntities)) { + //1.根据供应商分组 + Map> filterSupMaps = new HashMap<>(); + for (PurPlanDetailEntity purPlanDetailEntity : purPlanDetailEntities) { + if (StrUtil.isNotEmpty(purPlanDetailEntity.getSupId())) { + if (filterSupMaps.get(purPlanDetailEntity.getSupId()) == null) { + List temps = new ArrayList<>(); + temps.add(purPlanDetailEntity); + filterSupMaps.put(purPlanDetailEntity.getSupId(), temps); + } else { + filterSupMaps.get(purPlanDetailEntity.getSupId()).add(purPlanDetailEntity); + } + } + } + + //2.生成业务单据 + for (String supId : filterSupMaps.keySet()) { + //2.构建业务单据 + StockOrderEntity stockOrderEntity = new StockOrderEntity(); + String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd")); + stockOrderEntity.setBillNo(billNo); + stockOrderEntity.setSourceType(ConstantStatus.ST_APPLY_ADD); + stockOrderEntity.setCorpId(supId); + stockOrderEntity.setUnitIdFk(supId); + BasicUnitMaintainEntity basicUnitMaintainEntity = basicUnitMaintainService.selectByErpId(supId); + stockOrderEntity.setCorpName(basicUnitMaintainEntity.getName()); + stockOrderEntity.setBilldate(DateUtil.formatDateTime(new Date())); + stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC); + //todo + BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByName("采购入库单"); + stockOrderEntity.setBillType(bussinessLocalTypeEntity.getLocalAction()); + stockOrderEntity.setInvWarehouseCode(purApplyEntity.getInvWarehouseCode()); + stockOrderEntity.setLocStorageCode(purApplyEntity.getLocStorageCode()); + stockOrderEntity.setDept(purApplyEntity.getDeptCode()); + + //3.构建单据详情 + List temps = filterSupMaps.get(supId); + if (CollUtil.isNotEmpty(temps)) { + List stockOrderDetailEntities = new ArrayList<>(); + for (PurPlanDetailEntity purPlanDetailEntity : temps) { + + StockOrderDetailEntity stockOrderDetailEntity = new StockOrderDetailEntity(); + UdiRelevanceResponse udiRelevanceEntity = udiRelevanceService.selectGroupById(purPlanDetailEntity.getProductId()); + stockOrderDetailEntity.setProductName(udiRelevanceEntity.getCpmctymc()); + stockOrderDetailEntity.setRelId(udiRelevanceEntity.getId() + ""); + stockOrderDetailEntity.setProductId(udiRelevanceEntity.getId() + ""); + stockOrderDetailEntity.setSpec(udiRelevanceEntity.getGgxh()); + stockOrderDetailEntity.setCount(purPlanDetailEntity.getCount()); + stockOrderDetailEntity.setReCount(purPlanDetailEntity.getCount()); + stockOrderDetailEntity.setManufactory(udiRelevanceEntity.getManufactory()); + stockOrderDetailEntity.setYlqxzcrbarmc(udiRelevanceEntity.getYlqxzcrbarmc()); + stockOrderDetailEntity.setZczbhhzbapzbh(udiRelevanceEntity.getZczbhhzbapzbh()); + stockOrderDetailEntity.setMeasname(udiRelevanceEntity.getMeasname()); + stockOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId()); + stockOrderDetailEntities.add(stockOrderDetailEntity); + + } + if (CollUtil.isNotEmpty(stockOrderDetailEntities)) { + stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntities); + } + } + } + } + + } + return ResultVOUtils.success("提交成功!"); } @@ -95,7 +187,7 @@ public class PurPlanController { /** * 查询采购计划列表 */ - @GetMapping("/list") + @GetMapping("/purchase/plan/list") public BaseResponse list(PurPlanRequest purApplyRequest) { if (purApplyRequest.getStatus() == null) { @@ -116,7 +208,7 @@ public class PurPlanController { /** * 查询采购计划列表 */ - @GetMapping("/auditList") + @GetMapping("/purchase/plan/auditList") public BaseResponse auditList(PurPlanRequest purApplyRequest) { if (purApplyRequest.getStatus() == null) { @@ -137,7 +229,7 @@ public class PurPlanController { * 审核采购计划 */ @RepeatSubmit() - @PostMapping("/auditOrder") + @PostMapping("/purchase/plan/auditOrder") public BaseResponse auditOrder(@RequestBody PurPlanRequest purApplyRequest) { PurPlanEntity purApplyEntity = new PurPlanEntity(); @@ -151,7 +243,7 @@ public class PurPlanController { * 新增采购计划 */ @RepeatSubmit() - @PostMapping() + @PostMapping("/purchase/plan") public BaseResponse add(@RequestBody PurPlanEntity purApplyRequest) { purPlanService.insert(purApplyRequest); @@ -162,7 +254,7 @@ public class PurPlanController { * 修改采购计划 */ @RepeatSubmit() - @PutMapping() + @PutMapping("/purchase/plan") public BaseResponse edit(@RequestBody PurPlanEntity purApplyRequest) { purPlanService.update(purApplyRequest); return ResultVOUtils.success("删除成功"); @@ -172,7 +264,7 @@ public class PurPlanController { /** * 查询采购计划列表 */ - @GetMapping("/list/detail") + @GetMapping("/purchase/plan/list/detail") public BaseResponse detailList(PurPlanDetailRequest purApplyDetailRequest) { List purApplyDetailEntities = purPlanDetailService.joinQueryList(purApplyDetailRequest); @@ -191,7 +283,7 @@ public class PurPlanController { * * @param ids 主键串 */ - @DeleteMapping("/{ids}") + @DeleteMapping("/purchase/plan/{ids}") public BaseResponse remove(@NotEmpty(message = "主键不能为空") @PathVariable Integer[] ids) { @@ -212,7 +304,7 @@ public class PurPlanController { * 新增采购计划 */ @RepeatSubmit() - @PostMapping("/detail") + @PostMapping("/purchase/plan/detail") public BaseResponse detailAdd(@RequestBody PurPlanDetailEntity purPlanDetailRequest) { purPlanDetailService.insert(purPlanDetailRequest); @@ -223,7 +315,7 @@ public class PurPlanController { * 修改采购计划 */ @RepeatSubmit() - @PutMapping("/detail") + @PutMapping("/purchase/plan/detail") public BaseResponse detailEdit(@RequestBody PurPlanDetailEntity purPlanDetailRequest) { purPlanDetailService.update(purPlanDetailRequest); return ResultVOUtils.success("修改成功"); @@ -234,7 +326,7 @@ public class PurPlanController { * * @param ids 主键串 */ - @DeleteMapping("/detail/{ids}") + @DeleteMapping("/purchase/plan/detail/{ids}") public BaseResponse detailRemove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] ids) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertController.java index 87d66282..86872e80 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertController.java @@ -1,23 +1,29 @@ package com.glxp.api.admin.controller.purchase; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.constant.ConstantStatus; import com.glxp.api.admin.entity.auth.AuthAdmin; -import com.glxp.api.admin.entity.purchase.SupCertEntity; -import com.glxp.api.admin.entity.purchase.SupCertSetEntity; +import com.glxp.api.admin.entity.purchase.*; import com.glxp.api.admin.exception.JsonException; import com.glxp.api.admin.req.info.CompanyRequest; import com.glxp.api.admin.req.info.DeleteCompanyFileRequest; import com.glxp.api.admin.req.purchase.FilterSupCertRequest; import com.glxp.api.admin.req.purchase.PostSelCertRequest; +import com.glxp.api.admin.req.purchase.PostSupCertRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.purchase.SupProductResponse; import com.glxp.api.admin.service.auth.AuthAdminService; import com.glxp.api.admin.service.purchase.SupCertService; +import com.glxp.api.admin.service.purchase.SupCompanyService; +import com.glxp.api.admin.service.purchase.SupManufacturerService; +import com.glxp.api.admin.service.purchase.SupProductService; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; @@ -64,7 +70,12 @@ public class SupCertController { @AuthRuleAnnotation("") @PostMapping("/sup/info/selectAllCert") public BaseResponse selectAllCert(@RequestBody PostSelCertRequest postSelCertRequest) { - String customerId = getCustomerId(); + String customerId = null; + if (StrUtil.isEmpty(postSelCertRequest.getCustomerId())) + customerId = getCustomerId(); + else { + customerId = postSelCertRequest.getCustomerId(); + } if (CollUtil.isEmpty(postSelCertRequest.getSupCertSetEntities())) { return ResultVOUtils.error(500, "请选入资质证书!"); } @@ -118,10 +129,38 @@ public class SupCertController { return ResultVOUtils.success("成功"); } + @Resource + SupCompanyService supCompanyService; + @Resource + SupManufacturerService supManufacturerService; + @Resource + SupProductService supProductService; + @AuthRuleAnnotation("") @PostMapping("/sup/info/updateCompanyCert") - public BaseResponse updateCompanyCert(@RequestBody SupCertEntity supCertEntity) { + public BaseResponse updateCompanyCert(@RequestBody PostSupCertRequest postSupCertRequest) { + SupCertEntity supCertEntity = new SupCertEntity(); + BeanUtils.copyProperties(postSupCertRequest, supCertEntity); + if (postSupCertRequest.getRepeatUpload() == 1) { + //已审核的重新提交 + //1.修改对应的资质信息进入变更审核状态, + if (postSupCertRequest.getType() == ConstantStatus.CERT_COMPANY) { + SupCompanyEntity supCompanyEntity = supCompanyService.findCompany(supCertEntity.getCustomerId()); + supCompanyEntity.setAuditStatus(ConstantStatus.AUDIT_CHANGE); + supCompanyService.modifyCompany(supCompanyEntity); + } else if (postSupCertRequest.getType() == ConstantStatus.CERT_MANUFACTURER) { + SupManufacturerEntity supManufacturerEntity = supManufacturerService.findManufacturer(supCertEntity.getManufacturerIdFk()); + supManufacturerEntity.setAuditStatus(ConstantStatus.AUDIT_CHANGE); + supManufacturerService.modifyCompany(supManufacturerEntity); + } else if (postSupCertRequest.getType() == ConstantStatus.CERT_PRODUCT) { + SupProductResponse supProductResponse = supProductService.findByProductId(supCertEntity.getProductIdFk()); + SupProductEntity supProductEntity = new SupProductEntity(); + supProductEntity.setId(supProductResponse.getId()); + supProductEntity.setAuditStatus(ConstantStatus.AUDIT_CHANGE); + supProductService.modifyRegistration(supProductEntity); + } + } boolean b = supCertService.updateCompanyCert(supCertEntity); return ResultVOUtils.success("修改成功"); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertSetController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertSetController.java index 4d009de4..a9c480c8 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertSetController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCertSetController.java @@ -1,5 +1,6 @@ package com.glxp.api.admin.controller.purchase; +import cn.hutool.core.collection.CollUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.entity.purchase.SupCertSetEntity; @@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; @RestController public class SupCertSetController { @@ -60,7 +62,10 @@ public class SupCertSetController { @AuthRuleAnnotation("") @PostMapping("/sup/cert/set/update") public BaseResponse updateCertSet(@RequestBody SupCertSetEntity supCertSetEntity) { - + if (CollUtil.isNotEmpty(supCertSetEntity.getFlbmList())) { + String flbm = supCertSetEntity.getFlbmList().stream().collect(Collectors.joining(",")); + supCertSetEntity.setFlbm(flbm); + } boolean b = supCertSetService.updateCertSet(supCertSetEntity); return ResultVOUtils.success("修改成功"); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCompanyController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCompanyController.java index 4301cfb9..f9fe8ba9 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCompanyController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupCompanyController.java @@ -102,7 +102,8 @@ public class SupCompanyController { @AuthRuleAnnotation("") @PostMapping("/api/pur/modifyCompany") public BaseResponse modifyCompany(@RequestBody SupCompanyEntity companyEntity) { - if (companyEntity.getAuditStatus() == ConstantStatus.AUDIT_UN) { + if (companyEntity.getAuditStatus() == ConstantStatus.AUDIT_UN || companyEntity.getAuditStatus() == ConstantStatus.AUDIT_CHANGE) { + //提交审核 FilterCertSetsRequest filterCertSetsRequest = new FilterCertSetsRequest(); filterCertSetsRequest.setType(ConstantStatus.CERT_COMPANY); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupManufacturerController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupManufacturerController.java index 879685d7..7d347394 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupManufacturerController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupManufacturerController.java @@ -77,7 +77,7 @@ public class SupManufacturerController { @AuthRuleAnnotation("") @GetMapping("/sup/manufacturer/getCompanyBySup") public BaseResponse getCompanyBySup(FilterSupManufacturerRequest filterSupManufacturerRequest) { - filterSupManufacturerRequest.setCustomerId(getCustomerId()); +// filterSupManufacturerRequest.setCustomerId(getCustomerId()); List companyEntities = supManufacturerService.getCompany(filterSupManufacturerRequest); PageInfo pageInfo = new PageInfo<>(companyEntities); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupProductController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupProductController.java index 0c091c94..edea7d6a 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupProductController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/purchase/SupProductController.java @@ -176,25 +176,12 @@ public class SupProductController { while (iterable.hasNext()) { SupCertSetEntity supCertSetEntity = iterable.next(); - if (supCertSetEntity.isNeed() - || - (!supCertSetEntity.isNeed() && - supCertSetEntity.getImports() != null && supCertSetEntity.getImports() == 2 - && StrUtil.trimToEmpty(supProductEntity.getRecordCode()).contains("进") - ) - || - (!supCertSetEntity.isNeed() && - supCertSetEntity.getImports() != null && supCertSetEntity.getImports() == 3 - && !StrUtil.trimToEmpty(supProductEntity.getRecordCode()).contains("进") - ) - || - (!supCertSetEntity.isNeed() && - !StrUtil.trimToEmpty(supProductEntity.getProductType()).equals(supCertSetEntity.getCplx()) - ) - || - (!supCertSetEntity.isNeed() && - !StrUtil.trimToEmpty(supProductEntity.getHchzsb()).equals(supCertSetEntity.getHchzsb()) - ) + if ((supCertSetEntity.getImports() != null && supCertSetEntity.getImports() == 2 + && StrUtil.trimToEmpty(supProductEntity.getRecordCode()).contains("进")) + || (supCertSetEntity.getImports() != null && supCertSetEntity.getImports() == 3 && !StrUtil.trimToEmpty(supProductEntity.getRecordCode()).contains("进")) + || (StrUtil.trimToEmpty(supProductEntity.getProductType()).equals(supCertSetEntity.getCplx())) + || (StrUtil.trimToEmpty(supProductEntity.getHchzsb()).equals(supCertSetEntity.getHchzsb())) + || (supCertSetEntity.getFlbm().contains(StrUtil.trimToEmpty(supProductEntity.getProductDirectoryCode()))) ) { for (SupCertEntity supCertEntity : supCertEntityList) { if (supCertEntity.getName().equals(supCertSetEntity.getName())) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java index f7ba47b7..c05aa2e1 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java @@ -3,12 +3,18 @@ package com.glxp.api.admin.controller.thrsys; import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DateUtil; +import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.constant.Constant; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderEntity; import com.glxp.api.admin.req.business.StockOrderPostRequest; +import com.glxp.api.admin.req.inout.FilterOrderRequest; +import com.glxp.api.admin.req.thrsys.FilterThrOrderDetailRequest; +import com.glxp.api.admin.req.thrsys.FilterThrOrderRequest; +import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.inout.ErpOrderResponse; import com.glxp.api.admin.service.auth.CustomerService; import com.glxp.api.admin.service.thrsys.ThrOrderDetailService; import com.glxp.api.admin.service.thrsys.ThrOrderService; @@ -20,11 +26,13 @@ import com.glxp.api.common.util.ResultVOUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -42,8 +50,7 @@ public class ThrOrderReceiveController { @AuthRuleAnnotation("") @PostMapping("/udiwms/thrsys/order/insertWeb") - public BaseResponse insertWeb(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) { - + public BaseResponse addReceive(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } @@ -54,39 +61,103 @@ public class ThrOrderReceiveController { stockOrderEntity.setType(1);//领用单据 stockOrderEntity.setUpdateTime(new Date()); stockOrderEntity.setBilldate(DateUtil.parse(stockOrderEntity.getBilldate(), DatePattern.NORM_DATETIME_PATTERN).toString()); - ThrOrderEntity temp = thrOrderService.findByUnique(stockOrderEntity.getBillNo(), stockOrderEntity.getThirdSysFk()); - if (temp != null) { - stockOrderEntity.setId(temp.getId()); - } String orderNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.LIN_YONG, "yyyyMMdd")); stockOrderEntity.setBillNo(orderNo); thrOrderService.insertThrOrder(stockOrderEntity); - stockOrderEntity = thrOrderService.findByUnique(stockOrderEntity.getBillNo(), stockOrderEntity.getThirdSysFk()); - if (stockOrderPostRequest.getSubErpOrders() != null) { List stockOrderDetailEntityList = stockOrderPostRequest.getSubErpOrders(); for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntityList) { - ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity(); BeanUtils.copyProperties(stockOrderDetailEntity, thrOrderDetailEntity); - thrOrderDetailEntity.setOrderIdFk( - StringUtils.isBlank(stockOrderDetailEntity.getOrderIdFk()) ? - stockOrderEntity.getId() + "" : stockOrderDetailEntity.getOrderIdFk()); + thrOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId() + ""); + thrOrderDetailEntity.setReCount( + stockOrderDetailEntity.getReCount()); + thrOrderDetailEntity.setCount( + stockOrderDetailEntity.getCount()); + thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity); + } + return ResultVOUtils.success("成功"); + } + return ResultVOUtils.success("成功"); + } + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/receive/order/update") + public BaseResponse updateReceive(@RequestBody StockOrderPostRequest stockOrderPostRequest, BindingResult bindingResult) { + //editState 1为草稿保存 2为提交保存 + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + ThrOrderEntity stockOrderEntity = new ThrOrderEntity(); + BeanUtils.copyProperties(stockOrderPostRequest, stockOrderEntity); + stockOrderEntity.setType(1);//领用单据 + stockOrderEntity.setUpdateTime(new Date()); + stockOrderEntity.setId(Integer.parseInt(stockOrderPostRequest.getId())); + stockOrderEntity.setBilldate(DateUtil.parse(stockOrderEntity.getBilldate(), DatePattern.NORM_DATETIME_PATTERN).toString()); + thrOrderService.updateThrOrder(stockOrderEntity); + thrOrderDetailService.deleteByOrderIdFk(stockOrderEntity.getId() + ""); + List stockOrderDetailEntityList = stockOrderPostRequest.getSubErpOrders(); + for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntityList) { + ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity(); + BeanUtils.copyProperties(stockOrderDetailEntity, thrOrderDetailEntity); + thrOrderDetailEntity.setOrderIdFk( + StringUtils.isBlank(stockOrderDetailEntity.getOrderIdFk()) ? + stockOrderEntity.getId() + "" : stockOrderDetailEntity.getOrderIdFk()); + thrOrderDetailEntity.setReCount( + stockOrderDetailEntity.getReCount()); + thrOrderDetailEntity.setCount( + stockOrderDetailEntity.getCount()); + + thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity); + } + return ResultVOUtils.success("成功"); + } + - if (StringUtils.isBlank(stockOrderDetailEntity.getId())) { - thrOrderDetailEntity.setReCount( - stockOrderDetailEntity.getReCount()); - thrOrderDetailEntity.setCount( - stockOrderDetailEntity.getCount()); + @AuthRuleAnnotation("") + @GetMapping("/udiwms/receive/order/filter") + public BaseResponse filterReceive(FilterOrderRequest filterErpOrderRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } - thrOrderDetailService.insertThrOrderDetail(thrOrderDetailEntity); + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + BeanUtils.copyProperties(filterErpOrderRequest, filterThrOrderRequest); + filterThrOrderRequest.setPage(filterErpOrderRequest.getPage()); + filterThrOrderRequest.setLimit(filterErpOrderRequest.getLimit()); + List erpOrderResponses = new ArrayList<>(); + List data = thrOrderService.filterReceiveOrder(filterThrOrderRequest); + if (data != null && data.size() > 0) { + for (ThrOrderEntity thrOrderEntity : data) { + FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest(); + filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + ""); + List thrOrderDetailEntities = + thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest); + ErpOrderResponse erpOrderResponse = new ErpOrderResponse(); + BeanUtils.copyProperties(thrOrderEntity, erpOrderResponse); + List subErpOrders = new ArrayList<>(); + if (thrOrderDetailEntities != null && thrOrderDetailEntities.size() > 0) { + for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) { + ErpOrderResponse.SubErpOrder subErpOrder = new ErpOrderResponse.SubErpOrder(); + BeanUtils.copyProperties(thrOrderDetailEntity, subErpOrder); + subErpOrder.setCount(thrOrderDetailEntity.getCount()); + subErpOrder.setReCount(thrOrderDetailEntity.getReCount()); + subErpOrders.add(subErpOrder); + } } + erpOrderResponse.setSubErpOrders(subErpOrders); + erpOrderResponses.add(erpOrderResponse); } - - return ResultVOUtils.success("成功"); } - return ResultVOUtils.success("成功"); + PageInfo pageInfo; + pageInfo = new PageInfo<>(data); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(erpOrderResponses); + return ResultVOUtils.success(pageSimpleResponse); } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/basic/BasicBusTypeChangeDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/basic/BasicBusTypeChangeDao.java new file mode 100644 index 00000000..1939f5cf --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/basic/BasicBusTypeChangeDao.java @@ -0,0 +1,24 @@ +package com.glxp.api.admin.dao.basic; + +import com.glxp.api.admin.entity.basic.BasicBusTypeChangeEntity; +import com.glxp.api.admin.req.basic.BasicBusTypeChangeRequest; +import com.glxp.api.admin.res.basic.BasicBusTypeChangeResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface BasicBusTypeChangeDao { + + List filterList(BasicBusTypeChangeRequest basicBusTypeChangeRequest); + + List filterJoinList(BasicBusTypeChangeRequest basicBusTypeChangeRequest); + + boolean insertBusType(BasicBusTypeChangeEntity basicBusTypeChangeEntity); + + boolean updateBasicBusTypeChange(BasicBusTypeChangeEntity basicBusTypeChangeEntity); + + boolean deleteById(@Param("id") String id); + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/info/ClassifyCodeDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/info/ClassifyCodeDao.java new file mode 100644 index 00000000..48c1932d --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/info/ClassifyCodeDao.java @@ -0,0 +1,13 @@ +package com.glxp.api.admin.dao.info; + +import com.glxp.api.admin.entity.info.ClassifyCodeEntity; +import com.glxp.api.admin.req.info.FilterClassifyCodeRequest; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface ClassifyCodeDao { + + List filteClassifyCode(FilterClassifyCodeRequest filterClassifyCodeRequest); +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrOrderDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrOrderDao.java index 52750198..86e5e076 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrOrderDao.java +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrOrderDao.java @@ -12,6 +12,9 @@ public interface ThrOrderDao { List filterThrOrder(FilterThrOrderRequest filterThrOrderRequest); + List filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest); + + boolean insertThrOrder(ThrOrderEntity thrCorpEntity); boolean importThrOrder(ThrOrderEntity thrCorpEntity); diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicBusTypeChangeEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicBusTypeChangeEntity.java new file mode 100644 index 00000000..af93114e --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/basic/BasicBusTypeChangeEntity.java @@ -0,0 +1,21 @@ +package com.glxp.api.admin.entity.basic; + +import lombok.Data; + +import java.util.Date; + +@Data +public class BasicBusTypeChangeEntity { + + private Integer id; + private String originAction; + private String originName; + private String targetBusAction; + private String targetScAction; + private Integer type; + private Date updateTime; + private String remark; + private boolean enable; + private boolean systemDefault; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/info/ClassifyCodeEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/info/ClassifyCodeEntity.java new file mode 100644 index 00000000..017fd0bc --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/info/ClassifyCodeEntity.java @@ -0,0 +1,14 @@ +package com.glxp.api.admin.entity.info; + +import lombok.Data; + +@Data +public class ClassifyCodeEntity { + + private Integer id; + private String code; + private String name; + private String level; + private String qxlb; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/PurPlanEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/PurPlanEntity.java index 241bef96..76c4c0d3 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/PurPlanEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/PurPlanEntity.java @@ -73,4 +73,6 @@ public class PurPlanEntity { private Date updateTime; + private String auditRemark; + } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/SupCertSetEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/SupCertSetEntity.java index 4d400d60..43cb1793 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/SupCertSetEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/purchase/SupCertSetEntity.java @@ -1,8 +1,11 @@ package com.glxp.api.admin.entity.purchase; +import cn.hutool.core.util.StrUtil; import lombok.Data; +import java.util.Arrays; import java.util.Date; +import java.util.List; @Data public class SupCertSetEntity { @@ -19,6 +22,15 @@ public class SupCertSetEntity { private Date updateTime; private Integer type; + private List flbmList; + private boolean isPass; + public List getFlbmList() { + if (StrUtil.isNotEmpty(flbm)) { + return Arrays.asList(flbm.split(",")); + } + return flbmList; + } + } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderEntity.java index c154f586..9706752c 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderEntity.java @@ -12,6 +12,7 @@ public class ThrOrderEntity { private String billdate; private String corpId; private String corpName; + private String fromSubInvCode; private String billType; private String billTypeName; private String billFlag; @@ -39,5 +40,6 @@ public class ThrOrderEntity { private String invWarehouseCode; private String unitIdFk; + private int allocateStatus; //1:已配货;0:未配货 } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicBusTypeChangeRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicBusTypeChangeRequest.java new file mode 100644 index 00000000..a612add2 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/req/basic/BasicBusTypeChangeRequest.java @@ -0,0 +1,13 @@ +package com.glxp.api.admin.req.basic; + +import com.glxp.api.admin.req.ListPageRequest; +import lombok.Data; + +@Data +public class BasicBusTypeChangeRequest extends ListPageRequest { + + private String originAction; + private Boolean enable; + private Integer type; + private String lastUpdateTime; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderIdsRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderIdsRequest.java index 124aab4e..4ec41f53 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderIdsRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderIdsRequest.java @@ -15,4 +15,7 @@ public class StockOrderIdsRequest { UdiEntity udiEntity; List stockOrderLists; List datas; + private String zczbhhzbapzbh; + + private int type; //1:耗材领用 } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/info/FilterClassifyCodeRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/info/FilterClassifyCodeRequest.java new file mode 100644 index 00000000..54f85c8f --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/req/info/FilterClassifyCodeRequest.java @@ -0,0 +1,18 @@ +package com.glxp.api.admin.req.info; + +import com.glxp.api.admin.req.ListPageRequest; +import lombok.Data; + +import java.util.List; + +@Data +public class FilterClassifyCodeRequest extends ListPageRequest { + + private String key; + private String code; + private String name; + + + private String inFilter; + private List inFilterList; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/inout/FilterOrderRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/inout/FilterOrderRequest.java index 054eb8e5..2877722b 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/inout/FilterOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/inout/FilterOrderRequest.java @@ -30,6 +30,7 @@ public class FilterOrderRequest { private String thirdAction; private String thirdOrderFk; - + private Integer type; + private Integer allocateStatus; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/inventory/FilterInvProductRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/inventory/FilterInvProductRequest.java index b5c23717..5a00f080 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/inventory/FilterInvProductRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/inventory/FilterInvProductRequest.java @@ -39,4 +39,6 @@ public class FilterInvProductRequest extends ListPageRequest { private List invCodes; private String udiCode; private String supName; + + private String orderIdFk; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSelCertRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSelCertRequest.java index 2d78a0d1..551e198e 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSelCertRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSelCertRequest.java @@ -9,6 +9,7 @@ import java.util.List; public class PostSelCertRequest { + private String customerId; private Integer certType; private String manufacturerIdFk; private String productIdFk; diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSupCertRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSupCertRequest.java new file mode 100644 index 00000000..dfdf83e5 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/req/purchase/PostSupCertRequest.java @@ -0,0 +1,11 @@ +package com.glxp.api.admin.req.purchase; + +import com.glxp.api.admin.entity.purchase.SupCertEntity; +import lombok.Data; + +@Data +public class PostSupCertRequest extends SupCertEntity { + + + private int repeatUpload; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/thrsys/FilterThrOrderRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/thrsys/FilterThrOrderRequest.java index 12d7e788..1b2db6d2 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/thrsys/FilterThrOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/thrsys/FilterThrOrderRequest.java @@ -24,6 +24,8 @@ public class FilterThrOrderRequest extends ListPageRequest { private String thirdSys; private Integer editStatus; private String lastUpdateTime; - + private Integer thirdPartyDate; + private Integer type; + private Integer allocateStatus; private List erpOrderResponses; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicBusTypeChangeResponse.java b/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicBusTypeChangeResponse.java new file mode 100644 index 00000000..032a8f93 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicBusTypeChangeResponse.java @@ -0,0 +1,10 @@ +package com.glxp.api.admin.res.basic; + +import com.glxp.api.admin.entity.basic.BasicBusTypeChangeEntity; +import lombok.Data; + +@Data +public class BasicBusTypeChangeResponse extends BasicBusTypeChangeEntity { + + private String targetBusName; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/basic/BasicBusTypeChangeService.java b/api-admin/src/main/java/com/glxp/api/admin/service/basic/BasicBusTypeChangeService.java new file mode 100644 index 00000000..8b85ca7d --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/basic/BasicBusTypeChangeService.java @@ -0,0 +1,24 @@ +package com.glxp.api.admin.service.basic; + +import com.glxp.api.admin.entity.basic.BasicBusTypeChangeEntity; +import com.glxp.api.admin.req.basic.BasicBusTypeChangeRequest; +import com.glxp.api.admin.res.basic.BasicBusTypeChangeResponse; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public interface BasicBusTypeChangeService { + + BasicBusTypeChangeEntity findByAction(String action); + + List filterJoinList(BasicBusTypeChangeRequest basicBusTypeChangeRequest); + + boolean insertBusType(BasicBusTypeChangeEntity basicBusTypeChangeEntity); + + List filterList(BasicBusTypeChangeRequest basicBusTypeChangeRequest); + + boolean updateBasicBusTypeChange(BasicBusTypeChangeEntity basicBusTypeChangeEntity); + + boolean deleteById(String id); +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/basic/impl/BasicBusTypeChangeServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/basic/impl/BasicBusTypeChangeServiceImpl.java new file mode 100644 index 00000000..51380d5d --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/basic/impl/BasicBusTypeChangeServiceImpl.java @@ -0,0 +1,75 @@ +package com.glxp.api.admin.service.basic.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.dao.basic.BasicBusTypeChangeDao; +import com.glxp.api.admin.entity.basic.BasicBusTypeChangeEntity; +import com.glxp.api.admin.req.basic.BasicBusTypeChangeRequest; +import com.glxp.api.admin.res.basic.BasicBusTypeChangeResponse; +import com.glxp.api.admin.service.basic.BasicBusTypeChangeService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class BasicBusTypeChangeServiceImpl implements BasicBusTypeChangeService { + + @Resource + BasicBusTypeChangeDao basicBusTypeChangeDao; + + @Override + public BasicBusTypeChangeEntity findByAction(String action) { + + if (StrUtil.isNotEmpty(action)) { + BasicBusTypeChangeRequest basicBusTypeChangeRequest = new BasicBusTypeChangeRequest(); + basicBusTypeChangeRequest.setOriginAction(action); + List basicBusTypeChangeEntities = basicBusTypeChangeDao.filterList(basicBusTypeChangeRequest); + if (CollUtil.isNotEmpty(basicBusTypeChangeEntities)) { + return basicBusTypeChangeEntities.get(0); + } + } + return null; + } + + @Override + public List filterJoinList(BasicBusTypeChangeRequest basicBusTypeChangeRequest) { + if (basicBusTypeChangeRequest == null) { + return Collections.emptyList(); + } + if (basicBusTypeChangeRequest.getPage() != null) { + int offset = (basicBusTypeChangeRequest.getPage() - 1) * basicBusTypeChangeRequest.getLimit(); + PageHelper.offsetPage(offset, basicBusTypeChangeRequest.getLimit()); + } + return basicBusTypeChangeDao.filterJoinList(basicBusTypeChangeRequest); + } + + @Override + public boolean insertBusType(BasicBusTypeChangeEntity basicBusTypeChangeEntity) { + return basicBusTypeChangeDao.insertBusType(basicBusTypeChangeEntity); + } + + @Override + public List filterList(BasicBusTypeChangeRequest basicBusTypeChangeRequest) { + if (basicBusTypeChangeRequest == null) { + return Collections.emptyList(); + } + if (basicBusTypeChangeRequest.getPage() != null) { + int offset = (basicBusTypeChangeRequest.getPage() - 1) * basicBusTypeChangeRequest.getLimit(); + PageHelper.offsetPage(offset, basicBusTypeChangeRequest.getLimit()); + } + return basicBusTypeChangeDao.filterList(basicBusTypeChangeRequest); + } + + @Override + public boolean updateBasicBusTypeChange(BasicBusTypeChangeEntity basicBusTypeChangeEntity) { + return basicBusTypeChangeDao.updateBasicBusTypeChange(basicBusTypeChangeEntity); + } + + @Override + public boolean deleteById(String id) { + return basicBusTypeChangeDao.deleteById(id); + } +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/info/ClassifyCodeService.java b/api-admin/src/main/java/com/glxp/api/admin/service/info/ClassifyCodeService.java new file mode 100644 index 00000000..980d8f75 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/info/ClassifyCodeService.java @@ -0,0 +1,15 @@ +package com.glxp.api.admin.service.info; + + +import com.glxp.api.admin.entity.info.ClassifyCodeEntity; +import com.glxp.api.admin.req.info.FilterClassifyCodeRequest; + +import java.util.List; + +public interface ClassifyCodeService { + + List filteClassifyCode(FilterClassifyCodeRequest filterClassifyCodeRequest); + + ClassifyCodeEntity findByCode(String code); + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/info/impl/ClassifyCodeServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/info/impl/ClassifyCodeServiceImpl.java new file mode 100644 index 00000000..101a973b --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/info/impl/ClassifyCodeServiceImpl.java @@ -0,0 +1,55 @@ +package com.glxp.api.admin.service.info.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.dao.info.ClassifyCodeDao; +import com.glxp.api.admin.entity.info.ClassifyCodeEntity; +import com.glxp.api.admin.req.info.FilterClassifyCodeRequest; +import com.glxp.api.admin.service.info.ClassifyCodeService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +@Service +public class ClassifyCodeServiceImpl implements ClassifyCodeService { + + @Resource + ClassifyCodeDao classifyCodeDao; + + @Override + public List filteClassifyCode(FilterClassifyCodeRequest filterClassifyCodeRequest) { + + if (filterClassifyCodeRequest == null) { + return Collections.emptyList(); + } + if (filterClassifyCodeRequest.getPage() != null) { + int offset = (filterClassifyCodeRequest.getPage() - 1) * filterClassifyCodeRequest.getLimit(); + PageHelper.offsetPage(offset, filterClassifyCodeRequest.getLimit()); + } + + if (StrUtil.isNotEmpty(filterClassifyCodeRequest.getInFilter())) { + filterClassifyCodeRequest.setInFilterList(Arrays.asList(filterClassifyCodeRequest.getInFilter().split(","))); + } + + return classifyCodeDao.filteClassifyCode(filterClassifyCodeRequest); + } + + @Override + public ClassifyCodeEntity findByCode(String code) { + + if (StrUtil.isEmpty(code)) + return null; + FilterClassifyCodeRequest filterClassifyCodeRequest = new FilterClassifyCodeRequest(); + filterClassifyCodeRequest.setCode(code); + + List classifyCodeEntities = classifyCodeDao.filteClassifyCode(filterClassifyCodeRequest); + if (CollUtil.isNotEmpty(classifyCodeEntities)) { + return classifyCodeEntities.get(0); + } + return null; + } +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/IPurApplyDetailService.java b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/IPurApplyDetailService.java index d9bbe6ca..746283b2 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/IPurApplyDetailService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/IPurApplyDetailService.java @@ -12,6 +12,8 @@ public interface IPurApplyDetailService { List queryPageList(PurApplyDetailRequest purApplyRequest); + public List findByOrderId(String orderId); + List joinQueryList(PurApplyDetailRequest purApplyRequest); diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/SupProductService.java b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/SupProductService.java index 0fde1058..ad175fee 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/SupProductService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/SupProductService.java @@ -13,6 +13,8 @@ public interface SupProductService { SupProductResponse findByProductId(String productId); + SupProductResponse findByPassByReCert(String registerCert); + SupProductResponse findJoinRegistration(Long id); SupProductEntity findRegistrationByName(String recordProductName); diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/PurApplyDetailImplService.java b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/PurApplyDetailImplService.java index 3fe5f636..f0b25fad 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/PurApplyDetailImplService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/PurApplyDetailImplService.java @@ -1,5 +1,6 @@ package com.glxp.api.admin.service.purchase.impl; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageHelper; import com.glxp.api.admin.dao.purchase.PurApplyDetailDao; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; @@ -34,6 +35,17 @@ public class PurApplyDetailImplService implements IPurApplyDetailService { return data; } + @Override + public List findByOrderId(String orderId) { + if (orderId == null) { + return null; + } + PurApplyDetailRequest purApplyDetailRequest = new PurApplyDetailRequest(); + purApplyDetailRequest.setOrderIdFk(orderId); + List data = purApplyDetailDao.queryPageList(purApplyDetailRequest); + return data; + } + @Override public List joinQueryList(PurApplyDetailRequest purApplyRequest) { if (purApplyRequest == null) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/SupProductServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/SupProductServiceImpl.java index f381ef3c..c5827d00 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/SupProductServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/purchase/impl/SupProductServiceImpl.java @@ -3,6 +3,7 @@ package com.glxp.api.admin.service.purchase.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.constant.ConstantStatus; import com.glxp.api.admin.dao.purchase.SupProductDao; import com.glxp.api.admin.entity.purchase.SupProductEntity; import com.glxp.api.admin.req.purchase.FilterPoductRequest; @@ -38,6 +39,20 @@ public class SupProductServiceImpl implements SupProductService { return null; } + @Override + public SupProductResponse findByPassByReCert(String registerCert) { + if (StrUtil.isEmpty(registerCert)) + return null; + FilterPoductRequest filterPoductRequest = new FilterPoductRequest(); + filterPoductRequest.setRecordCode(registerCert); + filterPoductRequest.setAuditStatus(ConstantStatus.AUDIT_PASS); + List supProductEntities = supProductDao.getRegistration(filterPoductRequest); + if (CollUtil.isNotEmpty(supProductEntities)) + return supProductEntities.get(0); + + return null; + } + @Override public SupProductResponse findByProductId(String productId) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrOrderService.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrOrderService.java index d367ce4b..18af9210 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrOrderService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrOrderService.java @@ -11,12 +11,17 @@ public interface ThrOrderService { List filterThrOrder(FilterThrOrderRequest filterThrOrderRequest); + List filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest); + + List filterAllOrders(List billNos, String action); List filterAllDetail(FilterThrOrderRequest filterThrOrderRequest); ThrOrderEntity findByUnique(String billNo, String thirdSysFk); + ThrOrderEntity findReceiveOrder(String billNo); + ThrOrderEntity findById(String id); boolean insertThrOrder(ThrOrderEntity thrCorpEntity); diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrOrderServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrOrderServiceImpl.java index bba4aa68..66b9f3ac 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrOrderServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrOrderServiceImpl.java @@ -39,6 +39,20 @@ public class ThrOrderServiceImpl implements ThrOrderService { return data; } + @Override + public List filterReceiveOrder(FilterThrOrderRequest filterThrOrderRequest) { + if (filterThrOrderRequest == null) { + return Collections.emptyList(); + } + if (filterThrOrderRequest.getPage() != null) { + int offset = (filterThrOrderRequest.getPage() - 1) * filterThrOrderRequest.getLimit(); + PageHelper.offsetPage(offset, filterThrOrderRequest.getLimit()); + } + List data = thrOrderDao.filterReceiveOrder(filterThrOrderRequest); + return data; + } + + @Override public List filterAllOrders(List billNos, String thirdSys) { List erpOrderEntities = new ArrayList<>(); @@ -123,6 +137,21 @@ public class ThrOrderServiceImpl implements ThrOrderService { return null; } + @Override + public ThrOrderEntity findReceiveOrder(String billNo) { + if (StrUtil.isEmpty(billNo)) { + return null; + } + FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); + filterThrOrderRequest.setBillNo(billNo); + filterThrOrderRequest.setType(1); + List thrOrderEntities = filterThrOrder(filterThrOrderRequest); + if (thrOrderEntities != null && thrOrderEntities.size() > 0) { + return thrOrderEntities.get(0); + } + return null; + } + @Override public ThrOrderEntity findById(String id) { FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); diff --git a/api-admin/src/main/resources/application.properties b/api-admin/src/main/resources/application.properties index cb3acd23..e487e916 100644 --- a/api-admin/src/main/resources/application.properties +++ b/api-admin/src/main/resources/application.properties @@ -1,4 +1,4 @@ -spring.profiles.active=test1 +spring.profiles.active=dev spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BasicBusTypeChangeDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BasicBusTypeChangeDao.xml new file mode 100644 index 00000000..abd2e482 --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BasicBusTypeChangeDao.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + insert + INTO basic_bustype_change + (`originAction`, originName, `targetBusAction`, targetScAction, `type`, updateTime, remark, enable, + systemDefault) + values (#{originAction}, + #{originName}, + #{targetBusAction}, + #{targetScAction}, + #{type}, #{updateTime}, #{remark}, #{enable}, #{systemDefault}) + + + + + UPDATE basic_bustype_change + + originAction = #{originAction}, + originName = #{originName}, + enable = #{enable}, + targetBusAction = #{targetBusAction}, + targetScAction = #{targetScAction}, + remark = #{remark}, + updateTime = #{updateTime}, + `type` = #{type}, + `systemDefault` = #{systemDefault}, + + + WHERE id = #{id} + + + + DELETE + FROM basic_bustype_change + WHERE id = #{id} + + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/info/ClassifyCodeDao.xml b/api-admin/src/main/resources/mybatis/mapper/info/ClassifyCodeDao.xml new file mode 100644 index 00000000..a39b7938 --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/info/ClassifyCodeDao.xml @@ -0,0 +1,33 @@ + + + + + + + + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml index 2c4dc149..f0d8d70d 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml @@ -49,6 +49,9 @@ AND invWarehouseCode = #{invWarehouseCode} + + AND orderIdFk = #{orderIdFk} + AND invStorageCode IN @@ -184,6 +187,9 @@ AND invWarehouseCode = #{invWarehouseCode} + + AND orderIdFk = #{orderIdFk} + AND invStorageCode IN diff --git a/api-admin/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml b/api-admin/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml index ac239181..fc3fdb60 100644 --- a/api-admin/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml @@ -53,7 +53,7 @@ INTO pur_plan ( billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode, - deptCode,createBy,createTime,auditBy,auditTime,updateTime + deptCode,createBy,createTime,auditBy,auditTime,updateTime,auditRemark ) values ( #{billNo}, @@ -68,7 +68,8 @@ #{createTime}, #{auditBy}, #{auditTime}, - #{updateTime} + #{updateTime}, + #{auditRemark} ) @@ -103,6 +104,7 @@ createBy=#{createBy}, createTime=#{createTime}, updateTime=#{updateTime}, + auditRemark=#{auditRemark}, WHERE id = #{id} diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDao.xml index 00fff63b..1e2c8771 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDao.xml @@ -20,7 +20,60 @@ AND originType = #{originType} + + AND thr_order.`type` = #{type} + + + AND allocateStatus = #{allocateStatus} + + + AND billFlag = #{billFlag} + + + AND unitIdFk = #{unitIdFk} + + + AND thirdSysFk = #{thirdSysFk} + + + AND corpName like concat('%',#{corpName},'%') + + + = DATE_FORMAT(#{startDate}, '%Y-%m-%d') ]]> + + + + + + AND editStatus = #{editStatus} + + + = DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]> + + + ORDER BY thr_order.updateTime DESC + + @@ -55,7 +114,7 @@ INTO thr_order (id,billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType, unitIdFk, startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2, - remark3,locStorageCode,editStatus,invWarehouseCode) + remark3,locStorageCode,editStatus,invWarehouseCode,thirdPartyDate,fromSubInvCode,`type`,allocateStatus) values ( #{id}, #{billNo}, @@ -81,7 +140,11 @@ #{remark3}, #{locStorageCode}, #{editStatus}, - #{invWarehouseCode} + #{invWarehouseCode}, + #{thirdPartyDate}, + #{fromSubInvCode}, + #{type}, + #{allocateStatus} ) @@ -90,7 +153,7 @@ INTO thr_order (id,billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType, startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2, - remark3,invWarehouseCode) + remark3,invWarehouseCode,fromSubInvCode,`type`,allocateStatus) values ( #{id}, #{billNo}, @@ -113,7 +176,10 @@ #{remark1}, #{remark2}, #{remark3}, - #{invWarehouseCode} + #{invWarehouseCode}, + #{fromSubInvCode}, + #{type}, + #{allocateStatus} ) @@ -121,7 +187,7 @@ replace INTO thr_order (billNo, billdate, corpId, corpName, billType, billFlag, thirdSysFk, updateTime, originType, unitIdFk, startDate, endDate, createUser, reviewUser, address, linkMan, linkTel, remark, remark1, remark2, - remark3,locStorageCode,editStatus,invWarehouseCode,ylqxzcrbarmc,zczbhhzbapzbh,manufactory) + remark3,locStorageCode,editStatus,invWarehouseCode,fromSubInvCode,`type`,allocateStatus) values @@ -134,7 +200,8 @@ #{item.thirdSysFk}, #{item.updateTime}, #{item.originType}, #{item.unitIdFk}, #{item.startDate}, #{item.endDate}, #{item.createUser}, #{item.reviewUser}, #{item.address}, #{item.linkMan}, #{item.linkTel}, #{item.remark}, #{item.remark1}, - #{item.remark2}, #{item.remark3},#{item.locStorageCode},#{item.editStatus},#{item.invWarehouseCode}, + #{item.remark2}, + #{item.remark3},#{item.locStorageCode},#{item.editStatus},#{item.invWarehouseCode},#{item.fromSubInvCode},#{item.type},#{item.allocateStatus} ) @@ -176,6 +243,9 @@ locStorageCode=#{locStorageCode}, editStatus=#{editStatus}, invWarehouseCode=#{invWarehouseCode}, + fromSubInvCode=#{fromSubInvCode}, + `type`=#{type}, + `allocateStatus`=#{allocateStatus}, WHERE id = #{id} diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDetailDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDetailDao.xml index 47ba1cac..525bce26 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDetailDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderDetailDao.xml @@ -70,7 +70,7 @@ ) - + replace INTO thr_order_detail (productId, productName, spec, batchNo, expireDate, productDate, `count`, reCount, orderIdFk, thirdSysFk, updateTime