From b20a361cf1b2d839ef6121064797ea2330f29921 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 20 May 2024 11:04:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=200520=20=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inout/IoOrderDetailResultController.java | 62 +++++++++++++++++++ .../api/req/dev/DeviceInfoDetailQuery.java | 7 +++ .../mybatis/mapper/dev/DeviceInfoMapper.xml | 2 +- src/main/resources/schemas/schema_v2.4.sql | 13 ++-- 4 files changed, 79 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java index 06e8c5ad4..c56dbc9d2 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java @@ -14,6 +14,7 @@ import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.constant.Constant; import com.glxp.api.constant.ConstantType; import com.glxp.api.controller.BaseController; +import com.glxp.api.dao.dev.DeviceInfoMapper; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.InvWarehouseEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; @@ -22,6 +23,7 @@ import com.glxp.api.entity.system.CompanyEntity; import com.glxp.api.entity.system.SysPdfTemplateRelevanceStatemenEntity; import com.glxp.api.entity.system.SystemPDFTemplateEntity; import com.glxp.api.entity.thrsys.ThrProductsEntity; +import com.glxp.api.req.dev.DeviceInfoDetailQuery; import com.glxp.api.req.inout.*; import com.glxp.api.res.inout.*; import com.glxp.api.service.auth.CustomerService; @@ -37,6 +39,7 @@ import com.glxp.api.service.thrsys.ThrProductsService; import com.glxp.api.util.BeanCopyUtils; import com.glxp.api.util.JasperUtils; import com.glxp.api.util.MsDateUtil; +import com.glxp.api.vo.dev.DeviceInfoVo; import net.sf.jasperreports.engine.JRException; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Value; @@ -80,6 +83,8 @@ public class IoOrderDetailResultController extends BaseController { private ThrProductsService thrProductsService; @Resource private IoOrderInvoiceService ioOrderInvoiceService; + @Resource + DeviceInfoMapper deviceInfoMapper; /** * 查询单据扫码明细列表 @@ -363,6 +368,63 @@ public class IoOrderDetailResultController extends BaseController { return ResultVOUtils.success(); } + /** + * 科室设备明细打印 + * + * @param detailQuery + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/inout/resultDetail/filterDevPrint") + public BaseResponse filterDevPrint(@RequestBody DeviceInfoDetailQuery detailQuery, HttpServletRequest request, HttpServletResponse response) throws JRException, IOException { + List resList = new ArrayList<>(); + SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(detailQuery.getTemplateId()); + //打印单号标签 + Map data = new HashMap<>(1); + List list = new ArrayList<>(); + + //按选入打印 + if (detailQuery.getList() != null && detailQuery.getList().size() > 0) { + resList = detailQuery.getList(); + } else { + resList =deviceInfoMapper.detail(detailQuery); + } + + int i = 1; + for (DeviceInfoVo item : resList) { + //组装数据 + Map deviceInfoData = new HashMap<>(); + deviceInfoData.put("index", String.valueOf(i)); + deviceInfoData.put("deviceCode", item.getDeviceCode() == null ? ' ' : item.getDeviceCode()); + deviceInfoData.put("deptName", item.getDeptName() == null ? ' ' : item.getDeptName()); + deviceInfoData.put("statusName", item.getStatusName() == null ? ' ' : item.getStatusName()); + deviceInfoData.put("udi", item.getUdi() == null ? ' ' : item.getUdi()); + deviceInfoData.put("nameCode", item.getNameCode() == null ? ' ' : item.getNameCode()); + deviceInfoData.put("productName", item.getProductName() == null ? ' ' : item.getProductName()); + deviceInfoData.put("ggxh", item.getGgxh() == null ? ' ' : item.getGgxh()); + deviceInfoData.put("batchNo", item.getBatchNo() == null ? ' ' : item.getBatchNo()); + deviceInfoData.put("serialNo", item.getSerialNo() == null ? ' ' : item.getSerialNo()); + deviceInfoData.put("productionDate", item.getProductionDate() == null ? ' ' : item.getProductionDate()); + deviceInfoData.put("expireDate", item.getExpireDate() == null ? ' ' : item.getExpireDate()); + deviceInfoData.put("manufactory", item.getManufactory() == null ? ' ' : item.getManufactory()); + deviceInfoData.put("measname", item.getMeasname() == null ? ' ' : item.getMeasname()); + deviceInfoData.put("zczbhhzbapzbh", item.getZczbhhzbapzbh() == null ? ' ' : item.getZczbhhzbapzbh()); + deviceInfoData.put("supName", item.getSupName() == null ? ' ' : item.getSupName()); + deviceInfoData.put("changeCount", item.getChangeCount() == null ? '0' : item.getChangeCount()); + deviceInfoData.put("repairApplyCount", item.getRepairApplyCount() == null ? '0' : item.getRepairApplyCount()); + deviceInfoData.put("repairCount", item.getRepairCount() == null ? '0' : item.getRepairCount()); + deviceInfoData.put("checkCount", item.getCheckCount() == null ? '0' : item.getCheckCount()); + + list.add(deviceInfoData); + i++; + } + + data.put("data", list); + String param = JSON.toJSONString(data); + JasperUtils.jasperReport(request, response, param, filePath + "pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf"); + return ResultVOUtils.success(); + } + @Resource CompanyService companyService; diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java index 08c0e85fc..fd3391bd4 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java @@ -1,11 +1,14 @@ package com.glxp.api.req.dev; import com.glxp.api.enums.dev.DeviceStatusEnum; +import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.util.page.ListPageRequest; +import com.glxp.api.vo.dev.DeviceInfoVo; import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; +import java.util.List; @Data public class DeviceInfoDetailQuery extends ListPageRequest { @@ -70,5 +73,9 @@ public class DeviceInfoDetailQuery extends ListPageRequest { private String deviceCodeAndUdi; + private String templateId; + + private List list; + } diff --git a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml index 3fa8ef3ca..6711590af 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml @@ -60,7 +60,7 @@ left join auth_dept dept on dept.code = info.deptCode - and info.deviceCode = #{param.deviceCode} + and info.deviceCode like concat('%',#{param.deviceCode},'%') and info.deptCode = #{param.deptCode} diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index e640b439b..9436ad7ad 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -3145,16 +3145,16 @@ CALL Pro_Temp_ColumnWork('pur_contract', 'pageType', CALL Pro_Temp_ColumnWork('device_info', 'purApplyBillNo', - 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs COMMENT''申购订单单据号''', + 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT''申购订单单据号''', 1); CALL Pro_Temp_ColumnWork('device_info', 'purOrderBillNo', - 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs COMMENT''采购订单单据号''', + 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT''采购订单单据号''', 1); CALL Pro_Temp_ColumnWork('device_info', 'purContractBillNo', - 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs COMMENT''采购合同单据号''', + 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT''采购合同单据号''', 1); CALL Pro_Temp_ColumnWork('device_info', 'purPlanBillNo', - 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs COMMENT''采购计划单据号''', + 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT''采购计划单据号''', 1); CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'devInType', ' int NOT NULL DEFAULT b''0'' COMMENT ''是否设备入库 :0:未启用;2.启用''', 1); @@ -3396,3 +3396,8 @@ CALL Pro_Temp_ColumnWork('device_repair', 'repairUserId', 'bigint DEFAULT NULL C ALTER TABLE device_plan_detail_item DROP PRIMARY KEY, ADD PRIMARY KEY (`planId`, `productId`, `itemCode`, `deviceCode`) USING BTREE; + +INSERT ignore INTO `sys_pdf_template_relevance_statemen`(`id`, `templateId`, `customerId`, `adminId`, `moduleId`, + `localAction`, `remark1`, `remark2`, `remark3`, `printType`, + `modelKey`) +VALUES (6, 33, 110, 0, NULL, '科室设备报表打印', NULL, NULL, NULL, NULL, 'reportForms');