From 4b7f85210b61b8015dce806010133220b4aaa44f Mon Sep 17 00:00:00 2001 From: anthonyywj2 <353682448@qq.com> Date: Sat, 9 Apr 2022 16:03:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/admin/constant/ConstantStatus.java | 2 +- .../controller/auth/LoginController.java | 2 +- .../controller/auth/RegisterController.java | 5 + .../controller/info/DeviceKeyController.java | 9 ++ .../inout/OrderDetailController.java | 1 + .../inout/StockOrderController.java | 56 +++++++++- .../inout/StockQRCodeTextController.java | 7 +- .../controller/inout/WareHouseController.java | 105 +++++++++++++++++- .../param/SystemPDFModuleController.java | 4 +- .../param/SystemPDFTemplateController.java | 36 +++++- .../thrsys/ThrProductsAddController.java | 2 + .../entity/inout/StockOrderPrintEntity.java | 1 + .../entity/thrsys/ThrProductsAddEntity.java | 1 + .../req/inout/AddStockOrderChangeRequest.java | 24 ++++ .../admin/req/inout/FilterOrderRequest.java | 2 +- .../InspectionPDFTemplateRequest.java | 1 + .../StockQRCodeTextPDFTemplateRequest.java | 1 + .../req/thrsys/FilterThrProductsRequest.java | 1 + .../CompanyProductRelevanceResponse.java | 7 ++ .../admin/thread/IoTransInoutService.java | 44 ++++++-- .../glxp/sale/admin/util/FilterUdiUtils.java | 8 +- .../com/glxp/sale/admin/util/JasperUtils.java | 35 +++++- .../mapper/basic/BussinessLocalTypeDao.xml | 1 + .../mybatis/mapper/basic/BussinessTypeDao.xml | 4 + .../mybatis/mapper/basic/UdiRelevanceDao.xml | 2 +- .../mybatis/mapper/inout/StockOrderDao.xml | 7 +- .../param/SystemPDFTemplateRelevanceDao.xml | 14 ++- .../mapper/thrsys/ThrProductsAddDao.xml | 4 +- 28 files changed, 343 insertions(+), 43 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddStockOrderChangeRequest.java diff --git a/api-admin/src/main/java/com/glxp/sale/admin/constant/ConstantStatus.java b/api-admin/src/main/java/com/glxp/sale/admin/constant/ConstantStatus.java index 73d3d09..4173a34 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/constant/ConstantStatus.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/constant/ConstantStatus.java @@ -82,7 +82,7 @@ public class ConstantStatus { public static final int CORP_TYPE_SPECIAL = 3; - public static final int CORP_SICK_SICK=1; + public static final int CORP_SICK_SICK = 1; public static final int CORP_SICK_CUS = 2; //单据来源 diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/LoginController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/LoginController.java index 30bd13d..cb1683a 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/LoginController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/LoginController.java @@ -116,7 +116,7 @@ public class LoginController { if (deviceKeyEntity == null) { return ResultVOUtils.error(410, "该设备未注册"); } else if (deviceKeyEntity.getIsCheck() == 0) { - return ResultVOUtils.error(411, "该设备未审核,请等待审核!"); + return ResultVOUtils.error(411, "该设备登记审核中,请等待,或联系管理员"); } else if (deviceKeyEntity.getIsCheck() == 2) { return ResultVOUtils.error(412, "该设备被拒绝登录,请联系管理员!"); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/RegisterController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/RegisterController.java index 2755a6c..48fd3bd 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/RegisterController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/RegisterController.java @@ -216,6 +216,11 @@ public class RegisterController { return ResultVOUtils.error(500, "该手机号已被注册"); } + CustomerInfoEntity customerInfoEntity = customerInfoService.selectById(Long.parseLong(userRegisterEntity.getCompanyId())); + if (customerInfoEntity != null) + return ResultVOUtils.error(500, "该企业已被注册!"); + + userRegisterEntity.setRegisterTime(DateUtil.getDateTime()); userRegisterEntity.setCheckType(0);//未审核 String userName = UuidUtils.getShortUuid(4); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/info/DeviceKeyController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/info/DeviceKeyController.java index 4139e8b..85f4fee 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/info/DeviceKeyController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/info/DeviceKeyController.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageInfo; import com.glxp.sale.admin.entity.info.DeviceKeyEntity; import com.glxp.sale.admin.req.info.FilterDeviceKeyRequest; +import com.glxp.sale.admin.req.inout.DeleteRequest; import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.service.auth.DeviceKeyService; import com.glxp.sale.admin.util.DateUtil; @@ -76,6 +77,14 @@ public class DeviceKeyController { } else { return ResultVOUtils.success(key); } + } + + + @PostMapping("/sale/info/deleterKey") + public BaseResponse deleterKey(@RequestBody DeleteRequest deleteRequest) { + + deviceKeyService.deleteDeviceKey(deleteRequest); + return ResultVOUtils.success("删除成功"); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java index 580b290..03e1231 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java @@ -241,6 +241,7 @@ public class OrderDetailController { stockOrderEntity.setCustomerId(customerId); stockOrderEntity.setUnitIdFk(customerId); stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC);//未提交 + stockOrderEntity.setLocStorageCode(filterErpOrderRequest.getLocStorageCode()); stockOrderEntity.setThirdOrderFk(thrOrderEntity.getBillNo()); stockOrderEntity.setSourceType(ConstantStatus.ST_THIRD_SEL);//外部提交 stockOrderEntity.setPrintStatus(ConstantStatus.SORDER_PRINT_UN);//未打印 diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java index 34bae36..5c808df 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java @@ -1,5 +1,6 @@ package com.glxp.sale.admin.controller.inout; +import cn.hutool.core.bean.BeanUtil; import com.github.pagehelper.PageInfo; import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.constant.Constant; @@ -10,9 +11,7 @@ import com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity; import com.glxp.sale.admin.entity.basic.StockPrintEntity; import com.glxp.sale.admin.entity.basic.StockPrinttREntity; import com.glxp.sale.admin.entity.info.CompanyEntity; -import com.glxp.sale.admin.entity.inout.StockOrderDetailEntity; -import com.glxp.sale.admin.entity.inout.StockOrderEntity; -import com.glxp.sale.admin.entity.inout.StockQRCodeTextEntity; +import com.glxp.sale.admin.entity.inout.*; import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; import com.glxp.sale.admin.exception.JsonException; import com.glxp.sale.admin.req.inout.*; @@ -33,11 +32,14 @@ import com.glxp.sale.admin.service.inventory.InvStockPrintService; import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.util.CustomUtil; import com.glxp.sale.admin.util.DateUtil; +import com.glxp.sale.admin.util.JasperUtils; import com.glxp.sale.admin.util.StockOrderBillNoUtils; import com.glxp.sale.common.enums.ResultEnum; import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.util.ResultVOUtils; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.BindingResult; @@ -59,6 +61,8 @@ public class StockOrderController { @Resource private CodesService codesService; @Resource + private CodesTempService codesTempService; + @Resource private StockOrderDetailService stockOrderDetailService; @Resource private StockOrderDetailTempService stockOrderDetailTempService; @@ -88,6 +92,7 @@ public class StockOrderController { @Resource CustomerService customerService; + @AuthRuleAnnotation("") @GetMapping("/udiwms/stock/order/error") public BaseResponse listStockOrderNoDealWith(StockOrderFilterRequest stockOrderFilterRequest) { @@ -370,6 +375,51 @@ public class StockOrderController { return ResultVOUtils.success(); } + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/stock/order/change") + public BaseResponse stockOrderChange(@RequestBody AddStockOrderChangeRequest addStockOrderChangeRequest) { + + StockOrderEntity stockOrderEntity = stockOrderService.findById(addStockOrderChangeRequest.getStockOrderId()); + OrderEntity originOrder = orderService.findById(stockOrderEntity.getOrderIdFk()); + List originCodes = codesService.findByReceiptId(originOrder.getId()); + originOrder.setActDate(DateUtil.formatDate(new Date())); + originOrder.setFromCorp(addStockOrderChangeRequest.getFromCorp()); + originOrder.setFromCorpId(addStockOrderChangeRequest.getFromCorpId()); + originOrder.setMainAction(addStockOrderChangeRequest.getMainAction()); + originOrder.setAction(addStockOrderChangeRequest.getAction()); + originOrder.setExportStatus(0); //设置导出状态为未导出 + originOrder.setContrastStatus(0);//设置erp校验状态为未校验 + originOrder.setReceiveStatus(0); //设置验收状态为未验收 + originOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); + originOrder.setLocStorageCode(addStockOrderChangeRequest.getLocStorageCode()); + String supplementOrderNo = "SM" + CustomUtil.getId(); + originOrder.setId(supplementOrderNo); + + List supplementCodes = new ArrayList<>(); + originCodes.forEach( + code -> { + WarehouseEntity supplementCode = new WarehouseEntity(); + BeanUtil.copyProperties(code, supplementCode); + supplementCode.setFromCorpId(originOrder.getFromCorpId()); + supplementCode.setFromCorp(originOrder.getFromCorp()); + supplementCode.setLocStorageCode(originOrder.getLocStorageCode()); + supplementCode.setOrderId(supplementOrderNo); + //查询补单设置 + supplementCode.setAction(originOrder.getAction()); + supplementCode.setMainAction(originOrder.getMainAction()); + supplementCode.setId(null); + supplementCodes.add(supplementCode); + + } + ); + + orderService.insertOrder(originOrder); + codesTempService.insertCodesTemp(supplementCodes); + + return ResultVOUtils.success(); + } + @AuthRuleAnnotation("") @GetMapping("/udiwms/stock/order/new/submit") public BaseResponse submitNewStockOrder(@RequestParam("id") String id) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockQRCodeTextController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockQRCodeTextController.java index 819a89b..b25607a 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockQRCodeTextController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockQRCodeTextController.java @@ -340,7 +340,7 @@ public class StockQRCodeTextController { return ResultVOUtils.error(ResultEnum.DATA_NOT, "未找到该订单"); } SystemPDFTemplateRelevanceRequest systemPDFTemplateRelevanceRequest = new SystemPDFTemplateRelevanceRequest(); - systemPDFTemplateRelevanceRequest.setModuleId(2); + systemPDFTemplateRelevanceRequest.setModuleId(inspectionPDFTemplateRequest.getModuleId()); systemPDFTemplateRelevanceRequest.setLocalAction(stockOrderEntity.getBillType()); List systemPDFTemplateRelevanceResponses = systemPDFTemplateRelevanceService.filterList(systemPDFTemplateRelevanceRequest); if (systemPDFTemplateRelevanceResponses.isEmpty()) { @@ -363,11 +363,9 @@ public class StockQRCodeTextController { /*打印订单*/ List list = stockOrderService.listOrderPrint(stockQRCodeTextPDFTemplateRequest.getId()); - - if (list != null && list.size() > 0) { - SystemPDFModuleEntity systemPDFModuleEntity = systemPDFModuleService.selectById(2 + ""); + SystemPDFModuleEntity systemPDFModuleEntity = systemPDFModuleService.selectById(stockQRCodeTextPDFTemplateRequest.getModuleId() + ""); SystemPDFTemplateRelevanceRequest systemPDFTemplateRelevanceRequest = new SystemPDFTemplateRelevanceRequest(); systemPDFTemplateRelevanceRequest.setModuleId(systemPDFModuleEntity.getId()); systemPDFTemplateRelevanceRequest.setLocalAction(list.get(0).getBillType()); @@ -398,6 +396,7 @@ public class StockQRCodeTextController { // stockOrderPrintEntity.setTotalPrice(BigDecimal.valueOf(1888.88)); // stockOrderPrintEntity.setTotalPriceWord("18888"); stockOrderPrintEntity.setCorpName(stockOrderPrintEntity.getCorpName()); +// stockOrderPrintEntity.setLocInv(stockOrderPrintEntity.getLocInv()); stockOrderPrintEntity.setOrderName(stockQRCodeTextPDFTemplateRequest.getOrderName()); stockOrderPrintEntity.setRemark1(systemPDFModuleEntity.getRemark1()); stockOrderPrintEntity.setRemark2(systemPDFModuleEntity.getRemark2()); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java index 6c18b23..2565cf5 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java @@ -11,15 +11,20 @@ import com.glxp.sale.admin.entity.auth.AuthLicense; import com.glxp.sale.admin.entity.basic.BasicUnitMaintainEntity; import com.glxp.sale.admin.entity.basic.BussinessTypeEntity; import com.glxp.sale.admin.entity.info.CompanyEntity; +import com.glxp.sale.admin.entity.info.CompanyProductRelevanceEntity; import com.glxp.sale.admin.entity.inout.ErpOrderEntity; import com.glxp.sale.admin.entity.inout.OrderEntity; import com.glxp.sale.admin.entity.inout.WarehouseEntity; +import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; import com.glxp.sale.admin.entity.udid.UdiEntity; import com.glxp.sale.admin.exception.JsonException; +import com.glxp.sale.admin.req.basic.CompanyProductRelevanceRequest; import com.glxp.sale.admin.req.basic.FilterUdiInfoRequest; +import com.glxp.sale.admin.req.info.FilterCompanyProductRelevanceRequest; import com.glxp.sale.admin.req.inout.*; import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.res.basic.BussinessTypResponse; +import com.glxp.sale.admin.res.basic.CompanyProductRelevanceResponse; import com.glxp.sale.admin.res.basic.UdiRelevanceResponse; import com.glxp.sale.admin.res.inout.WarehouseResponse; import com.glxp.sale.admin.service.auth.AuthAdminService; @@ -27,15 +32,20 @@ import com.glxp.sale.admin.service.auth.CustomerService; import com.glxp.sale.admin.service.basic.BasicUnitMaintainService; import com.glxp.sale.admin.service.basic.BussinessTypeService; import com.glxp.sale.admin.service.basic.UdiRelevanceService; +import com.glxp.sale.admin.service.info.CompanyProductRelevanceService; import com.glxp.sale.admin.service.info.CompanyService; import com.glxp.sale.admin.service.inout.*; +import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.thread.IoTransInoutService; import com.glxp.sale.admin.util.CustomUtil; +import com.glxp.sale.admin.util.DateUtil; import com.glxp.sale.admin.util.FilterUdiUtils; import com.glxp.sale.common.enums.ResultEnum; import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.util.ResultVOUtils; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; @@ -82,6 +92,11 @@ public class WareHouseController { CustomerService customerService; @Resource UdiRelevanceService udiRelevanceService; + @Resource + CompanyProductRelevanceService companyProductRelevanceService; + @Resource + SystemParamConfigService systemParamConfigService; + Logger logger = LoggerFactory.getLogger(StockOrderController.class); @AuthRuleAnnotation("") @GetMapping("admin/warehouse/inout/list") @@ -246,7 +261,7 @@ public class WareHouseController { warehouseEntity.setOrderId(addOrderRequest.getOrderId()); warehouseEntity.setAction(addOrderRequest.getAction()); warehouseEntity.setMainAction(addOrderRequest.getMainAction()); - warehouseEntity.setFromCorp(addOrderRequest.getAction()); + warehouseEntity.setFromCorp(addOrderRequest.getFromCorp()); warehouseEntity.setFromCorpId(addOrderRequest.getFromCorpId()); warehouseEntity.setLocStorageCode(addOrderRequest.getLocStorageCode()); codesTempService.updateByOrderId(warehouseEntity); @@ -263,8 +278,13 @@ public class WareHouseController { codesTempService.updateById(warehouseEntity); } else { codesTempService.deleteCodesTempById(warehouseEntity); + } + List temps = codesTempService.findByOrderId(warehouseEntity.getOrderId()); + if (temps.size() <= 0) { + orderService.deleteById(warehouseEntity.getOrderId()); } + return ResultVOUtils.success(); } @@ -304,7 +324,8 @@ public class WareHouseController { } //先生产扫码单据 - if (StringUtils.isBlank(orderId)) { + OrderEntity orderEntity = orderService.findById(orderId); + if (StringUtils.isBlank(orderId) || orderEntity == null) { orderId = "SM" + CustomUtil.getId(); OrderEntity orderSaveRequest = new OrderEntity(); orderSaveRequest.setId(orderId); @@ -366,6 +387,43 @@ public class WareHouseController { List warehouseEntityList = new ArrayList<>(); warehouseEntityList.add(warehouseEntity); + + //校验往来单位 + BaseResponse corpResponse = checkCorp(warehouseEntity, bussinessTypeEntity); + if (corpResponse != null) { + return corpResponse; + } + + + //过期提醒: + SystemParamConfigEntity expireParamConfigEntity = systemParamConfigService.selectByParamKey("expire_date_tip"); + if (!"0".equals(expireParamConfigEntity.getParamValue())) { + if (udiEntity.getExpireDate() != null) { + String expireDate = "20" + udiEntity.getExpireDate(); + long expireTime = DateUtil.parseDateExpire(expireDate); + if (expireTime - System.currentTimeMillis() < 0) { + return ResultVOUtils.error(500, "udi码:" + warehouseEntity.getCode() + "已经过期!"); + } + } + } + + + //近效期提醒: + SystemParamConfigEntity recentParamConfigEntity = systemParamConfigService.selectByParamKey("recent_date_tip"); + long recent = Long.parseLong(recentParamConfigEntity.getParamValue()); + if (recent > 0) { + if (udiEntity.getExpireDate() != null) { + String expireDate = "20" + udiEntity.getExpireDate(); + long expireTime = DateUtil.parseDateExpire(expireDate); + long recentTieme = recent * 24 * 60 * 60 * 1000; + logger.error("recentTieme = " + recentTieme); + if (expireTime - System.currentTimeMillis() < recentTieme) { + return ResultVOUtils.error(500, "udi码:" + warehouseEntity.getCode() + "临近过期!"); + } + } + } + + BaseResponse baseResponse = checkRelId(warehouseEntity); warehouseEntity = codesTempService.findByUnique(warehouseEntity.getOrderId(), warehouseEntity.getCode()); if (baseResponse == null) { @@ -380,11 +438,39 @@ public class WareHouseController { return baseResponse; } + //产品是否可以以使用单元入库 + List udiRelevanceResponses = udiRelevanceService.selectAllByNameCode(warehouseEntity.getNameCode()); + if (udiRelevanceResponses.size() == 1) { + UdiRelevanceResponse udiRelevanceResponse = udiRelevanceResponses.get(0); + if (udiRelevanceResponse == null) { + return ResultVOUtils.error(500, "udi码:" + warehouseEntity.getCode() + "该产品信息未维护!"); + } else if (udiRelevanceResponse.getIsUseDy() == 0 && udiRelevanceResponse.getDiType() == ConstantStatus.DITYPE_SYDY) { + return ResultVOUtils.error(500, "udi码:" + warehouseEntity.getCode() + "该产品不允许以使用单元入库!"); + } + } + } return ResultVOUtils.success(orderId); } + //校验往来单位是否已维护 + public BaseResponse checkCorp(WarehouseEntity warehouseEntity, BussinessTypeEntity bussinessTypeEntity) { + if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { + CompanyProductRelevanceRequest companyProductRelevanceRequest = new CompanyProductRelevanceRequest(); + companyProductRelevanceRequest.setUnitFk(warehouseEntity.getFromCorpId()); + UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode()); + companyProductRelevanceRequest.setNameCode(udiEntity.getUdi()); + List datas = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest); + if (datas.size() <= 0) { + return ResultVOUtils.error(500, "当前供应商不存在此配送产品!"); + } + + } + return null; + } + + public BaseResponse checkRelId(WarehouseEntity warehouseEntity) { List udiRelevanceEntities = udiRelevanceService.selectAllByNameCode(warehouseEntity.getNameCode()); if (udiRelevanceEntities != null && udiRelevanceEntities.size() > 1 && warehouseEntity.getRelId() == null) {//同一个DI绑定多个产品西信息 @@ -413,10 +499,19 @@ public class WareHouseController { if (originSupId != null) { warehouseEntity.setSupId(originSupId); } else { - String supId = ioTransInoutService.checkExitSup(warehouseEntity.getRelId()); - if (supId == null || "MUTI".equals(supId)) { + + String supId = ioTransInoutService.checkInvExitSup(warehouseEntity); + if (supId == null) { + supId = ioTransInoutService.checkExitSup(warehouseEntity.getRelId()); + } + if (supId == null) { + warehouseEntity.setSupId(null); + BaseResponse baseResponse = ResultVOUtils.error(503, "该产品未绑定供应商,请指定对应的供应商"); + baseResponse.setData(warehouseEntity); + return baseResponse; + } else if ("MUTI".equals(supId)) { warehouseEntity.setSupId(null); - BaseResponse baseResponse = ResultVOUtils.error(503, "该产品未绑定供应商或绑定多个供应商,请指定对应的供应商"); + BaseResponse baseResponse = ResultVOUtils.error(503, "该产品绑定多个供应商,请指定对应的供应商"); baseResponse.setData(warehouseEntity); return baseResponse; } else { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFModuleController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFModuleController.java index 3408455..f893fd7 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFModuleController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFModuleController.java @@ -88,10 +88,10 @@ public class SystemPDFModuleController { if (systemPDFModuleRequest.getTemplateType() != null && systemPDFModuleRequest.getTemplateType() == 2) { BussinessLocalTypeFilterRequest bussinessLocalTypeFilterRequest = new BussinessLocalTypeFilterRequest(); - List bussinessLocalTypeEntities = bussinessLocalTypeService.filterList(bussinessLocalTypeFilterRequest); + List bussinessLocalTypeEntities = bussinessLocalTypeService.filterJoin(bussinessLocalTypeFilterRequest); for (BussinessLocalTypeEntity bussinessLocalTypeEntity : bussinessLocalTypeEntities) { SystemPDFTemplateRelevanceEntity systemPDFTemplateRelevanceEntity = new SystemPDFTemplateRelevanceEntity(); - systemPDFTemplateRelevanceEntity.setLocalAction(bussinessLocalTypeEntity.getAction()); + systemPDFTemplateRelevanceEntity.setLocalAction(bussinessLocalTypeEntity.getLocalAction()); systemPDFTemplateRelevanceEntity.setModuleId(systemPDFModuleRequest.getModuleId()); systemPDFTemplateRelevanceService.insert(systemPDFTemplateRelevanceEntity); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFTemplateController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFTemplateController.java index f04bdec..8ecab6f 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFTemplateController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/param/SystemPDFTemplateController.java @@ -2,16 +2,25 @@ package com.glxp.sale.admin.controller.param; import com.github.pagehelper.PageInfo; import com.glxp.sale.admin.annotation.AuthRuleAnnotation; +import com.glxp.sale.admin.constant.Constant; import com.glxp.sale.admin.entity.auth.AuthRole; +import com.glxp.sale.admin.entity.info.CompanyEntity; +import com.glxp.sale.admin.entity.inout.StockOrderEntity; +import com.glxp.sale.admin.entity.inout.StockOrderPrintEntity; +import com.glxp.sale.admin.entity.param.SystemPDFModuleEntity; import com.glxp.sale.admin.entity.param.SystemPDFTemplateEntity; import com.glxp.sale.admin.req.info.DeleteRequest; +import com.glxp.sale.admin.req.itextpdf.StockQRCodeTextPDFTemplateRequest; +import com.glxp.sale.admin.req.itextpdf.SystemPDFTemplateRelevanceRequest; import com.glxp.sale.admin.req.param.SystemPDFTemplateRequest; import com.glxp.sale.admin.req.param.SystemPDFTemplateSaveRequest; import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.res.auth.AuthAdminRoleResponse; +import com.glxp.sale.admin.res.param.SystemPDFTemplateRelevanceResponse; import com.glxp.sale.admin.res.param.SystemPDFTemplateResponse; import com.glxp.sale.admin.res.param.SystemPDFTemplateSelectResponse; import com.glxp.sale.admin.service.param.SystemPDFTemplateService; +import com.glxp.sale.admin.util.JasperUtils; import com.glxp.sale.common.enums.ResultEnum; import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.util.ResultVOUtils; @@ -21,11 +30,15 @@ import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.File; import java.io.IOException; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; @RestController @@ -37,7 +50,7 @@ public class SystemPDFTemplateController { @AuthRuleAnnotation("system/pdf/template/list") @GetMapping("/system/pdf/template/list") public BaseResponse list(@Valid SystemPDFTemplateRequest systemPDFTemplateRequest, - BindingResult bindingResult) { + BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); @@ -58,6 +71,27 @@ public class SystemPDFTemplateController { return ResultVOUtils.success(pageSimpleResponse); } + + @AuthRuleAnnotation("") + @PostMapping("/system/pdf/template/demoPrint") + public void demoPrint( + @RequestBody SystemPDFTemplateRequest systemPDFTemplateRequest, + HttpServletRequest request, HttpServletResponse response) throws Exception { + + SystemPDFTemplateEntity systemPDFTemplateEntity = + systemPDFTemplateService.selectById(String.valueOf(systemPDFTemplateRequest.getId())); + String data = ""; + if (systemPDFTemplateEntity.getModule() == 2) { + data = + "{\"data\":[{\"batchNo\":\"2020\",\"billNo\":\"2022040811589\",\"billType\":\"ST39730635520\",\"billdate\":\"2022-04-08\",\"corpId\":\"39864007581\",\"corpName\":\"漳州**有限公司\",\"count\":\"4\",\"customerId\":\"39864007581\",\"expireDate\":\"251020\",\"id\":\"10\",\"index\":\"1\",\"locInv\":\"总库\",\"orderIdFk\":\"SM412208685600\",\"printStatus\":\"102\",\"productDate\":\"201020\",\"productId\":\"169\",\"productName\":\"一次性使用开环式微创肛肠吻合器\",\"sourceType\":\"1\",\"spec\":\"TST33-T80——2993规格\",\"status\":\"5\",\"sweepCount\":\"0\",\"title\":\"漳州**医院\",\"type\":\"2\",\"unitIdFk\":\"39864007581\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"苏械注准2022000000\",\"price\":\"10.00\"},{\"batchNo\":\"2023\",\"billNo\":\"2022040811589\",\"billType\":\"ST39730635520\",\"billdate\":\"2022-04-08\",\"corpId\":\"39864007581\",\"corpName\":\"漳州**有限公司\",\"count\":\"4\",\"customerId\":\"39864007581\",\"expireDate\":\"251020\",\"id\":\"10\",\"index\":\"2\",\"locInv\":\"总库\",\"orderIdFk\":\"SM412208685600\",\"printStatus\":\"102\",\"productDate\":\"201020\",\"productId\":\"169\",\"productName\":\"一次性使用开环式微创肛肠吻合器\",\"sourceType\":\"1\",\"spec\":\"TST33-T80——2993规格\",\"status\":\"5\",\"sweepCount\":\"0\",\"title\":\"漳州**医院\",\"type\":\"2\",\"unitIdFk\":\"39864007581\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"苏械注准2022000000\",\"price\":\"10.00\"},{\"batchNo\":\"2021\",\"billNo\":\"2022040811589\",\"billType\":\"ST39730635520\",\"billdate\":\"2022-04-08\",\"corpId\":\"39864007581\",\"corpName\":\"漳州**有限公司\",\"count\":\"4\",\"customerId\":\"39864007581\",\"expireDate\":\"251020\",\"id\":\"10\",\"index\":\"3\",\"locInv\":\"总库\",\"orderIdFk\":\"SM412208685600\",\"printStatus\":\"102\",\"productDate\":\"201020\",\"productId\":\"169\",\"productName\":\"一次性使用开环式微创肛肠吻合器\",\"sourceType\":\"1\",\"spec\":\"TST33-T80——2993规格\",\"status\":\"5\",\"sweepCount\":\"0\",\"title\":\"漳州**医院\",\"type\":\"2\",\"unitIdFk\":\"39864007581\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"苏械注准2022000000\",\"price\":\"10.00\"}]}"; + } else if (systemPDFTemplateEntity.getModule() == 0) { + data = + "{\"data\":[{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"},{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"},{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"},{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"},{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"},{\"batchNo\":\"2021\",\"corpName\":\"漳州***医院\",\"count\":10,\"cpmctymc\":\"髋关节假体\",\"expireDate\":\"230606\",\"ggxh\":\"DTUCS Ⅱ 3#\",\"id\":4,\"nameCode\":\"06902139302144\",\"produceDate\":\"210606\",\"udiCode\":\"#06902139302144#210606#230606#2021###\",\"ylqxzcrbarmc\":\"漳州**有限公司\",\"zczbhhzbapzbh\":\"国械注准201000000000\"}]}"; + } + JasperUtils.jasperReport(request, response, data, systemPDFTemplateEntity.getPath(), "pdf"); + + } + @AuthRuleAnnotation("system/pdf/template/list") @GetMapping("/system/pdf/template/pdfTemplates") public BaseResponse pdfTemplates(@RequestParam(value = "page", defaultValue = "1") Integer page, diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrProductsAddController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrProductsAddController.java index 058dc9b..88114e5 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrProductsAddController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrProductsAddController.java @@ -44,6 +44,8 @@ public class ThrProductsAddController { Long customerId = customerService.getCustomerId(); if (customerId != 110) { filterThrProductsRequest.setCustomerId(customerId + ""); + } else { + filterThrProductsRequest.setCustomerId(filterThrProductsRequest.getSupId()); } List thrProductsAddEntities = thrProductsAddService.filterThrProductsRequest(filterThrProductsRequest); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/StockOrderPrintEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/StockOrderPrintEntity.java index c835d97..faccbce 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/StockOrderPrintEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/StockOrderPrintEntity.java @@ -24,6 +24,7 @@ public class StockOrderPrintEntity extends StockOrderDetailEntity { private String unitIdFk; private String customerId; private BigDecimal totalPrice; + private String locInv; public BigDecimal getPrice() { // if (price == null) diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrProductsAddEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrProductsAddEntity.java index 2a72bdf..2a2fe5b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrProductsAddEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrProductsAddEntity.java @@ -28,6 +28,7 @@ public class ThrProductsAddEntity { private Date updateTime; private String supName; private boolean isChecked; + private String corpName; //添加字段 private String model; //型号 diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddStockOrderChangeRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddStockOrderChangeRequest.java new file mode 100644 index 0000000..092feba --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddStockOrderChangeRequest.java @@ -0,0 +1,24 @@ +package com.glxp.sale.admin.req.inout; + +import lombok.Data; + +@Data +public class AddStockOrderChangeRequest { + + private String corpOrderId; + private String code; + private String actor; + private String mainAction; + private String action; + private String fromCorpId; + private String fromCorp; + private Integer fromType; + private String actDate; + private String billType; + private String locStorageCode; + private String orderId; + private String customerId; + private String stockOrderId; + + +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/FilterOrderRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/FilterOrderRequest.java index c8f3d35..9010c30 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/FilterOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/FilterOrderRequest.java @@ -21,7 +21,7 @@ public class FilterOrderRequest { private Boolean isDownThrSys; private Boolean isLocal; private String localAction; - + private String locStorageCode; //第三方系统ID private String thirdSys; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/InspectionPDFTemplateRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/InspectionPDFTemplateRequest.java index 01930ee..2ce3b09 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/InspectionPDFTemplateRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/InspectionPDFTemplateRequest.java @@ -12,5 +12,6 @@ public class InspectionPDFTemplateRequest { private int module; private String orderId; private Long customerId; + private int moduleId; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/StockQRCodeTextPDFTemplateRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/StockQRCodeTextPDFTemplateRequest.java index e8e4811..ad40868 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/StockQRCodeTextPDFTemplateRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/itextpdf/StockQRCodeTextPDFTemplateRequest.java @@ -22,4 +22,5 @@ public class StockQRCodeTextPDFTemplateRequest { private List countList; private String orderName; + private Integer moduleId; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrProductsRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrProductsRequest.java index cd42d02..d53556b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrProductsRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrProductsRequest.java @@ -21,4 +21,5 @@ public class FilterThrProductsRequest extends ListPageRequest { private List codes; private Integer checkStatus; private String customerId; + private String supId; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java index 3efd803..25f4d78 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/res/basic/CompanyProductRelevanceResponse.java @@ -58,4 +58,11 @@ public class CompanyProductRelevanceResponse { private String mainName; private Boolean isAdavence; + private String scbssfbhph; + private String scbssfbhxlh; + private String scbssfbhscrq; + private String scbssfbhsxrq; + private String cpms; + private String supName; + } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java index 20f5456..4a446b9 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java @@ -22,12 +22,14 @@ import com.glxp.sale.admin.entity.inventory.InvWarehouseEntity; import com.glxp.sale.admin.entity.param.SystemParamConfigEntity; import com.glxp.sale.admin.entity.udid.UdiEntity; import com.glxp.sale.admin.httpclient.ErpOrderClient; +import com.glxp.sale.admin.req.basic.CompanyProductRelevanceRequest; import com.glxp.sale.admin.req.basic.FilterUdiInfoRequest; import com.glxp.sale.admin.req.info.FilterCompanyProductRelevanceRequest; import com.glxp.sale.admin.req.inout.*; import com.glxp.sale.admin.req.inventory.FilterInvProductDetailRequest; import com.glxp.sale.admin.req.inventory.FilterInvProductRequest; import com.glxp.sale.admin.req.inventory.FilterInvWarehouseRequest; +import com.glxp.sale.admin.res.basic.CompanyProductRelevanceResponse; import com.glxp.sale.admin.res.basic.UdiRelevanceResponse; import com.glxp.sale.admin.service.basic.BasicUnitMaintainService; import com.glxp.sale.admin.service.basic.BussinessTypeService; @@ -46,6 +48,7 @@ import com.glxp.sale.admin.service.thrsys.ThrOrderService; import com.glxp.sale.admin.util.CustomUtil; import com.glxp.sale.admin.util.DateUtil; import com.glxp.sale.admin.util.FilterUdiUtils; +import com.glxp.sale.common.util.ResultVOUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -368,37 +371,54 @@ public class IoTransInoutService { } - //近效期提醒: - SystemParamConfigEntity recentParamConfigEntity = systemParamConfigService.selectByParamKey("recent_date_tip"); - int recent = Integer.parseInt(recentParamConfigEntity.getParamValue()); - if (recent > 0) { + //校验是否是当前供应商 + if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { + CompanyProductRelevanceRequest companyProductRelevanceRequest = new CompanyProductRelevanceRequest(); + companyProductRelevanceRequest.setUnitFk(warehouseEntity.getFromCorpId()); + UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode()); + companyProductRelevanceRequest.setNameCode(udiEntity.getUdi()); + List datas = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest); + if (datas.size() <= 0) { + orderService.updateOrderStatus(warehouseEntity.getOrderId(), ConstantStatus.ORDER_STATUS_FAIL); + orderService.updateRemark(orderEntity.getId(), "udi码:" + warehouseEntity.getCode() + "当前供应商不存在此配送产品"); + } + + } + + //过期提醒: + SystemParamConfigEntity expireParamConfigEntity = systemParamConfigService.selectByParamKey("expire_date_tip"); + if (!"0".equals(expireParamConfigEntity.getParamValue())) { UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode()); if (udiEntity.getExpireDate() != null) { String expireDate = "20" + udiEntity.getExpireDate(); long expireTime = DateUtil.parseDateExpire(expireDate); - if (expireTime - System.currentTimeMillis() < recent * 24 * 60 * 60 * 1000) { + if (expireTime - System.currentTimeMillis() < 0) { orderService.updateOrderStatus(warehouseEntity.getOrderId(), ConstantStatus.ORDER_STATUS_FAIL); - orderService.updateRemark(orderEntity.getId(), "udi码:" + warehouseEntity.getCode() + "临近过期!"); + orderService.updateRemark(orderEntity.getId(), "udi码:" + warehouseEntity.getCode() + "已经过期!"); return; } } } - //过期提醒: - SystemParamConfigEntity expireParamConfigEntity = systemParamConfigService.selectByParamKey("expire_date_tip"); - if (!"0".equals(expireParamConfigEntity.getParamValue())) { + + + //近效期提醒: + SystemParamConfigEntity recentParamConfigEntity = systemParamConfigService.selectByParamKey("recent_date_tip"); + int recent = Integer.parseInt(recentParamConfigEntity.getParamValue()); + if (recent > 0) { UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode()); if (udiEntity.getExpireDate() != null) { String expireDate = "20" + udiEntity.getExpireDate(); long expireTime = DateUtil.parseDateExpire(expireDate); - if (expireTime - System.currentTimeMillis() < 0) { + if (expireTime - System.currentTimeMillis() < recent * 24 * 60 * 60 * 1000) { orderService.updateOrderStatus(warehouseEntity.getOrderId(), ConstantStatus.ORDER_STATUS_FAIL); - orderService.updateRemark(orderEntity.getId(), "udi码:" + warehouseEntity.getCode() + "已经过期!"); + orderService.updateRemark(orderEntity.getId(), "udi码:" + warehouseEntity.getCode() + "临近过期!"); return; } } } + //产品是否已维护已关联 if (StrUtil.isEmpty(warehouseEntity.getRelId())) { orderService.updateOrderStatus(warehouseEntity.getOrderId(), ConstantStatus.ORDER_STATUS_FAIL); @@ -579,7 +599,7 @@ public class IoTransInoutService { public String checkOriginExitSup(BussinessTypeEntity bussinessTypeEntity, WarehouseEntity warehouseEntity) { if (warehouseEntity.getSupId() != null && !"".equals(warehouseEntity.getSupId())) { return warehouseEntity.getSupId(); - } else if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT && ConstantType.TYPE_PUT.equals(warehouseEntity.getMainAction())) { + } else if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {// && ConstantType.TYPE_PUT.equals(warehouseEntity.getMainAction() return warehouseEntity.getFromCorpId(); } return null; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/util/FilterUdiUtils.java b/api-admin/src/main/java/com/glxp/sale/admin/util/FilterUdiUtils.java index 4dd90df..3b1b7de 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/util/FilterUdiUtils.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/util/FilterUdiUtils.java @@ -158,12 +158,13 @@ public class FilterUdiUtils { String expireDate = ""; String serialNo = null; String udi = data; + String nameCode = ""; String[] spilts = data.split("[.]"); if (spilts != null && spilts.length >= 5) { for (int i = 0; i < 5; i++) { - udi = udi + "." + spilts[i]; + nameCode = nameCode + "." + spilts[i]; } - udi = udi.substring(1); + nameCode = nameCode.substring(1); for (int i = 0; i < spilts.length; i++) { String tempStr = spilts[i]; if (tempStr != null && tempStr.length() > 1 && tempStr.substring(0, 1).equals("M")) { @@ -182,7 +183,7 @@ public class FilterUdiUtils { udiEntity.setBatchNo(batchNo); udiEntity.setExpireDate(expireDate); udiEntity.setProduceDate(produceDate); - udiEntity.setUdi(udi); + udiEntity.setUdi(nameCode); udiEntity.setSerialNo(serialNo); return udiEntity; @@ -266,6 +267,7 @@ public class FilterUdiUtils { "#" + warehouseEntity.getBatchNo() + "#" + "#" + "#"; return udiCode; } + public static String transGlxpNoSerStr(UdiEntity warehouseEntity) { String udiCode = "#" + warehouseEntity.getUdi() + "#" + warehouseEntity.getProduceDate() + "#" + warehouseEntity.getExpireDate() + "#" + warehouseEntity.getBatchNo() + "#" + "#" + "#"; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/util/JasperUtils.java b/api-admin/src/main/java/com/glxp/sale/admin/util/JasperUtils.java index d38b521..1cb154d 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/util/JasperUtils.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/util/JasperUtils.java @@ -53,10 +53,41 @@ public class JasperUtils { InputStream is = new ByteArrayInputStream(JSON.toJSONString(data).getBytes("UTF-8")); map.put("JSON_INPUT_STREAM", is); //填充报表数据 map.put(JsonQueryExecuterFactory.JSON_LOCALE, Locale.ENGLISH); -// ClassPathResource resource = new ClassPathResource(jasperResource); FileInputStream jasperStream = new FileInputStream(new File(jasperResource)); -// InputStream jasperStream = resource.getInputStream(); + JasperReport jasperReport = (JasperReport) JRLoader.loadObject(jasperStream); + //报表填充 + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map); + String fileName = new String("export.pdf".getBytes("GBK"), "ISO8859_1"); + ServletOutputStream os = response.getOutputStream(); + response.setDateHeader("Expires", 0); + response.setHeader("Content-disposition", "attachment; filename=" + fileName); + if (type != null && WORD_TYPE.equals(type)) { + response.setContentType("appliction/msword; charset=utf-8"); + JRDocxExporter exporter = new JRDocxExporter(); + exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); + exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(os)); + exporter.exportReport(); + } else { + response.setContentType("application/pdf; charset=utf-8"); + JasperExportManager.exportReportToPdfStream(jasperPrint, os); + os.flush(); + os.close(); + } + } catch (Exception e) { + + e.printStackTrace(); + + } + } + public static void jasperReport(HttpServletRequest request, HttpServletResponse response, String data, String jasperResource, String type) throws IOException, JRException { + try { + HashMap map = new HashMap(); + logger.error(JSON.toJSONString(data)); + InputStream is = new ByteArrayInputStream(data.getBytes("UTF-8")); + map.put("JSON_INPUT_STREAM", is); //填充报表数据 + map.put(JsonQueryExecuterFactory.JSON_LOCALE, Locale.ENGLISH); + FileInputStream jasperStream = new FileInputStream(new File(jasperResource)); JasperReport jasperReport = (JasperReport) JRLoader.loadObject(jasperStream); //报表填充 JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map); diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BussinessLocalTypeDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessLocalTypeDao.xml index c657ad5..e4c7001 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/BussinessLocalTypeDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessLocalTypeDao.xml @@ -49,6 +49,7 @@ AND spUse =#{spUse} + group by basic_bussiness_type.action diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeDao.xml index e626495..e76ae39 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeDao.xml @@ -122,6 +122,10 @@ AND inv_warehouse.`code` =#{locInvCode} + + AND inv_warehouse_user.userId = #{userId} + + group by basic_bussiness_type.action diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index bfb8f19..bbccf12 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -12,7 +12,7 @@ basic_udirel.thirdName1,basic_udirel.thirdName2,basic_udirel.thirdName3,basic_udirel.thirdName4, basic_udirel.manufactory,basic_udirel.measname,basic_udirel.ybbm,basic_udirel.sptm, basic_udirel.isDisable, basic_udirel.isLock,basic_udirel.lockStatus,basic_udirel.udplatCode, - basic_udirel.isAdavence, + basic_udirel.isAdavence,basic_udirel.mainId, basic_products.nameCode,basic_products.packRatio,basic_products.packLevel, basic_products.bhxjsl,basic_products.bhzxxsbzsl,basic_products.zxxsbzbhsydysl, basic_products.bhxjcpbm,basic_products.bzcj, diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml index 26aa516..bf6348d 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml @@ -17,7 +17,7 @@ select * from stock_order - INNER JOIN inv_warehouse_user on stock_order.locStorageCode = inv_warehouse_user.`code` + INNER JOIN inv_warehouse_user on stock_order.locStorageCode = inv_warehouse_user.`code` where `status` = '101' group by stock_order.id ORDER BY id DESC @@ -219,9 +219,11 @@ SELECT stock_order.*, stock_order_detail.productId, stock_order_detail.productName, stock_order_detail.spec, stock_order_detail.batchNo, stock_order_detail.productDate, stock_order_detail.expireDate, stock_order_detail.count, stock_order_detail.sweepCount, stock_order_detail.ylqxzcrbarmc, - stock_order_detail.zczbhhzbapzbh,stock_order_detail.price FROM stock_order INNER JOIN stock_order_detail on + stock_order_detail.zczbhhzbapzbh,stock_order_detail.price,inv_warehouse.name locInv FROM stock_order INNER JOIN + stock_order_detail on stock_order.id = stock_order_detail.orderIdFk + left join inv_warehouse on inv_warehouse.code = stock_order.locStorageCode @@ -238,6 +240,7 @@ + group by stock_order_detail.id @@ -69,7 +72,10 @@ #{customerId}, #{adminId}, #{moduleId}, - #{localAction}, #{remark1}, #{remark2}, #{remark3} + #{localAction}, + #{remark1}, + #{remark2}, + #{remark3} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDao.xml index d62ff91..9b193a1 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDao.xml @@ -5,7 +5,8 @@