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