diff --git a/nursing-unit-common/src/main/java/com/nu/entity/InvoicingQldInfoEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/InvoicingQldInfoEntity.java index 336584fa..68828254 100644 --- a/nursing-unit-common/src/main/java/com/nu/entity/InvoicingQldInfoEntity.java +++ b/nursing-unit-common/src/main/java/com/nu/entity/InvoicingQldInfoEntity.java @@ -40,8 +40,6 @@ public class InvoicingQldInfoEntity implements Serializable { private String kfId; /**物料id nu_config_material_info.id*/ private String wlId; - /**物料id nu_config_material_info.id*/ - private String materialName; /**请领数量*/ private Integer qlNum; /**nuid nu_base_info.nu_id*/ @@ -57,4 +55,23 @@ public class InvoicingQldInfoEntity implements Serializable { private String categoryName; /**服务类型名称*/ private String typeName; + + /**物料类别名称*/ + private java.lang.String materialCategoryName; + /**物料类型名称*/ + private java.lang.String materialTypeName; + /**用药类型名称*/ + private java.lang.String materialMedicationName; + /**物料名称*/ + private java.lang.String materialName; + /**物料单位*/ + private java.lang.String materialUnits; + /**物料编码*/ + private java.lang.String materialNo; + /**规格型号*/ + private java.lang.String specificationModel; + /**物料图片*/ + private java.lang.String materialImg; + /**物料销售单价*/ + private java.math.BigDecimal salesUnitPrice; } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/ConfigMaterialInfoMapper.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/ConfigMaterialInfoMapper.java index bfc44c81..62974139 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/ConfigMaterialInfoMapper.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/ConfigMaterialInfoMapper.java @@ -16,7 +16,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: 物料信息 * @Author: jeecg-boot - * @Date: 2025-03-13 + * @Date: 2025-03-13 * @Version: V1.0 */ public interface ConfigMaterialInfoMapper extends BaseMapper { @@ -25,7 +25,7 @@ public interface ConfigMaterialInfoMapper extends BaseMapper IPage getConfiguredList(Page page, @Param("param") ConfigMaterialInfo configMaterialInfo); - ConfigMaterialInfo queryWlInfoByWlId(@Param("wlId") String wlId,@Param("nuId") String nuId); + ConfigMaterialInfo queryWlInfoByWlId(@Param("wlId") String wlId, @Param("nuId") String nuId); List getTreeDataWlnum(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); @@ -38,4 +38,6 @@ public interface ConfigMaterialInfoMapper extends BaseMapper ConfigMaterialInfo queryMaterialInfo(InvoicingQldQueryEntity queryDto); void updateOneTwoPrice(@Param("params") ConfigMaterialInfo configMaterialInfo); + + List queryByWlids(@Param("ids") List ids); } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/xml/ConfigMaterialInfoMapper.xml b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/xml/ConfigMaterialInfoMapper.xml index 0b4ddf21..4a0d82c0 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/xml/ConfigMaterialInfoMapper.xml +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/mapper/xml/ConfigMaterialInfoMapper.xml @@ -109,4 +109,18 @@ two_unit_price = #{params.twoUnitPrice} where id = #{params.id} + + diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/nu/entity/NuInvoicingNuCrkLog.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/nu/entity/NuInvoicingNuCrkLog.java index e37310d0..82ece84e 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/nu/entity/NuInvoicingNuCrkLog.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/nu/entity/NuInvoicingNuCrkLog.java @@ -82,4 +82,41 @@ public class NuInvoicingNuCrkLog implements Serializable { @Excel(name = "备注", width = 15) @ApiModelProperty(value = "备注") private java.lang.String content; + + /**物料类别名称*/ + @Excel(name = "物料类别名称", width = 15) + @ApiModelProperty(value = "物料类别名称") + private java.lang.String materialCategoryName; + /**物料类型名称*/ + @Excel(name = "物料类型名称", width = 15) + @ApiModelProperty(value = "物料类型名称") + private java.lang.String materialTypeName; + /**用药类型名称*/ + @Excel(name = "用药类型名称", width = 15) + @ApiModelProperty(value = "用药类型名称") + private java.lang.String materialMedicationName; + /**物料名称*/ + @Excel(name = "物料名称", width = 15) + @ApiModelProperty(value = "物料名称") + private java.lang.String materialName; + /**物料单位*/ + @Excel(name = "物料单位", width = 15) + @ApiModelProperty(value = "物料单位") + private java.lang.String materialUnits; + /**物料编码*/ + @Excel(name = "物料编码", width = 15) + @ApiModelProperty(value = "物料编码") + private java.lang.String materialNo; + /**规格型号*/ + @Excel(name = "规格型号", width = 15) + @ApiModelProperty(value = "规格型号") + private java.lang.String specificationModel; + /**物料图片*/ + @Excel(name = "物料图片", width = 15) + @ApiModelProperty(value = "物料图片") + private java.lang.String materialImg; + /**物料销售单价*/ + @Excel(name = "物料销售单价", width = 15) + @ApiModelProperty(value = "物料销售单价") + private java.math.BigDecimal salesUnitPrice; } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/entity/NuInvoicingQldInfo.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/entity/NuInvoicingQldInfo.java index c2397fc8..effe38c6 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/entity/NuInvoicingQldInfo.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/entity/NuInvoicingQldInfo.java @@ -79,6 +79,43 @@ public class NuInvoicingQldInfo implements Serializable { @ApiModelProperty(value = "长者id nu_biz_elder_info.id") private java.lang.String elderId; + /**物料类别名称*/ + @Excel(name = "物料类别名称", width = 15) + @ApiModelProperty(value = "物料类别名称") + private java.lang.String materialCategoryName; + /**物料类型名称*/ + @Excel(name = "物料类型名称", width = 15) + @ApiModelProperty(value = "物料类型名称") + private java.lang.String materialTypeName; + /**用药类型名称*/ + @Excel(name = "用药类型名称", width = 15) + @ApiModelProperty(value = "用药类型名称") + private java.lang.String materialMedicationName; + /**物料名称*/ + @Excel(name = "物料名称", width = 15) + @ApiModelProperty(value = "物料名称") + private java.lang.String materialName; + /**物料单位*/ + @Excel(name = "物料单位", width = 15) + @ApiModelProperty(value = "物料单位") + private java.lang.String materialUnits; + /**物料编码*/ + @Excel(name = "物料编码", width = 15) + @ApiModelProperty(value = "物料编码") + private java.lang.String materialNo; + /**规格型号*/ + @Excel(name = "规格型号", width = 15) + @ApiModelProperty(value = "规格型号") + private java.lang.String specificationModel; + /**物料图片*/ + @Excel(name = "物料图片", width = 15) + @ApiModelProperty(value = "物料图片") + private java.lang.String materialImg; + /**物料销售单价*/ + @Excel(name = "物料销售单价", width = 15) + @ApiModelProperty(value = "物料销售单价") + private java.math.BigDecimal salesUnitPrice; + //物料信息 @TableField(exist = false) private BlWarehouseMaterialInfo meterialInfo; diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/mapper/xml/NuInvoicingQldInfoMapper.xml b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/mapper/xml/NuInvoicingQldInfoMapper.xml index b8444418..f99a5e4d 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/mapper/xml/NuInvoicingQldInfoMapper.xml +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/mapper/xml/NuInvoicingQldInfoMapper.xml @@ -7,60 +7,22 @@ info.wl_id, MAX(info.create_time) AS create_time, SUM(info.ql_num) AS ql_num, - material.id AS "materialInfo.id", - material.category_id AS "materialInfo.categoryId", - material.type_id AS "materialInfo.typeId", - material.medication_id AS "materialInfo.medicationId", - material.material_name AS "materialInfo.materialName", - material.material_no AS "materialInfo.materialNo", - material.specification_model AS "materialInfo.specificationModel", - material.sales_unit_price AS "materialInfo.salesUnitPrice", - material.reference_unit_price AS "materialInfo.referenceUnitPrice", - material.material_units AS "materialInfo.materialUnits", - material.multi_unit_switch AS "materialInfo.multiUnitSwitch", - material.one_unit AS "materialInfo.oneUnit", - material.one_unit_proportion AS "materialInfo.oneUnitProportion", - material.one_unit_price AS "materialInfo.oneUnitPrice", - material.two_unit AS "materialInfo.twoUnit", - material.two_unit_proportion AS "materialInfo.twoUnitProportion", - material.two_unit_price AS "materialInfo.twoUnitPrice", - material.multi_unit_type AS "materialInfo.multiUnitType", - material.suppliers AS "materialInfo.suppliers", - material.material_img AS "materialInfo.materialImg", - material.material_ident AS "materialInfo.materialIdent", - material.iz_enabled AS "materialInfo.izEnabled", - material.del_flag AS "materialInfo.delFlag", - material.create_by AS "materialInfo.createBy", - material.create_time AS "materialInfo.createTime", - material.update_by AS "materialInfo.updateBy", - material.update_time AS "materialInfo.updateTime", - material.sys_org_code AS "materialInfo.sysOrgCode", - material.pinyin AS "materialInfo.pinyin", - material.upper_limit AS "materialInfo.upperLimit", - material.lower_limit AS "materialInfo.lowerLimit", - material.tag_type AS "materialInfo.tagType", - material.iz_ybbx AS "materialInfo.izYbbx", - material.iz_jgyh AS "materialInfo.izJgyh", - maca.category_name as "materialInfo.categoryName", - maty.type_name as "materialInfo.typeName" - FROM - nu_invoicing_qld_info info - LEFT JOIN - nu_config_material_info material ON info.wl_id = material.id - LEFT JOIN nu_config_material_category maca ON material.category_id = maca.id - LEFT JOIN nu_config_material_type maty ON material.type_id = maty.id + ANY_VALUE(info.material_name) AS "materialInfo.materialName", + ANY_VALUE(info.material_no) AS "materialInfo.materialNo", + ANY_VALUE(info.specification_model) AS "materialInfo.specificationModel", + ANY_VALUE(info.sales_unit_price) AS "materialInfo.salesUnitPrice", + ANY_VALUE(info.material_units) AS "materialInfo.materialUnits", + ANY_VALUE(info.material_img) AS "materialInfo.materialImg", + ANY_VALUE(info.material_category_name) as "materialInfo.categoryName", + ANY_VALUE(info.material_type_name) as "materialInfo.typeName" + FROM nu_invoicing_qld_info info WHERE info.qld_no IN #{no} - GROUP BY - info.wl_id, - material.id, - maca.id, - maty.id - ORDER BY - MAX(info.create_time) DESC + GROUP BY info.wl_id + ORDER BY MAX(info.create_time) DESC - delete from nu_invoicing_qld_info where qld_no = #{qldNo} and wl_id = #{wlId} + delete + from nu_invoicing_qld_info + where qld_no = #{qldNo} + and wl_id = #{wlId} - update nu_invoicing_qld_info set ql_num = #{qlNum} where qld_no = #{qldNo} and wl_id = #{wlId} + update nu_invoicing_qld_info + set ql_num = #{qlNum} + where qld_no = #{qldNo} + and wl_id = #{wlId} diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/service/impl/QingLingServiceImpl.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/service/impl/QingLingServiceImpl.java index d1d8a35a..7220d003 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/service/impl/QingLingServiceImpl.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/qld/service/impl/QingLingServiceImpl.java @@ -351,6 +351,11 @@ public class QingLingServiceImpl implements IQinglingApi { //可以正常提交 String status = "1";//待出库(已提交) LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + //查出对应物料信息存储到info表和日志表中 + List gwcWlStrs = gwcList.stream().map(NuInvoicingQldGwc::getWlId).collect(Collectors.toList()); + List maList = configMaterialInfoMapper.queryByWlids(gwcWlStrs); + Map maMap = maList.stream().collect(Collectors.toMap(ConfigMaterialInfo::getId, item -> item)); + //存储主表数据 NuInvoicingQldMain saveData = new NuInvoicingQldMain(); @@ -411,6 +416,15 @@ public class QingLingServiceImpl implements IQinglingApi { item.setCreateTime(null); item.setUpdateBy(null); item.setUpdateTime(null); + item.setMaterialCategoryName(maMap.get(item.getWlId()).getCategoryName());//物料类别名称 + item.setMaterialTypeName(maMap.get(item.getWlId()).getTypeName());//物料类型名称 + item.setMaterialMedicationName(maMap.get(item.getWlId()).getMedicationName());//物料类型名称 + item.setMaterialName(maMap.get(item.getWlId()).getMaterialName());//物料名称 + item.setMaterialUnits(maMap.get(item.getWlId()).getMaterialUnits());//物料单位 + item.setMaterialNo(maMap.get(item.getWlId()).getMaterialNo());//物料编码 + item.setSpecificationModel(maMap.get(item.getWlId()).getSpecificationModel());//规格型号 + item.setMaterialImg(maMap.get(item.getWlId()).getMaterialImg());//物料图片 + item.setSpecificationModel(maMap.get(item.getWlId()).getSpecificationModel());//物料销售单价 }); invoicingQldInfoService.saveBatch(infoList); @@ -622,6 +636,16 @@ public class QingLingServiceImpl implements IQinglingApi { nuInvoicingNuCrkLog.setOrderNumber(item.getQldNo());//单号 nuInvoicingNuCrkLog.setOrderType("qld");//单子类型: qld请领单 nuInvoicingNuCrkLog.setContent("请领单:" + item.getQldNo());//备注 + + nuInvoicingNuCrkLog.setMaterialCategoryName(item.getMaterialCategoryName());//物料类别名称 + nuInvoicingNuCrkLog.setMaterialTypeName(item.getMaterialTypeName());//物料类型名称 + nuInvoicingNuCrkLog.setMaterialMedicationName(item.getMaterialMedicationName());//物料类型名称 + nuInvoicingNuCrkLog.setMaterialName(item.getMaterialName());//物料名称 + nuInvoicingNuCrkLog.setMaterialUnits(item.getMaterialUnits());//物料单位 + nuInvoicingNuCrkLog.setMaterialNo(item.getMaterialNo());//物料编码 + nuInvoicingNuCrkLog.setSpecificationModel(item.getSpecificationModel());//规格型号 + nuInvoicingNuCrkLog.setMaterialImg(item.getMaterialImg());//物料图片 + nuInvoicingNuCrkLog.setSpecificationModel(item.getSpecificationModel());//物料销售单价 nuCrkLogList.add(nuInvoicingNuCrkLog); }); invoicingNuCrkLogService.saveBatch(nuCrkLogList);