igds-core/src/main/java/com/ld/igds/check/mapper/CheckStandardMapper.java
@@ -3,6 +3,7 @@ import com.ld.igds.check.dto.CheckItemData; import com.ld.igds.check.dto.CheckStandardData; import org.apache.ibatis.annotations.Param; import java.util.List; /** @@ -27,6 +28,7 @@ /** * 根据化验结果更新值,如果已经有值则不更新,避免覆盖人工录入信息 * * @param item * @return */ @@ -41,6 +43,7 @@ */ List<CheckItemData> getCheckItemById(@Param("checkId") String checkId, @Param("companyId") String companyId); /** * 获取配置的化验项信息 * @@ -51,4 +54,12 @@ List<CheckStandardData> getCheckStandard(@Param("companyId") String companyId, @Param("foodVariety") String foodVariety); /** * 根据条件删除化验项 * * @param item * @return */ int delCheckItemByParam(@Param("data") CheckItemData item); } igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java
@@ -3,6 +3,7 @@ import com.bstek.bdf2.core.orm.hibernate.HibernateDao; import com.bstek.dorado.data.entity.EntityUtils; import com.bstek.dorado.data.provider.Page; import com.ld.igds.check.dto.CheckItemData; import com.ld.igds.check.mapper.CheckStandardMapper; import com.ld.igds.constant.RedisConst; import com.ld.igds.models.MQuality; @@ -15,10 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.*; /** * @author chen @@ -128,6 +126,19 @@ if (null == data.getDeptId()) { data.setDeptId(ContextUtil.subDeptId(null)); } if (null != data.getZblb() || "" != data.getZblb()) { String[] str = data.getZblb().split("#"); //防止在更新操作时再次存入相同的数据 Set<String> metrics = new HashSet<>(); for (int i = 0; i < str.length; i++) { metrics.add(str[i].substring(0, 1)); } String value = ""; for (String s : metrics) { value = value + s + "#"; } data.setZblb(value.substring(0, value.length() - 1)); } Session session = this.getSessionFactory().openSession(); data.setUpdateTime(new Date()); try { @@ -160,6 +171,10 @@ try { if (null != data.getId()) { session.delete(data); CheckItemData checkItemData = new CheckItemData(); checkItemData.setCompanyId(ContextUtil.getCompanyId()); checkItemData.setCheckId(data.getId()); checkStandardMapper.delCheckItemByParam(checkItemData); redisUtil.del(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, data.getDepotId())); } } catch (Exception e) { igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml
@@ -135,6 +135,46 @@ <PropertyDef name="remark"> <Property name="label">备注信息</Property> </PropertyDef> <PropertyDef name="storeDate"> <Property name="dataType">Date</Property> <Property name="label">入库日期</Property> </PropertyDef> <PropertyDef name="unit"> <Property/> <Property name="label">检验单位</Property> </PropertyDef> <PropertyDef name="zblb"> <Property/> <Property name="label">指标类别</Property> </PropertyDef> <PropertyDef name="qfrq"> <Property name="dataType">Date</Property> <Property name="label">签发日期</Property> </PropertyDef> <PropertyDef name="bgcjsj"> <Property name="dataType">Date</Property> <Property name="label">报告出具时间</Property> </PropertyDef> <PropertyDef name="shrxm"> <Property/> <Property name="label">审核人姓名</Property> </PropertyDef> <PropertyDef name="qydbh"> <Property/> <Property name="label">扦样单编号</Property> </PropertyDef> <PropertyDef name="jdrxm"> <Property/> <Property name="label">监督人姓名</Property> </PropertyDef> <PropertyDef name="ypbh"> <Property/> <Property name="label">样品编号</Property> </PropertyDef> <PropertyDef name="updateTime"> <Property name="dataType">Date</Property> <Property name="label">数据更新时间</Property> </PropertyDef> <Reference name="checkItems"> <Property name="dataProvider">checkStandardPR#listCheckItemsByParam</Property> <Property name="dataType">[dtCheckItems]</Property> @@ -211,10 +251,10 @@ <Property name="label">化验结果</Property> </PropertyDef> <PropertyDef name="operaSymbolValue"> <Property/> <Property></Property> </PropertyDef> <PropertyDef name="operaSymbol"> <Property/> <Property></Property> <Property name="label">运算符号</Property> </PropertyDef> <PropertyDef name="ruleNum"> @@ -258,7 +298,7 @@ <Property name="label">扣价</Property> </PropertyDef> <PropertyDef name="result"> <Property/> <Property></Property> <Property name="label">检验结果</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("inoutDataPR#triggerResult").getResult()}</Property> @@ -396,6 +436,13 @@ <Property name="dataType">String</Property> </PropertyDef> </DataType> <DataType name="dtMetrics"> <PropertyDef name="code"/> <PropertyDef name="name"/> </DataType> <DataType name="dtResult"> <PropertyDef name="name"/> </DataType> </Model> <View layout="padding:5;regionPadding:5"> <ClientEvent name="onReady">var deptId = window.parent.DEPT_ID;//父页面中的分库编码
 @@ -436,6 +483,38 @@ <Property name="dataType">[dataTypeUser]</Property> <Property name="pageSize">100</Property> <Property name="dataProvider">bdf2.userMaintain#loadUsers</Property> </DataSet> <DataSet id="dsMetrics"> <ClientEvent name="onCreate">var data = [ {
 name : "1:质量指标检验"
 }, {
 name : "2:储存品质检验"
 }, {
 name : "3:食品安全检验"
 }]
 self.setData(data);
 </ClientEvent> <Property name="dataType">[dtMetrics]</Property> </DataSet> <DataSet id="dsResult"> <ClientEvent name="onCreate">var data = [ {
 name : "达标"
 }, {
 name : "不达标"
 }, {
 name : "宜存"
 },{
 name : "轻度不宜存"
 },{
 name : "重度不宜存"
 }, {
 name : "合格"
 }, {
 name : "不合格"
 }]
 self.setData(data);
 </ClientEvent> <Property name="dataType">[dtResult]</Property> </DataSet> <Container layout="regionPadding:10" layoutConstraint="top"> <Property name="exClassName">bg-color</Property> @@ -556,11 +635,6 @@ <Property name="name">foodVariety</Property> </DataColumn> <DataColumn> <Property name="property">foodType</Property> <Property name="align">center</Property> <Property name="name">foodType</Property> </DataColumn> <DataColumn> <Property name="property">foodLevel</Property> <Property name="align">center</Property> <Property name="name">foodLevel</Property> @@ -673,8 +747,8 @@ <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodType</Property> <Property name="property">foodType</Property> <Property name="name">foodLevel</Property> <Property name="property">foodLevel</Property> <Editor/> </AutoFormElement> <AutoFormElement> @@ -689,8 +763,8 @@ <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodLevel</Property> <Property name="property">foodLevel</Property> <Property name="name">unit</Property> <Property name="property">unit</Property> <Editor/> </AutoFormElement> <AutoFormElement> @@ -704,9 +778,8 @@ <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodLocation</Property> <Property name="property">foodLocation</Property> <Property name="trigger">ddFoodOrigin</Property> <Property name="name">shrxm</Property> <Property name="property">shrxm</Property> <Editor/> </AutoFormElement> <AutoFormElement> @@ -736,10 +809,33 @@ </Editor> </AutoFormElement> <AutoFormElement layoutConstraint="colSpan:2"> <Property name="name">zblb</Property> <Property name="property">zblb</Property> <Editor> <TagEditor> <Property name="textSeperator">#</Property> <Property name="availableTagsDataSet">dsMetrics</Property> <Property name="availableTagsDataPath">.name</Property> </TagEditor> </Editor> </AutoFormElement> <AutoFormElement layoutConstraint="colSpan:1"> <Property name="name">result</Property> <Property name="property">result</Property> <Editor/> <Editor> <TagEditor> <Property name="availableTagsDataPath">.name</Property> <Property name="availableTagsDataSet">dsResult</Property> <Property name="textSeperator">#</Property> </TagEditor> </Editor> </AutoFormElement> <Label layoutConstraint="colSpan:2"> <Property name="text">说明:多项指标时按照1:质量指标检验(达标,不达标)、2:储存品质检验(宜存,不宜存)、3:食品安全检验(合格,不合格)这个顺序填写检验结论</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement layoutConstraint="colSpan:3"> <Property name="name">remark</Property> <Property name="property">remark</Property> igds-core/src/main/java/com/ld/igds/m/view/QualityManagerPR.java
@@ -12,6 +12,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -20,7 +21,6 @@ * 质量追溯管理 * * @author: chen * */ @Component public class QualityManagerPR { @@ -32,23 +32,36 @@ /** * 检验类别 * * <p> * ${dorado.getDataProvider("qualityManagerPR#triggerType").getResult()} * * @return */ // @DataProvider // public List<DicTrigger> triggerType() { // List<DicTrigger> list = new ArrayList<DicTrigger>(); // list.add(new DicTrigger("01", "满仓初检")); // list.add(new DicTrigger("02", "出仓检验")); // list.add(new DicTrigger("03", "月度普检")); // return list; // } @DataProvider public List<DicTrigger> triggerType() { List<DicTrigger> list = new ArrayList<DicTrigger>(); list.add(new DicTrigger("01", "满仓初检")); list.add(new DicTrigger("01", "入仓验收")); list.add(new DicTrigger("02", "出仓检验")); list.add(new DicTrigger("03", "月度普检")); list.add(new DicTrigger("03", "3月末普检")); list.add(new DicTrigger("04", "9月末普检")); list.add(new DicTrigger("05", "入库初检")); list.add(new DicTrigger("06", "月度检查")); list.add(new DicTrigger("07", "3月末库内普查")); list.add(new DicTrigger("08", "9月末库内普查")); return list; } /** * 检验依据 * * 指标类别 * <p> * ${dorado.getDataProvider("qualityManagerPR#triggerStandard").getResult()} * * @return @@ -64,8 +77,26 @@ } /** * 分页获取质量巡检记录信息 * 检验依据 * <p> * ${dorado.getDataProvider("qualityManagerPR#triggerMetrics").getResult()} * * @return */ @DataProvider public List<DicTrigger> triggerMetrics() { List<DicTrigger> list = new ArrayList<DicTrigger>(); list.add(new DicTrigger("1", "质量指标检验")); list.add(new DicTrigger("2", "储存品质检验")); list.add(new DicTrigger("3", "食品安全检验")); return list; } /** * 分页获取质量巡检记录信息 * <p> * qualityManagerPR#listQuality * * @param page igds-core/src/main/resources/mapper/CheckStandardMapper.xml
@@ -7,9 +7,7 @@ <!--新增化验数据 --> <insert id="insertCheckItem" parameterType="com.ld.igds.check.dto.CheckItemData"> insert into D_CHECK_ITEM( COMPANY_ID_, insert into D_CHECK_ITEM(COMPANY_ID_, CHECK_ID_, STANDARD_ID_, STANDARD_NAME_, @@ -28,9 +26,8 @@ ADD_PRICE_, DE_PRICE_, RESULT_, REMARKS_ )values ( #{data.companyId}, REMARKS_) values (#{data.companyId}, #{data.checkId}, #{data.standardId}, #{data.standardName}, @@ -49,15 +46,15 @@ #{data.addPrice}, #{data.dePrice}, #{data.result}, #{data.remarks} ) #{data.remarks}) </insert> <!--更新化验项数据 --> <update id="updateCheckItem" parameterType="com.ld.igds.check.dto.CheckItemData"> update D_CHECK_ITEM <set> <if test="data.standardName != null and data.standardName != '' ">STANDARD_NAME_ = #{data.standardName},</if> <if test="data.standardName != null and data.standardName != '' ">STANDARD_NAME_ = #{data.standardName}, </if> <if test="data.upperLimit != null and data.upperLimit != '' ">UPPER_LIMIT_ = #{data.upperLimit},</if> <if test="data.unit != null and data.unit != '' ">UNIT_ = #{data.unit},</if> <if test="data.value != null and data.value != '' ">VALUE_ = #{data.value},</if> @@ -92,12 +89,20 @@ </where> AND VALUE_ IS NULL </update> <!-- 根据条件删除化验项--> <delete id="delCheckItemByParam" parameterType="com.ld.igds.check.dto.CheckItemData"> DELETE FROM D_CHECK_ITEM <where> <if test="data.companyId != null and data.companyId != '' ">COMPANY_ID_= #{data.companyId}</if> <if test="data.checkId != null and data.checkId != '' ">AND CHECK_ID_ = #{data.checkId}</if> </where> </delete> <!-- 根据checkId获取检测结果 --> <select id="getCheckItemById" parameterType="java.lang.String" resultType="com.ld.igds.check.dto.CheckItemData"> select CHECK_ID_ as checkId, select CHECK_ID_ as checkId, COMPANY_ID_ as companyId, STANDARD_ID_ as standardId, STANDARD_NAME_ as standardName, @@ -127,8 +132,7 @@ <!-- 根据粮食品种获取配的化验信息 --> <select id="getCheckStandard" parameterType="java.lang.String" resultType="com.ld.igds.check.dto.CheckStandardData"> select ID_ as id, select ID_ as id, COMPANY_ID_ as companyId, FOOD_VARIETY_ as foodVariety, STANDARD_ID_ as standardId, @@ -145,8 +149,7 @@ UPDATE_TIME_ as updateTime, REMARKS_ as remarks FROM D_CHECK_STANDARD WHERE COMPANY_ID_ = #{companyId} WHERE COMPANY_ID_ = #{companyId} AND FOOD_VARIETY_ = #{foodVariety} ORDER by STANDARD_ID_ + 0 </select>