From c3bca4743c5b8ea15d45cf2ffa1787529f4995ed Mon Sep 17 00:00:00 2001 From: lyfO_o <764716047@qq.com> Date: 星期五, 18 十一月 2022 10:11:23 +0800 Subject: [PATCH] 1.试剂表体积字段和相关接口返回 2.供应商订单修改试剂价格联动试剂原本价格一起变更 --- src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml | 4 +- src/main/java/com/nanometer/smartlab/service/SysReagentService.java | 3 + src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml | 2 + src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml | 15 +++++-- src/main/webapp/reagent_mng.xhtml | 15 +++++++ src/main/java/com/nanometer/smartlab/entity/SysReagent.java | 11 +++++ src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java | 3 + src/main/java/com/nanometer/smartlab/dao/SysReagentDao.java | 2 + src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java | 10 +++++ src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java | 6 +++ 10 files changed, 65 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java b/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java index 4695c76..f845f17 100644 --- a/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/SupplierOrderMngController.java @@ -542,6 +542,9 @@ System.out.println(this.viewOpeApply.getApplyPrice()); try { this.opeApplyService.updaetOpeApplyPrice(this.viewOpeApply.getApplyPrice(),this.viewOpeApply.getId()); + if (this.viewOpeApply.getReagent() != null && this.viewOpeApply.getReagent().getId() != null) { + sysReagentService.updateSysReagentPrice(this.viewOpeApply.getReagent().getId(), this.viewOpeApply.getApplyPrice()); + } FacesUtils.info("修改成功。"); refreshTable(); RequestContext.getCurrentInstance().execute("PF('dialog').hide()"); diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml index a843b61..4a1f6f1 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml @@ -42,6 +42,7 @@ <result property="supplierName" column="supplierName"></result> <result property="deadline" column="deadline"></result> <result property="productHome" column="product_home"></result> + <result property="density" column="density"></result> </association> </resultMap> @@ -176,6 +177,7 @@ <select id="getOpeReagentStatusInfoList" parameterType="java.util.Map" resultMap="OpeReagentStatus"> select s.id ,name,cas, deadline,reagent_code,bm3.meta_value reagent_format,r.main_metering,bm1.meta_value reagent_type,bm2.meta_value product_home, bm4.meta_value reagent_unit, + r.density, s.article_number from ope_reagent_status s left join sys_reagent r on r.id = s.reagent_id diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml index b3cb481..165c386 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml @@ -462,12 +462,12 @@ </select> <insert id="insertOpeUseFlow" parameterType="com.nanometer.smartlab.entity.OpeUseFlow"> - insert into ope_use_flow(id, reagent_code, status, house_id, container_id, user_id, remainder, place, store_type, valid_flag, create_time, realstatus, operatestate + insert into ope_use_flow(id, reagent_code, status, house_id, container_id, user_id, remainder, place, store_type, valid_flag, create_time, realstatus, operatestate,volume <if test="receiptNumber != null"> ,receipt_number </if> ) - values (#{id}, #{reagentCode}, #{status}, #{houseId}, #{containerId}, #{userId}, #{remainder}, #{place}, #{storeType}, 1, #{createTime}, #{realstatus},#{operateState} + values (#{id}, #{reagentCode}, #{status}, #{houseId}, #{containerId}, #{userId}, #{remainder}, #{place}, #{storeType}, 1, #{createTime}, #{realstatus},#{operateState},#{volume} <if test="receiptNumber != null"> ,#{receiptNumber} </if>) diff --git a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.java b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.java index da75df3..f403ef0 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.java +++ b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.java @@ -53,4 +53,6 @@ SysReagent getSysReagentListNewRowData(@Param("id")String rowKey); List<Map> selectAll(Map params); + + void updateSysReagentPriceById(@Param("reagentId") String reagentId,@Param("price") BigDecimal price); } diff --git a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml index 661eba9..ffc7672 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysReagentDao.xml @@ -30,6 +30,7 @@ <result property="unitName" column="unitName"></result> <result property="formatName" column="formatName"></result> <result property="safetynum" column="safetynum"></result> + <result property="density" column="density"></result> </resultMap> <sql id="queryWhereSql"> @@ -427,14 +428,14 @@ <insert id="insertSysReagent" parameterType="com.nanometer.smartlab.entity.SysReagent"> - insert into sys_reagent(id, name, cas, reagent_type, reagent_character, supplier_id, reagent_format, main_metering, reagent_unit, price, per_box, memo, valid_flag, create_time, update_time,deadline, product_sn, dangerous_flag,control_products,product_home,type) - values (#{id}, #{name}, #{cas}, #{reagentType}, #{reagentCharacter}, #{supplierId}, #{reagentFormat}, #{mainMetering}, #{reagentUnit}, #{price}, #{perBox}, #{memo}, 1, now(), now(),#{deadline}, #{productSn}, #{dangerousFlag},#{controlProducts},#{productHome},#{type}) + insert into sys_reagent(id, name, cas, reagent_type, reagent_character, supplier_id, reagent_format, main_metering, reagent_unit, price, per_box, memo, valid_flag, create_time, update_time,deadline, product_sn, dangerous_flag,control_products,product_home,type,density) + values (#{id}, #{name}, #{cas}, #{reagentType}, #{reagentCharacter}, #{supplierId}, #{reagentFormat}, #{mainMetering}, #{reagentUnit}, #{price}, #{perBox}, #{memo}, 1, now(), now(),#{deadline}, #{productSn}, #{dangerousFlag},#{controlProducts},#{productHome},#{type},#{density}) </insert> <update id="updateSysReagent" parameterType="com.nanometer.smartlab.entity.SysReagent"> update sys_reagent set name=#{name}, cas=#{cas}, reagent_type=#{reagentType}, reagent_character=#{reagentCharacter}, supplier_id=#{supplierId}, reagent_format=#{reagentFormat}, main_metering=#{mainMetering}, reagent_unit=#{reagentUnit}, price=#{price}, per_box=#{perBox}, memo=#{memo}, update_time=now(), deadline = #{deadline}, product_sn = #{productSn}, dangerous_flag = #{dangerousFlag}, control_products = #{controlProducts} - ,product_home=#{productHome},type=#{type} + ,product_home=#{productHome},type=#{type},density = #{density} where id=#{id} </update> @@ -486,8 +487,14 @@ set safetynum = #{safetynum} where id = #{id} </update> + <update id="updateSysReagentPriceById"> + update sys_reagent + set price = #{price} + where id = #{reagentId} - <select id="countReagentByDetail" resultMap="SysReagent"> + </update> + + <select id="countReagentByDetail" resultMap="SysReagent"> select * from sys_reagent as sr diff --git a/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java b/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java index 45bb3f4..7bab2a0 100644 --- a/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java +++ b/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java @@ -26,6 +26,8 @@ private BigDecimal remainder; private String place; private StoreType storeType; + // 体积 + private BigDecimal volume; private SysReagent reagent; private String userName; @@ -287,4 +289,12 @@ public void setNote(String note) { this.note = note; } + + public BigDecimal getVolume() { + return volume; + } + + public void setVolume(BigDecimal volume) { + this.volume = volume; + } } diff --git a/src/main/java/com/nanometer/smartlab/entity/SysReagent.java b/src/main/java/com/nanometer/smartlab/entity/SysReagent.java index e5936d1..860b4fb 100644 --- a/src/main/java/com/nanometer/smartlab/entity/SysReagent.java +++ b/src/main/java/com/nanometer/smartlab/entity/SysReagent.java @@ -51,6 +51,9 @@ private ValidFlag supplierFlag; + private BigDecimal density; + + public void change(){ if("1".equals(favor)){ favor = "2"; @@ -323,4 +326,12 @@ public void setSupplierFlag(ValidFlag supplierFlag) { this.supplierFlag = supplierFlag; } + + public BigDecimal getDensity() { + return density; + } + + public void setDensity(BigDecimal density) { + this.density = density; + } } diff --git a/src/main/java/com/nanometer/smartlab/service/SysReagentService.java b/src/main/java/com/nanometer/smartlab/service/SysReagentService.java index 251ba7f..206a80a 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysReagentService.java +++ b/src/main/java/com/nanometer/smartlab/service/SysReagentService.java @@ -3,6 +3,7 @@ import com.nanometer.smartlab.entity.SysReagent; import com.nanometer.smartlab.entity.SysUser; +import java.math.BigDecimal; import java.util.List; import java.util.Map; @@ -56,4 +57,6 @@ boolean export2Excel(List<Map> list, Integer type) throws Exception; List<Map> selectAll(String name, String cas, String supplierId, Integer type, String productSn); + + void updateSysReagentPrice(String reagentId, BigDecimal applyPrice); } diff --git a/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java index eb22dbe..5279a64 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysReagentServiceImpl.java @@ -22,6 +22,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; import java.util.*; /** @@ -239,6 +240,11 @@ return sysReagentDao.selectAll(params); } + @Override + public void updateSysReagentPrice(String reagentId, BigDecimal applyPrice) { + sysReagentDao.updateSysReagentPriceById(reagentId, applyPrice); + } + @Transactional(propagation = Propagation.REQUIRED) public int getSysReagentTotalCount(String name, String cas, String supplierId,Integer type) { diff --git a/src/main/webapp/reagent_mng.xhtml b/src/main/webapp/reagent_mng.xhtml index 01a8c83..c7f94c7 100644 --- a/src/main/webapp/reagent_mng.xhtml +++ b/src/main/webapp/reagent_mng.xhtml @@ -129,6 +129,10 @@ <p:column headerText="含税售价"> <h:outputText value="#{row.price}"></h:outputText> </p:column> + + <p:column headerText="密度g/ml" rendered="#{reagentMngController.type == 1}"> + <h:outputText value="#{row.density}" decimalPlaces="4" minValue="0" maxlength="6" ></h:outputText> + </p:column> <!--<p:column headerText="每箱数量"> <h:outputText value="#{row.perBox}"></h:outputText> </p:column> @@ -457,6 +461,17 @@ var="item" itemLabel="#{item.metaValue}" itemValue="#{item.id}"></f:selectItems> </p:selectOneMenu>--> </p:row> + + <p:row rendered="#{reagentMngController.action == constants.ACTION_ADD or reagentMngController.sysReagent.type == 1}"> + <p:column> + <p:outputLabel value="密度g/ml"/> + </p:column> + <p:column> + <p:inputNumber value="#{reagentMngController.sysReagent.density}" + decimalPlaces="4" minValue="0" maxlength="6" + /> + </p:column> + </p:row> <!--<p:row> <p:column> <p:outputLabel value="种类"></p:outputLabel> -- Gitblit v1.9.2