dengyj 3 anos atrás
pai
commit
75cb08087c
31 arquivos alterados com 975 adições e 276 exclusões
  1. 3 3
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/controller/MeterBaseHisTareDataController.java
  2. 6 1
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/mapper/MeterBaseHisTareDataMapper.java
  3. 270 174
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/mapper/MeterBaseHisTareDataMapper.xml
  4. 16 2
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/model/MeterBaseHisTareData.java
  5. 6 1
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/service/IMeterBaseHisTareDataService.java
  6. 11 0
      src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/service/impl/MeterBaseHisTareDataServiceImpl.java
  7. 33 0
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayaiweight/service/impl/MeterBaseRailwayAiweightServiceImpl.java
  8. 4 4
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/controller/MeterBaseRailwayHisTareDataController.java
  9. 6 1
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/mapper/MeterBaseRailwayHisTareDataMapper.java
  10. 70 0
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/mapper/MeterBaseRailwayHisTareDataMapper.xml
  11. 6 1
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/service/IMeterBaseRailwayHisTareDataService.java
  12. 10 0
      src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/service/impl/MeterBaseRailwayHisTareDataServiceImpl.java
  13. 1 0
      src/main/java/com/steerinfo/filter/SecurityFilter.java
  14. 5 2
      src/main/java/com/steerinfo/meterwork/meterworkcaractual/service/impl/MeterWorkCarActualServiceImpl.java
  15. 7 0
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/IMeterWorkCarActualFirstService.java
  16. 74 2
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java
  17. 1 1
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/controller/MeterWorkCheckFirstActualController.java
  18. 13 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/controller/MeterWorkDataCountController.java
  19. 1 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/mapper/MeterWorkDataCountMapper.java
  20. 23 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/mapper/MeterWorkDataCountMapper.xml
  21. 37 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/model/RailwayActualGrossWeightComparison.java
  22. 1 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/service/IMeterWorkDataCountService.java
  23. 36 1
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/service/impl/MeterWorkDataCountServiceImpl.java
  24. 34 6
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java
  25. 20 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/controller/MeterWorkRailwayActFirstBakController.java
  26. 2 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/service/IMeterWorkRailwayActFirstBakService.java
  27. 56 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/service/impl/MeterWorkRailwayActFirstBakServiceImpl.java
  28. 6 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/service/impl/MeterWorkRailwayActualServiceImpl.java
  29. 21 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/controller/MeterWorkRailwayActualBakController.java
  30. 2 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/service/IMeterWorkRailwayActualBakService.java
  31. 194 77
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/service/impl/MeterWorkRailwayActualBakServiceImpl.java

+ 3 - 3
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/controller/MeterBaseHisTareDataController.java

@@ -66,10 +66,10 @@ throw new MarkerMetException(500, "操作异常!!");
             @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
     })
     //@RequiresPermissions("meterbasehistaredata:view")
-    @GetMapping(value = "/like/")
-    public RESTfulResult listLike(@RequestParam HashMap parmas, Integer pageNum, Integer pageSize) {
+    @PostMapping(value = "/like/")
+    public RESTfulResult listLike(@RequestBody(required = false) HashMap params) {
         try {
-            PageList<MeterBaseHisTareData> list = meterBaseHisTareDataService.queryLikeForPage(parmas, pageNum, pageSize);
+            PageList<MeterBaseHisTareData> list = meterBaseHisTareDataService.getList(params);
             return success(list);
         } catch (Exception ex) {
            ex.printStackTrace();

+ 6 - 1
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/mapper/MeterBaseHisTareDataMapper.java

@@ -5,7 +5,12 @@ import com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.HashMap;
+import java.util.List;
+
 @Mapper
 public interface MeterBaseHisTareDataMapper extends IBaseMapper<MeterBaseHisTareData, String> {
     String getNewID(@Param(value="afl")String afl);
-}
+
+    List<MeterBaseHisTareData> getList(HashMap parmas);
+}

+ 270 - 174
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/mapper/MeterBaseHisTareDataMapper.xml

@@ -20,17 +20,18 @@
     <result column="UPDATE_MAN_NAME" jdbcType="VARCHAR" property="updateManName" />
     <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
     <result column="NOTE" jdbcType="VARCHAR" property="note" />
+    <result column="TARE_TYPE" jdbcType="VARCHAR" property="tareType" />
   </resultMap>
   <sql id="columns">
-    DATA_NO, BASE_SPOT_NO, BASE_SPOT_NAME, CAR_NO, METER_WEIGHT, METER_NAME, METER_TIME, 
-    UP_WEIGHT, AVG_WEIGHT, METER_NUM, VALUE_FLAG, CREATE_MAN_NO, CREATE_MAN_NAME, CREATE_TIME, 
-    UPDATE_MAN_NO, UPDATE_MAN_NAME, UPDATE_TIME, NOTE
+    DATA_NO, BASE_SPOT_NO, BASE_SPOT_NAME, CAR_NO, METER_WEIGHT, METER_NAME, METER_TIME,
+    UP_WEIGHT, AVG_WEIGHT, METER_NUM, VALUE_FLAG, CREATE_MAN_NO, CREATE_MAN_NAME, CREATE_TIME,
+    UPDATE_MAN_NO, UPDATE_MAN_NAME, UPDATE_TIME, NOTE, TARE_TYPE
   </sql>
   <sql id="columns_alias">
-    t.DATA_NO, t.BASE_SPOT_NO, t.BASE_SPOT_NAME, t.CAR_NO, t.METER_WEIGHT, t.METER_NAME, 
-    t.METER_TIME, t.UP_WEIGHT, t.AVG_WEIGHT, t.METER_NUM, t.VALUE_FLAG, t.CREATE_MAN_NO, 
-    t.CREATE_MAN_NAME, t.CREATE_TIME, t.UPDATE_MAN_NO, t.UPDATE_MAN_NAME, t.UPDATE_TIME, 
-    t.NOTE
+    t.DATA_NO, t.BASE_SPOT_NO, t.BASE_SPOT_NAME, t.CAR_NO, t.METER_WEIGHT, t.METER_NAME,
+    t.METER_TIME, t.UP_WEIGHT, t.AVG_WEIGHT, t.METER_NUM, t.VALUE_FLAG, t.CREATE_MAN_NO,
+    t.CREATE_MAN_NAME, t.CREATE_TIME, t.UPDATE_MAN_NO, t.UPDATE_MAN_NAME, t.UPDATE_TIME,
+    t.NOTE, t.TARE_TYPE
   </sql>
   <sql id="select">
     SELECT <include refid="columns" /> FROM METER_BASE_HIS_TARE_DATA
@@ -39,7 +40,7 @@
     SELECT <include refid="columns_alias" /> FROM METER_BASE_HIS_TARE_DATA t
   </sql>
   <sql id="where">
-    <where> 
+    <where>
       <if test="dataNo != null and dataNo != ''">
         and DATA_NO = #{dataNo}
       </if>
@@ -94,10 +95,13 @@
       <if test="note != null and note != ''">
         and NOTE = #{note}
       </if>
+      <if test="tareType != null and tareType != ''">
+        and TARE_TYPE = #{tareType}
+      </if>
     </where>
   </sql>
   <sql id="whereLike">
-    <where> 
+    <where>
       <if test="dataNo != null and dataNo != ''">
         and DATA_NO LIKE '%${dataNo}%'
       </if>
@@ -152,6 +156,9 @@
       <if test="note != null and note != ''">
         and NOTE LIKE '%${note}%'
       </if>
+      <if test="tareType != null and tareType != ''">
+        and TARE_TYPE LIKE '%${tareType}%'
+      </if>
     </where>
   </sql>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
@@ -160,74 +167,77 @@
   </delete>
   <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
     delete from METER_BASE_HIS_TARE_DATA
-    where 1!=1 
-      <if test="baseSpotNo != null and baseSpotNo != ''">
-        or BASE_SPOT_NO = #{baseSpotNo}
-      </if>
-      <if test="baseSpotName != null and baseSpotName != ''">
-        or BASE_SPOT_NAME = #{baseSpotName}
-      </if>
-      <if test="carNo != null and carNo != ''">
-        or CAR_NO = #{carNo}
-      </if>
-      <if test="meterWeight != null">
-        or METER_WEIGHT = #{meterWeight}
-      </if>
-      <if test="meterName != null and meterName != ''">
-        or METER_NAME = #{meterName}
-      </if>
-      <if test="meterTime != null">
-        or TO_CHAR(METER_TIME,'yyyy-MM-dd') = '#{meterTime}'
-      </if>
-      <if test="upWeight != null">
-        or UP_WEIGHT = #{upWeight}
-      </if>
-      <if test="avgWeight != null">
-        or AVG_WEIGHT = #{avgWeight}
-      </if>
-      <if test="meterNum != null">
-        or METER_NUM = #{meterNum}
-      </if>
-      <if test="valueFlag != null and valueFlag != ''">
-        or VALUE_FLAG = #{valueFlag}
-      </if>
-      <if test="createManNo != null and createManNo != ''">
-        or CREATE_MAN_NO = #{createManNo}
-      </if>
-      <if test="createManName != null and createManName != ''">
-        or CREATE_MAN_NAME = #{createManName}
-      </if>
-      <if test="createTime != null">
-        or TO_CHAR(CREATE_TIME,'yyyy-MM-dd') = '#{createTime}'
-      </if>
-      <if test="updateManNo != null and updateManNo != ''">
-        or UPDATE_MAN_NO = #{updateManNo}
-      </if>
-      <if test="updateManName != null and updateManName != ''">
-        or UPDATE_MAN_NAME = #{updateManName}
-      </if>
-      <if test="updateTime != null">
-        or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
-      </if>
-      <if test="note != null and note != ''">
-        or NOTE = #{note}
-      </if>
+    where 1!=1
+    <if test="baseSpotNo != null and baseSpotNo != ''">
+      or BASE_SPOT_NO = #{baseSpotNo}
+    </if>
+    <if test="baseSpotName != null and baseSpotName != ''">
+      or BASE_SPOT_NAME = #{baseSpotName}
+    </if>
+    <if test="carNo != null and carNo != ''">
+      or CAR_NO = #{carNo}
+    </if>
+    <if test="meterWeight != null">
+      or METER_WEIGHT = #{meterWeight}
+    </if>
+    <if test="meterName != null and meterName != ''">
+      or METER_NAME = #{meterName}
+    </if>
+    <if test="meterTime != null">
+      or TO_CHAR(METER_TIME,'yyyy-MM-dd') = '#{meterTime}'
+    </if>
+    <if test="upWeight != null">
+      or UP_WEIGHT = #{upWeight}
+    </if>
+    <if test="avgWeight != null">
+      or AVG_WEIGHT = #{avgWeight}
+    </if>
+    <if test="meterNum != null">
+      or METER_NUM = #{meterNum}
+    </if>
+    <if test="valueFlag != null and valueFlag != ''">
+      or VALUE_FLAG = #{valueFlag}
+    </if>
+    <if test="createManNo != null and createManNo != ''">
+      or CREATE_MAN_NO = #{createManNo}
+    </if>
+    <if test="createManName != null and createManName != ''">
+      or CREATE_MAN_NAME = #{createManName}
+    </if>
+    <if test="createTime != null">
+      or TO_CHAR(CREATE_TIME,'yyyy-MM-dd') = '#{createTime}'
+    </if>
+    <if test="updateManNo != null and updateManNo != ''">
+      or UPDATE_MAN_NO = #{updateManNo}
+    </if>
+    <if test="updateManName != null and updateManName != ''">
+      or UPDATE_MAN_NAME = #{updateManName}
+    </if>
+    <if test="updateTime != null">
+      or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
+    </if>
+    <if test="note != null and note != ''">
+      or NOTE = #{note}
+    </if>
+    <if test="tareType != null and tareType != ''">
+      or TARE_TYPE = #{tareType}
+    </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData">
-    insert into METER_BASE_HIS_TARE_DATA (DATA_NO, BASE_SPOT_NO, BASE_SPOT_NAME, 
-      CAR_NO, METER_WEIGHT, METER_NAME, 
-      METER_TIME, UP_WEIGHT, AVG_WEIGHT, 
-      METER_NUM, VALUE_FLAG, CREATE_MAN_NO, 
-      CREATE_MAN_NAME, CREATE_TIME, UPDATE_MAN_NO, 
-      UPDATE_MAN_NAME, UPDATE_TIME, NOTE
-      )
-    values (#{dataNo,jdbcType=VARCHAR}, #{baseSpotNo,jdbcType=VARCHAR}, #{baseSpotName,jdbcType=VARCHAR}, 
-      #{carNo,jdbcType=VARCHAR}, #{meterWeight,jdbcType=DECIMAL}, #{meterName,jdbcType=VARCHAR}, 
-      #{meterTime,jdbcType=TIMESTAMP}, #{upWeight,jdbcType=DECIMAL}, #{avgWeight,jdbcType=DECIMAL}, 
-      #{meterNum,jdbcType=DECIMAL}, #{valueFlag,jdbcType=VARCHAR}, #{createManNo,jdbcType=VARCHAR}, 
-      #{createManName,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateManNo,jdbcType=VARCHAR}, 
-      #{updateManName,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{note,jdbcType=VARCHAR}
-      )
+    insert into METER_BASE_HIS_TARE_DATA (DATA_NO, BASE_SPOT_NO, BASE_SPOT_NAME,
+      CAR_NO, METER_WEIGHT, METER_NAME,
+      METER_TIME, UP_WEIGHT, AVG_WEIGHT,
+      METER_NUM, VALUE_FLAG, CREATE_MAN_NO,
+      CREATE_MAN_NAME, CREATE_TIME, UPDATE_MAN_NO,
+      UPDATE_MAN_NAME, UPDATE_TIME, NOTE,
+      TARE_TYPE)
+    values (#{dataNo,jdbcType=VARCHAR}, #{baseSpotNo,jdbcType=VARCHAR}, #{baseSpotName,jdbcType=VARCHAR},
+      #{carNo,jdbcType=VARCHAR}, #{meterWeight,jdbcType=DECIMAL}, #{meterName,jdbcType=VARCHAR},
+      #{meterTime,jdbcType=TIMESTAMP}, #{upWeight,jdbcType=DECIMAL}, #{avgWeight,jdbcType=DECIMAL},
+      #{meterNum,jdbcType=DECIMAL}, #{valueFlag,jdbcType=VARCHAR}, #{createManNo,jdbcType=VARCHAR},
+      #{createManName,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateManNo,jdbcType=VARCHAR},
+      #{updateManName,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{note,jdbcType=VARCHAR},
+      #{tareType,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData">
     insert into METER_BASE_HIS_TARE_DATA
@@ -286,6 +296,9 @@
       <if test="note != null">
         NOTE,
       </if>
+      <if test="tareType != null">
+        TARE_TYPE,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="dataNo != null">
@@ -342,6 +355,9 @@
       <if test="note != null">
         #{note,jdbcType=VARCHAR},
       </if>
+      <if test="tareType != null">
+        #{tareType,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKey" parameterType="com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData">
@@ -362,7 +378,8 @@
       UPDATE_MAN_NO = #{updateManNo,jdbcType=VARCHAR},
       UPDATE_MAN_NAME = #{updateManName,jdbcType=VARCHAR},
       UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
-      NOTE = #{note,jdbcType=VARCHAR}
+      NOTE = #{note,jdbcType=VARCHAR},
+      TARE_TYPE = #{tareType,jdbcType=VARCHAR}
     where DATA_NO = #{dataNo,jdbcType=VARCHAR}
   </update>
   <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData">
@@ -419,6 +436,9 @@
       <if test="note != null">
         NOTE = #{note,jdbcType=VARCHAR},
       </if>
+      <if test="tareType != null">
+        TARE_TYPE = #{tareType,jdbcType=VARCHAR},
+      </if>
     </set>
     where DATA_NO = #{dataNo,jdbcType=VARCHAR}
   </update>
@@ -435,116 +455,192 @@
     <include refid="whereLike" />
   </select>
   <insert id="batchInsert" parameterType="java.util.List">
-    insert into METER_BASE_HIS_TARE_DATA 
-      (DATA_NO, 
-      BASE_SPOT_NO, BASE_SPOT_NAME, CAR_NO, 
-      METER_WEIGHT, METER_NAME, METER_TIME, 
-      UP_WEIGHT, AVG_WEIGHT, METER_NUM, 
-      VALUE_FLAG, CREATE_MAN_NO, CREATE_MAN_NAME, 
-      CREATE_TIME, UPDATE_MAN_NO, UPDATE_MAN_NAME, 
-      UPDATE_TIME, NOTE)
-    ( <foreach collection="list" item="item" separator="union all"> 
-   select  
-      #{item.dataNo,jdbcType=VARCHAR}, 
-      #{item.baseSpotNo,jdbcType=VARCHAR}, #{item.baseSpotName,jdbcType=VARCHAR}, #{item.carNo,jdbcType=VARCHAR}, 
-      #{item.meterWeight,jdbcType=DECIMAL}, #{item.meterName,jdbcType=VARCHAR}, #{item.meterTime,jdbcType=TIMESTAMP}, 
-      #{item.upWeight,jdbcType=DECIMAL}, #{item.avgWeight,jdbcType=DECIMAL}, #{item.meterNum,jdbcType=DECIMAL}, 
-      #{item.valueFlag,jdbcType=VARCHAR}, #{item.createManNo,jdbcType=VARCHAR}, #{item.createManName,jdbcType=VARCHAR}, 
-      #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateManNo,jdbcType=VARCHAR}, #{item.updateManName,jdbcType=VARCHAR}, 
-      #{item.updateTime,jdbcType=TIMESTAMP}, #{item.note,jdbcType=VARCHAR} from dual  
-   </foreach> )
+    insert into METER_BASE_HIS_TARE_DATA
+    (DATA_NO,
+    BASE_SPOT_NO, BASE_SPOT_NAME, CAR_NO,
+    METER_WEIGHT, METER_NAME, METER_TIME,
+    UP_WEIGHT, AVG_WEIGHT, METER_NUM,
+    VALUE_FLAG, CREATE_MAN_NO, CREATE_MAN_NAME,
+    CREATE_TIME, UPDATE_MAN_NO, UPDATE_MAN_NAME,
+    UPDATE_TIME, NOTE, TARE_TYPE
+    )
+    ( <foreach collection="list" item="item" separator="union all">
+    select
+    #{item.dataNo,jdbcType=VARCHAR},
+    #{item.baseSpotNo,jdbcType=VARCHAR}, #{item.baseSpotName,jdbcType=VARCHAR}, #{item.carNo,jdbcType=VARCHAR},
+    #{item.meterWeight,jdbcType=DECIMAL}, #{item.meterName,jdbcType=VARCHAR}, #{item.meterTime,jdbcType=TIMESTAMP},
+    #{item.upWeight,jdbcType=DECIMAL}, #{item.avgWeight,jdbcType=DECIMAL}, #{item.meterNum,jdbcType=DECIMAL},
+    #{item.valueFlag,jdbcType=VARCHAR}, #{item.createManNo,jdbcType=VARCHAR}, #{item.createManName,jdbcType=VARCHAR},
+    #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateManNo,jdbcType=VARCHAR}, #{item.updateManName,jdbcType=VARCHAR},
+    #{item.updateTime,jdbcType=TIMESTAMP}, #{item.note,jdbcType=VARCHAR}, #{item.tareType,jdbcType=VARCHAR}
+    from dual
+  </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
-     update METER_BASE_HIS_TARE_DATA
-     set
-       DATA_NO=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.dataNo,jdbcType=VARCHAR}
-       </foreach>
-       ,BASE_SPOT_NO=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.baseSpotNo,jdbcType=VARCHAR}
-       </foreach>
-       ,BASE_SPOT_NAME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.baseSpotName,jdbcType=VARCHAR}
-       </foreach>
-       ,CAR_NO=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.carNo,jdbcType=VARCHAR}
-       </foreach>
-       ,METER_WEIGHT=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterWeight,jdbcType=DECIMAL}
-       </foreach>
-       ,METER_NAME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterName,jdbcType=VARCHAR}
-       </foreach>
-       ,METER_TIME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterTime,jdbcType=TIMESTAMP}
-       </foreach>
-       ,UP_WEIGHT=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.upWeight,jdbcType=DECIMAL}
-       </foreach>
-       ,AVG_WEIGHT=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.avgWeight,jdbcType=DECIMAL}
-       </foreach>
-       ,METER_NUM=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterNum,jdbcType=DECIMAL}
-       </foreach>
-       ,VALUE_FLAG=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.valueFlag,jdbcType=VARCHAR}
-       </foreach>
-       ,CREATE_MAN_NO=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.createManNo,jdbcType=VARCHAR}
-       </foreach>
-       ,CREATE_MAN_NAME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.createManName,jdbcType=VARCHAR}
-       </foreach>
-       ,CREATE_TIME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP}
-       </foreach>
-       ,UPDATE_MAN_NO=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateManNo,jdbcType=VARCHAR}
-       </foreach>
-       ,UPDATE_MAN_NAME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateManName,jdbcType=VARCHAR}
-       </foreach>
-       ,UPDATE_TIME=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP}
-       </foreach>
-       ,NOTE=
-       <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
-          when #{item.dataNo,jdbcType=VARCHAR} then #{item.note,jdbcType=VARCHAR}
-       </foreach>
-     where DATA_NO in 
-     <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
-    #{item.dataNo,jdbcType=VARCHAR}
-     </foreach> 
+    update METER_BASE_HIS_TARE_DATA
+    set
+    DATA_NO=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.dataNo,jdbcType=VARCHAR}
+    </foreach>
+    ,BASE_SPOT_NO=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.baseSpotNo,jdbcType=VARCHAR}
+    </foreach>
+    ,BASE_SPOT_NAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.baseSpotName,jdbcType=VARCHAR}
+    </foreach>
+    ,CAR_NO=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.carNo,jdbcType=VARCHAR}
+    </foreach>
+    ,METER_WEIGHT=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterWeight,jdbcType=DECIMAL}
+    </foreach>
+    ,METER_NAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterName,jdbcType=VARCHAR}
+    </foreach>
+    ,METER_TIME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,UP_WEIGHT=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.upWeight,jdbcType=DECIMAL}
+    </foreach>
+    ,AVG_WEIGHT=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.avgWeight,jdbcType=DECIMAL}
+    </foreach>
+    ,METER_NUM=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.meterNum,jdbcType=DECIMAL}
+    </foreach>
+    ,VALUE_FLAG=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.valueFlag,jdbcType=VARCHAR}
+    </foreach>
+    ,CREATE_MAN_NO=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.createManNo,jdbcType=VARCHAR}
+    </foreach>
+    ,CREATE_MAN_NAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.createManName,jdbcType=VARCHAR}
+    </foreach>
+    ,CREATE_TIME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,UPDATE_MAN_NO=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateManNo,jdbcType=VARCHAR}
+    </foreach>
+    ,UPDATE_MAN_NAME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateManName,jdbcType=VARCHAR}
+    </foreach>
+    ,UPDATE_TIME=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP}
+    </foreach>
+    ,NOTE=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.note,jdbcType=VARCHAR}
+    </foreach>
+    ,TARE_TYPE=
+    <foreach close="end" collection="list" index="index" item="item" open="case DATA_NO" separator=" ">
+      when #{item.dataNo,jdbcType=VARCHAR} then #{item.tareType,jdbcType=VARCHAR}
+    </foreach>
+    where DATA_NO in
+    <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
+      #{item.dataNo,jdbcType=VARCHAR}
+    </foreach>
   </update>
   <delete id="batchDelete" parameterType="java.util.List">
     delete from METER_BASE_HIS_TARE_DATA
-    where DATA_NO in 
+    where DATA_NO in
     <foreach close=")" collection="list" item="id" open="(" separator=",">
       #{id}
     </foreach>
   </delete>
   <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
   <select id="getNewID" parameterType="java.lang.String" resultType="java.lang.String">
     SELECT LPAD(NVL(MAX(TO_NUMBER(SUBSTR(DATA_NO, LENGTH(DATA_NO) - 3))),0) + 1,4,'0') DATA_NO
     FROM METER_BASE_HIS_TARE_DATA where instr(DATA_NO,#{afl,jdbcType=VARCHAR})>0
   </select>
+    <select id="getList" resultMap="BaseResultMap">
+      <include refid="select_alias"></include>
+      <where>
+        <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+          and t.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and t.create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+        </if>
+
+        <if test="dataNo != null and dataNo != ''">
+          and DATA_NO = #{dataNo}
+        </if>
+        <if test="baseSpotNo != null and baseSpotNo != ''">
+          and BASE_SPOT_NO = #{baseSpotNo}
+        </if>
+        <if test="baseSpotName != null and baseSpotName.size() != 0">
+          and base_spot_name in
+          <foreach collection="baseSpotName" item="item" open="(" separator="," close=")">
+            #{item}
+          </foreach>
+        </if>
+        <if test="carNo != null and carNo != ''">
+          and CAR_NO = #{carNo}
+        </if>
+        <if test="meterWeight != null">
+          and METER_WEIGHT = #{meterWeight}
+        </if>
+        <if test="meterName != null and meterName != ''">
+          and METER_NAME = #{meterName}
+        </if>
+        <if test="meterTime != null">
+          and TO_CHAR(METER_TIME,'yyyy-MM-dd') = #{meterTime}
+        </if>
+        <if test="upWeight != null">
+          and UP_WEIGHT = #{upWeight}
+        </if>
+        <if test="avgWeight != null">
+          and AVG_WEIGHT = #{avgWeight}
+        </if>
+        <if test="meterNum != null">
+          and METER_NUM = #{meterNum}
+        </if>
+        <if test="valueFlag != null and valueFlag != ''">
+          and VALUE_FLAG = #{valueFlag}
+        </if>
+        <if test="createManNo != null and createManNo != ''">
+          and CREATE_MAN_NO = #{createManNo}
+        </if>
+        <if test="createManName != null and createManName != ''">
+          and CREATE_MAN_NAME = #{createManName}
+        </if>
+        <if test="createTime != null">
+          and TO_CHAR(CREATE_TIME,'yyyy-MM-dd') = #{createTime}
+        </if>
+        <if test="updateManNo != null and updateManNo != ''">
+          and UPDATE_MAN_NO = #{updateManNo}
+        </if>
+        <if test="updateManName != null and updateManName != ''">
+          and UPDATE_MAN_NAME = #{updateManName}
+        </if>
+        <if test="updateTime != null">
+          and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+        </if>
+        <if test="note != null and note != ''">
+          and NOTE = #{note}
+        </if>
+        <if test="tareType != null and tareType != ''">
+          and TARE_TYPE = #{tareType}
+        </if>
+      </where>
+    </select>
 
-</mapper>
+</mapper>

+ 16 - 2
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/model/MeterBaseHisTareData.java

@@ -3,7 +3,6 @@ package com.steerinfo.baseinfo.meterbasehistaredata.model;
 import com.steerinfo.framework.model.IBasePO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
 import java.util.Date;
 
 @ApiModel(value="历史皮重数据维护表")
@@ -116,6 +115,12 @@ public class MeterBaseHisTareData implements IBasePO<String> {
     @ApiModelProperty(value="操作原因",required=false)
     private String note;
 
+    /**
+     * 写入皮重类型:1:常规皮,2:期限皮,3:混装皮,4:混卸皮,5:双委托结净皮,6:内倒双委托期限皮(TARE_TYPE,VARCHAR,2)
+     */
+    @ApiModelProperty(value="写入皮重类型:1:常规皮,2:期限皮,3:混装皮,4:混卸皮,5:双委托结净皮,6:内倒双委托期限皮",required=false)
+    private String tareType;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -272,6 +277,14 @@ public class MeterBaseHisTareData implements IBasePO<String> {
         this.note = note == null ? null : note.trim();
     }
 
+    public String getTareType() {
+        return tareType;
+    }
+
+    public void setTareType(String tareType) {
+        this.tareType = tareType == null ? null : tareType.trim();
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -296,8 +309,9 @@ public class MeterBaseHisTareData implements IBasePO<String> {
         sb.append(", updateManName=").append(updateManName);
         sb.append(", updateTime=").append(updateTime);
         sb.append(", note=").append(note);
+        sb.append(", tareType=").append(tareType);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();
     }
-}
+}

+ 6 - 1
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/service/IMeterBaseHisTareDataService.java

@@ -2,6 +2,9 @@ package com.steerinfo.baseinfo.meterbasehistaredata.service;
 
 import com.steerinfo.framework.service.IBaseService;
 import com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData;
+import com.steerinfo.framework.service.pagehelper.PageList;
+
+import java.util.HashMap;
 
 /**
  * MeterBaseHisTareData服务接口:
@@ -20,4 +23,6 @@ public interface IMeterBaseHisTareDataService extends IBaseService<MeterBaseHisT
      String Recovery(MeterBaseHisTareData model);
 
      String abolish(MeterBaseHisTareData model);
-}
+
+    PageList<MeterBaseHisTareData> getList(HashMap parmas);
+}

+ 11 - 0
src/main/java/com/steerinfo/baseinfo/meterbasehistaredata/service/impl/MeterBaseHisTareDataServiceImpl.java

@@ -2,11 +2,14 @@ package com.steerinfo.baseinfo.meterbasehistaredata.service.impl;
 
 import com.steerinfo.baseinfo.meterbaseoperationlog.mapper.MeterBaseOperationLogMapper;
 import com.steerinfo.baseinfo.meterbaseoperationlog.model.MeterBaseOperationLog;
+import com.steerinfo.baseinfo.meterbaserailwayhistaredata.model.MeterBaseRailwayHisTareData;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData;
 import com.steerinfo.baseinfo.meterbasehistaredata.mapper.MeterBaseHisTareDataMapper;
 import com.steerinfo.baseinfo.meterbasehistaredata.service.IMeterBaseHisTareDataService;
+import com.steerinfo.framework.service.pagehelper.PageHelper;
+import com.steerinfo.framework.service.pagehelper.PageList;
 import com.steerinfo.framework.user.UserPayload;
 import com.steerinfo.util.PublicMethod;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -103,4 +106,12 @@ public class MeterBaseHisTareDataServiceImpl extends BaseServiceImpl<MeterBaseHi
         }
         return "";
     }
+
+    @Override
+    public PageList<MeterBaseHisTareData> getList(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        List<MeterBaseHisTareData> list = meterBaseHisTareDataMapper.getList(params);
+        PageList pageInfo = new PageList(list);
+        return pageInfo;
+    }
 }

+ 33 - 0
src/main/java/com/steerinfo/baseinfo/meterbaserailwayaiweight/service/impl/MeterBaseRailwayAiweightServiceImpl.java

@@ -1,5 +1,8 @@
 package com.steerinfo.baseinfo.meterbaserailwayaiweight.service.impl;
 
+import com.jisco.dynamicweight.dynamicbasecamera.factories.ConverterFactories;
+import com.steerinfo.baseinfo.meterbaseoperationlog.mapper.MeterBaseOperationLogMapper;
+import com.steerinfo.baseinfo.meterbaseoperationlog.model.MeterBaseOperationLog;
 import com.steerinfo.baseinfo.meterbaserailwayaiweight.mapper.MeterBaseRailwayAiweightMapper;
 import com.steerinfo.baseinfo.meterbaserailwayaiweight.model.MeterBaseRailwayAiweight;
 import com.steerinfo.baseinfo.meterbaserailwayaiweight.service.IMeterBaseRailwayAiweightService;
@@ -8,9 +11,12 @@ import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import com.steerinfo.framework.service.pagehelper.PageHelper;
 import com.steerinfo.framework.service.pagehelper.PageList;
+import com.steerinfo.util.PublicMethod;
 import com.steerinfo.util.StringUtils;
 import io.micrometer.core.instrument.Meter;
 import org.apache.shiro.crypto.hash.Hash;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -39,6 +45,12 @@ public class MeterBaseRailwayAiweightServiceImpl extends BaseServiceImpl<MeterBa
     @Resource
     private MeterBaseRailwayAiweightMapper meterBaseRailwayAiweightMapper;
 
+    @Resource
+    private MeterBaseOperationLogMapper meterBaseOperationLogMapper;
+
+    private static Logger logger	= LoggerFactory.getLogger( ConverterFactories.class );
+
+
     @Override
     protected IBaseMapper<MeterBaseRailwayAiweight, String> getMapper() {
         return meterBaseRailwayAiweightMapper;
@@ -79,6 +91,27 @@ public class MeterBaseRailwayAiweightServiceImpl extends BaseServiceImpl<MeterBa
                     meterBaseRailwayAiweightMapper.insertSelective(model);
                 }
             }
+            try {
+                StringBuffer railwayNos = new StringBuffer("");
+                for(MeterBaseRailwayAiweight model: models) {
+                    railwayNos.append( model.getRailwayNo());
+                    railwayNos.append( ",");
+                }
+                MeterBaseOperationLog operationLog = new MeterBaseOperationLog();
+                String id = PublicMethod.IdCreate(2);
+                operationLog.setId(id);
+                operationLog.setOperationPage("ai重量维护"); //操作界面-页面名称
+                operationLog.setOperationFunction("车号写入");//操作界面-功能名称
+                //operationLog.setOperationId(model.getId());//操作界面-数据主键
+                operationLog.setOperationCarnNo(railwayNos.toString());//操作界面-车号
+                operationLog.setCreateManNo("admin");
+                operationLog.setCreateManName("admin");
+                operationLog.setCreateTime(new Date());
+                meterBaseOperationLogMapper.insertSelective(operationLog);
+            }catch (Exception e){
+                e.printStackTrace();
+                logger.error("日志写入失败");
+            }
             rm.setSucceed();
             rm.setCode("200");
             rm.setData(models);

+ 4 - 4
src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/controller/MeterBaseRailwayHisTareDataController.java

@@ -58,12 +58,12 @@ public class MeterBaseRailwayHisTareDataController extends BaseRESTfulController
         @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
     })
     //@RequiresPermissions("meterbaserailwayhistaredata:view")
-    @GetMapping(value = "/like/")
-    public RESTfulResult listLike(@RequestParam HashMap parmas,Integer pageNum, Integer pageSize){
-        PageList<MeterBaseRailwayHisTareData> list = meterBaseRailwayHisTareDataService.queryLikeForPage(parmas, pageNum, pageSize);
+    @PostMapping(value = "/like/")
+    public RESTfulResult listLike(@RequestBody(required = false) HashMap params){
+        PageList<MeterBaseRailwayHisTareData> list = meterBaseRailwayHisTareDataService.getList(params);
         return success(list);
     }
-    
+
     @ApiOperation(value="创建", notes="根据MeterBaseRailwayHisTareData对象创建")
     @ApiImplicitParam(name = "meterBaseRailwayHisTareData", value = "详细实体meterBaseRailwayHisTareData", required = true, dataType = "MeterBaseRailwayHisTareData")
     //@RequiresPermissions("meterbaserailwayhistaredata:create")

+ 6 - 1
src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/mapper/MeterBaseRailwayHisTareDataMapper.java

@@ -5,7 +5,12 @@ import com.steerinfo.framework.mapper.IBaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.HashMap;
+import java.util.List;
+
 @Mapper
 public interface MeterBaseRailwayHisTareDataMapper extends IBaseMapper<MeterBaseRailwayHisTareData, String> {
     String getNewID(@Param(value="afl")String afl);
-}
+
+    List<MeterBaseRailwayHisTareData> getList(HashMap parmas);
+}

+ 70 - 0
src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/mapper/MeterBaseRailwayHisTareDataMapper.xml

@@ -574,5 +574,75 @@
     FROM meter_base_railway_his_tare_data
     where instr(data_no, #{afl, jdbcType = VARCHAR}) > 0
   </select>
+    <select id="getList"
+            resultMap="BaseResultMap">
+      <include refid="select_alias"></include>
+      <where>
+        <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+          and t.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and t.create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+        </if>
+        <if test="dataNo != null and dataNo != ''">
+          and DATA_NO LIKE '%${dataNo}%'
+        </if>
+        <if test="baseSpotNo != null and baseSpotNo != ''">
+          and BASE_SPOT_NO LIKE '%${baseSpotNo}%'
+        </if>
+        <if test="baseSpotName != null and baseSpotName.size() != 0">
+          and base_spot_name in
+          <foreach collection="baseSpotName" item="item" open="(" separator="," close=")">
+            #{item}
+          </foreach>
+        </if>
+        <if test="railwayNo != null and railwayNo != ''">
+          and RAILWAY_NO LIKE '%${railwayNo}%'
+        </if>
+        <if test="meterWeight != null">
+          and METER_WEIGHT = #{meterWeight}
+        </if>
+        <if test="meterName != null and meterName != ''">
+          and METER_NAME LIKE '%${meterName}%'
+        </if>
+        <if test="meterTime != null">
+          and TO_CHAR(METER_TIME,'yyyy-MM-dd') = #{meterTime}
+        </if>
+        <if test="upWeight != null">
+          and UP_WEIGHT = #{upWeight}
+        </if>
+        <if test="avgWeight != null">
+          and AVG_WEIGHT = #{avgWeight}
+        </if>
+        <if test="meterNum != null">
+          and METER_NUM = #{meterNum}
+        </if>
+        <if test="valueFlag != null and valueFlag != ''">
+          and VALUE_FLAG LIKE '%${valueFlag}%'
+        </if>
+        <if test="createManNo != null and createManNo != ''">
+          and CREATE_MAN_NO LIKE '%${createManNo}%'
+        </if>
+        <if test="createManName != null and createManName != ''">
+          and CREATE_MAN_NAME LIKE '%${createManName}%'
+        </if>
+        <if test="createTime != null">
+          and TO_CHAR(CREATE_TIME,'yyyy-MM-dd') = #{createTime}
+        </if>
+        <if test="updateManNo != null and updateManNo != ''">
+          and UPDATE_MAN_NO LIKE '%${updateManNo}%'
+        </if>
+        <if test="updateManName != null and updateManName != ''">
+          and UPDATE_MAN_NAME LIKE '%${updateManName}%'
+        </if>
+        <if test="updateTime != null">
+          and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
+        </if>
+        <if test="note != null and note != ''">
+          and NOTE LIKE '%${note}%'
+        </if>
+        <if test="tareType != null and tareType != ''">
+          and TARE_TYPE LIKE '%${tareType}%'
+        </if>
+      </where>
+      order by create_time desc
+    </select>
 
 </mapper>

+ 6 - 1
src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/service/IMeterBaseRailwayHisTareDataService.java

@@ -4,6 +4,9 @@ import com.steerinfo.baseinfo.meterbasehistaredata.model.MeterBaseHisTareData;
 import com.steerinfo.baseinfo.meterbaserailwayhistaredata.model.MeterBaseRailwayHisTareData;
 import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.service.IBaseService;
+import com.steerinfo.framework.service.pagehelper.PageList;
+
+import java.util.HashMap;
 
 /**
  * MeterBaseRailwayHisTareData服务接口:
@@ -23,4 +26,6 @@ public interface IMeterBaseRailwayHisTareDataService extends IBaseService<MeterB
     String Recovery(MeterBaseRailwayHisTareData model);
 
     String abolish(MeterBaseRailwayHisTareData model);
-}
+
+    PageList<MeterBaseRailwayHisTareData> getList(HashMap parmas);
+}

+ 10 - 0
src/main/java/com/steerinfo/baseinfo/meterbaserailwayhistaredata/service/impl/MeterBaseRailwayHisTareDataServiceImpl.java

@@ -9,6 +9,8 @@ import com.steerinfo.baseinfo.meterbaserailwayhistaredata.service.IMeterBaseRail
 import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
+import com.steerinfo.framework.service.pagehelper.PageHelper;
+import com.steerinfo.framework.service.pagehelper.PageList;
 import com.steerinfo.framework.user.UserPayload;
 import com.steerinfo.util.PublicMethod;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -180,4 +182,12 @@ public class MeterBaseRailwayHisTareDataServiceImpl extends BaseServiceImpl<Mete
         return "";
     }
 
+    @Override
+    public PageList<MeterBaseRailwayHisTareData> getList(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        List<MeterBaseRailwayHisTareData> list = meterBaseRailwayHisTareDataMapper.getList(params);
+        PageList pageInfo = new PageList(list);
+        return pageInfo;
+    }
+
 }

+ 1 - 0
src/main/java/com/steerinfo/filter/SecurityFilter.java

@@ -53,6 +53,7 @@ public class SecurityFilter implements Filter {
         //本地:http://10.104.4.105:9004/v1/meterbasecars/applogin
         if(request.getRemoteAddr().equals("10.1.201.188")
                 ||request.getRemoteAddr().equals("10.104.4.105")
+                ||request.getRemoteAddr().equals("127.0.0.1")
                 ||request.getRemoteAddr().equals("0:0:0:0:0:0:0:1")
                 ||request.getRemoteAddr().equals("10.104.0.1")
             ) {

+ 5 - 2
src/main/java/com/steerinfo/meterwork/meterworkcaractual/service/impl/MeterWorkCarActualServiceImpl.java

@@ -414,6 +414,8 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                 mwcaf2.setIsPreScale("1");
                 mwcaf2.setPredictionNo(predictionNo);
                 mwcaf2.setPredictionType("1");
+                //添加历史皮重
+                meterWorkCarActualFirstService.doSaveHisTare(mwcaf2,"1");
                 meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
 
                 MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualFirstNo, dataNo, predictionNo);
@@ -514,7 +516,8 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
                         mwcaf2.setPredictionNo(scale.getPredictionNo());
                         mwcaf2.setPredictionType("1");
                         meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf2);
-
+                        //添加历史皮重
+                        meterWorkCarActualFirstService.doSaveHisTare(mwcaf2,"1");
                         MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualFirstNo, dataNo, scale.getPredictionNo());
                         BeanUtils.copyProperties(mwca1, actualRow);
 
@@ -1802,7 +1805,7 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
         mwca.setUpdateManNo(userId);
         mwca.setUpdateManName(userName);
         mwca.setUpdateTime(new Date());
-        mwca.setNote("撤销委托");
+        mwca.setNote(model.getNote());
         //mwca.setValueFlag("3");
         mwca.setIsPreScale("0");
         mwca.setUploadFlag("1");

+ 7 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/IMeterWorkCarActualFirstService.java

@@ -9,6 +9,7 @@ import com.steerinfo.meterwork.meterworkcaractual.model.MeterWorkCarActual;
 import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualFirst;
 import com.steerinfo.meterwork.meterworkprelink.model.MeterWorkPreLink;
 import com.steerinfo.pretrack.pretrackscale.model.PreTrackScale;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.HashMap;
 import java.util.List;
@@ -79,6 +80,12 @@ public interface IMeterWorkCarActualFirstService extends IBaseService<MeterWorkC
 
     RESTfulResult doAddNetHZHX(MeterWorkCarActualFirst secondDb, MeterWorkCarActual netDb, MeterWorkCarActualFirst onceDb,MeterMonitorNote note) throws Exception;
 
+    @Transactional(rollbackFor = Exception.class)
+    void doSaveHisTare(MeterWorkCarActualFirst oci);
+
+    @Transactional(rollbackFor = Exception.class)
+    void doSaveHisTare(MeterWorkCarActualFirst oci, String tareType);
+
     RESTfulResult doAddInnerWf(MeterWorkCarActualFirst oci, String saveTare, MeterMonitorNote note) throws Exception;
 
     RESTfulResult doNetAddMuchGross(List<MeterWorkCarActualFirst> gross,MeterWorkCarActualFirst tare, MeterMonitorNote note) throws Exception;

+ 74 - 2
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java

@@ -1148,6 +1148,7 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
      *
      * @param oci
      */
+    @Override
     @Transactional(rollbackFor = Exception.class)
     public void doSaveHisTare(MeterWorkCarActualFirst oci) {
         //获取ID
@@ -1199,6 +1200,64 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
         meterBaseHisTareDetailMapper.insert(mbhtd);
     }
 
+    /**
+     * 公共的存储历史皮重
+     *
+     * @param oci
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void doSaveHisTare(MeterWorkCarActualFirst oci, String tareType) {
+        //获取ID
+        SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
+        String afl = formatter.format(oci.getCreateTime());
+        //查找相应车辆有效的历史皮重信息
+        MeterBaseHisTareData mbtd = new MeterBaseHisTareData();
+        mbtd.setCarNo(oci.getCarNo());
+        mbtd.setValueFlag("0");
+        mbtd.setTareType(tareType);
+        Map<String, Object> map = FieldsCollector.beanToMap(mbtd);
+        List<MeterBaseHisTareData> lmOne = meterBaseHisTareDataMapper.selectByParameters(map);
+        if (lmOne != null && lmOne.size() > 0) {
+            //说明存在历史皮重,则执行修改操作
+            mbtd.setDataNo(lmOne.get(0).getDataNo());
+            mbtd.setBaseSpotNo(oci.getBaseSpotNo());
+            mbtd.setBaseSpotName(oci.getBaseSpotName());
+            mbtd.setMeterWeight(Math.round(oci.getMeterWeight().doubleValue()));
+            mbtd.setUpWeight(oci.getMeterWeight().longValue()); //上次皮重
+            //  (之前的重量*次数)/(次数+1)
+            double db = (lmOne.get(0).getAvgWeight() * lmOne.get(0).getMeterNum() + lmOne.get(0).getMeterWeight()) / (lmOne.get(0).getMeterNum() + 1);
+            mbtd.setAvgWeight(Math.round(db));//平均皮重
+            mbtd.setMeterNum(lmOne.get(0).getMeterNum() + 1);
+            mbtd.setCreateTime(new Date());
+            meterBaseHisTareDataMapper.updateByPrimaryKeySelective(mbtd);
+        } else {
+            //新增操作
+            String no = meterBaseHisTareDataMapper.getNewID(afl);
+            mbtd.setDataNo(afl + no);
+            mbtd.setBaseSpotNo(oci.getBaseSpotNo());
+            mbtd.setBaseSpotName(oci.getBaseSpotName());
+            mbtd.setMeterWeight(Math.round(oci.getMeterWeight().doubleValue()));
+            mbtd.setUpWeight(oci.getMeterWeight().longValue()); //上次皮重
+            mbtd.setAvgWeight(Math.round(oci.getMeterWeight().doubleValue()));//平均皮重
+            mbtd.setMeterNum(1l);
+            mbtd.setMeterTime(oci.getCreateTime());
+            mbtd.setCreateTime(oci.getCreateTime());
+            meterBaseHisTareDataMapper.insert(mbtd);
+        }
+        MeterBaseHisTareDetail mbhtd = new MeterBaseHisTareDetail();
+        String no = meterBaseHisTareDetailMapper.getNewID(afl);
+        mbhtd.setDetailNo(afl + no);
+        mbhtd.setActualFirstNo(oci.getActualFirstNo());
+        mbhtd.setBaseSpotNo(oci.getBaseSpotNo());
+        mbhtd.setBaseSpotName(oci.getBaseSpotName());
+        mbhtd.setCarNo(oci.getCarNo());
+        mbhtd.setMeterOrder("1");
+        mbhtd.setMeterTime(oci.getCreateTime());
+        mbhtd.setMeterWeight(oci.getMeterWeight().longValue());
+        meterBaseHisTareDetailMapper.insert(mbhtd);
+    }
+
 
     /**
      * 图片保存信息
@@ -1601,7 +1660,7 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             once.setUpdateManNo("system");
             once.setUpdateManName("混装结净更新");
             once.setPredictionType("7");
-            once.setCreateTime(new Date());
+            once.setCreateTime(secondDb.getCreateTime());
             once.setPredictionCombination(upModel.getPredictionNo() + "," + netDb.getPredictionNo());
             meterWorkCarActualFirstMapper.insertSelective(once);
 
@@ -2590,6 +2649,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
         imTare.setWeightType("2");//期限皮重
         imTare.setValueFlag("2");//结净
         meterWorkCarActualFirstMapper.insertSelective(imTare);
+        //添加历史皮重2023年4月20日--zn
+        //doSaveHisTare(imTare,"2");
 
         //3、新增结净数据
 //        String afl2 = formatter.format(netDb.getNetTime());
@@ -3897,6 +3958,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             mwcaf1.setPredictionNo(predictionNo1);
             mwcaf1.setPredictionType("7");
             mwcaf1.setPredictionCombination(predictionNo1 + "," + predictionNo2);
+            //添加历史皮重
+            doSaveHisTare(mwcaf1,"3");
             meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf1);
             //更新第一次毛重数据
             mwcaf2.setValueFlag(DbConstants.NET);
@@ -4208,6 +4271,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             mwcaf4.setPredictionType("6");
             mwcaf4.setPredictionCombination(predictionNo1 + "," + predictionNo2);
             meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf4);
+            //添加历史皮重
+            doSaveHisTare(mwcaf4,"4");
             //将委托中的编号和收发货单位和一次数据等数据拷贝进结净数据中
             MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualNo1, actualNo2, predictionNo1);
             BeanUtils.copyProperties(mwca1, actualRow1);
@@ -4505,6 +4570,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             mwcaf02.setPredictionType("5");
             mwcaf02.setPredictionCombination(predictionNo1 + "," + predictionNo2);
             meterWorkCarActualFirstMapper.updateByPrimaryKey(mwcaf02);
+            //添加历史皮重
+            doSaveHisTare(mwcaf02,"5");
             //添加第一次毛重数据库
             SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
             String afl = sdf.format(new Date());
@@ -4543,6 +4610,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
             mwcaf04.setPredictionType("5");
             mwcaf04.setPredictionCombination(predictionNo1 + "," + predictionNo2);
             meterWorkCarActualFirstMapper.insertSelective(mwcaf04);
+            //添加历史皮重
+            doSaveHisTare(mwcaf02,"5");
 
             //将委托中的编号和收发货单位和一次数据等数据拷贝进结净数据中
             MeterWorkCarActual mwca1 = meterWorkCarActualMapper.manualAddPre(actualNo1, actualNo2, predictionNo1);
@@ -5762,6 +5831,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
                     tareModel.setCreateManNo(userId);
                     tareModel.setCreateManName(userName);
                     meterWorkCarActualFirstMapper.insertSelective(tareModel);
+                    //添加历史皮重
+                    doSaveHisTare(tareModel,"2");
 
                     MeterWorkCarActualFirst grossFirst = meterWorkCarActualFirstMapper.selectAndMatch(grossModel.getActualFirstNo(), scale.getPredictionNo());
                     BeanUtils.copyProperties(grossFirst, grossModel);
@@ -5860,7 +5931,8 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
                     tareModel.setCreateManNo(userId);
                     tareModel.setCreateManName(userName);
                     meterWorkCarActualFirstMapper.insertSelective(tareModel);
-
+                    //添加历史皮重
+                    doSaveHisTare(tareModel,"2");
                     grossModel.setUpdateManNo(userId);
                     grossModel.setUpdateManName(userName);
                     grossModel.setUpdateTime(new Date());

+ 1 - 1
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/controller/MeterWorkCheckFirstActualController.java

@@ -116,7 +116,7 @@ public class MeterWorkCheckFirstActualController extends BaseRESTfulController {
     }
 
     @ApiOperation(value = "汽车衡一次计量和结净数据图片与数据核查-获取列表",
-            notes = "不分页模糊查询;关键词:startTime、endTime、typeNo(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)" +
+                notes = "不分页模糊查询;关键词:startTime、endTime、typeNo(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)" +
                     "、typeName、valueFlag:0:一次数据、1:净重数据")
     //@RequiresPermissions("meterworkcaractualfirst:view")
     @PostMapping(value = "/carFirstActualImgDataList")

+ 13 - 0
src/main/java/com/steerinfo/meterwork/meterworkdatacount/controller/MeterWorkDataCountController.java

@@ -517,6 +517,19 @@ public class MeterWorkDataCountController extends BaseRESTfulController {
         }
     }
 
+    @ApiOperation(value = "轨道衡结净数据同车型、同物料毛重核查比对明细-获取列表", notes = "分页模糊查询")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayActualNetWeightComparisonDetail")
+    public RESTfulResult railwayActualNetWeightComparisonDetail(@RequestBody(required = false) HashMap parmas) {
+        try {
+            PageList<RailwayActualGrossWeightComparison> list = meterWorkDataCountService.railwayActualNetWeightComparisonDetail(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
     @ApiOperation(value = "轨道衡理论量与计量净重数据对比-获取列表", notes = "分页模糊查询")
     @PostMapping(value = "/railwayNetWeightAndTheoryAmount")
     public RESTfulResult railwayNetWeightAndTheoryAmount(@RequestBody HashMap parmas) {

+ 1 - 0
src/main/java/com/steerinfo/meterwork/meterworkdatacount/mapper/MeterWorkDataCountMapper.java

@@ -30,6 +30,7 @@ public interface MeterWorkDataCountMapper {
     List<CarActualTareWeightComparison> carActualNetWeightComparisonDetail(HashMap<String, Object> param);
     List<RailwayActualGrossWeightComparison> railwayActualGrossWeightComparison(HashMap<String, Object> param);
     List<RailwayActualGrossWeightComparison> railwayActualGrossWeightComparisonDetail(HashMap<String, Object> param);
+    List<RailwayActualGrossWeightComparison> railwayActualNetWeightComparisonDetail(HashMap<String, Object> param);
     List<NetWeightAndTheoryAmount> railwayNetWeightAndTheoryAmount(Map<String, Object> params);
     List<LongCarMeterWeightComparison> longCarMeterWeightComparison(Map<String, Object> params);
     List<ScaleOrCarComparison> scaleOrCarComparison(Map<String, Object> params);

+ 23 - 0
src/main/java/com/steerinfo/meterwork/meterworkdatacount/mapper/MeterWorkDataCountMapper.xml

@@ -1135,7 +1135,9 @@
                A.base_spot1_name baseSpot1Name,
                A.gross_man_name grossManName,
                A.tare_time tareTime,
+               A.net_time netTime,
                A.base_spot2_name baseSpot2Name,
+               A.net_spot3_name netSpot3Name,
                A.tare_man_name tareManName,
                case when A.value_flag = '0' then '作废'
                     when A.value_flag = '1' then '有效-未上传'
@@ -1177,6 +1179,27 @@
                  A.matter_Name
     </select>
 
+    <select id="railwayActualNetWeightComparisonDetail" parameterType="java.util.HashMap"
+            resultType="com.steerinfo.meterwork.meterworkdatacount.model.RailwayActualGrossWeightComparison">
+        select A.conveyance_type conveyanceType,
+        A.matter_no matterNo,
+        A.matter_name matterName,
+        to_char(round(avg(A.net_Weight)/1000, 2),'FM9999999999999999.00') avgNetWeight
+        from meter_work_railway_actual A
+        where 1 = 1
+        and A.value_Flag != '0'
+        <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+            and  A.net_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+            and A.net_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+        </if>
+        <if test="railwayTypeNo != null and railwayTypeNo != ''">
+            and A.railway_type_no = #{railwayTypeNo}
+        </if>
+        group by A.conveyance_Type,
+        A.matter_No,
+        A.matter_Name
+    </select>
+
     <select id="railwayNetWeightAndTheoryAmount" parameterType="java.util.HashMap"
             resultType="com.steerinfo.meterwork.meterworkdatacount.model.NetWeightAndTheoryAmount">
         select A.railway_type_name railwayTypeName,

+ 37 - 0
src/main/java/com/steerinfo/meterwork/meterworkdatacount/model/RailwayActualGrossWeightComparison.java

@@ -18,6 +18,8 @@ public class RailwayActualGrossWeightComparison {
     private BigDecimal avgGrossWeightSub;
     private BigDecimal tareWeight;
     private BigDecimal netWeight;
+    private BigDecimal avgNetWeight;
+    private BigDecimal avgNetWeightSub;
     private String forwardingUnitName;
     private String receivingUintName;
     private String conveyanceType;
@@ -30,6 +32,8 @@ public class RailwayActualGrossWeightComparison {
     private Date tareTime;
     private String baseSpot2Name;
     private String tareManName;
+    private String netSpot3Name;
+    private Date netTime;
     private String valueFlag;
     private String uploadFlag;
 
@@ -256,4 +260,37 @@ public class RailwayActualGrossWeightComparison {
     public void setUploadFlag(String uploadFlag) {
         this.uploadFlag = uploadFlag;
     }
+
+
+    public BigDecimal getAvgNetWeight() {
+        return avgNetWeight;
+    }
+
+    public void setAvgNetWeight(BigDecimal avgNetWeight) {
+        this.avgNetWeight = avgNetWeight;
+    }
+
+    public BigDecimal getAvgNetWeightSub() {
+        return avgNetWeightSub;
+    }
+
+    public void setAvgNetWeightSub(BigDecimal avgNetWeightSub) {
+        this.avgNetWeightSub = avgNetWeightSub;
+    }
+
+    public String getNetSpot3Name() {
+        return netSpot3Name;
+    }
+
+    public void setNetSpot3Name(String netSpot3Name) {
+        this.netSpot3Name = netSpot3Name;
+    }
+
+    public Date getNetTime() {
+        return netTime;
+    }
+
+    public void setNetTime(Date netTime) {
+        this.netTime = netTime;
+    }
 }

+ 1 - 0
src/main/java/com/steerinfo/meterwork/meterworkdatacount/service/IMeterWorkDataCountService.java

@@ -37,4 +37,5 @@ public interface IMeterWorkDataCountService{
 
     List<String> measurementAccuracyCreateManName(HashMap params);
 
+    PageList<RailwayActualGrossWeightComparison> railwayActualNetWeightComparisonDetail(HashMap parmas);
 }

+ 36 - 1
src/main/java/com/steerinfo/meterwork/meterworkdatacount/service/impl/MeterWorkDataCountServiceImpl.java

@@ -1247,7 +1247,7 @@ public class MeterWorkDataCountServiceImpl implements IMeterWorkDataCountService
                 if(rowsActual.size() >= 1) {
                     for (RailwayActualGrossWeightComparison modelActual: rowsActual) {
                         //判断车型、物料编号、物料名称是否一致、一致把平均值写入,并添加
-                        if(modelDetail.getConveyanceType() != null && modelActual.getConveyanceType() != null && modelDetail.getConveyanceType().equals(modelActual.getConveyanceType())
+                        if(((modelDetail.getConveyanceType()==null&&modelActual.getConveyanceType()==null)||modelDetail.getConveyanceType()!=null&&modelActual.getConveyanceType()!=null&&modelDetail.getConveyanceType().equals(modelActual.getConveyanceType()))
                                 && modelDetail.getMatterNo() != null && modelActual.getMatterNo() != null && modelDetail.getMatterNo().equals(modelActual.getMatterNo())
                                 && modelDetail.getMatterName() != null && modelActual.getMatterName() != null && modelDetail.getMatterName().equals(modelActual.getMatterName())) {
                             //结净数据毛重-平均毛重大于等于输入值,就写入
@@ -1301,4 +1301,39 @@ public class MeterWorkDataCountServiceImpl implements IMeterWorkDataCountService
         return meterWorkDataCountMapper.measurementAccuracyCreateManName(params);
     }
 
+    @Override
+    public PageList<RailwayActualGrossWeightComparison> railwayActualNetWeightComparisonDetail(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        BigDecimal avgNetWeight = params.get("avgNetWeight") != null ? new BigDecimal(params.get("avgNetWeight").toString()): new BigDecimal(0);
+        //查询所有结净数据
+        List<RailwayActualGrossWeightComparison> rowsActual = meterWorkDataCountMapper.railwayActualGrossWeightComparison(params);
+        //根据车型、物料编号、物料名称进行分组并求平均值
+        List<RailwayActualGrossWeightComparison> rowsDetail = meterWorkDataCountMapper.railwayActualNetWeightComparisonDetail(params);
+        List<RailwayActualGrossWeightComparison> rows = new ArrayList<>();
+        if(rowsDetail.size() >= 1) {
+            //循环分组List<车型、物料编号、物料名称>
+            for(RailwayActualGrossWeightComparison modelDetail: rowsDetail) {
+                if(rowsActual.size() >= 1) {
+                    for (RailwayActualGrossWeightComparison modelActual: rowsActual) {
+                        //判断车型、物料编号、物料名称是否一致、一致把平均值写入,并添加
+                        if(((modelDetail.getConveyanceType()==null&&modelActual.getConveyanceType()==null)||modelDetail.getConveyanceType()!=null&&modelActual.getConveyanceType()!=null&&modelDetail.getConveyanceType().equals(modelActual.getConveyanceType()))
+                                && modelDetail.getMatterNo() != null && modelActual.getMatterNo() != null && modelDetail.getMatterNo().equals(modelActual.getMatterNo())
+                                && modelDetail.getMatterName() != null && modelActual.getMatterName() != null && modelDetail.getMatterName().equals(modelActual.getMatterName())) {
+                            //结净数据毛重-平均毛重大于等于输入值,就写入
+                            BigDecimal sub = (modelActual.getNetWeight().subtract(modelDetail.getAvgNetWeight())).abs();
+                            //avgGrossWeight < sub
+                            if(avgNetWeight.compareTo(sub) == -1) {
+                                modelActual.setAvgNetWeight(modelDetail.getAvgNetWeight());
+                                modelActual.setAvgNetWeightSub(sub);
+                                rows.add(modelActual);
+                            }
+                        }
+                    }
+                }
+            }
+        }
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
+
 }

+ 34 - 6
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java

@@ -50,6 +50,7 @@ import com.steerinfo.util.PublicMethod;
 import com.steerinfo.util.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.util.Assert;
@@ -2000,6 +2001,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         first02.setUpdateManNo("system");
                         first02.setUpdateManName("智能计量混装一次复制");
                         firsts.add(model01);
+                        doSaveTare(model02);
                     }
 //                    String firstNo = sdf.format(new Date()) + meterWorkRailwayActFirstMapper.getNewID(afl);
 //                    first02.setActualFirstNo(firstNo);
@@ -2007,13 +2009,17 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                     first02.setActualFirstNo(firstNo);
                     first02.setPredictionNo("混装混卸复制");
                     first02.setValueFlag("1");
-                    first02.setCreateTime(new Date());
+                    //first02.setCreateTime(new Date());
                     meterWorkRailwayActFirstMapper.insertSelective(first02);
                 } else {
                     model01.setPredictionNo("");
                     meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(model01);
                     model02.setPredictionNo("");
                     meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(model02);
+                    if(first01.getWeightType().equals("1")){
+                    }else {
+                        doSaveTare(model02);
+                    }
                 }
 
                 firsts.add(first02);
@@ -2256,7 +2262,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                     first02.setActualFirstNo(firstNo);
                     first02.setPredictionNo("混装混卸复制");
                     first02.setValueFlag("1");
-                    first02.setCreateTime(new Date());
+                    //first02.setCreateTime(new Date());
                     meterWorkRailwayActFirstMapper.insertSelective(first02);
                     firsts.add(first02);
                 }else {
@@ -7882,6 +7888,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         meterWorkRailwayActFirstMapper.insertSelective(grossModel);
                         BeanUtils.copyProperties(grossModel, tareModel);
                         tareModel.setMeterWeight(AiWeightModel.getMeterWeight());
+                        doSaveTare(tareModel,"2");
 
                         grossModel.setValueFlag(DbConstants.NET);
                         grossModel.setWeightType("0");
@@ -7916,6 +7923,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setValueFlag("2");
                         actualRow.setPredictionType("1");
                         actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -7972,6 +7981,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         meterWorkRailwayActFirstMapper.insertSelective(grossModel);
                         BeanUtils.copyProperties(grossModel, tareModel);
                         tareModel.setMeterWeight(AiWeightModel.getMeterWeight());
+                        doSaveTare(tareModel,"2");
 
                         grossModel.setValueFlag(DbConstants.NET);
                         grossModel.setWeightType("0");
@@ -8002,6 +8012,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setUploadFlag("1");
                         actualRow.setIsPreSacale("0");
                         actualRow.setValueFlag("1");
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8150,7 +8162,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         meterWorkRailwayActFirstMapper.insertSelective(grossModel);
                         BeanUtils.copyProperties(grossModel, tareModel);
                         tareModel.setMeterWeight(new BigDecimal(carriageWeightModel.getCarriageWeight()));
-
+                        doSaveTare(tareModel,"3");
                         grossModel.setValueFlag(DbConstants.NET);
                         grossModel.setWeightType("0");
                         grossModel.setNote("规则皮匹配委托结净更新");
@@ -8184,6 +8196,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setValueFlag("2");
                         actualRow.setPredictionType("1");
                         actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8240,7 +8254,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         meterWorkRailwayActFirstMapper.insertSelective(grossModel);
                         BeanUtils.copyProperties(grossModel, tareModel);
                         tareModel.setMeterWeight(new BigDecimal(carriageWeightModel.getCarriageWeight()));
-
+                        doSaveTare(tareModel,"3");
                         grossModel.setValueFlag(DbConstants.NET);
                         grossModel.setWeightType("0");
                         grossModel.setNote("规则皮无委托结净更新");
@@ -8270,6 +8284,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setUploadFlag("1");
                         actualRow.setIsPreSacale("0");
                         actualRow.setValueFlag("1");
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8358,17 +8374,17 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
     }
 
     @Override
-    @Transactional(rollbackFor = Exception.class)
+    @Transactional(rollbackFor = Exception.class,propagation= Propagation.NESTED)
     public RESTfulResult DynamicBatchMatchFirstWeight(List<MeterWorkRailwayReceived> receivedList) {
         RESTfulResult rm = new RESTfulResult();
         rm.setFailed();
-        try{
             List<String> carList = new ArrayList<>();
             String strCar = "";
             //判断从表数据中是否包含委托编号
             for (MeterWorkRailwayReceived receivedModel: receivedList) {
                 Assert.isTrue(receivedModel.getPredictionNo() != null && StringUtils.isNotEmpty(receivedModel.getPredictionNo()), "所选择的数据中包含没有委托的数据,不能结净");
             }
+            try{
             int count = 0;
             //将从表数据的车号所对应有效的AI标识皮进行结净,未找到历史皮就跳过
             for (MeterWorkRailwayReceived receivedModel: receivedList) {
@@ -8470,6 +8486,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setValueFlag("2");
                         actualRow.setPredictionType("1");
                         actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8571,6 +8589,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setUploadFlag("1");
                         actualRow.setIsPreSacale("0");
                         actualRow.setValueFlag("1");
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8785,6 +8805,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setValueFlag("2");
                         actualRow.setPredictionType("1");
                         actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -8913,6 +8935,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setUploadFlag("1");
                         actualRow.setIsPreSacale("0");
                         actualRow.setValueFlag("1");
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -9101,6 +9125,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setValueFlag("2");
                         actualRow.setPredictionType("1");
                         actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
@@ -9187,6 +9213,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         actualRow.setUploadFlag("1");
                         actualRow.setIsPreSacale("0");
                         actualRow.setValueFlag("1");
+                        //添加车型
+                        actualRow.setConveyanceType(receivedModel.getRailwayModel());
                         actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
                         if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
                             actualRow.setNetSpot3No(actualRow.getBaseSpot1No());

+ 20 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/controller/MeterWorkRailwayActFirstBakController.java

@@ -1528,4 +1528,24 @@ throw new MarkerMetException(500, "操作异常!!");
         }
         return rm;
     }
+
+
+    //======================eason add 2023-04-14 =============================================
+    @ApiOperation(value = "创建", notes = "根据MeterWorkRailwayActFirst对象创建")
+    @ApiImplicitParam(name = "meterWorkRailwayActFirst", value = "详细实体meterWorkRailwayActFirst", required = true, dataType = "MeterWorkRailwayActFirst")
+    @PostMapping(value = "/addFirstEmergencyList")
+    @Transactional
+    public RESTfulResult addFirstEmergencyList(@RequestBody List<MeterWorkRailwayActFirstBak> lt) {
+        try {
+            RESTfulResult rm = meterWorkRailwayActFirstBakService.addFirstEmergencyList(lt);
+            if(!rm.isSucceed()) {
+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            }
+            return rm;
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return failed(null, "操作异常,请确认!");
+        }
+    }
 }

+ 2 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/service/IMeterWorkRailwayActFirstBakService.java

@@ -157,5 +157,7 @@ public interface IMeterWorkRailwayActFirstBakService extends IBaseService<MeterW
 
     //内倒车辆复制到一次表
     RESTfulResult CopyToFirst(List<String> ids,String carNo) throws Exception;
+
+    RESTfulResult addFirstEmergencyList(List<MeterWorkRailwayActFirstBak> lt) throws Exception;
 }
 

+ 56 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirstbak/service/impl/MeterWorkRailwayActFirstBakServiceImpl.java

@@ -17,6 +17,7 @@ import com.steerinfo.baseinfo.meterbaserailwayhistaredetail.mapper.MeterBaseRail
 import com.steerinfo.baseinfo.meterbaserailwayhistaredetail.model.MeterBaseRailwayHisTareDetail;
 import com.steerinfo.baseinfo.meterbaserailwayweight.mapper.MeterBaseRailwayWeightMapper;
 import com.steerinfo.baseinfo.meterbaserailwayweight.model.MeterBaseRailwayWeight;
+import com.steerinfo.baseinfo.meterbasespotinfo.model.MeterBaseSpotInfo;
 import com.steerinfo.baseinfo.meterbasevideoinfo.mapper.MeterBaseVideoinfoMapper;
 import com.steerinfo.baseinfo.meterbasevideoinfo.model.MeterBaseVideoinfo;
 import com.steerinfo.framework.controller.RESTfulResult;
@@ -28,6 +29,7 @@ import com.steerinfo.framework.user.UserPayload;
 import com.steerinfo.framework.utils.collection.ListUtils;
 import com.steerinfo.metermonitor.metermonitornote.model.MeterMonitorNote;
 import com.steerinfo.meterwork.constants.DbConstants;
+import com.steerinfo.meterwork.constants.DjPbModel;
 import com.steerinfo.meterwork.dto.CommonCombination;
 import com.steerinfo.meterwork.dto.StaffPerformanceAnalysis;
 import com.steerinfo.meterwork.except.MarkerMetException;
@@ -7631,4 +7633,58 @@ public class MeterWorkRailwayActFirstBakServiceImpl extends BaseServiceImpl<Mete
         return "1";
     }
 
+    //=========================eason add 2023-04-14=====================================
+    @Override
+    public RESTfulResult addFirstEmergencyList(List<MeterWorkRailwayActFirstBak> lt) throws Exception {
+        List<DjPbModel> lst=new ArrayList<>();
+        RESTfulResult rm = new RESTfulResult();
+        rm.setCode("200");
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+        String afl = sdf.format(new Date());
+        String no = meterWorkRailwayActFirstBakMapper.getNewID(afl);
+        int i=Integer.parseInt(no);
+
+        for(MeterWorkRailwayActFirstBak model:lt){
+            String str=model.getActualFirstNo();
+
+            model.setActualFirstNo(afl + String.format("%04d",i++));
+            model.setValueFlag("1");
+            //model.setMeterWeight(model.getMeterWeight().multiply(new BigDecimal(1000)));
+            if(model.getCreateTime() == null || StringUtils.isEmpty(model.getCreateTime().toString())){
+                model.setCreateTime(new Date());
+            }
+
+            if(StringUtils.isEmpty(model.getCreateManNo())||StringUtils.isEmpty(model.getCreateManName())) {
+                String userId = null;
+                String userName = null;
+                try {
+                    UserPayload payload = UserPayload.getCurrUser();
+                    userId = payload.getUserCode();
+                    userName = payload.getUserName();
+                } catch (Exception e) {
+                    userId = "admin";
+                    userName = "admins";
+                }
+                model.setCreateManNo(userId);
+                model.setCreateManName(userName);
+            }
+
+            try {
+                add(model);
+
+                DjPbModel dm = new DjPbModel();
+                dm.setKey(str);
+                dm.setValue(model.getActualFirstNo());
+                lst.add(dm);
+            }catch (Exception ex){
+                System.out.println(ex.getMessage());
+            }
+        }
+
+        rm.setData(lst);
+        rm.setMessage("成功");
+        return rm;
+    }
+
 }

+ 6 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/service/impl/MeterWorkRailwayActualServiceImpl.java

@@ -4407,6 +4407,9 @@ public class MeterWorkRailwayActualServiceImpl extends BaseServiceImpl<MeterWork
                                 }
                             }
                         }
+                        //毛皮分解恢复状态未处理2023年4月20日--zn
+                        grossRec.setValueFlag("1");
+                        meterWorkRailwayReceivedMapper.updateByPrimaryKey(grossRec);
                     }
                 }
                 MeterWorkRailwayActFirst tareModel = meterWorkRailwayActFirstMapper.selectByPrimaryKey(modelTemp.getActualFirst2No());
@@ -4440,6 +4443,9 @@ public class MeterWorkRailwayActualServiceImpl extends BaseServiceImpl<MeterWork
                                 }
                             }
                         }
+                        //毛皮分解恢复状态未处理2023年4月20日--zn
+                        tareRec.setValueFlag("1");
+                        meterWorkRailwayReceivedMapper.updateByPrimaryKey(tareRec);
                     }
                 }
 

+ 21 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/controller/MeterWorkRailwayActualBakController.java

@@ -20,6 +20,8 @@ import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -964,4 +966,23 @@ public class MeterWorkRailwayActualBakController extends BaseRESTfulController {
         }
         return rm;
     }
+
+    //======================eason add 2023-04-14 =============================================
+    @ApiOperation(value = "创建", notes = "根据MeterWorkRailwayActualBak对象创建")
+    @ApiImplicitParam(name = "MeterWorkRailwayActualBak", value = "详细实体MeterWorkRailwayActualBak", required = true, dataType = "MeterWorkRailwayActFirst")
+    @PostMapping(value = "/addNetEmergencyList")
+    @Transactional
+    public RESTfulResult addNetEmergencyList(@RequestBody List<MeterWorkRailwayActualBak> lt) {
+        try {
+            RESTfulResult rm = meterWorkRailwayActualBakService.addNetEmergencyList(lt);
+            if(!rm.isSucceed()) {
+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            }
+            return rm;
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return failed(null, "操作异常,请确认!");
+        }
+    }
 }

+ 2 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/service/IMeterWorkRailwayActualBakService.java

@@ -101,4 +101,6 @@ public interface IMeterWorkRailwayActualBakService extends IBaseService<MeterWor
     String subStr(String str, String flag);
 
     RESTfulResult CopyToActual(List<String> ids, String railwayNo)throws Exception;
+
+    RESTfulResult addNetEmergencyList(List<MeterWorkRailwayActualBak> lt) throws Exception;
 }

+ 194 - 77
src/main/java/com/steerinfo/meterwork/meterworkrailwayactualbak/service/impl/MeterWorkRailwayActualBakServiceImpl.java

@@ -15,6 +15,7 @@ import com.steerinfo.framework.service.pagehelper.PageHelper;
 import com.steerinfo.framework.service.pagehelper.PageList;
 import com.steerinfo.framework.user.UserPayload;
 import com.steerinfo.meterwork.constants.DbConstants;
+import com.steerinfo.meterwork.constants.DjPbModel;
 import com.steerinfo.meterwork.except.MarkerMetException;
 import com.steerinfo.meterwork.meterworkcaractual.model.MeterWorkCarActual;
 import com.steerinfo.meterwork.meterworkcaractualbak.model.MeterWorkCarActualBak;
@@ -2845,86 +2846,202 @@ public class MeterWorkRailwayActualBakServiceImpl extends BaseServiceImpl<MeterW
         return rm;
     }
 
-        private String isSuit(MeterWorkRailwayActualBak model){
+    private String isSuit(MeterWorkRailwayActualBak model){
 
-            //毛重信息
-            if (model.getBaseSpot1No() == null || StringUtils.isEmpty(model.getBaseSpot1No())) {
-                return "毛重计量编号为空";
-            }
-            if (model.getBaseSpot1Name() == null || StringUtils.isEmpty(model.getBaseSpot1Name())) {
-                return "毛重计量名称为空";
-            }
-            if(model.getGrossManNo() == null || StringUtils.isEmpty(model.getGrossManNo())) {
-                return  "毛重计量员编号为空";
-            }
-            if(model.getGrossManName() == null || StringUtils.isEmpty(model.getGrossManName())) {
-                return  "毛重计量员为空";
-            }
-            if (model.getGrossTime() == null || StringUtils.isEmpty(model.getGrossTime().toString())) {
-                return "毛重时间为空";
-            }
-            if (model.getGrossWeight() == null || StringUtils.isEmpty(model.getGrossWeight().toString())) {
-                return "毛重为空";
-            }
-            //皮重信息
-            if (model.getBaseSpot2No() == null || StringUtils.isEmpty(model.getBaseSpot2No())) {
-                return "皮重计量点编号为空";
-            }
-            if (model.getBaseSpot2Name() == null || StringUtils.isEmpty(model.getBaseSpot2Name())) {
-                return "皮重计量点为空";
-            }
-            if(model.getTareManNo() == null || StringUtils.isEmpty(model.getTareManNo())) {
-                return  "皮重计量员编号为空";
-            }
-            if(model.getTareManName() == null || StringUtils.isEmpty(model.getTareManName())) {
-                return "皮重计量员名称为空";
-            }
-            if (model.getTareTime() == null || StringUtils.isEmpty(model.getTareTime().toString())) {
-                return "皮重时间为空";
-            }
-            if (model.getTareWeight() == null || StringUtils.isEmpty(model.getTareWeight().toString())) {
-                return "皮重为空";
-            }
+        //毛重信息
+        if (model.getBaseSpot1No() == null || StringUtils.isEmpty(model.getBaseSpot1No())) {
+            return "毛重计量编号为空";
+        }
+        if (model.getBaseSpot1Name() == null || StringUtils.isEmpty(model.getBaseSpot1Name())) {
+            return "毛重计量名称为空";
+        }
+        if(model.getGrossManNo() == null || StringUtils.isEmpty(model.getGrossManNo())) {
+            return  "毛重计量员编号为空";
+        }
+        if(model.getGrossManName() == null || StringUtils.isEmpty(model.getGrossManName())) {
+            return  "毛重计量员为空";
+        }
+        if (model.getGrossTime() == null || StringUtils.isEmpty(model.getGrossTime().toString())) {
+            return "毛重时间为空";
+        }
+        if (model.getGrossWeight() == null || StringUtils.isEmpty(model.getGrossWeight().toString())) {
+            return "毛重为空";
+        }
+        //皮重信息
+        if (model.getBaseSpot2No() == null || StringUtils.isEmpty(model.getBaseSpot2No())) {
+            return "皮重计量点编号为空";
+        }
+        if (model.getBaseSpot2Name() == null || StringUtils.isEmpty(model.getBaseSpot2Name())) {
+            return "皮重计量点为空";
+        }
+        if(model.getTareManNo() == null || StringUtils.isEmpty(model.getTareManNo())) {
+            return  "皮重计量员编号为空";
+        }
+        if(model.getTareManName() == null || StringUtils.isEmpty(model.getTareManName())) {
+            return "皮重计量员名称为空";
+        }
+        if (model.getTareTime() == null || StringUtils.isEmpty(model.getTareTime().toString())) {
+            return "皮重时间为空";
+        }
+        if (model.getTareWeight() == null || StringUtils.isEmpty(model.getTareWeight().toString())) {
+            return "皮重为空";
+        }
 
-            //结净信息
-            if (model.getNetSpot3No() == null || StringUtils.isEmpty(model.getNetSpot3No())) {
-                return "净重计量点编号为空";
-            }
-            if (model.getNetSpot3Name() == null || StringUtils.isEmpty(model.getNetSpot3Name())) {
-                return "净重计量点名称为空";
-            }
-            if(model.getNetManNo() == null || StringUtils.isEmpty(model.getNetManNo())) {
-                return "净重计量员编号为空";
-            }
-            if(model.getNetManName() == null || StringUtils.isEmpty(model.getNetManName())) {
-                return  "净重计量员为空";
-            }
-            if (model.getNetTime() == null || StringUtils.isEmpty(model.getNetTime().toString())) {
-                return "净重时间为空";
-            }
-            if (model.getNetWeight() == null || StringUtils.isEmpty(model.getNetWeight().toString())) {
-                return "净重为空";
-            }
-            //创建人、创建时间
-            if(model.getCreateManName() == null || StringUtils.isEmpty(model.getCreateManName())) {
-                return  "创建人为空";
-            }
-            if (model.getCreateTime() == null || StringUtils.isEmpty(model.getCreateTime().toString())) {
-                return "创建时间为空";
-            }
-            if (model.getDataSource() == null || StringUtils.isEmpty(model.getDataSource())) {
-                return "计量数据来源为空";
-            }
-            if (model.getUploadFlag() == null || StringUtils.isEmpty(model.getUploadFlag())){
-                return "同步标志为空";
-            }
-            if (model.getValueFlag() == null || StringUtils.isEmpty(model.getValueFlag())){
-                return "数据状态为空";
-            }
-            if(model.getPredictionNo() == null){
-                return "委托编号为空";
+        //结净信息
+        if (model.getNetSpot3No() == null || StringUtils.isEmpty(model.getNetSpot3No())) {
+            return "净重计量点编号为空";
+        }
+        if (model.getNetSpot3Name() == null || StringUtils.isEmpty(model.getNetSpot3Name())) {
+            return "净重计量点名称为空";
+        }
+        if(model.getNetManNo() == null || StringUtils.isEmpty(model.getNetManNo())) {
+            return "净重计量员编号为空";
+        }
+        if(model.getNetManName() == null || StringUtils.isEmpty(model.getNetManName())) {
+            return  "净重计量员为空";
+        }
+        if (model.getNetTime() == null || StringUtils.isEmpty(model.getNetTime().toString())) {
+            return "净重时间为空";
+        }
+        if (model.getNetWeight() == null || StringUtils.isEmpty(model.getNetWeight().toString())) {
+            return "净重为空";
+        }
+        //创建人、创建时间
+        if(model.getCreateManName() == null || StringUtils.isEmpty(model.getCreateManName())) {
+            return  "创建人为空";
+        }
+        if (model.getCreateTime() == null || StringUtils.isEmpty(model.getCreateTime().toString())) {
+            return "创建时间为空";
+        }
+        if (model.getDataSource() == null || StringUtils.isEmpty(model.getDataSource())) {
+            return "计量数据来源为空";
+        }
+        if (model.getUploadFlag() == null || StringUtils.isEmpty(model.getUploadFlag())){
+            return "同步标志为空";
+        }
+        if (model.getValueFlag() == null || StringUtils.isEmpty(model.getValueFlag())){
+            return "数据状态为空";
+        }
+        if(model.getPredictionNo() == null){
+            return "委托编号为空";
+        }
+        return "1";
+    }
+
+    //=========================eason add 2023-04-14=====================================
+    @Override
+    public RESTfulResult addNetEmergencyList(List<MeterWorkRailwayActualBak> lt) throws Exception {
+        List<DjPbModel> lst=new ArrayList<>();
+        RESTfulResult rm = new RESTfulResult();
+        rm.setCode("200");
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+        String afl = sdf.format(new Date());
+
+        for(MeterWorkRailwayActualBak model:lt){
+            String str=model.getActualNo();
+
+            MeterWorkRailwayActFirstBak mwcaf1 = new MeterWorkRailwayActFirstBak();
+            MeterWorkRailwayActFirstBak mwcaf2 = new MeterWorkRailwayActFirstBak();
+            MeterWorkRailwayActualBak actualRow = new MeterWorkRailwayActualBak();
+            String predictionNo = model.getPredictionNo();
+
+            //毛重
+            String actualFirstNo = sdf.format(new Date()) + meterWorkRailwayActFirstBakMapper.getNewID(afl);
+            mwcaf1.setActualFirstNo(actualFirstNo);
+            mwcaf1.setRailwayNo(model.getRailwayNo());
+            mwcaf1.setMeterWeight(model.getGrossWeight());
+            mwcaf1.setRailwayTypeNo(model.getRailwayTypeNo());
+            mwcaf1.setRailwayTypeName(model.getRailwayTypeName());
+            mwcaf1.setWeightType("0");
+            mwcaf1.setCreateManNo(model.getGrossManNo());
+            mwcaf1.setCreateManName(model.getGrossManName());
+            mwcaf1.setCreateTime(model.getGrossTime());
+            mwcaf1.setBaseSpotNo(model.getBaseSpot1No());
+            mwcaf1.setBaseSpotName(model.getBaseSpot1Name());
+            mwcaf1.setValueFlag("2");
+            mwcaf1.setCheckFlag("0");
+            mwcaf1.setDataSource("4");
+            mwcaf1.setMeterMode("3");
+            mwcaf1.setIsPreSacale("0");
+            meterWorkRailwayActFirstBakMapper.insertSelective(mwcaf1);
+            //皮重
+            String actualSecondNo = sdf.format(new Date()) + meterWorkRailwayActFirstBakMapper.getNewID(afl);
+            mwcaf2.setActualFirstNo(actualSecondNo);
+            mwcaf2.setRailwayNo(model.getRailwayNo());
+            mwcaf2.setMeterWeight(model.getTareWeight());
+            mwcaf2.setWeightType("1");
+            mwcaf2.setRailwayTypeNo(model.getRailwayTypeNo());
+            mwcaf2.setRailwayTypeName(model.getRailwayTypeName());
+            mwcaf2.setCreateManNo(model.getGrossManNo());
+            mwcaf2.setCreateManName(model.getGrossManName());
+            mwcaf2.setCreateTime(model.getTareTime());
+            mwcaf2.setBaseSpotNo(model.getBaseSpot2No());
+            mwcaf2.setBaseSpotName(model.getBaseSpot2Name());
+            mwcaf2.setValueFlag("2");
+            mwcaf2.setCheckFlag("0");
+            mwcaf2.setDataSource("4");
+            mwcaf2.setMeterMode("3");
+            mwcaf2.setIsPreSacale("0");
+            meterWorkRailwayActFirstBakMapper.insertSelective(mwcaf2);
+
+            //将委托中的编号和收发货单位和一次数据等数据拷贝进结净数据中
+            MeterWorkRailwayActualBak mwca1 = meterWorkRailwayActualBakMapper.manualAdd(actualFirstNo, actualSecondNo);
+            BeanUtils.copyProperties(mwca1, actualRow);
+
+            String no = meterWorkRailwayActualBakMapper.getNewID(sdf.format(new Date()));
+            actualRow.setActualNo(sdf.format(new Date()) + no);
+            actualRow.setRailwayTypeNo(model.getRailwayTypeNo());
+            actualRow.setRailwayTypeName(model.getRailwayTypeName());
+            actualRow.setNetTime(model.getNetTime());
+            actualRow.setNetMode(DbConstants.TYPE);
+            actualRow.setNote("手动录入");
+            actualRow.setUploadFlag("1");
+            actualRow.setIsPreSacale("1");
+            actualRow.setValueFlag("1");
+            actualRow.setGrossMode("3");
+            actualRow.setTareMode("3");
+            actualRow.setCreateManName(model.getGrossManName());
+            actualRow.setCreateTime(new Date());
+            actualRow.setNetTime(model.getNetTime());
+            actualRow.setDataSource("4");
+            actualRow.setPredictionType("1");
+            actualRow.setUpdateManNo("system");
+            actualRow.setUpdateManName("手动录入");
+            actualRow.setUpdateTime(new Date());
+            actualRow.setPredictionNo(predictionNo);
+            actualRow.setNetWeight(mwcaf1.getMeterWeight().subtract(mwcaf2.getMeterWeight()));
+            if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
+                actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
+                actualRow.setNetSpot3Name(actualRow.getBaseSpot1Name());
+                actualRow.setNetManNo(actualRow.getGrossManNo());
+                actualRow.setNetManName(actualRow.getGrossManName());
+                actualRow.setNetTime(actualRow.getGrossTime());
+                actualRow.setCreateTime(actualRow.getGrossTime());
+                actualRow.setCreateManName(actualRow.getGrossManName());
+            }else {
+                actualRow.setNetSpot3No(actualRow.getBaseSpot2No());
+                actualRow.setNetSpot3Name(actualRow.getBaseSpot2Name());
+                actualRow.setNetManNo(actualRow.getTareManNo());
+                actualRow.setNetManName(actualRow.getTareManName());
+                actualRow.setNetTime(actualRow.getTareTime());
+                actualRow.setCreateTime(actualRow.getTareTime());
+                actualRow.setCreateManName(actualRow.getTareManName());
             }
-            return "1";
+            meterWorkRailwayActualBakMapper.insertSelective(actualRow);
+
+            try {
+                add(model);
+                DjPbModel dm = new DjPbModel();
+                dm.setKey(str);
+                dm.setValue(actualFirstNo);
+                lst.add(dm);
+            }catch (Exception ex){ }
         }
 
+        rm.setData(lst);
+        rm.setMessage("成功");
+        return rm;
+    }
+
 }