dengyj 3 anos atrás
pai
commit
8bae7a174f
27 arquivos alterados com 4498 adições e 568 exclusões
  1. 73 1
      src/main/java/com/steerinfo/baseinfo/meterbaseoperationlog/mapper/MeterBaseOperationLogMapper.xml
  2. 44 0
      src/main/java/com/steerinfo/baseinfo/meterbaseuserspotconfig/service/impl/MeterBaseUserSpotConfigServiceImpl.java
  3. 9 4
      src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/controller/MeterWorkCarMeterTimeController.java
  4. 4 0
      src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/mapper/MeterWorkCarMeterTimeMapper.java
  5. 65 0
      src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/mapper/MeterWorkCarMeterTimeMapper.xml
  6. 3 0
      src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/service/IMeterWorkCarMeterTimeService.java
  7. 316 4
      src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/service/impl/MeterWorkCarMeterTimeServiceImpl.java
  8. 16 1
      src/main/java/com/steerinfo/meterwork/meterworkcarnoidentify/service/impl/MeterWorkCarnoIdentifyServiceImpl.java
  9. 85 5
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/controller/MeterWorkCheckFirstActualController.java
  10. 22 1
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/mapper/MeterWorkCheckFirstActualMapper.java
  11. 827 27
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/mapper/MeterWorkCheckFirstActualMapper.xml
  12. 216 0
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/MeterWorkCheckFirstActualRailwayTemp.java
  13. 304 0
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayActualCountCheckNum.java
  14. 141 0
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayFirstActualImgData.java
  15. 196 0
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayFirstCountCheckNum.java
  16. 14 5
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/service/IMeterWorkCheckFirstActualService.java
  17. 230 14
      src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/service/impl/MeterWorkCheckFirstActualServiceImpl.java
  18. 3 0
      src/main/java/com/steerinfo/meterwork/meterworkdatacount/mapper/MeterWorkDataCountMapper.xml
  19. 515 232
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/mapper/MeterWorkRailwayActFirstMapper.xml
  20. 173 7
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/model/MeterWorkRailwayActFirst.java
  21. 32 10
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java
  22. 506 223
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/mapper/MeterWorkRailwayActualMapper.xml
  23. 166 1
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/model/MeterWorkRailwayActual.java
  24. 8 2
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/service/impl/MeterWorkRailwayActualServiceImpl.java
  25. 292 8
      src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.xml
  26. 166 1
      src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/model/MeterWorkRailwayReceived.java
  27. 72 22
      src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/service/impl/MeterWorkRailwayReceivedServiceImpl.java

+ 73 - 1
src/main/java/com/steerinfo/baseinfo/meterbaseoperationlog/mapper/MeterBaseOperationLogMapper.xml

@@ -868,7 +868,43 @@
       left join meter_work_car_actual_first B
       on A.operation_id = B.actual_first_no
       where 1 = 1
-      and A.operation_page like '%汽车衡一次数据维护%'
+      and A.operation_page like '%汽车衡一次数据维护%' and A.OPERATION_FUNCTION !='毛皮结净'
+    )
+    union
+    (
+      select
+      A.ID,
+      A.CREATE_MAN_NO,
+      A.CREATE_MAN_NAME,
+      A.CREATE_TIME,
+      A.UPDATE_MAN_NO,
+      A.UPDATE_MAN_NAME,
+      A.UPDATE_TIME,
+      A.DELETE_MAN_NO,
+      A.DELETE_MAN_NAME,
+      A.DELETE_TIME,
+      A.OPERATION_PAGE,
+      A.OPERATION_FUNCTION,
+      A.OPERATION_ID,
+      A.OPERATION_PREDICTION_NO,
+      A.OPERATION_CARN_NO,
+      A.OPERATION_BEFORE_FIX,
+      A.OPERATION_AFTER_FIX,
+      A.LOG_TYPE,
+      A.LOG_TYPE_CODE,
+      B.NET_SPOT3_NAME BASE_SPOT_NAME,
+      case when B.value_flag != '0' then '继续'
+      else '停止' end valueFlag,
+      case when B.net_mode = '1' then '远程计量'
+      when B.net_mode = '2' then '智能计量'
+      when B.net_mode = '3' then '手工计量'
+      else null end meterMode,
+      B.note note
+      from meter_base_operation_log A
+      left join meter_work_car_actual B
+      on A.operation_id = B.actual_no
+      where 1 = 1
+      and A.operation_page like '%汽车衡一次数据维护%' and A.OPERATION_FUNCTION ='毛皮结净'
     )
     union
     (
@@ -1081,6 +1117,40 @@
       on A.operation_id = B.actual_first_no
       where A.operation_page like '%动轨数据维护%'
       )
+      union
+      (
+        select
+        A.ID,
+        A.CREATE_MAN_NO,
+        A.CREATE_MAN_NAME,
+        A.CREATE_TIME,
+        A.UPDATE_MAN_NO,
+        A.UPDATE_MAN_NAME,
+        A.UPDATE_TIME,
+        A.DELETE_MAN_NO,
+        A.DELETE_MAN_NAME,
+        A.DELETE_TIME,
+        A.OPERATION_PAGE,
+        A.OPERATION_FUNCTION,
+        A.OPERATION_ID,
+        A.OPERATION_PREDICTION_NO,
+        A.OPERATION_CARN_NO,
+        A.OPERATION_BEFORE_FIX,
+        A.OPERATION_AFTER_FIX,
+        A.LOG_TYPE,
+        A.LOG_TYPE_CODE,
+        '' BASE_SPOT_NAME,
+        '' valueFlag,
+        '' meterMode,
+        '' note
+        from meter_base_operation_log A
+        where A.operation_page not like '%动轨数据维护%'
+        and A.operation_page not like '%轨道衡从表数据维护%'
+        and A.operation_page not like '%动轨净重数据维护%'
+        and A.operation_page not like '%轨道衡净重数据维护%'
+        and A.operation_page not like '%轨道衡一次数据维护%'
+        and A.operation_page not like '%汽车衡净重数据维护%'
+      )
     )
     where 1 = 1
     <if test="operationPageStr != null and operationPageStr != ''">
@@ -1154,8 +1224,10 @@
 
   <select id="operationPageInfo" parameterType="java.util.HashMap" resultType="String">
     select distinct A.operation_page from meter_base_operation_log A
+    order by A.operation_page
   </select>
   <select id="operationFunctionInfo" parameterType="java.util.HashMap" resultType="String">
     select distinct A.operation_function from meter_base_operation_log A
+    order by A.operation_function
   </select>
 </mapper>

+ 44 - 0
src/main/java/com/steerinfo/baseinfo/meterbaseuserspotconfig/service/impl/MeterBaseUserSpotConfigServiceImpl.java

@@ -1,6 +1,8 @@
 package com.steerinfo.baseinfo.meterbaseuserspotconfig.service.impl;
 
 import cn.hutool.core.lang.Assert;
+import com.steerinfo.baseinfo.meterbaseoperationlog.mapper.MeterBaseOperationLogMapper;
+import com.steerinfo.baseinfo.meterbaseoperationlog.model.MeterBaseOperationLog;
 import com.steerinfo.baseinfo.meterbaseuserspotconfig.mapper.MeterBaseUserSpotConfigMapper;
 import com.steerinfo.baseinfo.meterbaseuserspotconfig.model.MeterBaseUserSpotConfig;
 import com.steerinfo.baseinfo.meterbaseuserspotconfig.service.IMeterBaseUserSpotConfigService;
@@ -39,6 +41,9 @@ public class MeterBaseUserSpotConfigServiceImpl extends BaseServiceImpl<MeterBas
     @Autowired(required = false)
     private MeterBaseUserSpotConfigMapper meterBaseUserSpotConfigMapper;
 
+    @Autowired(required = false)
+    private MeterBaseOperationLogMapper meterBaseOperationLogMapper;
+
     @Override
     protected IBaseMapper<MeterBaseUserSpotConfig, String> getMapper() {
         return meterBaseUserSpotConfigMapper;
@@ -84,6 +89,19 @@ public class MeterBaseUserSpotConfigServiceImpl extends BaseServiceImpl<MeterBas
                     model.setCreateTime(new Date());
                     meterBaseUserSpotConfigMapper.insertSelective(model);
                 }
+                MeterBaseOperationLog logModel = new MeterBaseOperationLog();
+                logModel.setId(PublicMethod.IdCreate(2));
+                logModel.setCreateManNo(userId);
+                logModel.setCreateManName(userName);
+                logModel.setCreateTime(new Date());
+                logModel.setOperationPage("web端-日工作量用户秤点信息配置表");
+                logModel.setOperationFunction("秤点分配");
+                logModel.setOperationId("");
+                logModel.setOperationPredictionNo("");
+                logModel.setOperationCarnNo("");
+                logModel.setOperationAfterFix("用户账号:" + model.getUserCode() + ", 用户名称:" + model.getUserName() + ", 秤点编号:" + model.getBaseSpotNo() + ", 秤点名称:"
+                + model.getBaseSpotName());
+                meterBaseOperationLogMapper.insertSelective(logModel);
                 count ++;
             }
             rm.setSucceed(true);
@@ -108,7 +126,33 @@ public class MeterBaseUserSpotConfigServiceImpl extends BaseServiceImpl<MeterBas
     public void deleteUserSpot(List<String> ids) {
         try {
             for (String id : ids) {
+
+                String userId = "";
+                String userName = "";
+                try{
+                    UserPayload userPayload = UserPayload.getCurrUser();
+                    userId = userPayload.getUserCode();
+                    userName = userPayload.getUserName();
+                }catch(Exception e) {
+                    userId = "admin";
+                    userName = "admins";
+                }
+                MeterBaseUserSpotConfig model = meterBaseUserSpotConfigMapper.selectByPrimaryKey(id);
                 meterBaseUserSpotConfigMapper.deleteByPrimaryKey(id);
+
+                MeterBaseOperationLog logModel = new MeterBaseOperationLog();
+                logModel.setId(PublicMethod.IdCreate(2));
+                logModel.setCreateManNo(userId);
+                logModel.setCreateManName(userName);
+                logModel.setCreateTime(new Date());
+                logModel.setOperationPage("web端-日工作量用户秤点信息配置表");
+                logModel.setOperationFunction("取消分配");
+                logModel.setOperationId("");
+                logModel.setOperationPredictionNo("");
+                logModel.setOperationCarnNo("");
+                logModel.setOperationAfterFix("用户账号:" + model.getUserCode() + ", 用户名称:" + model.getUserName() + ", 秤点编号:" + model.getBaseSpotNo() + ", 秤点名称:"
+                        + model.getBaseSpotName());
+                meterBaseOperationLogMapper.insertSelective(logModel);
             }
         }catch (Exception e){
             throw e;

+ 9 - 4
src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/controller/MeterWorkCarMeterTimeController.java

@@ -21,10 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.ArrayList;
+import java.util.*;
 import java.math.BigDecimal;
 
 /**
@@ -98,6 +95,14 @@ public class MeterWorkCarMeterTimeController extends BaseRESTfulController {
         return success(list);
     }
 
+    @ApiOperation(value="获取计量及时性分析班组统计", notes="分页查询")
+    //@RequiresPermissions("meterworkcarmetertime:view")
+    @PostMapping(value = "/getCarMeterTimeAndCarFirstCount")
+    public RESTfulResult getCarMeterTimeAndCarFirstCount(@RequestBody(required = false) HashMap parmas){
+        List<Map<String, Object>> list = meterWorkCarMeterTimeService.getCarMeterTimeAndCarFirstCount(parmas);
+        return success(list);
+    }
+
     @ApiOperation(value="新增汽车衡计量时间")
     @ApiImplicitParam(name = "meterWorkCarMeterTime", value = "详细实体meterWorkCarMeterTime", required = true, dataType = "MeterWorkCarMeterTime")
     @PostMapping(value = "/insert")

+ 4 - 0
src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/mapper/MeterWorkCarMeterTimeMapper.java

@@ -17,4 +17,8 @@ public interface MeterWorkCarMeterTimeMapper extends IBaseMapper<MeterWorkCarMet
 
     List<PointDetailsVo> selectPointDetails(PointDetailsBo pointDetailsBo);
     List<CarMeterTimeAndCarFirst> carMeterTimeAndCarFirstBySpot(HashMap<String, Object> obj);
+
+    List<CarMeterTimeAndCarFirst> getSpotGroupBy(HashMap parmas);
+
+    List<CarMeterTimeAndCarFirst> getCarMeterTimeAndCarFirstCount(HashMap parmas);
 }

+ 65 - 0
src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/mapper/MeterWorkCarMeterTimeMapper.xml

@@ -538,6 +538,71 @@
           #{item}
         </foreach>
       </if>
+      <if test="createManNo != null and createManNo != ''">
+        and t1.create_man_no in
+        <foreach collection="createManNo" item="item" open="(" separator="," close=")">
+          #{item}
+        </foreach>
+      </if>
+    </where>
+    order by t1.CREATE_TIME desc
+  </select>
+  <select id="getSpotGroupBy"
+          resultType="com.steerinfo.meterwork.meterworkcarmetertime.model.CarMeterTimeAndCarFirst">
+        select
+        t1.base_spot_no baseSpotNo,
+        t1.base_spot_name baseSpotName
+        from METER_WORK_CAR_METER_TIME t
+        left join meter_work_car_actual_first t1
+        on t.actual_first_no = t1.actual_first_no
+        <where>
+          and t1.base_spot_no is not null
+          <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>
+        </where>
+        group by t1.base_spot_no,t1.base_spot_name
+        order by t1.base_spot_name asc
+  </select>
+  <select id="getCarMeterTimeAndCarFirstCount"
+          resultType="com.steerinfo.meterwork.meterworkcarmetertime.model.CarMeterTimeAndCarFirst">
+    select t1.BASE_SPOT_NO    baseSpotNo,
+    t1.BASE_SPOT_NAME  baseSpotName,
+    t.TOTAL_NUM totalNum,
+    t1.create_man_no createManNo,
+    t1.create_man_name createManName
+    from METER_WORK_CAR_METER_TIME t
+    left join meter_work_car_actual_first t1
+    on t.actual_first_no = t1.actual_first_no
+    <where>
+      and t1.base_spot_no is not null
+      <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="baseSpotName != null and baseSpotName != ''">
+        and t1.BASE_SPOT_NAME = #{baseSpotName}
+      </if>
+      <if test="baseSpotNo != null and baseSpotNo != ''">
+        and t1.BASE_SPOT_NO = #{baseSpotNo}
+      </if>
+      <if test="baseSpotNoStr != null and baseSpotNoStr != ''">
+        and t1.base_spot_no in
+        <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+          #{item}
+        </foreach>
+      </if>
+      <if test="createManNoStr != null and createManNoStr != ''">
+        and t1.create_man_no in
+        <foreach collection="manNoStr" item="item" open="(" separator="," close=")">
+          #{item}
+        </foreach>
+      </if>
+      <if test="createManNo != null and createManNo != ''">
+        and t1.create_man_no in
+        <foreach collection="createManNo" item="item" open="(" separator="," close=")">
+          #{item}
+        </foreach>
+      </if>
     </where>
     order by t1.CREATE_TIME desc
   </select>

+ 3 - 0
src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/service/IMeterWorkCarMeterTimeService.java

@@ -9,6 +9,7 @@ import java.util.Date;
 import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * MeterWorkCarMeterTime服务接口:
@@ -31,4 +32,6 @@ public interface IMeterWorkCarMeterTimeService extends IBaseService<MeterWorkCar
     List<PointDetailsVo> getPointDetails(PointDetailsBo pointDetailsBo);
 
     PageList<CarMeterTimeAndCarFirst> carMeterTimeAndCarFirstBySpot(HashMap<String, Object> params, Integer pageNum, Integer pageSize);
+
+    List<Map<String, Object>> getCarMeterTimeAndCarFirstCount(HashMap parmas);
 }

+ 316 - 4
src/main/java/com/steerinfo/meterwork/meterworkcarmetertime/service/impl/MeterWorkCarMeterTimeServiceImpl.java

@@ -1,5 +1,7 @@
 package com.steerinfo.meterwork.meterworkcarmetertime.service.impl;
 
+import com.rabbitmq.client.Return;
+import com.steerinfo.baseinfo.combaseinfo.mapper.ComBaseInfoMapper;
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.framework.service.impl.BaseServiceImpl;
 import com.steerinfo.framework.service.pagehelper.PageHelper;
@@ -8,12 +10,14 @@ import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualF
 import com.steerinfo.meterwork.meterworkcarmetertime.model.*;
 import com.steerinfo.meterwork.meterworkcarmetertime.mapper.MeterWorkCarMeterTimeMapper;
 import com.steerinfo.meterwork.meterworkcarmetertime.service.IMeterWorkCarMeterTimeService;
+import com.steerinfo.util.StringUtils;
+import org.apache.shiro.crypto.hash.Hash;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import java.util.Date;
+
+import javax.annotation.Resource;
+import java.util.*;
 import java.math.BigDecimal;
-import java.util.HashMap;
-import java.util.List;
 
 /**
  * MeterWorkCarMeterTime服务实现:
@@ -31,9 +35,12 @@ import java.util.List;
 @Service(value = "meterWorkCarMeterTimeService")
 public class MeterWorkCarMeterTimeServiceImpl extends BaseServiceImpl<MeterWorkCarMeterTime, String> implements IMeterWorkCarMeterTimeService {
 
-    @Autowired
+    @Resource
     private MeterWorkCarMeterTimeMapper meterWorkCarMeterTimeMapper;
 
+    @Resource
+    private ComBaseInfoMapper comBaseInfoMapper;
+
     @Override
     protected IBaseMapper<MeterWorkCarMeterTime, String> getMapper() {
         return meterWorkCarMeterTimeMapper;
@@ -66,4 +73,309 @@ public class MeterWorkCarMeterTimeServiceImpl extends BaseServiceImpl<MeterWorkC
         return pageInfo;
     }
 
+    @Override
+    public List<Map<String, Object>> getCarMeterTimeAndCarFirstCount(HashMap parmas) {
+        //汇总站点
+        List<CarMeterTimeAndCarFirst> spotGroupBy = meterWorkCarMeterTimeMapper.getSpotGroupBy(parmas);
+        //查询班组
+        //计量一班
+        HashMap<String, Object> hashMap1=new HashMap<>();
+        hashMap1.put("pBaseCode","001060001");
+        List<String> list1 = comBaseInfoMapper.matterNoByBaseCode(hashMap1);
+        //计量二班
+        HashMap<String, Object> hashMap2=new HashMap<>();
+        hashMap2.put("pBaseCode","001060002");
+        List<String> list2 = comBaseInfoMapper.matterNoByBaseCode(hashMap2);
+        //计量三班
+        HashMap<String, Object> hashMap3=new HashMap<>();
+        hashMap3.put("pBaseCode","001060003");
+        List<String> list3 = comBaseInfoMapper.matterNoByBaseCode(hashMap3);
+        //计量四班
+        HashMap<String, Object> hashMap4=new HashMap<>();
+        hashMap4.put("pBaseCode","001060004");
+        List<String> list4 = comBaseInfoMapper.matterNoByBaseCode(hashMap4);
+
+        List<CarMeterTimeAndCarFirst> lists = meterWorkCarMeterTimeMapper.getCarMeterTimeAndCarFirstCount(parmas);
+
+        lists.stream().filter(item->list1.contains(item.getCreateManNo()));
+
+        List<Map<String, Object>> listMessage=new ArrayList<>();
+
+        if (lists==null||list1.size()==0) {
+            return listMessage;
+        }
+
+        for (CarMeterTimeAndCarFirst carMeterTimeAndCarFirst : spotGroupBy) {
+            //总车数
+            long count = lists.stream().filter(item -> StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())).count();
+
+
+            //计量一班总车数
+            long sumCount1 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list1.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                            &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(item.getBaseSpotName())
+                            && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                            && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                            && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())).count();
+            //计量二班总车数
+            long sumCount2 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list2.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())).count();
+            //计量三班总车数
+            long sumCount3 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list3.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())).count();
+            //计量四班总车数
+            long sumCount4 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list4.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())).count();
+
+
+            //查询每个站点包含计量一班车数总时间小于60秒
+            //查询计量一班的明细
+            //parmas.put("createManNo",list1);
+            //List<CarMeterTimeAndCarFirst> lists1 = meterWorkCarMeterTimeMapper.carMeterTimeAndCarFirstBySpot(parmas);
+            long count1 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list1.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())<=60).count();
+            //查询计量二班的明细
+            //parmas.put("createManNo",list2);
+            //List<CarMeterTimeAndCarFirst> lists2 = meterWorkCarMeterTimeMapper.carMeterTimeAndCarFirstBySpot(parmas);
+            long count2 = (list2==null||list2.size()==0)?0: lists.stream().filter(item -> list2.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())<=60).count();
+            //查询计量三班的明细
+            //parmas.put("createManNo",list3);
+            //List<CarMeterTimeAndCarFirst> lists3 = meterWorkCarMeterTimeMapper.carMeterTimeAndCarFirstBySpot(parmas);
+            long count3 = (list3==null||list3.size()==0)?0: lists.stream().filter(item -> list3.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())<=60).count();
+            //查询计量四班的明细
+            //parmas.put("createManNo",list4);
+            //List<CarMeterTimeAndCarFirst> lists4 = meterWorkCarMeterTimeMapper.carMeterTimeAndCarFirstBySpot(parmas);
+            long count4 = (list4==null||list4.size()==0)?0: lists.stream().filter(item -> list4.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())<=60).count();
+
+            //总车数
+            long sumCount = count1+count2+count3+count4;
+            //60s及时率
+            String v =  String.format("%.2f",(sumCount* 1.0) / (count * 1.0)*100) ;
+
+
+            //查询每个站点包含计量一班车数总时间大于=60秒小于120
+            //查询计量一班的明细
+            long count21 = (list1==null||list1.size()==0)?0: lists.stream().filter(item ->list1.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>60&&Integer.parseInt(item.getTotalNum())<=120).count();
+            //查询计量二班的明细
+            long count22 = (list2==null||list2.size()==0)?0: lists.stream().filter(item ->list2.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>60&&Integer.parseInt(item.getTotalNum())<=120).count();
+            //查询计量三班的明细
+            long count23 = (list3==null||list3.size()==0)?0: lists.stream().filter(item ->list3.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>60&&Integer.parseInt(item.getTotalNum())<=120).count();
+            //查询计量四班的明细
+            long count24 = (list4==null||list4.size()==0)?0: lists.stream().filter(item ->list4.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>60&&Integer.parseInt(item.getTotalNum())<=120).count();
+            //总车数
+            long sum2Count = count21+count22+count23+count24;
+            String v2 =  String.format("%.2f",(sum2Count* 1.0) / (count * 1.0)*100);
+
+            //查询每个站点包含计量一班车数总时间大于=60秒小于120
+            //查询计量一班的明细
+            long count31 = (list1==null||list1.size()==0)?0: lists.stream().filter(item -> list1.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>120).count();
+            //查询计量二班的明细
+            long count32 = (list2==null||list2.size()==0)?0: lists.stream().filter(item -> list2.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>120).count();
+            //查询计量三班的明细
+            long count33 = (list3==null||list3.size()==0)?0: lists.stream().filter(item -> list3.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>120).count();
+            //查询计量四班的明细
+            long count34 = (list4==null||list4.size()==0)?0: lists.stream().filter(item -> list4.contains(item.getCreateManNo())//判断班组中的人是否存在于班组中
+                    &&StringUtils.isNotEmpty(item.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(item.getBaseSpotName())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && StringUtils.isNotEmpty(carMeterTimeAndCarFirst.getBaseSpotName())
+                    && item.getBaseSpotNo().equals(carMeterTimeAndCarFirst.getBaseSpotNo())
+                    && item.getBaseSpotName().equals(carMeterTimeAndCarFirst.getBaseSpotName())
+                    &&Integer.parseInt(item.getTotalNum())>120).count();
+            //总车数
+            long sum3Count = count31+count32+count33+count34;
+            String v3 = String.format("%.2f",count==0?0:(sum3Count* 1.0) / (count * 1.0)*100) ;
+
+            //一班<60及时率
+            String V11 = String.format("%.2f",sumCount1==0?0:(count1* 1.0) / (sumCount1 * 1.0)*100) ;
+            //二班<60及时率
+            String V12 = String.format("%.2f",sumCount2==0?0:(count2* 1.0) / (sumCount2 * 1.0)*100) ;
+            //三班<60及时率
+            String V13 = String.format("%.2f",sumCount3==0?0:(count3* 1.0) / (sumCount3 * 1.0)*100) ;
+            //四班<60及时率
+            String V14 = String.format("%.2f",sumCount4==0?0:(count4* 1.0) / (sumCount4 * 1.0)*100) ;
+
+
+            //一班120-60及时率
+            String V21 = String.format("%.2f",sumCount1==0?0:(count21* 1.0) / (sumCount1 * 1.0)*100) ;
+            //二班120-60及时率
+            String V22 = String.format("%.2f",sumCount2==0?0:(count22* 1.0) / (sumCount2 * 1.0)*100) ;
+            //三班120-60及时率
+            String V23 = String.format("%.2f",sumCount3==0?0:(count23* 1.0) / (sumCount3 * 1.0)*100) ;
+            //四班120-60及时率
+            String V24 = String.format("%.2f",sumCount4==0?0:(count24* 1.0) / (sumCount4 * 1.0)*100) ;
+
+
+            //一班>120及时率
+            String V31 = String.format("%.2f",sumCount1==0?0:(count31* 1.0) / (sumCount1 * 1.0)*100) ;
+            //二班>120及时率
+            String V32 = String.format("%.2f",sumCount2==0?0:(count32* 1.0) / (sumCount2 * 1.0)*100) ;
+            //三班>120及时率
+            String V33 = String.format("%.2f",sumCount3==0?0:(count33* 1.0) / (sumCount3 * 1.0)*100) ;
+            //四班>120及时率
+            String V34 = String.format("%.2f",sumCount4==0?0:(count34* 1.0) / (sumCount4 * 1.0)*100) ;
+
+            if(sumCount1!=(count1+count21+count31)){
+                System.out.println("1:"+carMeterTimeAndCarFirst.getBaseSpotName());
+            }
+
+            if(sumCount2!=(count2+count22+count32)){
+                System.out.println("2:"+carMeterTimeAndCarFirst.getBaseSpotName());
+            }
+
+            if(sumCount3!=(count3+count23+count33)){
+                System.out.println("3:"+carMeterTimeAndCarFirst.getBaseSpotName());
+            }
+
+            if(sumCount4!=(count4+count24+count34)){
+                System.out.println("4:"+carMeterTimeAndCarFirst.getBaseSpotName());
+            }
+
+            HashMap<String,Object> map =new HashMap<>();
+            map.put("baseSpotNo",carMeterTimeAndCarFirst.getBaseSpotNo());
+            map.put("baseSpotName",carMeterTimeAndCarFirst.getBaseSpotName());
+            map.put("count",count);
+            map.put("count1",count1);
+            map.put("count2",count2);
+            map.put("count3",count3);
+            map.put("count4",count4);
+            map.put("count21",count21);
+            map.put("count22",count22);
+            map.put("count23",count23);
+            map.put("count24",count24);
+            map.put("count31",count31);
+            map.put("count32",count32);
+            map.put("count33",count33);
+            map.put("count34",count34);
+
+            map.put("sumCount1",sumCount1);
+            map.put("sumCount2",sumCount2);
+            map.put("sumCount3",sumCount3);
+            map.put("sumCount4",sumCount4);
+            map.put("sumCountSum",sumCount1+sumCount2+sumCount3+sumCount4);
+
+            map.put("sumCount",sumCount);
+            map.put("sum2Count",sum2Count);
+            map.put("sum3Count",sum3Count);
+
+            map.put("V11",V11);
+            map.put("V12",V12);
+            map.put("V13",V13);
+            map.put("V14",V14);
+            map.put("V21",V21);
+            map.put("V22",V22);
+            map.put("V23",V23);
+            map.put("V24",V24);
+            map.put("V31",V31);
+            map.put("V32",V32);
+            map.put("V33",V33);
+            map.put("V34",V34);
+
+            map.put("v",v);
+            map.put("v2",v2);
+            map.put("v3",v3);
+            listMessage.add(map);
+        }
+
+        //查询班组
+        return listMessage;
+    }
+
 }

+ 16 - 1
src/main/java/com/steerinfo/meterwork/meterworkcarnoidentify/service/impl/MeterWorkCarnoIdentifyServiceImpl.java

@@ -77,12 +77,16 @@ public class MeterWorkCarnoIdentifyServiceImpl extends BaseServiceImpl<MeterWork
             for(MeterBaseSpotInfo spot: spotModels) {
                 //一次计量车数
                 long countCarFirst = 0L;
+                //车号识别率=(一次计量车数-(大厅修正车号数+Web修正车号数))/一次计量车数
+                double countCarIdentifyRate = 0;
                 //枪机车号使用数
                 long countGunUsedIdentify = 0L;
                 //球机车号使用数
                 long countBallUsedIdentify = 0L;
                 //扫码车号使用数
                 long countScanCarIdentify = 0L;
+                //扫码车号计量比例=扫码车号使用数/一次计量车数
+                double countScanCarIdentifyRate = 0;
                 //球机车号识别数
                 long countBallIdentify = 0L;
                 //球机车号未识别数
@@ -152,6 +156,10 @@ public class MeterWorkCarnoIdentifyServiceImpl extends BaseServiceImpl<MeterWork
                             && model.getBaseSpotName().equals(spot.getBaseSpotName())
                             && StringUtils.isNotEmpty(model.getScanCarNo())
                             && model.getScanCarNo().equals(model.getCarNo())).count();
+                    //扫码车号计量比例=扫码车号使用数/一次计量车数
+                    if(countCarFirst != 0) {
+                        countScanCarIdentifyRate = Math.round((countScanCarIdentify/(countCarFirst*1.0))*100*100)/100.0;
+                    }
                     //球机车号识别数
                     countBallIdentify = models.stream().filter(model -> model.getBaseSpotNo().equals(spot.getBaseSpotNo())
                             && model.getBaseSpotName().equals(spot.getBaseSpotName())
@@ -209,14 +217,19 @@ public class MeterWorkCarnoIdentifyServiceImpl extends BaseServiceImpl<MeterWork
                             && StringUtils.isNotEmpty(model.getVideoCarNo2())
                             && !model.getVideoCarNo1().equals(model.getVideoCarNo2())).count();
 
-                    //修正车号数
+                    //大厅修正车号数
                     countResetCar = models.stream().filter(model -> model.getBaseSpotNo().equals(spot.getBaseSpotNo())
                             && model.getBaseSpotName().equals(spot.getBaseSpotName())
                             && model.getCarNoType().equals("4")).count();
+                    //Web修正车号数
                     if(logModels.size() >= 1) {
                         countWebResetCar = logModels.stream().filter(model -> spot.getBaseSpotNo().equals(model.get("BASESPOTNO"))
                             && spot.getBaseSpotName().equals(model.get("BASESPOTNAME"))).count();
                     }
+                    //车号识别率=(一次计量车数-(大厅修正车号数+Web修正车号数))/一次计量车数
+                    if(countCarFirst != 0) {
+                        countCarIdentifyRate = Math.round(((countCarFirst-(countResetCar+countWebResetCar))/(countCarFirst*1.0))*100*100)/100.0;
+                    }
                     //枪机修改车号数
                     countGunResetCar = models.stream().filter(model -> model.getBaseSpotNo().equals(spot.getBaseSpotNo())
                             && model.getBaseSpotName().equals(spot.getBaseSpotName())
@@ -257,6 +270,7 @@ public class MeterWorkCarnoIdentifyServiceImpl extends BaseServiceImpl<MeterWork
                     obj.put("countGunUsedIdentify", countGunUsedIdentify);
                     obj.put("countBallUsedIdentify", countBallUsedIdentify);
                     obj.put("countScanCarIdentify", countScanCarIdentify);
+                    obj.put("countScanCarIdentifyRate", countScanCarIdentifyRate);
                     obj.put("countBallIdentify", countBallIdentify);
                     obj.put("countGunIdentify", countGunIdentify);
                     obj.put("countVisualIdentify", countVisualIdentify);
@@ -265,6 +279,7 @@ public class MeterWorkCarnoIdentifyServiceImpl extends BaseServiceImpl<MeterWork
                     obj.put("countRfidIdentify", countRfidIdentify);
                     obj.put("countResetCar", countResetCar);
                     obj.put("countWebResetCar", countWebResetCar);
+                    obj.put("countCarIdentifyRate", countCarIdentifyRate);
                     obj.put("countGunResetCar", countGunResetCar);
                     obj.put("countBallResetCar", countBallResetCar);
                     obj.put("countGunIndentifyRate", countGunIndentifyRate);

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

@@ -6,10 +6,7 @@ import com.steerinfo.framework.service.pagehelper.PageList;
 import com.steerinfo.framework.utils.collection.ListUtils;
 import com.steerinfo.meterwork.except.MarkerMetException;
 import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualFirst;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.CarActualCountCheckNum;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.CarFirstCountCheckNum;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActual;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActualTemp;
+import com.steerinfo.meterwork.meterworkcheckfirstactual.model.*;
 import com.steerinfo.meterwork.meterworkcheckfirstactual.service.IMeterWorkCheckFirstActualService;
 import com.steerinfo.meterwork.meterworkdatacount.model.RailwayActualGrossWeightComparison;
 import com.steerinfo.meterwork.meterworkshiftreportgroup.model.MeterWorkShiftReportGroup;
@@ -66,7 +63,7 @@ public class MeterWorkCheckFirstActualController extends BaseRESTfulController {
         PageList<MeterWorkCheckFirstActual> list = meterWorkCheckFirstActualService.queryLikeForPage(parmas, pageNum, pageSize);
         return success(list);
     }
-    
+
     @ApiOperation(value="创建", notes="根据MeterWorkCheckFirstActual对象创建")
     @ApiImplicitParam(name = "meterWorkCheckFirstActual", value = "详细实体meterWorkCheckFirstActual", required = true, dataType = "MeterWorkCheckFirstActual")
     //@RequiresPermissions("meterworkcheckfirstactual:create")
@@ -198,5 +195,88 @@ public class MeterWorkCheckFirstActualController extends BaseRESTfulController {
         }
     }
 
+    @ApiOperation(value = "静态轨道衡一次计量和结净数据图片与数据核查-获取列表",
+            notes = "不分页模糊查询;关键词:startTime、endTime、typeNo(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)" +
+                    "、typeName、valueFlag:0:一次数据、1:净重数据")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayFirstActualImgDataList")
+    public RESTfulResult railwayFirstImgDataList(@RequestBody(required = false) HashMap parmas) {
+        try {
+            List<HashMap> list = meterWorkCheckFirstActualService.railwayFirstImgDataList(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
+    //静态轨道衡一次已核查详情
+    @ApiOperation(value = "汽车衡一次数据核查数统计-获取列表", notes = "关键词:startTime、endTime、pageNum、pageSize、baseSpotNo、baseSpotName")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayFirstCountCheckNum")
+    public RESTfulResult railwayFirstCountCheckNum(@RequestBody HashMap parmas) {
+        try {
+            PageList<RailwayFirstCountCheckNum> list = meterWorkCheckFirstActualService.railwayFirstCountCheckNum(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
+    //静态轨道衡一次未核查详情
+    @ApiOperation(value = "汽车衡一次数据核查明细核查数明细-获取列表", notes = "关键词:startTime、endTime、pageNum、pageSize")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayFirstLikeByDesc")
+    public RESTfulResult railwayFirstLikeByDesc(@RequestBody HashMap parmas) {
+        try {
+            PageList<RailwayFirstCountCheckNum> list = meterWorkCheckFirstActualService.railwayFirstLikeByDesc(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
 
+    //静态轨道衡净重未核查详情
+    @ApiOperation(value = "汽车衡净重数据核查数统计-获取列表", notes = "关键词:startTime、endTime、pageNum、pageSize、baseSpotNo、baseSpotName")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayActualCountCheckNum")
+    public RESTfulResult railwayActualCountCheckNum(@RequestBody HashMap parmas) {
+        try {
+            PageList<RailwayActualCountCheckNum> list = meterWorkCheckFirstActualService.railwayActualCountCheckNum(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
+    @ApiOperation(value = "汽车衡净重数据核查明细核查数明细-获取列表", notes = "关键词:startTime、endTime、pageNum、pageSize")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayActualLikeByDesc")
+    public RESTfulResult railwayActualLikeByDesc(@RequestBody HashMap parmas) {
+        try {
+            PageList<RailwayActualCountCheckNum> list = meterWorkCheckFirstActualService.railwayActualLikeByDesc(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
+
+    //静态轨道衡一次数据和净重数据核查明细
+    @ApiOperation(value = "一次数据和结净数据核查数明细-获取列表", notes = "关键词:startTime、endTime、pageNum、pageSize、checkId、typeNo、valueFlag")
+    //@RequiresPermissions("meterworkcaractualfirst:view")
+    @PostMapping(value = "/railwayLikeByDesc")
+    public RESTfulResult railwayLikeByDesc(@RequestBody HashMap parmas) {
+        try {
+            PageList<MeterWorkCheckFirstActualRailwayTemp> list = meterWorkCheckFirstActualService.railwayLikeByDesc(parmas);
+            return success(list);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
 }

+ 22 - 1
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/mapper/MeterWorkCheckFirstActualMapper.java

@@ -5,6 +5,8 @@ import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.meterwork.meterworkcaractual.model.MeterWorkCarActual;
 import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualFirst;
 import com.steerinfo.meterwork.meterworkcheckfirstactual.model.*;
+import com.steerinfo.meterwork.meterworkrailwayactfirst.model.MeterWorkRailwayActFirst;
+import com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual;
 import org.apache.ibatis.annotations.Mapper;
 
 import java.util.HashMap;
@@ -23,4 +25,23 @@ public interface MeterWorkCheckFirstActualMapper extends IBaseMapper<MeterWorkCh
     List<CarFirstCountCheckNum> carFirstLikeByDesc(HashMap<String, Object> pararms);
     List<CarActualCountCheckNum> carActualLikeByDesc(HashMap<String, Object> pararms);
 
-}
+    List<MeterWorkRailwayActFirst> railwayFirstDataList(HashMap<String, Object> obj);
+
+    List<MeterWorkRailwayActual> railwayActualDataList(HashMap<String, Object> obj);
+
+    List<RailwayFirstActualImgData> railwayFirstImgDataList(HashMap params);
+
+    List<RailwayFirstActualImgData> railwayActualImgDataList(HashMap params);
+
+    List<MeterBaseSpotInfo> railwaySpotInfoList(HashMap params);
+
+    List<RailwayFirstCountCheckNum> railwayFirstCountCheckNum(HashMap params);
+
+    List<RailwayFirstCountCheckNum> railwayFirstLikeByDesc(HashMap params);
+
+    List<RailwayActualCountCheckNum> railwayActualCountCheckNum(HashMap params);
+
+    List<RailwayActualCountCheckNum> railwayActualLikeByDesc(HashMap params);
+
+    List<MeterWorkCheckFirstActualRailwayTemp> railwayLikeByDesc(HashMap params);
+}

+ 827 - 27
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/mapper/MeterWorkCheckFirstActualMapper.xml

@@ -15,11 +15,11 @@
     <result column="VALUE_FLAG" jdbcType="VARCHAR" property="valueFlag" />
   </resultMap>
   <sql id="columns">
-    ID, CHECK_ID, CHECK_START_TIME, CHECK_END_TIME, CHECK_USED_SECONDS, CHECK_MAN_NO, 
+    ID, CHECK_ID, CHECK_START_TIME, CHECK_END_TIME, CHECK_USED_SECONDS, CHECK_MAN_NO,
     CHECK_MAN_NAME, CHECK_RESULT, TYPE_NO, TYPE_NAME, VALUE_FLAG
   </sql>
   <sql id="columns_alias">
-    t.ID, t.CHECK_ID, t.CHECK_START_TIME, t.CHECK_END_TIME, t.CHECK_USED_SECONDS, t.CHECK_MAN_NO, 
+    t.ID, t.CHECK_ID, t.CHECK_START_TIME, t.CHECK_END_TIME, t.CHECK_USED_SECONDS, t.CHECK_MAN_NO,
     t.CHECK_MAN_NAME, t.CHECK_RESULT, t.TYPE_NO, t.TYPE_NAME, t.VALUE_FLAG
   </sql>
   <sql id="select">
@@ -29,7 +29,7 @@
     SELECT <include refid="columns_alias" /> FROM METER_WORK_CHECK_FIRST_ACTUAL t
   </sql>
   <sql id="where">
-    <where> 
+    <where>
       <if test="id != null and id != ''">
         and ID = #{id}
       </if>
@@ -66,7 +66,7 @@
     </where>
   </sql>
   <sql id="whereLike">
-    <where> 
+    <where>
       <if test="id != null and id != ''">
         and ID LIKE '%${id}%'
       </if>
@@ -108,7 +108,7 @@
   </delete>
   <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
     delete from METER_WORK_CHECK_FIRST_ACTUAL
-    where 1!=1 
+    where 1!=1
       <if test="checkId != null and checkId != ''">
         or CHECK_ID = #{checkId}
       </if>
@@ -141,13 +141,13 @@
       </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActual">
-    insert into METER_WORK_CHECK_FIRST_ACTUAL (ID, CHECK_ID, CHECK_START_TIME, 
-      CHECK_END_TIME, CHECK_USED_SECONDS, CHECK_MAN_NO, 
-      CHECK_MAN_NAME, CHECK_RESULT, TYPE_NO, 
+    insert into METER_WORK_CHECK_FIRST_ACTUAL (ID, CHECK_ID, CHECK_START_TIME,
+      CHECK_END_TIME, CHECK_USED_SECONDS, CHECK_MAN_NO,
+      CHECK_MAN_NAME, CHECK_RESULT, TYPE_NO,
       TYPE_NAME, VALUE_FLAG)
-    values (#{id,jdbcType=VARCHAR}, #{checkId,jdbcType=VARCHAR}, #{checkStartTime,jdbcType=TIMESTAMP}, 
-      #{checkEndTime,jdbcType=TIMESTAMP}, #{checkUsedSeconds,jdbcType=DECIMAL}, #{checkManNo,jdbcType=VARCHAR}, 
-      #{checkManName,jdbcType=VARCHAR}, #{checkResult,jdbcType=VARCHAR}, #{typeNo,jdbcType=VARCHAR}, 
+    values (#{id,jdbcType=VARCHAR}, #{checkId,jdbcType=VARCHAR}, #{checkStartTime,jdbcType=TIMESTAMP},
+      #{checkEndTime,jdbcType=TIMESTAMP}, #{checkUsedSeconds,jdbcType=DECIMAL}, #{checkManNo,jdbcType=VARCHAR},
+      #{checkManName,jdbcType=VARCHAR}, #{checkResult,jdbcType=VARCHAR}, #{typeNo,jdbcType=VARCHAR},
       #{typeName,jdbcType=VARCHAR}, #{valueFlag,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActual">
@@ -286,19 +286,19 @@
     <include refid="whereLike" />
   </select>
   <insert id="batchInsert" parameterType="java.util.List">
-    insert into METER_WORK_CHECK_FIRST_ACTUAL 
-      (ID, 
-      CHECK_ID, CHECK_START_TIME, CHECK_END_TIME, 
-      CHECK_USED_SECONDS, CHECK_MAN_NO, 
-      CHECK_MAN_NAME, CHECK_RESULT, TYPE_NO, 
+    insert into METER_WORK_CHECK_FIRST_ACTUAL
+      (ID,
+      CHECK_ID, CHECK_START_TIME, CHECK_END_TIME,
+      CHECK_USED_SECONDS, CHECK_MAN_NO,
+      CHECK_MAN_NAME, CHECK_RESULT, TYPE_NO,
       TYPE_NAME, VALUE_FLAG)
-    ( <foreach collection="list" item="item" separator="union all"> 
-   select  
-      #{item.id,jdbcType=VARCHAR}, 
-      #{item.checkId,jdbcType=VARCHAR}, #{item.checkStartTime,jdbcType=TIMESTAMP}, #{item.checkEndTime,jdbcType=TIMESTAMP}, 
-      #{item.checkUsedSeconds,jdbcType=DECIMAL}, #{item.checkManNo,jdbcType=VARCHAR}, 
-      #{item.checkManName,jdbcType=VARCHAR}, #{item.checkResult,jdbcType=VARCHAR}, #{item.typeNo,jdbcType=VARCHAR}, 
-      #{item.typeName,jdbcType=VARCHAR}, #{item.valueFlag,jdbcType=VARCHAR} from dual  
+    ( <foreach collection="list" item="item" separator="union all">
+   select
+      #{item.id,jdbcType=VARCHAR},
+      #{item.checkId,jdbcType=VARCHAR}, #{item.checkStartTime,jdbcType=TIMESTAMP}, #{item.checkEndTime,jdbcType=TIMESTAMP},
+      #{item.checkUsedSeconds,jdbcType=DECIMAL}, #{item.checkManNo,jdbcType=VARCHAR},
+      #{item.checkManName,jdbcType=VARCHAR}, #{item.checkResult,jdbcType=VARCHAR}, #{item.typeNo,jdbcType=VARCHAR},
+      #{item.typeName,jdbcType=VARCHAR}, #{item.valueFlag,jdbcType=VARCHAR} from dual
    </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
@@ -348,14 +348,14 @@
        <foreach close="end" collection="list" index="index" item="item" open="case ID" separator=" ">
           when #{item.id,jdbcType=VARCHAR} then #{item.valueFlag,jdbcType=VARCHAR}
        </foreach>
-     where ID in 
+     where ID in
      <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
     #{item.id,jdbcType=VARCHAR}
-     </foreach> 
+     </foreach>
   </update>
   <delete id="batchDelete" parameterType="java.util.List">
     delete from METER_WORK_CHECK_FIRST_ACTUAL
-    where ID in 
+    where ID in
     <foreach close=")" collection="list" item="id" open="(" separator=",">
       #{id}
     </foreach>
@@ -497,6 +497,7 @@
     select *
     from meter_work_car_actual_first
     where 1 = 1
+    and value_flag != '0'
     <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
       and  create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
       and  create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
@@ -522,6 +523,7 @@
               <if test="typeName != null and typeName != ''">
                 and C.type_Name = #{typeName}
               </if>)
+    and A.value_flag != '0'
     <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
       and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
       and A.create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
@@ -650,6 +652,7 @@
     select *
     from meter_work_car_actual
     where 1 = 1
+    and value_flag != '0'
     <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
       and  net_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
       and  net_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
@@ -675,6 +678,7 @@
               <if test="typeName != null and typeName != ''">
                 and C.type_Name = #{typeName}
               </if>)
+    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')
@@ -746,6 +750,7 @@
                   <if test="typeName != null and typeName != ''">
                     and C.type_Name = #{typeName}
                   </if>)
+    and A.value_flag != '0'
     <if test="actualNo != null and actualNo != ''">
         and A.actual_no = #{actualNo}
     </if>
@@ -842,6 +847,7 @@
               <if test="typeName != null and typeName != ''">
                 and C.type_Name = #{typeName}
               </if>)
+    and A.value_flag != '0'
     <if test="actualFirstNo != null and actualFirstNo != ''">
       and A.actual_first_no = #{actualFirstNo}
     </if>
@@ -994,6 +1000,7 @@
               where 1 = 1
                   and C.value_flag = '0'
                   and C.type_no = '001002001')
+      and A.value_flag != '0'
       <if test="actualFirstNo != null and actualFirstNo != ''">
         and A.actual_first_no = #{actualFirstNo}
       </if>
@@ -1068,6 +1075,7 @@
             where 1 = 1
               and B.value_flag = '1'
               and B.type_no = '001002001')
+    and A.value_flag != '0'
     <if test="actualNo != null and actualNo != ''">
       and A.actual_no = #{actualNo}
     </if>
@@ -1083,4 +1091,796 @@
     </if>
     order by A.net_time desc
   </select>
-</mapper>
+
+  <resultMap id="railwayFirstResultMap" type="com.steerinfo.meterwork.meterworkrailwayactfirst.model.MeterWorkRailwayActFirst">
+    <id column="ACTUAL_FIRST_NO" jdbcType="VARCHAR" property="actualFirstNo" />
+    <result column="PREDICTION_NO" jdbcType="VARCHAR" property="predictionNo" />
+    <result column="NOTICE_NO" jdbcType="VARCHAR" property="noticeNo" />
+    <result column="RAILWAY_NO" jdbcType="VARCHAR" property="railwayNo" />
+    <result column="RAILWAY_CARRIAGE_NO" jdbcType="VARCHAR" property="railwayCarriageNo" />
+    <result column="RAILWAY_WORK_NO" jdbcType="VARCHAR" property="railwayWorkNo" />
+    <result column="RAILWAY_SPEED" jdbcType="DECIMAL" property="railwaySpeed" />
+    <result column="MATTER_NO" jdbcType="VARCHAR" property="matterNo" />
+    <result column="MATTER_NAME" jdbcType="VARCHAR" property="matterName" />
+    <result column="CONTRACT_NO" jdbcType="VARCHAR" property="contractNo" />
+    <result column="BATCH_NO" jdbcType="VARCHAR" property="batchNo" />
+    <result column="CUSTOMER_SUPPLIER_NO" jdbcType="VARCHAR" property="customerSupplierNo" />
+    <result column="CUSTOMER_SUPPLIER_NAME" jdbcType="VARCHAR" property="customerSupplierName" />
+    <result column="FORWARDING_UNIT_NO" jdbcType="VARCHAR" property="forwardingUnitNo" />
+    <result column="FORWARDING_UNIT_NAME" jdbcType="VARCHAR" property="forwardingUnitName" />
+    <result column="RECEIVING_UINT_NO" jdbcType="VARCHAR" property="receivingUintNo" />
+    <result column="RECEIVING_UINT_NAME" jdbcType="VARCHAR" property="receivingUintName" />
+    <result column="MATERIAL_NO" jdbcType="VARCHAR" property="materialNo" />
+    <result column="MATERIAL_NAME" jdbcType="VARCHAR" property="materialName" />
+    <result column="SPEC_NO" jdbcType="VARCHAR" property="specNo" />
+    <result column="SPEC_NAME" jdbcType="VARCHAR" property="specName" />
+    <result column="SHIPMENT_GROSS_WEIGHT" jdbcType="DECIMAL" property="shipmentGrossWeight" />
+    <result column="SHIPMENT_NET_WEIGHT" jdbcType="DECIMAL" property="shipmentNetWeight" />
+    <result column="SHIPMENT_NUM" jdbcType="DECIMAL" property="shipmentNum" />
+    <result column="BIND_CARD_NO" jdbcType="VARCHAR" property="bindCardNo" />
+    <result column="LOAD_POINT_NO" jdbcType="VARCHAR" property="loadPointNo" />
+    <result column="LOAD_POINT_NAME" jdbcType="VARCHAR" property="loadPointName" />
+    <result column="SAMPLE_NO" jdbcType="VARCHAR" property="sampleNo" />
+    <result column="SAMPLE_VOUCHER" jdbcType="VARCHAR" property="sampleVoucher" />
+    <result column="CARRIER_UNIT_NO" jdbcType="VARCHAR" property="carrierUnitNo" />
+    <result column="CARRIER_UNIT_NAME" jdbcType="VARCHAR" property="carrierUnitName" />
+    <result column="PREDICTION_TYPE" jdbcType="VARCHAR" property="predictionType" />
+    <result column="PREDICTION_COMBINATION" jdbcType="VARCHAR" property="predictionCombination" />
+    <result column="METER_TYPE_NO" jdbcType="VARCHAR" property="meterTypeNo" />
+    <result column="METER_TYPE_NAME" jdbcType="VARCHAR" property="meterTypeName" />
+    <result column="METER_PROCESS_NO" jdbcType="VARCHAR" property="meterProcessNo" />
+    <result column="METER_PROCESS_EDITION_NO" jdbcType="VARCHAR" property="meterProcessEditionNo" />
+    <result column="METER_WEIGHT" jdbcType="DECIMAL" property="meterWeight" />
+    <result column="WEIGHT_TYPE" jdbcType="VARCHAR" property="weightType" />
+    <result column="METER_SORT_WEIGHT" jdbcType="DECIMAL" property="meterSortWeight" />
+    <result column="METER_BALANCE_WEIGHT" jdbcType="DECIMAL" property="meterBalanceWeight" />
+    <result column="CREATE_MAN_NO" jdbcType="VARCHAR" property="createManNo" />
+    <result column="CREATE_MAN_NAME" jdbcType="VARCHAR" property="createManName" />
+    <result column="CREATE_TIME" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="BASE_SPOT_NO" jdbcType="VARCHAR" property="baseSpotNo" />
+    <result column="BASE_SPOT_NAME" jdbcType="VARCHAR" property="baseSpotName" />
+    <result column="METER_CLASS" jdbcType="VARCHAR" property="meterClass" />
+    <result column="METER_GROUP" jdbcType="VARCHAR" property="meterGroup" />
+    <result column="MEMO" jdbcType="VARCHAR" property="memo" />
+    <result column="VALUE_FLAG" jdbcType="VARCHAR" property="valueFlag" />
+    <result column="UPDATE_MAN_NO" jdbcType="VARCHAR" property="updateManNo" />
+    <result column="UPDATE_MAN_NAME" jdbcType="VARCHAR" property="updateManName" />
+    <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="CHECK_FLAG" jdbcType="VARCHAR" property="checkFlag" />
+    <result column="CHECK_MAN_NO" jdbcType="VARCHAR" property="checkManNo" />
+    <result column="CHECK_MAN_NAME" jdbcType="VARCHAR" property="checkManName" />
+    <result column="CHECK_TIME" jdbcType="TIMESTAMP" property="checkTime" />
+    <result column="METER_MODE" jdbcType="VARCHAR" property="meterMode" />
+    <result column="RAILWAY_TYPE_NO" jdbcType="VARCHAR" property="railwayTypeNo" />
+    <result column="RAILWAY_TYPE_NAME" jdbcType="VARCHAR" property="railwayTypeName" />
+    <result column="IS_CHEMICAL" jdbcType="VARCHAR" property="isChemical" />
+    <result column="LIMIT_WEIGHT" jdbcType="DECIMAL" property="limitWeight" />
+    <result column="RAILWAY_MODEL_NO" jdbcType="VARCHAR" property="railwayModelNo" />
+    <result column="RAILWAY_MODEL_NAME" jdbcType="VARCHAR" property="railwayModelName" />
+    <result column="RAILWAY_FACTORY_WEIGHT" jdbcType="DECIMAL" property="railwayFactoryWeight" />
+    <result column="WATER_NUM" jdbcType="DECIMAL" property="waterNum" />
+    <result column="ARRIVAL" jdbcType="VARCHAR" property="arrival" />
+    <result column="STATION" jdbcType="VARCHAR" property="station" />
+    <result column="SOURCE_AREA" jdbcType="VARCHAR" property="sourceArea" />
+    <result column="VOUCHER_IDENTITY" jdbcType="VARCHAR" property="voucherIdentity" />
+    <result column="VOUCHER_ITEM" jdbcType="VARCHAR" property="voucherItem" />
+    <result column="BUSINESS_GROUP" jdbcType="VARCHAR" property="businessGroup" />
+    <result column="TEMP_CONVEYANCE" jdbcType="VARCHAR" property="tempConveyance" />
+    <result column="CONVEYANCE_TYPE" jdbcType="VARCHAR" property="conveyanceType" />
+    <result column="RESOURCE_SYSTEM" jdbcType="VARCHAR" property="resourceSystem" />
+    <result column="GROUP_PACKAGE_AMOUNT" jdbcType="DECIMAL" property="groupPackageAmount" />
+    <result column="GROUP_PACKAGE_UNIT" jdbcType="VARCHAR" property="groupPackageUnit" />
+    <result column="PACKAGE_AMOUNT" jdbcType="DECIMAL" property="packageAmount" />
+    <result column="PACKAGE_UNIT" jdbcType="VARCHAR" property="packageUnit" />
+    <result column="THEORY_AMOUNT" jdbcType="DECIMAL" property="theoryAmount" />
+    <result column="MEASURE_BATCH" jdbcType="VARCHAR" property="measureBatch" />
+    <result column="MEASURE_BATCH_COUNT" jdbcType="DECIMAL" property="measureBatchCount" />
+    <result column="SENDER_TYPE" jdbcType="VARCHAR" property="senderType" />
+    <result column="SENDER_REMARK" jdbcType="VARCHAR" property="senderRemark" />
+    <result column="RECEIVER_TYPE" jdbcType="VARCHAR" property="receiverType" />
+    <result column="RECEIVER_REMARK" jdbcType="VARCHAR" property="receiverRemark" />
+    <result column="AMOUNT_UNIT" jdbcType="VARCHAR" property="amountUnit" />
+    <result column="MEASURE_OBJECT_TYPE" jdbcType="VARCHAR" property="measureObjectType" />
+    <result column="MEASURE_TASK_NUM" jdbcType="VARCHAR" property="measureTaskNum" />
+    <result column="DATA_SOURCE" jdbcType="VARCHAR" property="dataSource" />
+    <result column="NOTE" jdbcType="VARCHAR" property="note" />
+    <result column="TRAIN_NUMBER_NO" jdbcType="VARCHAR" property="trainNumberNo" />
+    <result column="IS_PRE_SACALE" jdbcType="VARCHAR" property="isPreSacale" />
+    <result column="HC15" jdbcType="VARCHAR" property="hc15" />
+    <result column="CANCEL_TYPE" jdbcType="VARCHAR" property="cancelType" />
+    <result column="LC_NO" jdbcType="VARCHAR" property="lcNo" />
+    <result column="CHECK_MEMO" jdbcType="VARCHAR" property="checkMemo" />
+    <result column="CHECK_MAN1_NO" jdbcType="VARCHAR" property="checkMan1No" />
+    <result column="CHECK_MAN1_NAME" jdbcType="VARCHAR" property="checkMan1Name" />
+    <result column="CHECK_TIME1" jdbcType="TIMESTAMP" property="checkTime1" />
+    <result column="CHECK_MEMO1" jdbcType="VARCHAR" property="checkMemo1" />
+    <result column="CHECK_MAN2_NO" jdbcType="VARCHAR" property="checkMan2No" />
+    <result column="CHECK_MAN2_NAME" jdbcType="VARCHAR" property="checkMan2Name" />
+    <result column="CHECK_TIME2" jdbcType="TIMESTAMP" property="checkTime2" />
+    <result column="CHECK_MEMO2" jdbcType="VARCHAR" property="checkMemo2" />
+    <result column="CHECK_FLAG1" jdbcType="VARCHAR" property="checkFlag1" />
+    <result column="CHECK_FLAG2" jdbcType="VARCHAR" property="checkFlag2" />
+  </resultMap>
+
+  <select id="railwayFirstDataList" resultMap="railwayFirstResultMap">
+    select *
+    from meter_work_railway_act_first
+    where 1 = 1
+    and value_flag != '0'
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and  create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and railway_type_no = #{railwayTypeNo}
+    </if>
+  </select>
+  <resultMap id="railwayActualResultMap" type="com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual">
+    <id column="ACTUAL_NO" jdbcType="VARCHAR" property="actualNo" />
+    <result column="PREDICTION_NO" jdbcType="VARCHAR" property="predictionNo" />
+    <result column="NOTICE_NO" jdbcType="VARCHAR" property="noticeNo" />
+    <result column="RAILWAY_NO" jdbcType="VARCHAR" property="railwayNo" />
+    <result column="RAILWAY_CARRIAGE_NO" jdbcType="VARCHAR" property="railwayCarriageNo" />
+    <result column="MATTER_NO" jdbcType="VARCHAR" property="matterNo" />
+    <result column="MATTER_NAME" jdbcType="VARCHAR" property="matterName" />
+    <result column="CONTRACT_NO" jdbcType="VARCHAR" property="contractNo" />
+    <result column="BATCH_NO" jdbcType="VARCHAR" property="batchNo" />
+    <result column="CUSTOMER_SUPPLIER_NO" jdbcType="VARCHAR" property="customerSupplierNo" />
+    <result column="CUSTOMER_SUPPLIER_NAME" jdbcType="VARCHAR" property="customerSupplierName" />
+    <result column="FORWARDING_UNIT_NO" jdbcType="VARCHAR" property="forwardingUnitNo" />
+    <result column="FORWARDING_UNIT_NAME" jdbcType="VARCHAR" property="forwardingUnitName" />
+    <result column="RECEIVING_UINT_NO" jdbcType="VARCHAR" property="receivingUintNo" />
+    <result column="RECEIVING_UINT_NAME" jdbcType="VARCHAR" property="receivingUintName" />
+    <result column="MATERIAL_NO" jdbcType="VARCHAR" property="materialNo" />
+    <result column="MATERIAL_NAME" jdbcType="VARCHAR" property="materialName" />
+    <result column="SPEC_NO" jdbcType="VARCHAR" property="specNo" />
+    <result column="SPEC_NAME" jdbcType="VARCHAR" property="specName" />
+    <result column="LOAD_POINT_NO" jdbcType="VARCHAR" property="loadPointNo" />
+    <result column="LOAD_POINT_NAME" jdbcType="VARCHAR" property="loadPointName" />
+    <result column="SAMPLE_VOUCHER" jdbcType="VARCHAR" property="sampleVoucher" />
+    <result column="CARRIER_UNIT_NO" jdbcType="VARCHAR" property="carrierUnitNo" />
+    <result column="CARRIER_UNIT_NAME" jdbcType="VARCHAR" property="carrierUnitName" />
+    <result column="METER_TYPE_NO" jdbcType="VARCHAR" property="meterTypeNo" />
+    <result column="METER_TYPE_NAME" jdbcType="VARCHAR" property="meterTypeName" />
+    <result column="METER_PROCESS_NO" jdbcType="VARCHAR" property="meterProcessNo" />
+    <result column="METER_PROCESS_EDITION_NO" jdbcType="VARCHAR" property="meterProcessEditionNo" />
+    <result column="ACTUAL_FIRST1_NO" jdbcType="VARCHAR" property="actualFirst1No" />
+    <result column="GROSS_WEIGHT" jdbcType="DECIMAL" property="grossWeight" />
+    <result column="GROSS_MAN_NO" jdbcType="VARCHAR" property="grossManNo" />
+    <result column="GROSS_MAN_NAME" jdbcType="VARCHAR" property="grossManName" />
+    <result column="GROSS_TIME" jdbcType="TIMESTAMP" property="grossTime" />
+    <result column="BASE_SPOT1_NO" jdbcType="VARCHAR" property="baseSpot1No" />
+    <result column="BASE_SPOT1_NAME" jdbcType="VARCHAR" property="baseSpot1Name" />
+    <result column="GROSS_CLASS" jdbcType="VARCHAR" property="grossClass" />
+    <result column="GROSS_GROUP" jdbcType="VARCHAR" property="grossGroup" />
+    <result column="GROSS_MODE" jdbcType="VARCHAR" property="grossMode" />
+    <result column="ACTUAL_FIRST2_NO" jdbcType="VARCHAR" property="actualFirst2No" />
+    <result column="TARE_WEIGHT" jdbcType="DECIMAL" property="tareWeight" />
+    <result column="TARE_MAN_NO" jdbcType="VARCHAR" property="tareManNo" />
+    <result column="TARE_MAN_NAME" jdbcType="VARCHAR" property="tareManName" />
+    <result column="TARE_TIME" jdbcType="TIMESTAMP" property="tareTime" />
+    <result column="BASE_SPOT2_NO" jdbcType="VARCHAR" property="baseSpot2No" />
+    <result column="BASE_SPOT2_NAME" jdbcType="VARCHAR" property="baseSpot2Name" />
+    <result column="TARE_CLASS" jdbcType="VARCHAR" property="tareClass" />
+    <result column="TARE_GROUP" jdbcType="VARCHAR" property="tareGroup" />
+    <result column="TARE_MODE" jdbcType="VARCHAR" property="tareMode" />
+    <result column="NET_WEIGHT" jdbcType="DECIMAL" property="netWeight" />
+    <result column="NET_MAN_NO" jdbcType="VARCHAR" property="netManNo" />
+    <result column="NET_MAN_NAME" jdbcType="VARCHAR" property="netManName" />
+    <result column="NET_TIME" jdbcType="TIMESTAMP" property="netTime" />
+    <result column="NET_SPOT3_NO" jdbcType="VARCHAR" property="netSpot3No" />
+    <result column="NET_SPOT3_NAME" jdbcType="VARCHAR" property="netSpot3Name" />
+    <result column="NET_CLASS" jdbcType="VARCHAR" property="netClass" />
+    <result column="NET_GROUP" jdbcType="VARCHAR" property="netGroup" />
+    <result column="NET_MODE" jdbcType="VARCHAR" property="netMode" />
+    <result column="VALUE_FLAG" jdbcType="VARCHAR" property="valueFlag" />
+    <result column="UPLOAD_FLAG" jdbcType="VARCHAR" property="uploadFlag" />
+    <result column="CHECK_MAN_NO" jdbcType="VARCHAR" property="checkManNo" />
+    <result column="CHECK_MAN_NAME" jdbcType="VARCHAR" property="checkManName" />
+    <result column="CHECK_TIME" jdbcType="TIMESTAMP" property="checkTime" />
+    <result column="UPLOAD_MAN_NO" jdbcType="VARCHAR" property="uploadManNo" />
+    <result column="UPLOAD_MAN_NAME" jdbcType="VARCHAR" property="uploadManName" />
+    <result column="UPLOAD_TIME" jdbcType="TIMESTAMP" property="uploadTime" />
+    <result column="SAMPLE_NO" jdbcType="VARCHAR" property="sampleNo" />
+    <result column="RAILWAY_TYPE_NO" jdbcType="VARCHAR" property="railwayTypeNo" />
+    <result column="RAILWAY_TYPE_NAME" jdbcType="VARCHAR" property="railwayTypeName" />
+    <result column="MEMO" jdbcType="VARCHAR" property="memo" />
+    <result column="WATER_NUM" jdbcType="DECIMAL" property="waterNum" />
+    <result column="ARRIVAL" jdbcType="VARCHAR" property="arrival" />
+    <result column="STATION" jdbcType="VARCHAR" property="station" />
+    <result column="UPDATE_MAN_NO" jdbcType="VARCHAR" property="updateManNo" />
+    <result column="UPDATE_MAN_NAME" jdbcType="VARCHAR" property="updateManName" />
+    <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="SOURCE_AREA" jdbcType="VARCHAR" property="sourceArea" />
+    <result column="VOUCHER_IDENTITY" jdbcType="VARCHAR" property="voucherIdentity" />
+    <result column="VOUCHER_ITEM" jdbcType="VARCHAR" property="voucherItem" />
+    <result column="BUSINESS_GROUP" jdbcType="VARCHAR" property="businessGroup" />
+    <result column="TEMP_CONVEYANCE" jdbcType="VARCHAR" property="tempConveyance" />
+    <result column="CONVEYANCE_TYPE" jdbcType="VARCHAR" property="conveyanceType" />
+    <result column="RESOURCE_SYSTEM" jdbcType="VARCHAR" property="resourceSystem" />
+    <result column="GROUP_PACKAGE_AMOUNT" jdbcType="DECIMAL" property="groupPackageAmount" />
+    <result column="GROUP_PACKAGE_UNIT" jdbcType="VARCHAR" property="groupPackageUnit" />
+    <result column="PACKAGE_AMOUNT" jdbcType="DECIMAL" property="packageAmount" />
+    <result column="PACKAGE_UNIT" jdbcType="VARCHAR" property="packageUnit" />
+    <result column="THEORY_AMOUNT" jdbcType="DECIMAL" property="theoryAmount" />
+    <result column="MEASURE_BATCH" jdbcType="VARCHAR" property="measureBatch" />
+    <result column="MEASURE_BATCH_COUNT" jdbcType="DECIMAL" property="measureBatchCount" />
+    <result column="SENDER_TYPE" jdbcType="VARCHAR" property="senderType" />
+    <result column="SENDER_REMARK" jdbcType="VARCHAR" property="senderRemark" />
+    <result column="RECEIVER_TYPE" jdbcType="VARCHAR" property="receiverType" />
+    <result column="RECEIVER_REMARK" jdbcType="VARCHAR" property="receiverRemark" />
+    <result column="AMOUNT_UNIT" jdbcType="VARCHAR" property="amountUnit" />
+    <result column="MEASURE_OBJECT_TYPE" jdbcType="VARCHAR" property="measureObjectType" />
+    <result column="MEASURE_TASK_NUM" jdbcType="VARCHAR" property="measureTaskNum" />
+    <result column="BILL_TYPE" jdbcType="VARCHAR" property="billType" />
+    <result column="CREATE_MAN_NAME" jdbcType="VARCHAR" property="createManName" />
+    <result column="CREATE_TIME" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="DATA_SOURCE" jdbcType="VARCHAR" property="dataSource" />
+    <result column="NOTE" jdbcType="VARCHAR" property="note" />
+    <result column="IS_PRE_SACALE" jdbcType="VARCHAR" property="isPreSacale" />
+    <result column="LC_NO" jdbcType="VARCHAR" property="lcNo" />
+    <result column="PREDICTION_TYPE" jdbcType="VARCHAR" property="predictionType" />
+    <result column="PREDICTION_COMBINATION" jdbcType="VARCHAR" property="predictionCombination" />
+    <result column="BOUND_LIST_URL" jdbcType="VARCHAR" property="boundListUrl" />
+    <result column="IS_BOUND_LIST" jdbcType="VARCHAR" property="isBoundList" />
+    <result column="CONTRACT_ID" jdbcType="VARCHAR" property="contractId" />
+    <result column="IS_BOUND_LIST_DOWNLOADED" jdbcType="VARCHAR" property="isBoundListDownloaded" />
+    <result column="DOCUMENT_ID" jdbcType="VARCHAR" property="documentId" />
+    <result column="IS_AUTO_PUBLISH" jdbcType="VARCHAR" property="isAutoPublish" />
+    <result column="CHECK_FLAG" jdbcType="VARCHAR" property="checkFlag" />
+    <result column="CHECK_MEMO" jdbcType="VARCHAR" property="checkMemo" />
+    <result column="CHECK_MAN1_NO" jdbcType="VARCHAR" property="checkMan1No" />
+    <result column="CHECK_MAN1_NAME" jdbcType="VARCHAR" property="checkMan1Name" />
+    <result column="CHECK_TIME1" jdbcType="TIMESTAMP" property="checkTime1" />
+    <result column="CHECK_MEMO1" jdbcType="VARCHAR" property="checkMemo1" />
+    <result column="CHECK_MAN2_NO" jdbcType="VARCHAR" property="checkMan2No" />
+    <result column="CHECK_MAN2_NAME" jdbcType="VARCHAR" property="checkMan2Name" />
+    <result column="CHECK_TIME2" jdbcType="TIMESTAMP" property="checkTime2" />
+    <result column="CHECK_MEMO2" jdbcType="VARCHAR" property="checkMemo2" />
+    <result column="CHECK_FLAG1" jdbcType="VARCHAR" property="checkFlag1" />
+    <result column="CHECK_FLAG2" jdbcType="VARCHAR" property="checkFlag2" />
+  </resultMap>
+  <select id="railwayActualDataList" resultMap="railwayActualResultMap">
+    select *
+    from meter_work_railway_actual
+    where 1 = 1
+    and value_flag != '0'
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  net_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and  net_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and railway_type_no = #{railwayTypeNo}
+    </if>
+  </select>
+  <select id="railwayFirstImgDataList"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayFirstActualImgData">
+    select A.base_spot_no baseSpotNo,
+    A.base_spot_name baseSpotName
+    from meter_work_railway_act_first A
+    where 1 = 1
+    and A.actual_first_no not in (
+    select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and C.value_flag = '0'
+    <if test="typeNo != null and typeName != ''">
+      and C.type_No = #{typeNo}
+    </if>
+    <if test="typeName != null and typeName != ''">
+      and C.type_Name = #{typeName}
+    </if>)
+    and A.value_flag != '0'
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and A.create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and railway_type_no = #{railwayTypeNo}
+    </if>
+  </select>
+  <select id="railwayActualImgDataList"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayFirstActualImgData">
+    select A.net_spot3_no baseSpotNo,
+    A.net_spot3_name baseSpotName
+    from meter_work_railway_actual A
+    where 1 = 1
+    and A.actual_no not in (
+    select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and C.value_flag = '1'
+    <if test="typeNo != null and typeName != ''">
+      and C.type_No = #{typeNo}
+    </if>
+    <if test="typeName != null and typeName != ''">
+      and C.type_Name = #{typeName}
+    </if>)
+    and A.value_flag != '0'
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and A.create_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and railway_type_no = #{railwayTypeNo}
+    </if>
+  </select>
+  <select id="railwaySpotInfoList"
+          resultType="com.steerinfo.baseinfo.meterbasespotinfo.model.MeterBaseSpotInfo">
+    select baseSpotNo,
+    baseSpotName
+    from (
+    (
+    select A.base_spot_no baseSpotNo,
+    A.base_spot_name baseSpotName
+    from meter_work_railway_act_first A
+    left join meter_work_check_first_actual B
+    on A.actual_first_no = B.check_id
+    where 1 = 1
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and A.create_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.base_spot_no,
+    A.base_spot_name)
+    union
+    (select A.net_spot3_no baseSpotNo,
+    A.net_spot3_name baseSpotName
+    from meter_work_railway_actual A
+    left join meter_work_check_first_actual B
+    on A.actual_no = B.check_id
+    where 1 = 1
+    <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.net_spot3_no,
+    A.net_spot3_name)
+    )
+    group by baseSpotNo,
+    baseSpotName
+    order by baseSpotName asc
+  </select>
+  <select id="railwayFirstCountCheckNum"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayFirstCountCheckNum">
+    select count(1) countCheckNum,
+    sum(CHECK_USED_SECONDS) countSumCheckUsed,
+    avg(B.CHECK_USED_SECONDS) countAvgCheckUsed,
+    A.actual_first_no actualFirstNo,
+    case when A.meter_mode = '1' then '远程计量'
+    when A.meter_mode = '2' then '智能计量'
+    when A.meter_mode = '3' then '手工计量'
+    else A.meter_mode end meterMode,
+    A.prediction_no predictionNo,
+    A.railway_no railwayNo,
+    A.conveyance_type conveyanceType,
+    A.matter_no matterNo,
+    A.matter_name matterName,
+    to_char(round(A.meter_Weight/1000, 2),'FM9999999999999999.00') meterWeight,
+    case when A.weight_type = '0' then '毛重'
+    when A.weight_type = '1' then '皮重'
+    when A.weight_type = '2' then '期限皮'
+    else A.weight_type end weightType,
+    A.forwarding_unit_name forwardingUnitName,
+    A.receiving_uint_name receivingUintName,
+    case when A.meter_type_Name = 'SendToOutTms' then '外发'
+    when A.meter_type_Name = 'GM2GM' or A.meter_type_name = 'InnerTms' then '厂内转储'
+    when A.meter_type_Name = 'PO2GM' then '外进'
+    else A.meter_type_Name end meterTypeName,
+    A.theory_amount theoryAmount,
+    A.create_man_name createManName,
+    A.create_time createTime,
+    A.base_spot_name baseSpotName,
+    case when A.is_pre_sacale = '0' then '未匹配'
+    when A.is_pre_sacale = '1' then '已匹配'
+    else A.is_pre_sacale end isPreScale,
+    case when A.value_flag = '0' then '作废'
+    when A.value_flag = '1' then '有效'
+    when A.value_flag = '2' then '结净'
+    else A.value_flag end valueFlag
+    from meter_work_railway_act_first A
+    left join meter_work_check_first_actual B
+    on A.actual_first_no = B.check_id
+    where 1 = 1
+    and A.actual_first_no in (
+    select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and C.value_flag = '0'
+    <if test="typeNo != null and typeName != ''">
+      and C.type_No = #{typeNo}
+    </if>
+    <if test="typeName != null and typeName != ''">
+      and C.type_Name = #{typeName}
+    </if>
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and A.railway_type_no = #{railwayTypeNo}
+    </if>)
+    and A.value_flag != '0'
+    <if test="actualFirstNo != null and actualFirstNo != ''">
+      and A.actual_first_no = #{actualFirstNo}
+    </if>
+    <if test="netSpot3NoStr != null and netSpot3NoStr != ''">
+      and A.base_spot_no in
+      <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and A.create_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.actual_first_no,
+    A.meter_mode,
+    A.prediction_no,
+    A.railway_no,
+    A.conveyance_type,
+    A.matter_no,
+    A.matter_name,
+    A.meter_weight,
+    A.weight_type,
+    A.forwarding_unit_name,
+    A.receiving_uint_name,
+    A.meter_type_Name,
+    A.theory_amount,
+    A.create_man_name,
+    A.create_time,
+    A.base_spot_name,
+    A.is_pre_sacale,
+    A.value_flag
+  </select>
+  <select id="railwayFirstLikeByDesc"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayFirstCountCheckNum">
+    select A.actual_first_no actualFirstNo,
+    case when A.meter_mode = '1' then '远程计量'
+    when A.meter_mode = '2' then '智能计量'
+    when A.meter_mode = '3' then '手工计量'
+    else A.meter_mode end meterMode,
+    A.prediction_no predictionNo,
+    A.railway_No railwayNo,
+    A.conveyance_type conveyanceType,
+    A.matter_no matterNo,
+    A.matter_name matterName,
+    to_char(round(A.meter_Weight/1000, 2),'FM9999999999999999.00') meterWeight,
+    case when A.weight_type = '0' then '毛重'
+    when A.weight_type = '1' then '皮重'
+    when A.weight_type = '2' then '期限皮'
+    else A.weight_type end weightType,
+    A.forwarding_unit_name forwardingUnitName,
+    A.receiving_uint_name receivingUintName,
+    case when A.meter_type_Name = 'SendToOutTms' then '外发'
+    when A.meter_type_Name = 'GM2GM' or A.meter_type_name = 'InnerTms' then '厂内转储'
+    when A.meter_type_Name = 'PO2GM' then '外进'
+    else A.meter_type_Name end meterTypeName,
+    A.theory_amount theoryAmount,
+    A.create_man_name createManName,
+    A.create_time createTime,
+    A.base_spot_name baseSpotName,
+    case when A.is_pre_sacale = '0' then '未匹配'
+    when A.is_pre_sacale = '1' then '已匹配'
+    else A.is_pre_sacale end isPreScale,
+    case when A.value_flag = '0' then '作废'
+    when A.value_flag = '1' then '有效'
+    when A.value_flag = '2' then '结净'
+    else A.value_flag end valueFlag
+    from meter_work_railway_act_first A
+    left join meter_work_check_first_actual B
+    on A.actual_first_no = B.check_id
+    where 1 = 1
+    and A.actual_first_no not in (select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and C.value_flag = '0'
+    <if test="typeNo != null and typeName != ''">
+      and C.type_No = #{typeNo}
+    </if>)
+    and A.value_flag != '0'
+    <if test="actualFirstNo != null and actualFirstNo != ''">
+      and A.actual_first_no = #{actualFirstNo}
+    </if>
+    <if test="netSpot3NoStr != null and netSpot3NoStr != ''">
+      and A.base_spot_no in
+      <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  A.create_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and A.create_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>
+    order by A.create_time desc
+  </select>
+  <select id="railwayActualCountCheckNum"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayActualCountCheckNum">
+    select count(1) countCheckNum,
+    sum(CHECK_USED_SECONDS) countSumCheckUsed,
+    avg(B.CHECK_USED_SECONDS) countAvgCheckUsed,
+    A.actual_no actualNo,
+    A.actual_first1_no actualFirst1No,
+    A.actual_first2_no actualFirst2No,
+    case when A.net_mode = '1' then '远程计量'
+    when A.net_mode = '2' then '智能计量'
+    when A.net_mode = '3' then '手工计量'
+    else A.net_mode end netMode,
+    case when A.gross_mode = '1' then '远程计量'
+    when A.gross_mode = '2' then '智能计量'
+    when A.gross_mode = '3' then '手工计量'
+    else A.gross_mode end grossMode,
+    case when A.tare_mode = '1' then '远程计量'
+    when A.tare_mode = '2' then '智能计量'
+    when A.tare_mode = '3' then '手工计量'
+    else A.tare_mode end tareMode,
+    A.prediction_no predictionNo,
+    A.railway_No carNo,
+    A.conveyance_type conveyanceType,
+    A.matter_no matterNo,
+    A.matter_name matterName,
+    to_char(round(A.gross_Weight/1000, 2),'FM9999999999999999.00') grossWeight,
+    to_char(round(A.tare_weight/1000, 2),'FM9999999999999999.00') tareWeight,
+    to_char(round(A.net_weight/1000, 2),'FM9999999999999999.00') netWeight,
+    A.forwarding_unit_name forwardingUnitName,
+    A.receiving_uint_name receivingUintName,
+    case when A.meter_type_Name = 'SendToOutTms' then '外发'
+    when A.meter_type_Name = 'GM2GM' or A.meter_type_name = 'InnerTms' then '厂内转储'
+    when A.meter_type_Name = 'PO2GM' then '外进'
+    else A.meter_type_Name end meterTypeName,
+    A.theory_amount theoryAmount,
+    A.sender_remark senderRemark,
+    A.gross_time grossTime,
+    A.base_spot1_name baseSpot1Name,
+    A.gross_man_name grossManName,
+    A.tare_time tareTime,
+    A.base_spot2_name baseSpot2Name,
+    A.tare_man_name tareManName,
+    A.net_time netTime,
+    A.net_spot3_name netSpot3Name,
+    A.net_man_name netManName,
+    case when A.value_flag = '0' then '作废'
+    when A.value_flag = '1' then '有效'
+    else A.value_flag end valueFlag,
+    case when A.upload_flag = '1' then '未同步'
+    when A.upload_flag = '2' then '已同步'
+    else A.upload_flag end uploadFlag
+    from meter_work_railway_actual A
+    left join meter_work_check_first_actual B
+    on A.actual_no = B.check_id
+    where 1 = 1
+    and A.actual_no in (
+    select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and C.value_flag = '1'
+    <if test="typeNo != null and typeName != ''">
+      and C.type_No = #{typeNo}
+    </if>
+    <if test="typeName != null and typeName != ''">
+      and C.type_Name = #{typeName}
+    </if>)
+    and A.value_flag != '0'
+    <if test="actualNo != null and actualNo != ''">
+      and A.actual_no = #{actualNo}
+    </if>
+    <if test="netSpot3NoStr != null and netSpot3NoStr != ''">
+      and A.net_spot3_no in
+      <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    <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.actual_no,
+    A.actual_first1_no,
+    A.actual_first2_no,
+    A.net_mode,
+    A.gross_mode,
+    A.tare_mode,
+    A.prediction_no,
+    A.railway_No,
+    A.conveyance_type,
+    A.matter_no,
+    A.matter_name,
+    A.gross_weight,
+    A.tare_weight,
+    A.net_weight,
+    A.forwarding_unit_name,
+    A.receiving_uint_name,
+    A.meter_type_Name,
+    A.theory_amount,
+    A.sender_remark,
+    A.gross_time,
+    A.base_spot1_name,
+    A.gross_man_name,
+    A.tare_time,
+    A.base_spot2_name,
+    A.tare_man_name,
+    A.net_time,
+    A.net_spot3_name,
+    A.net_man_name,
+    A.value_flag,
+    A.upload_flag
+  </select>
+  <select id="railwayActualLikeByDesc"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.RailwayActualCountCheckNum">
+
+    select A.actual_no actualNo,
+    A.actual_first1_no actualFirst1No,
+    A.actual_first2_no actualFirst2No,
+    case when A.net_mode = '1' then '远程计量'
+    when A.net_mode = '2' then '智能计量'
+    when A.net_mode = '3' then '手工计量'
+    else A.net_mode end netMode,
+    case when A.gross_mode = '1' then '远程计量'
+    when A.gross_mode = '2' then '智能计量'
+    when A.gross_mode = '3' then '手工计量'
+    else A.gross_mode end grossMode,
+    case when A.tare_mode = '1' then '远程计量'
+    when A.tare_mode = '2' then '智能计量'
+    when A.tare_mode = '3' then '手工计量'
+    else A.tare_mode end tareMode,
+    A.prediction_no predictionNo,
+    A.railway_No railwayNo,
+    A.conveyance_type conveyanceType,
+    A.matter_no matterNo,
+    A.matter_name matterName,
+    to_char(round(A.gross_Weight/1000, 2),'FM9999999999999999.00') grossWeight,
+    to_char(round(A.tare_weight/1000, 2),'FM9999999999999999.00') tareWeight,
+    to_char(round(A.net_weight/1000, 2),'FM9999999999999999.00') netWeight,
+    A.forwarding_unit_name forwardingUnitName,
+    A.receiving_uint_name receivingUintName,
+    case when A.meter_type_Name = 'SendToOutTms' then '外发'
+    when A.meter_type_Name = 'GM2GM' or A.meter_type_name = 'InnerTms' then '厂内转储'
+    when A.meter_type_Name = 'PO2GM' then '外进'
+    else A.meter_type_Name end meterTypeName,
+    A.theory_amount theoryAmount,
+    A.sender_remark senderRemark,
+    A.gross_time grossTime,
+    A.base_spot1_name baseSpot1Name,
+    A.gross_man_name grossManName,
+    A.tare_time tareTime,
+    A.base_spot2_name baseSpot2Name,
+    A.tare_man_name tareManName,
+    A.net_time netTime,
+    A.net_spot3_name netSpot3Name,
+    A.net_man_name netManName,
+    case when A.value_flag = '0' then '作废'
+    when A.value_flag = '1' then '有效'
+    else A.value_flag end valueFlag,
+    case when A.upload_flag = '1' then '未同步'
+    when A.upload_flag = '2' then '已同步'
+    else A.upload_flag end uploadFlag
+    from meter_work_railway_actual A
+    left join meter_work_check_first_actual B
+    on A.actual_no = B.check_id
+    where 1 = 1
+    and A.actual_no not in (
+    select distinct C.check_id
+    from meter_work_check_first_actual C
+    where 1 = 1
+    and B.value_flag = '1'
+    <if test="typeNo != null and typeName != ''">
+      and B.type_No = #{typeNo}
+    </if>)
+    and A.value_flag != '0'
+    <if test="actualNo != null and actualNo != ''">
+      and A.actual_no = #{actualNo}
+    </if>
+    <if test="netSpot3NoStr != null and netSpot3NoStr != ''">
+      and A.net_spot3_no in
+      <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    <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>
+    order by A.net_time desc
+  </select>
+  <select id="railwayLikeByDesc"
+          resultType="com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActualRailwayTemp">
+    select baseSpotNo, baseSpotName,railwayNo,checkId,checkStartTime,checkEndTime,checkUsedSeconds,checkManNo,checkManName,checkResult,typeNo,typeName, valueFlag
+    from ((SELECT B.base_spot_no baseSpotNo,
+    B.base_spot_name baseSpotName,
+    B.railway_no railwayNo,
+    A.check_id checkId,
+    A.check_start_time checkStartTime,
+    A.check_end_time checkEndTime,
+    A.check_used_seconds checkUsedSeconds,
+    A.check_man_no checkManNo,
+    A.check_man_name checkManName,
+    A.check_result checkResult,
+    A.type_no typeNo,
+    A.type_name typeName,
+    A.value_flag valueFlag
+    FROM METER_WORK_CHECK_FIRST_ACTUAL A
+    inner join meter_work_railway_act_first B
+    on A.check_id = B.actual_first_no
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and B.railway_type_no = #{railwayTypeNo}
+    </if>
+    <if test="typeNo != null and typeName != ''">
+      and A.type_No = #{typeNo}
+    </if>
+    and A.value_flag = '0') union
+    (SELECT B.net_spot3_no   baseSpotNo,
+    B.net_spot3_name baseSpotName,
+    B.railway_no railwayNo,
+    A.check_id checkId,
+    A.check_start_time checkStartTime,
+    A.check_end_time checkEndTime,
+    A.check_used_seconds checkUsedSeconds,
+    A.check_man_no checkManNo,
+    A.check_man_name checkManName,
+    A.check_result checkResult,
+    A.type_no typeNo,
+    A.type_name typeName,
+    A.value_flag valueFlag
+    FROM METER_WORK_CHECK_FIRST_ACTUAL A
+    inner join meter_work_railway_actual B
+    on A.check_id = B.actual_no
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and B.railway_type_no = #{railwayTypeNo}
+    </if>
+    <if test="typeNo != null and typeName != ''">
+      and A.type_No = #{typeNo}
+    </if>
+    and A.value_flag = '1'))
+    where 1 = 1
+    <if test="startTime != null and endTime != null and startTime != '' and endTime != ''">
+      and  checkStartTime  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
+      and checkStartTime  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="checkId != null and checkId != ''">
+      and checkId LIKE '%${checkId}%'
+    </if>
+    <if test="typeNo != null and typeNo != ''">
+      and typeNo LIKE '%${typeNo}%'
+    </if>
+    <if test="carNo != null and carNo != ''">
+      and carNo LIKE '%${carNo}%'
+    </if>
+    <if test="valueFlag != null and valueFlag != ''">
+      and valueFlag = #{valueFlag}
+    </if>
+    <if test="minTime != null and minTime != ''">
+      and checkUsedSeconds >= #{minTime}
+    </if>
+    <if test="maxTime != null and maxTime != ''">
+      and checkUsedSeconds &lt;=  #{maxTime}
+    </if>
+    <if test="createManNoStr != null and createManNoStr != ''">
+      and checkManNo in
+      <foreach collection="manNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    <if test="netSpot3NoStr != null and netSpot3NoStr != ''">
+      and baseSpotNo in
+      <foreach collection="spotNoStr" item="item" open="(" separator="," close=")">
+        #{item}
+      </foreach>
+    </if>
+    order by checkStartTime desc
+  </select>
+</mapper>

+ 216 - 0
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/MeterWorkCheckFirstActualRailwayTemp.java

@@ -0,0 +1,216 @@
+package com.steerinfo.meterwork.meterworkcheckfirstactual.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@ApiModel(value="核查汽车衡一次或者结净数据表")
+public class MeterWorkCheckFirstActualRailwayTemp implements IBasePO<String> {
+    private String baseSpotNo;
+    private String baseSpotName;
+    private String railwayNo;
+    /**
+     * 核查主键(ID,VARCHAR,50)
+     */
+    @ApiModelProperty(value="核查主键",required=true)
+    private String id;
+
+    /**
+     * 一次或结净主键(CHECK_ID,VARCHAR,50)
+     */
+    @ApiModelProperty(value="一次或结净主键",required=true)
+    private String checkId;
+
+    /**
+     * 核查开始时间(CHECK_START_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="核查开始时间",required=false)
+    private Date checkStartTime;
+
+    /**
+     * 核查结束时间(CHECK_END_TIME,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="核查结束时间",required=false)
+    private Date checkEndTime;
+
+    /**
+     * 核查用时(CHECK_USED_SECONDS,DECIMAL,0)
+     */
+    @ApiModelProperty(value="核查用时",required=false)
+    private BigDecimal checkUsedSeconds;
+
+    /**
+     * 核查人编号(CHECK_MAN_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="核查人编号",required=false)
+    private String checkManNo;
+
+    /**
+     * 核查人(CHECK_MAN_NAME,VARCHAR,30)
+     */
+    @ApiModelProperty(value="核查人",required=false)
+    private String checkManName;
+
+    /**
+     * 核查结果(CHECK_RESULT,VARCHAR,255)
+     */
+    @ApiModelProperty(value="核查结果",required=false)
+    private String checkResult;
+
+    /**
+     * 衡器类型(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)(TYPE_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="衡器类型(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)",required=false)
+    private String typeNo;
+
+    /**
+     * 衡器类型名称(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)(TYPE_NAME,VARCHAR,20)
+     */
+    @ApiModelProperty(value="衡器类型名称(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)",required=false)
+    private String typeName;
+
+    /**
+     * 0:一次数据、1:净重数据(VALUE_FLAG,VARCHAR,1)
+     */
+    @ApiModelProperty(value="0:一次数据、1:净重数据",required=false)
+    private String valueFlag;
+
+    private static final long serialVersionUID = 1L;
+
+    public String getBaseSpotNo() {
+        return baseSpotNo;
+    }
+
+    public void setBaseSpotNo(String baseSpotNo) {
+        this.baseSpotNo = baseSpotNo;
+    }
+
+    public String getBaseSpotName() {
+        return baseSpotName;
+    }
+
+    public void setBaseSpotName(String baseSpotName) {
+        this.baseSpotName = baseSpotName;
+    }
+
+    public String getRailwayNo() {
+        return railwayNo;
+    }
+
+    public void setRailwayNo(String railwayNo) {
+        this.railwayNo = railwayNo;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id == null ? null : id.trim();
+    }
+
+    public String getCheckId() {
+        return checkId;
+    }
+
+    public void setCheckId(String checkId) {
+        this.checkId = checkId == null ? null : checkId.trim();
+    }
+
+    public Date getCheckStartTime() {
+        return checkStartTime;
+    }
+
+    public void setCheckStartTime(Date checkStartTime) {
+        this.checkStartTime = checkStartTime;
+    }
+
+    public Date getCheckEndTime() {
+        return checkEndTime;
+    }
+
+    public void setCheckEndTime(Date checkEndTime) {
+        this.checkEndTime = checkEndTime;
+    }
+
+    public BigDecimal getCheckUsedSeconds() {
+        return checkUsedSeconds;
+    }
+
+    public void setCheckUsedSeconds(BigDecimal checkUsedSeconds) {
+        this.checkUsedSeconds = checkUsedSeconds;
+    }
+
+    public String getCheckManNo() {
+        return checkManNo;
+    }
+
+    public void setCheckManNo(String checkManNo) {
+        this.checkManNo = checkManNo == null ? null : checkManNo.trim();
+    }
+
+    public String getCheckManName() {
+        return checkManName;
+    }
+
+    public void setCheckManName(String checkManName) {
+        this.checkManName = checkManName == null ? null : checkManName.trim();
+    }
+
+    public String getCheckResult() {
+        return checkResult;
+    }
+
+    public void setCheckResult(String checkResult) {
+        this.checkResult = checkResult == null ? null : checkResult.trim();
+    }
+
+    public String getTypeNo() {
+        return typeNo;
+    }
+
+    public void setTypeNo(String typeNo) {
+        this.typeNo = typeNo == null ? null : typeNo.trim();
+    }
+
+    public String getTypeName() {
+        return typeName;
+    }
+
+    public void setTypeName(String typeName) {
+        this.typeName = typeName == null ? null : typeName.trim();
+    }
+
+    public String getValueFlag() {
+        return valueFlag;
+    }
+
+    public void setValueFlag(String valueFlag) {
+        this.valueFlag = valueFlag == null ? null : valueFlag.trim();
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", checkId=").append(checkId);
+        sb.append(", checkStartTime=").append(checkStartTime);
+        sb.append(", checkEndTime=").append(checkEndTime);
+        sb.append(", checkUsedSeconds=").append(checkUsedSeconds);
+        sb.append(", checkManNo=").append(checkManNo);
+        sb.append(", checkManName=").append(checkManName);
+        sb.append(", checkResult=").append(checkResult);
+        sb.append(", typeNo=").append(typeNo);
+        sb.append(", typeName=").append(typeName);
+        sb.append(", valueFlag=").append(valueFlag);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 304 - 0
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayActualCountCheckNum.java

@@ -0,0 +1,304 @@
+package com.steerinfo.meterwork.meterworkcheckfirstactual.model;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class RailwayActualCountCheckNum {
+    private BigDecimal countCheckNum;
+    private BigDecimal countSumCheckUsed;
+    private BigDecimal countAvgCheckUsed;
+    private String actualNo;
+    private String actualFirst1No;
+    private String actualFirst2No;
+    private String netMode;
+    private String grossMode;
+    private String tareMode;
+    private String predictionNo;
+    private String railwayNo;
+    private String conveyanceType;
+    private String matterNo;
+    private String matterName;
+    private BigDecimal grossWeight;
+    private BigDecimal tareWeight;
+    private BigDecimal netWeight;
+    private String forwardingUnitName;
+    private String receivingUintName;
+    private String meterTypeName;
+    private String theoryAmount;
+    private String senderRemark;
+    private Date grossTime;
+    private String baseSpot1Name;
+    private String grossManName;
+    private Date tareTime;
+    private String baseSpot2Name;
+    private String tareManName;
+    private Date netTime;
+    private String netSpot3Name;
+    private String netManName;
+    private String valueFlag;
+    private String uploadFlag;
+
+    public BigDecimal getCountCheckNum() {
+        return countCheckNum;
+    }
+
+    public void setCountCheckNum(BigDecimal countCheckNum) {
+        this.countCheckNum = countCheckNum;
+    }
+
+    public BigDecimal getCountSumCheckUsed() {
+        return countSumCheckUsed;
+    }
+
+    public void setCountSumCheckUsed(BigDecimal countSumCheckUsed) {
+        this.countSumCheckUsed = countSumCheckUsed;
+    }
+
+    public BigDecimal getCountAvgCheckUsed() {
+        return countAvgCheckUsed;
+    }
+
+    public void setCountAvgCheckUsed(BigDecimal countAvgCheckUsed) {
+        this.countAvgCheckUsed = countAvgCheckUsed;
+    }
+
+    public String getActualNo() {
+        return actualNo;
+    }
+
+    public void setActualNo(String actualNo) {
+        this.actualNo = actualNo;
+    }
+
+    public String getActualFirst1No() {
+        return actualFirst1No;
+    }
+
+    public void setActualFirst1No(String actualFirst1No) {
+        this.actualFirst1No = actualFirst1No;
+    }
+
+    public String getActualFirst2No() {
+        return actualFirst2No;
+    }
+
+    public void setActualFirst2No(String actualFirst2No) {
+        this.actualFirst2No = actualFirst2No;
+    }
+
+    public String getGrossMode() {
+        return grossMode;
+    }
+
+    public void setGrossMode(String grossMode) {
+        this.grossMode = grossMode;
+    }
+
+    public String getTareMode() {
+        return tareMode;
+    }
+
+    public void setTareMode(String tareMode) {
+        this.tareMode = tareMode;
+    }
+
+    public String getNetMode() {
+        return netMode;
+    }
+
+    public void setNetMode(String netMode) {
+        this.netMode = netMode;
+    }
+
+    public String getPredictionNo() {
+        return predictionNo;
+    }
+
+    public void setPredictionNo(String predictionNo) {
+        this.predictionNo = predictionNo;
+    }
+
+    public String getRailwayNo() {
+        return railwayNo;
+    }
+
+    public void setRailwayNo(String railwayNo) {
+        this.railwayNo = railwayNo;
+    }
+
+    public String getConveyanceType() {
+        return conveyanceType;
+    }
+
+    public void setConveyanceType(String conveyanceType) {
+        this.conveyanceType = conveyanceType;
+    }
+
+    public String getMatterNo() {
+        return matterNo;
+    }
+
+    public void setMatterNo(String matterNo) {
+        this.matterNo = matterNo;
+    }
+
+    public String getMatterName() {
+        return matterName;
+    }
+
+    public void setMatterName(String matterName) {
+        this.matterName = matterName;
+    }
+
+    public BigDecimal getGrossWeight() {
+        return grossWeight;
+    }
+
+    public void setGrossWeight(BigDecimal grossWeight) {
+        this.grossWeight = grossWeight;
+    }
+
+    public BigDecimal getTareWeight() {
+        return tareWeight;
+    }
+
+    public void setTareWeight(BigDecimal tareWeight) {
+        this.tareWeight = tareWeight;
+    }
+
+    public BigDecimal getNetWeight() {
+        return netWeight;
+    }
+
+    public void setNetWeight(BigDecimal netWeight) {
+        this.netWeight = netWeight;
+    }
+
+    public String getForwardingUnitName() {
+        return forwardingUnitName;
+    }
+
+    public void setForwardingUnitName(String forwardingUnitName) {
+        this.forwardingUnitName = forwardingUnitName;
+    }
+
+    public String getReceivingUintName() {
+        return receivingUintName;
+    }
+
+    public void setReceivingUintName(String receivingUintName) {
+        this.receivingUintName = receivingUintName;
+    }
+
+    public String getMeterTypeName() {
+        return meterTypeName;
+    }
+
+    public void setMeterTypeName(String meterTypeName) {
+        this.meterTypeName = meterTypeName;
+    }
+
+    public String getTheoryAmount() {
+        return theoryAmount;
+    }
+
+    public void setTheoryAmount(String theoryAmount) {
+        this.theoryAmount = theoryAmount;
+    }
+
+    public String getSenderRemark() {
+        return senderRemark;
+    }
+
+    public void setSenderRemark(String senderRemark) {
+        this.senderRemark = senderRemark;
+    }
+
+    public Date getGrossTime() {
+        return grossTime;
+    }
+
+    public void setGrossTime(Date grossTime) {
+        this.grossTime = grossTime;
+    }
+
+    public String getBaseSpot1Name() {
+        return baseSpot1Name;
+    }
+
+    public void setBaseSpot1Name(String baseSpot1Name) {
+        this.baseSpot1Name = baseSpot1Name;
+    }
+
+    public String getGrossManName() {
+        return grossManName;
+    }
+
+    public void setGrossManName(String grossManName) {
+        this.grossManName = grossManName;
+    }
+
+    public Date getTareTime() {
+        return tareTime;
+    }
+
+    public void setTareTime(Date tareTime) {
+        this.tareTime = tareTime;
+    }
+
+    public String getBaseSpot2Name() {
+        return baseSpot2Name;
+    }
+
+    public void setBaseSpot2Name(String baseSpot2Name) {
+        this.baseSpot2Name = baseSpot2Name;
+    }
+
+    public String getTareManName() {
+        return tareManName;
+    }
+
+    public void setTareManName(String tareManName) {
+        this.tareManName = tareManName;
+    }
+
+    public Date getNetTime() {
+        return netTime;
+    }
+
+    public void setNetTime(Date netTime) {
+        this.netTime = netTime;
+    }
+
+    public String getNetSpot3Name() {
+        return netSpot3Name;
+    }
+
+    public void setNetSpot3Name(String netSpot3Name) {
+        this.netSpot3Name = netSpot3Name;
+    }
+
+    public String getNetManName() {
+        return netManName;
+    }
+
+    public void setNetManName(String netManName) {
+        this.netManName = netManName;
+    }
+
+    public String getValueFlag() {
+        return valueFlag;
+    }
+
+    public void setValueFlag(String valueFlag) {
+        this.valueFlag = valueFlag;
+    }
+
+    public String getUploadFlag() {
+        return uploadFlag;
+    }
+
+    public void setUploadFlag(String uploadFlag) {
+        this.uploadFlag = uploadFlag;
+    }
+}

+ 141 - 0
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayFirstActualImgData.java

@@ -0,0 +1,141 @@
+package com.steerinfo.meterwork.meterworkcheckfirstactual.model;
+
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @Author zhangnan
+ * @Date 23/3/21 11:54
+ * @Version 1.0
+ */
+public class RailwayFirstActualImgData {
+    private String baseSpotNo;
+    private String baseSpotName;
+    private String id;
+    @ApiModelProperty(value="一次或结净主键",required=true)
+    private String checkId;
+    @ApiModelProperty(value="核查开始时间",required=false)
+    private Date checkStartTime;
+    @ApiModelProperty(value="核查结束时间",required=false)
+    private Date checkEndTime;
+    @ApiModelProperty(value="核查用时",required=false)
+    private BigDecimal checkUsedSeconds;
+    @ApiModelProperty(value="核查人编号",required=false)
+    private String checkManNo;
+    @ApiModelProperty(value="核查人",required=false)
+    private String checkManName;
+    @ApiModelProperty(value="核查结果",required=false)
+    private String checkResult;
+    @ApiModelProperty(value="衡器类型(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)",required=false)
+    private String typeNo;
+    @ApiModelProperty(value="衡器类型名称(001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)",required=false)
+    private String typeName;
+    @ApiModelProperty(value="0:一次数据、1:净重数据",required=false)
+    private String valueFlag;
+
+    public String getBaseSpotNo() {
+        return baseSpotNo;
+    }
+
+    public void setBaseSpotNo(String baseSpotNo) {
+        this.baseSpotNo = baseSpotNo;
+    }
+
+    public String getBaseSpotName() {
+        return baseSpotName;
+    }
+
+    public void setBaseSpotName(String baseSpotName) {
+        this.baseSpotName = baseSpotName;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getCheckId() {
+        return checkId;
+    }
+
+    public void setCheckId(String checkId) {
+        this.checkId = checkId;
+    }
+
+    public Date getCheckStartTime() {
+        return checkStartTime;
+    }
+
+    public void setCheckStartTime(Date checkStartTime) {
+        this.checkStartTime = checkStartTime;
+    }
+
+    public Date getCheckEndTime() {
+        return checkEndTime;
+    }
+
+    public void setCheckEndTime(Date checkEndTime) {
+        this.checkEndTime = checkEndTime;
+    }
+
+    public BigDecimal getCheckUsedSeconds() {
+        return checkUsedSeconds;
+    }
+
+    public void setCheckUsedSeconds(BigDecimal checkUsedSeconds) {
+        this.checkUsedSeconds = checkUsedSeconds;
+    }
+
+    public String getCheckManNo() {
+        return checkManNo;
+    }
+
+    public void setCheckManNo(String checkManNo) {
+        this.checkManNo = checkManNo;
+    }
+
+    public String getCheckManName() {
+        return checkManName;
+    }
+
+    public void setCheckManName(String checkManName) {
+        this.checkManName = checkManName;
+    }
+
+    public String getCheckResult() {
+        return checkResult;
+    }
+
+    public void setCheckResult(String checkResult) {
+        this.checkResult = checkResult;
+    }
+
+    public String getTypeNo() {
+        return typeNo;
+    }
+
+    public void setTypeNo(String typeNo) {
+        this.typeNo = typeNo;
+    }
+
+    public String getTypeName() {
+        return typeName;
+    }
+
+    public void setTypeName(String typeName) {
+        this.typeName = typeName;
+    }
+
+    public String getValueFlag() {
+        return valueFlag;
+    }
+
+    public void setValueFlag(String valueFlag) {
+        this.valueFlag = valueFlag;
+    }
+}

+ 196 - 0
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/model/RailwayFirstCountCheckNum.java

@@ -0,0 +1,196 @@
+package com.steerinfo.meterwork.meterworkcheckfirstactual.model;
+
+import java.math.BigDecimal;
+
+public class RailwayFirstCountCheckNum {
+    private BigDecimal countCheckNum;
+    private BigDecimal countSumCheckUsed;
+    private BigDecimal countAvgCheckUsed;
+    private String actualFirstNo;
+    private String meterMode;
+    private String predictionNo;
+    private String RailwayNo;
+    private String conveyanceType;
+    private String matterNo;
+    private String matterName;
+    private BigDecimal meterWeight;
+    private String weightType;
+    private String forwardingUnitName;
+    private String receivingUintName;
+    private String meterTypeName;
+    private String theoryAmount;
+    private String createManName;
+    private String createTime;
+    private String baseSpotName;
+    private String uploadFlag;
+    private String isPreScale;
+    private String valueFlag;
+
+    public BigDecimal getCountCheckNum() {
+        return countCheckNum;
+    }
+
+    public void setCountCheckNum(BigDecimal countCheckNum) {
+        this.countCheckNum = countCheckNum;
+    }
+
+    public BigDecimal getCountSumCheckUsed() {
+        return countSumCheckUsed;
+    }
+
+    public void setCountSumCheckUsed(BigDecimal countSumCheckUsed) {
+        this.countSumCheckUsed = countSumCheckUsed;
+    }
+
+    public BigDecimal getCountAvgCheckUsed() {
+        return countAvgCheckUsed;
+    }
+
+    public void setCountAvgCheckUsed(BigDecimal countAvgCheckUsed) {
+        this.countAvgCheckUsed = countAvgCheckUsed;
+    }
+
+    public String getActualFirstNo() {
+        return actualFirstNo;
+    }
+
+    public void setActualFirstNo(String actualFirstNo) {
+        this.actualFirstNo = actualFirstNo;
+    }
+
+    public String getMeterMode() {
+        return meterMode;
+    }
+
+    public void setMeterMode(String meterMode) {
+        this.meterMode = meterMode;
+    }
+
+    public String getPredictionNo() {
+        return predictionNo;
+    }
+
+    public void setPredictionNo(String predictionNo) {
+        this.predictionNo = predictionNo;
+    }
+
+    public String getRailwayNo() {
+        return RailwayNo;
+    }
+
+    public void setRailwayNo(String railwayNo) {
+        RailwayNo = railwayNo;
+    }
+
+    public String getConveyanceType() {
+        return conveyanceType;
+    }
+
+    public void setConveyanceType(String conveyanceType) {
+        this.conveyanceType = conveyanceType;
+    }
+
+    public String getMatterNo() {
+        return matterNo;
+    }
+
+    public void setMatterNo(String matterNo) {
+        this.matterNo = matterNo;
+    }
+
+    public String getMatterName() {
+        return matterName;
+    }
+
+    public void setMatterName(String matterName) {
+        this.matterName = matterName;
+    }
+
+    public BigDecimal getMeterWeight() {
+        return meterWeight;
+    }
+
+    public void setMeterWeight(BigDecimal meterWeight) {
+        this.meterWeight = meterWeight;
+    }
+
+    public String getWeightType() {
+        return weightType;
+    }
+
+    public void setWeightType(String weightType) {
+        this.weightType = weightType;
+    }
+
+    public String getForwardingUnitName() {
+        return forwardingUnitName;
+    }
+
+    public void setForwardingUnitName(String forwardingUnitName) {
+        this.forwardingUnitName = forwardingUnitName;
+    }
+
+    public String getReceivingUintName() {
+        return receivingUintName;
+    }
+
+    public void setReceivingUintName(String receivingUintName) {
+        this.receivingUintName = receivingUintName;
+    }
+
+    public String getMeterTypeName() {
+        return meterTypeName;
+    }
+
+    public void setMeterTypeName(String meterTypeName) {
+        this.meterTypeName = meterTypeName;
+    }
+
+    public String getTheoryAmount() {
+        return theoryAmount;
+    }
+
+    public void setTheoryAmount(String theoryAmount) {
+        this.theoryAmount = theoryAmount;
+    }
+
+    public String getCreateManName() {
+        return createManName;
+    }
+
+    public void setCreateManName(String createManName) {
+        this.createManName = createManName;
+    }
+
+    public String getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(String createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getBaseSpotName() {
+        return baseSpotName;
+    }
+
+    public void setBaseSpotName(String baseSpotName) {
+        this.baseSpotName = baseSpotName;
+    }
+
+    public String getIsPreScale() {
+        return isPreScale;
+    }
+
+    public void setIsPreScale(String isPreScale) {
+        this.isPreScale = isPreScale;
+    }
+
+    public String getValueFlag() {
+        return valueFlag;
+    }
+
+    public void setValueFlag(String valueFlag) {
+        this.valueFlag = valueFlag;
+    }
+}

+ 14 - 5
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/service/IMeterWorkCheckFirstActualService.java

@@ -3,10 +3,7 @@ package com.steerinfo.meterwork.meterworkcheckfirstactual.service;
 import com.steerinfo.framework.controller.RESTfulResult;
 import com.steerinfo.framework.service.IBaseService;
 import com.steerinfo.framework.service.pagehelper.PageList;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.CarActualCountCheckNum;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.CarFirstCountCheckNum;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActual;
-import com.steerinfo.meterwork.meterworkcheckfirstactual.model.MeterWorkCheckFirstActualTemp;
+import com.steerinfo.meterwork.meterworkcheckfirstactual.model.*;
 import com.steerinfo.meterwork.meterworkshiftreportgroup.model.MeterWorkShiftReportGroup;
 
 import java.util.HashMap;
@@ -33,4 +30,16 @@ public interface IMeterWorkCheckFirstActualService extends IBaseService<MeterWor
     PageList<MeterWorkCheckFirstActualTemp> likeByDesc(HashMap<String, Object> params);
     PageList<CarFirstCountCheckNum> carFirstLikeByDesc(HashMap<String, Object> params);
     PageList<CarActualCountCheckNum> carActualLikeByDesc(HashMap<String, Object> params);
-}
+
+    List<HashMap> railwayFirstImgDataList(HashMap parmas);
+
+    PageList<RailwayFirstCountCheckNum> railwayFirstCountCheckNum(HashMap parmas);
+
+    PageList<RailwayFirstCountCheckNum> railwayFirstLikeByDesc(HashMap parmas);
+
+    PageList<RailwayActualCountCheckNum> railwayActualCountCheckNum(HashMap parmas);
+
+    PageList<RailwayActualCountCheckNum> railwayActualLikeByDesc(HashMap parmas);
+
+    PageList<MeterWorkCheckFirstActualRailwayTemp> railwayLikeByDesc(HashMap parmas);
+}

+ 230 - 14
src/main/java/com/steerinfo/meterwork/meterworkcheckfirstactual/service/impl/MeterWorkCheckFirstActualServiceImpl.java

@@ -202,22 +202,97 @@ public class MeterWorkCheckFirstActualServiceImpl extends BaseServiceImpl<MeterW
                 }
             }else {
                 if(model.getValueFlag().equals("0")) {
-                    MeterWorkRailwayActFirst firstModel = meterWorkRailwayActFirstMapper.selectByPrimaryKey(model.getCheckId());
-                    if(firstModel != null) {
-                        firstModel.setCheckManNo(userId);
-                        firstModel.setCheckManName(userName);
-                        firstModel.setCheckTime(new Date());
-                        firstModel.setCheckFlag("2");
-                        meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(firstModel);
+                    if(meteringAdministratorModels.size() >= 1) {
+                        Long count = meteringAdministratorModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActFirst firstModel = meterWorkRailwayActFirstMapper.selectByPrimaryKey(model.getCheckId());
+                            if(firstModel != null) {
+                                firstModel.setCheckMan2No(userId);
+                                firstModel.setCheckMan2Name(userName);
+                                firstModel.setCheckTime2(new Date());
+                                firstModel.setCheckFlag2("2");
+                                firstModel.setCheckMemo2(model.getCheckResult());
+                                meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(firstModel);
+                            }
+                            flag = true;
+                        }
+                    }
+                    if(flag == false && gaugerMonitorModels.size() >= 1){
+                        Long count = gaugerMonitorModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActFirst firstModel = meterWorkRailwayActFirstMapper.selectByPrimaryKey(model.getCheckId());
+                            if(firstModel != null) {
+                                firstModel.setCheckMan1No(userId);
+                                firstModel.setCheckMan1Name(userName);
+                                firstModel.setCheckTime1(new Date());
+                                firstModel.setCheckFlag1("2");
+                                firstModel.setCheckMemo1(model.getCheckResult());
+                                meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(firstModel);
+                            }
+                            flag = true;
+                        }
+                    }
+                    if(flag == false && gaugerModels.size() >= 1) {
+                        Long count = gaugerModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActFirst firstModel = meterWorkRailwayActFirstMapper.selectByPrimaryKey(model.getCheckId());
+                            if(firstModel != null) {
+                                firstModel.setCheckManNo(userId);
+                                firstModel.setCheckManName(userName);
+                                firstModel.setCheckTime(new Date());
+                                firstModel.setCheckFlag("2");
+                                firstModel.setCheckMemo(model.getCheckResult());
+                                meterWorkRailwayActFirstMapper.updateByPrimaryKeySelective(firstModel);
+                            }
+                            flag = true;
+                        }
                     }
                 }else if(model.getValueFlag().equals("1")) {
-                    MeterWorkRailwayActual actualModel = meterWorkRailwayActualMapper.selectByPrimaryKey(model.getCheckId());
-                    if(actualModel != null) {
-                        actualModel.setCheckManNo(userId);
-                        actualModel.setCheckManName(userName);
-                        actualModel.setCheckTime(new Date());
-                        actualModel.setCheckFlag("2");
-                        meterWorkRailwayActualMapper.updateByPrimaryKeySelective(actualModel);
+
+                    if(meteringAdministratorModels.size() >= 1) {
+                        Long count = meteringAdministratorModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActual actualModel = meterWorkRailwayActualMapper.selectByPrimaryKey(model.getCheckId());
+                            if(actualModel != null) {
+                                actualModel.setCheckMan2No(userId);
+                                actualModel.setCheckMan2Name(userName);
+                                actualModel.setCheckTime2(new Date());
+                                actualModel.setCheckFlag2("2");
+                                actualModel.setCheckMemo2(model.getCheckResult());
+                                meterWorkRailwayActualMapper.updateByPrimaryKeySelective(actualModel);
+                            }
+                            flag = true;
+                        }
+                    }
+                    if(flag == false && gaugerMonitorModels.size() >= 1){
+                        Long count = gaugerMonitorModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActual actualModel = meterWorkRailwayActualMapper.selectByPrimaryKey(model.getCheckId());
+                            if(actualModel != null) {
+                                actualModel.setCheckMan1No(userId);
+                                actualModel.setCheckMan1Name(userName);
+                                actualModel.setCheckTime1(new Date());
+                                actualModel.setCheckFlag1("2");
+                                actualModel.setCheckMemo1(model.getCheckResult());
+                                meterWorkRailwayActualMapper.updateByPrimaryKeySelective(actualModel);
+                            }
+                            flag = true;
+                        }
+                    }
+                    if(flag == false && gaugerModels.size() >= 1) {
+                        Long count = gaugerModels.stream().filter(item -> item.equals(userId)).count();
+                        if(count >= 1) {
+                            MeterWorkRailwayActual actualModel = meterWorkRailwayActualMapper.selectByPrimaryKey(model.getCheckId());
+                            if(actualModel != null) {
+                                actualModel.setCheckManNo(userId);
+                                actualModel.setCheckManName(userName);
+                                actualModel.setCheckTime(new Date());
+                                actualModel.setCheckFlag("2");
+                                actualModel.setCheckMemo(model.getCheckResult());
+                                meterWorkRailwayActualMapper.updateByPrimaryKeySelective(actualModel);
+                            }
+                            flag = true;
+                        }
                     }
                 }
             }
@@ -378,4 +453,145 @@ public class MeterWorkCheckFirstActualServiceImpl extends BaseServiceImpl<MeterW
         PageList pageInfo = new PageList(rows);
         return pageInfo;
     }
+
+    @Override
+    public List<HashMap> railwayFirstImgDataList(HashMap params) {
+
+        // (001002001:汽车衡、001019001:静态轨道衡、001019002:动态轨道衡、001019003:静态铁水轨道衡、001019004:动态铁水轨道衡、001019005:吊钩秤)
+        //String typeNo = params.get("typeNo") != null? params.get("typeNo").toString(): "";
+        //// 0:一次数据、1:净重数据
+        //String valueFlag = params.get("valueFlag") != null? params.get("valueFlag").toString(): "";
+        //站点信息  baseSpotNo、baseSpotName
+        List<MeterBaseSpotInfo> spotList = meterWorkCheckFirstActualMapper.railwaySpotInfoList(params);
+        //一次数据查询
+        String startTime = params.get("startTime").toString();
+        String endTime = params.get("endTime").toString();
+        String railwayTypeNo = params.get("railwayTypeNo").toString();
+        HashMap<String, Object> obj = new HashMap<>();
+        obj.put("startTime", startTime);
+        obj.put("endTime", endTime);
+        obj.put("railwayTypeNo",railwayTypeNo);
+        List<MeterWorkRailwayActFirst> firstModels = meterWorkCheckFirstActualMapper.railwayFirstDataList(obj);
+        List<MeterWorkRailwayActual> actualModels = meterWorkCheckFirstActualMapper.railwayActualDataList(obj);
+        //一次数据与核查表左连接
+        List<RailwayFirstActualImgData> firstImgDatamodels = meterWorkCheckFirstActualMapper.railwayFirstImgDataList(params);
+        //净重数据与核查表左连接
+        List<RailwayFirstActualImgData> ActualImgDatamodels = meterWorkCheckFirstActualMapper.railwayActualImgDataList(params);
+        List<HashMap> mapList = new ArrayList<>();
+        if(spotList.size() >= 1) {
+            for(MeterBaseSpotInfo spotModel: spotList) {
+                long countFirstData = firstModels.stream().filter(item -> StringUtils.isNotEmpty(item.getBaseSpotNo())
+                        && StringUtils.isNotEmpty(item.getBaseSpotName())
+                        && StringUtils.isNotEmpty(spotModel.getBaseSpotNo())
+                        && StringUtils.isNotEmpty(spotModel.getBaseSpotName())
+                        && item.getBaseSpotNo().equals(spotModel.getBaseSpotNo())
+                        && item.getBaseSpotName().equals(spotModel.getBaseSpotName())).count();
+                long countCheckFirstDataYes = 0L;
+                long countCheckFirstDataNo = 0L;
+                if(firstImgDatamodels.size() >= 1) {
+                    countCheckFirstDataNo = firstImgDatamodels.stream().filter(item -> StringUtils.isNotEmpty(item.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(item.getBaseSpotName())
+                            && StringUtils.isNotEmpty(spotModel.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(spotModel.getBaseSpotName())
+                            && item.getBaseSpotNo().equals(spotModel.getBaseSpotNo())
+                            && item.getBaseSpotName().equals(spotModel.getBaseSpotName())).count();
+                }
+                countCheckFirstDataYes = countFirstData - countCheckFirstDataNo;
+
+                long countActualData = actualModels.stream().filter(item -> StringUtils.isNotEmpty(item.getNetSpot3No())
+                        && StringUtils.isNotEmpty(item.getNetSpot3Name())
+                        && StringUtils.isNotEmpty(spotModel.getBaseSpotNo())
+                        && StringUtils.isNotEmpty(spotModel.getBaseSpotName())
+                        && item.getNetSpot3No().equals(spotModel.getBaseSpotNo())
+                        && item.getNetSpot3Name().equals(spotModel.getBaseSpotName())).count();;
+                long countCheckActualDataYes = 0L;
+                long countCheckActualDataNo = 0L;
+                if(ActualImgDatamodels.size() >= 1) {
+                    countCheckActualDataNo = ActualImgDatamodels.stream().filter(item -> StringUtils.isNotEmpty(item.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(item.getBaseSpotName())
+                            && StringUtils.isNotEmpty(spotModel.getBaseSpotNo())
+                            && StringUtils.isNotEmpty(spotModel.getBaseSpotName())
+                            && item.getBaseSpotNo().equals(spotModel.getBaseSpotNo())
+                            && item.getBaseSpotName().equals(spotModel.getBaseSpotName())).count();
+                }
+                countCheckActualDataYes = countActualData - countCheckActualDataNo;
+
+                HashMap<String, Object> map = new HashMap<>();
+                map.put("baseSpotNo", spotModel.getBaseSpotNo());
+                map.put("baseSpotName", spotModel.getBaseSpotName());
+                map.put("countFirstData", countFirstData);
+                map.put("countCheckFirstDataYes", countCheckFirstDataYes);
+                map.put("countCheckFirstDataNo", countCheckFirstDataNo);
+                map.put("countActualData", countActualData);
+                map.put("countCheckActualDataYes", countCheckActualDataYes);
+                map.put("countCheckActualDataNo", countCheckActualDataNo);
+                mapList.add(map);
+            }
+        }
+        return mapList;
+    }
+
+    @Override
+    public PageList<RailwayFirstCountCheckNum> railwayFirstCountCheckNum(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        if(params.get("netSpot3NoStr") != null) {
+            String[] spotNoStr = params.get("netSpot3NoStr").toString().split(",");
+            params.put("spotNoStr", spotNoStr);
+        }
+        List<RailwayFirstCountCheckNum> rows = meterWorkCheckFirstActualMapper.railwayFirstCountCheckNum(params);
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
+
+    @Override
+    public PageList<RailwayFirstCountCheckNum> railwayFirstLikeByDesc(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        if(params.get("netSpot3NoStr") != null) {
+            String[] spotNoStr = params.get("netSpot3NoStr").toString().split(",");
+            params.put("spotNoStr", spotNoStr);
+        }
+        List<RailwayFirstCountCheckNum> rows = meterWorkCheckFirstActualMapper.railwayFirstLikeByDesc(params);
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
+
+    @Override
+    public PageList<RailwayActualCountCheckNum> railwayActualCountCheckNum(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        if(params.get("netSpot3NoStr") != null) {
+            String[] spotNoStr = params.get("netSpot3NoStr").toString().split(",");
+            params.put("spotNoStr", spotNoStr);
+        }
+        List<RailwayActualCountCheckNum> rows = meterWorkCheckFirstActualMapper.railwayActualCountCheckNum(params);
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
+
+    @Override
+    public PageList<RailwayActualCountCheckNum> railwayActualLikeByDesc(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        if(params.get("netSpot3NoStr") != null) {
+            String[] spotNoStr = params.get("netSpot3NoStr").toString().split(",");
+            params.put("spotNoStr", spotNoStr);
+        }
+        List<RailwayActualCountCheckNum> rows = meterWorkCheckFirstActualMapper.railwayActualLikeByDesc(params);
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
+
+    @Override
+    public PageList<MeterWorkCheckFirstActualRailwayTemp> railwayLikeByDesc(HashMap params) {
+        PageHelper.startPage(Integer.parseInt(params.get("pageNum").toString()), Integer.parseInt(params.get("pageSize").toString()));
+        if(params.get("createManNoStr") != null) {
+            String[] manNoStr = params.get("createManNoStr").toString().split(",");
+            params.put("manNoStr", manNoStr);
+        }
+        if(params.get("netSpot3NoStr") != null) {
+            String[] spotNoStr = params.get("netSpot3NoStr").toString().split(",");
+            params.put("spotNoStr", spotNoStr);
+        }
+        List<MeterWorkCheckFirstActualRailwayTemp> rows = meterWorkCheckFirstActualMapper.railwayLikeByDesc(params);
+        PageList pageInfo = new PageList(rows);
+        return pageInfo;
+    }
 }

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

@@ -742,6 +742,7 @@
             and  A.create_Time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
             and A.create_Time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
         </if>
+        order by a.operation_function
     </select>
 
     <select id="hookTareWeightAndTheoryAmount" parameterType="java.util.HashMap"
@@ -1398,6 +1399,7 @@
             and  A.create_Time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
             and A.create_Time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
         </if>
+        order by A.operation_page
     </select>
     <select id="measurementAccuracyCreateManName" resultType="java.lang.String">
         select distinct A.create_man_name createManName
@@ -1408,5 +1410,6 @@
             and  A.create_Time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss')
             and A.create_Time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
         </if>
+        order by A.create_man_name
     </select>
 </mapper>

Diferenças do arquivo suprimidas por serem muito extensas
+ 515 - 232
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/mapper/MeterWorkRailwayActFirstMapper.xml


+ 173 - 7
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/model/MeterWorkRailwayActFirst.java

@@ -3,13 +3,14 @@ package com.steerinfo.meterwork.meterworkrailwayactfirst.model;
 import com.steerinfo.framework.model.IBasePO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+
 import java.math.BigDecimal;
 import java.util.Date;
 
 @ApiModel(value="计量轨道衡一次数据表")
 public class MeterWorkRailwayActFirst implements IBasePO<String> {
     /**
-     * 计量作业编号(YYYYMMDD+6位流水)(ACTUAL_FIRST_NO,VARCHAR,20)
+     * 计量作业编号(YYYYMMDD+6位流水)(ACTUAL_FIRST_NO,VARCHAR,50)
      */
     @ApiModelProperty(value="计量作业编号(YYYYMMDD+6位流水)",required=true)
     private String actualFirstNo;
@@ -21,7 +22,7 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
     private String predictionNo;
 
     /**
-     * 通知单号(NOTICE_NO,VARCHAR,20)
+     * 通知单号(NOTICE_NO,VARCHAR,50)
      */
     @ApiModelProperty(value="通知单号",required=false)
     private String noticeNo;
@@ -303,9 +304,9 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
     private String memo;
 
     /**
-     * 状态(0=作废,1=有效(已匹配),2=结净,3=未匹配)(VALUE_FLAG,VARCHAR,1)
+     * 状态(0=作废,1=有效(已匹配),2=结净)(VALUE_FLAG,VARCHAR,1)
      */
-    @ApiModelProperty(value="状态(0=作废,1=有效(已匹配),2=结净,3=未匹配)",required=false)
+    @ApiModelProperty(value="状态(0=作废,1=有效(已匹配),2=结净)",required=false)
     private String valueFlag;
 
     /**
@@ -543,9 +544,9 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
     private String measureTaskNum;
 
     /**
-     * 数据来源(1=智能终端,2=本地计量,3=应急计量,4=手动录入(计量票据录入))(DATA_SOURCE,VARCHAR,2)
+     * 数据来源(1.自动计量,2.人工计量,3.离线计量)(DATA_SOURCE,VARCHAR,2)
      */
-    @ApiModelProperty(value="数据来源(1=智能终端,2=本地计量,3=应急计量,4=手动录入(计量票据录入))",required=false)
+    @ApiModelProperty(value="数据来源(1.自动计量,2.人工计量,3.离线计量)",required=false)
     private String dataSource;
 
     /**
@@ -579,11 +580,77 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
     private String cancelType;
 
     /**
-     * 列次编号(LC_NO,VARCHAR,20)
+     * 列次编号(LC_NO,VARCHAR,50)
      */
     @ApiModelProperty(value="列次编号",required=false)
     private String lcNo;
 
+    /**
+     * 审核人原因(CHECK_MEMO,VARCHAR,255)
+     */
+    @ApiModelProperty(value="审核人原因",required=false)
+    private String checkMemo;
+
+    /**
+     * 二级审核人编号(CHECK_MAN1_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="二级审核人编号",required=false)
+    private String checkMan1No;
+
+    /**
+     * 二级审核人(CHECK_MAN1_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="二级审核人",required=false)
+    private String checkMan1Name;
+
+    /**
+     * 二级审核时间(CHECK_TIME1,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="二级审核时间",required=false)
+    private Date checkTime1;
+
+    /**
+     * 二级审核原因(CHECK_MEMO1,VARCHAR,255)
+     */
+    @ApiModelProperty(value="二级审核原因",required=false)
+    private String checkMemo1;
+
+    /**
+     * 三级审核人编号(CHECK_MAN2_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="三级审核人编号",required=false)
+    private String checkMan2No;
+
+    /**
+     * 三级审核人(CHECK_MAN2_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="三级审核人",required=false)
+    private String checkMan2Name;
+
+    /**
+     * 三级审核时间(CHECK_TIME2,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="三级审核时间",required=false)
+    private Date checkTime2;
+
+    /**
+     * 三级审核原因(CHECK_MEMO2,VARCHAR,255)
+     */
+    @ApiModelProperty(value="三级审核原因",required=false)
+    private String checkMemo2;
+
+    /**
+     * 二级审核状态(CHECK_FLAG1,VARCHAR,1)
+     */
+    @ApiModelProperty(value="二级审核状态",required=false)
+    private String checkFlag1;
+
+    /**
+     * 三级审核状态(CHECK_FLAG2,VARCHAR,1)
+     */
+    @ApiModelProperty(value="三级审核状态",required=false)
+    private String checkFlag2;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -1364,6 +1431,94 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
         this.lcNo = lcNo == null ? null : lcNo.trim();
     }
 
+    public String getCheckMemo() {
+        return checkMemo;
+    }
+
+    public void setCheckMemo(String checkMemo) {
+        this.checkMemo = checkMemo == null ? null : checkMemo.trim();
+    }
+
+    public String getCheckMan1No() {
+        return checkMan1No;
+    }
+
+    public void setCheckMan1No(String checkMan1No) {
+        this.checkMan1No = checkMan1No == null ? null : checkMan1No.trim();
+    }
+
+    public String getCheckMan1Name() {
+        return checkMan1Name;
+    }
+
+    public void setCheckMan1Name(String checkMan1Name) {
+        this.checkMan1Name = checkMan1Name == null ? null : checkMan1Name.trim();
+    }
+
+    public Date getCheckTime1() {
+        return checkTime1;
+    }
+
+    public void setCheckTime1(Date checkTime1) {
+        this.checkTime1 = checkTime1;
+    }
+
+    public String getCheckMemo1() {
+        return checkMemo1;
+    }
+
+    public void setCheckMemo1(String checkMemo1) {
+        this.checkMemo1 = checkMemo1 == null ? null : checkMemo1.trim();
+    }
+
+    public String getCheckMan2No() {
+        return checkMan2No;
+    }
+
+    public void setCheckMan2No(String checkMan2No) {
+        this.checkMan2No = checkMan2No == null ? null : checkMan2No.trim();
+    }
+
+    public String getCheckMan2Name() {
+        return checkMan2Name;
+    }
+
+    public void setCheckMan2Name(String checkMan2Name) {
+        this.checkMan2Name = checkMan2Name == null ? null : checkMan2Name.trim();
+    }
+
+    public Date getCheckTime2() {
+        return checkTime2;
+    }
+
+    public void setCheckTime2(Date checkTime2) {
+        this.checkTime2 = checkTime2;
+    }
+
+    public String getCheckMemo2() {
+        return checkMemo2;
+    }
+
+    public void setCheckMemo2(String checkMemo2) {
+        this.checkMemo2 = checkMemo2 == null ? null : checkMemo2.trim();
+    }
+
+    public String getCheckFlag1() {
+        return checkFlag1;
+    }
+
+    public void setCheckFlag1(String checkFlag1) {
+        this.checkFlag1 = checkFlag1 == null ? null : checkFlag1.trim();
+    }
+
+    public String getCheckFlag2() {
+        return checkFlag2;
+    }
+
+    public void setCheckFlag2(String checkFlag2) {
+        this.checkFlag2 = checkFlag2 == null ? null : checkFlag2.trim();
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -1466,6 +1621,17 @@ public class MeterWorkRailwayActFirst implements IBasePO<String> {
         sb.append(", hc15=").append(hc15);
         sb.append(", cancelType=").append(cancelType);
         sb.append(", lcNo=").append(lcNo);
+        sb.append(", checkMemo=").append(checkMemo);
+        sb.append(", checkMan1No=").append(checkMan1No);
+        sb.append(", checkMan1Name=").append(checkMan1Name);
+        sb.append(", checkTime1=").append(checkTime1);
+        sb.append(", checkMemo1=").append(checkMemo1);
+        sb.append(", checkMan2No=").append(checkMan2No);
+        sb.append(", checkMan2Name=").append(checkMan2Name);
+        sb.append(", checkTime2=").append(checkTime2);
+        sb.append(", checkMemo2=").append(checkMemo2);
+        sb.append(", checkFlag1=").append(checkFlag1);
+        sb.append(", checkFlag2=").append(checkFlag2);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 32 - 10
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java

@@ -9692,6 +9692,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
             String userId = userPayload.getUserCode();
             String userName = userPayload.getUserName();
             int count = 0;
+
             for (HashMap model: models) {
                 String grossNo = model.get("GROSS_NO") == null ? "": model.get("GROSS_NO").toString();
                 String tareNo = model.get("TARE_NO") == null ? "": model.get("TARE_NO").toString();
@@ -9699,6 +9700,23 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                 String scaleNo = model.get("PREDICTION_NO") == null ? "": model.get("PREDICTION_NO").toString();
                 Assert.isTrue(StringUtils.isNotEmpty(grossNo), "毛重计量编号不能为空");
 
+
+                String typeNo = models.get(0).get("TYPE_NO") == null? "": models.get(0).get("TYPE_NO").toString();
+                if(StringUtils.isEmpty(typeNo)) {
+                    rm.setMessage("计量方式为空,请重新选择计量方式!!");
+                    return rm;
+                }
+                String msg = "";
+                if(StringUtils.isNotEmpty(tareNo)) {    //毛重-回空皮
+                    msg = "回空皮结净";
+                }else if(typeNo.equals("2")) {      //毛重-标识皮
+                    msg = "标识皮结净";
+                }else if(typeNo.equals("3")) {      //毛重-标准皮
+                    msg = "标准皮结净";
+                }else if(typeNo.equals("4")){       //毛重-历史皮
+                    msg = "历史皮结净";
+                }
+
                 MeterWorkRailwayActFirst grossModel = new MeterWorkRailwayActFirst();
                 MeterWorkRailwayActFirst tareModel = new MeterWorkRailwayActFirst();
                 if(StringUtils.isNotEmpty(scaleNo)) {
@@ -9720,7 +9738,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         grossModel.setWeightType("0");
                         grossModel.setIsPreSacale("1");
                         grossModel.setPredictionType("1");
-                        grossModel.setNote("一次批量匹配");
+                        grossModel.setNote("一次批量匹配" + msg);
                         meterWorkRailwayActFirstMapper.updateByPrimaryKey(grossModel);
                         //更新第一次皮重数据库
                         tareModel.setValueFlag(DbConstants.NET);
@@ -9730,7 +9748,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         tareModel.setWeightType("1");
                         tareModel.setIsPreSacale("1");
                         tareModel.setPredictionType("1");
-                        tareModel.setNote("一次批量匹配");
+                        tareModel.setNote("一次批量匹配" + msg);
                         meterWorkRailwayActFirstMapper.updateByPrimaryKey(tareModel);
 
                         MeterWorkRailwayActual actualTemp = meterWorkRailwayActualMapper.manualAddPre(grossModel.getActualFirstNo(), tareModel.getActualFirstNo(), scale.getPredictionNo());
@@ -9741,7 +9759,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         String no = PublicMethod.IdCreate(3);
                         actualModel.setActualNo(no);
                         actualModel.setNetMode("1");
-                        actualModel.setNote("一次批量匹配结净保存");
+                        actualModel.setNote("一次批量匹配" + msg);
+                        actualModel.setMemo("一次批量匹配" + msg);
                         actualModel.setUploadFlag("1");
                         actualModel.setIsPreSacale("1");
                         actualModel.setPredictionType("1");
@@ -9794,7 +9813,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                             grossModel.setWeightType("0");
                             grossModel.setIsPreSacale("1");
                             grossModel.setPredictionType("1");
-                            grossModel.setNote("一次批量匹配");
+                            grossModel.setNote("一次批量匹配" + msg);
                             meterWorkRailwayActFirstMapper.updateByPrimaryKey(grossModel);
 
                             MeterWorkRailwayActual actualTemp = meterWorkRailwayActualMapper.manualAddPre(grossModel.getActualFirstNo(), tareModel.getActualFirstNo(), scale.getPredictionNo());
@@ -9806,7 +9825,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                             actualModel.setActualNo(no);
                             actualModel.setTareWeight(tareWeight);
                             actualModel.setNetMode("1");
-                            actualModel.setNote("一次批量匹配结净保存");
+                            actualModel.setNote("一次批量匹配" + msg);
+                            actualModel.setMemo("一次批量匹配" + msg);
                             actualModel.setUploadFlag("1");
                             actualModel.setIsPreSacale("1");
                             actualModel.setPredictionType("1");
@@ -9860,7 +9880,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         grossModel.setUpdateTime(new Date());
                         grossModel.setWeightType("0");
                         grossModel.setIsPreSacale("0");
-                        grossModel.setNote("一次批量匹配");
+                        grossModel.setNote("一次批量匹配" + msg);
                         meterWorkRailwayActFirstMapper.updateByPrimaryKey(grossModel);
                         //更新第一次皮重数据库
                         tareModel.setValueFlag(DbConstants.NET);
@@ -9869,7 +9889,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         tareModel.setUpdateTime(new Date());
                         tareModel.setWeightType("1");
                         tareModel.setIsPreSacale("0");
-                        tareModel.setNote("一次批量匹配");
+                        tareModel.setNote("一次批量匹配" + msg);
                         meterWorkRailwayActFirstMapper.updateByPrimaryKey(tareModel);
 
                         MeterWorkRailwayActual actualTemp = meterWorkRailwayActualMapper.manualAdd(grossModel.getActualFirstNo(), tareModel.getActualFirstNo());
@@ -9880,7 +9900,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                         String no = PublicMethod.IdCreate(3);
                         actualModel.setActualNo(no);
                         actualModel.setNetMode("1");
-                        actualModel.setNote("一次批量匹配结净保存");
+                        actualModel.setNote("一次批量匹配" + msg);
+                        actualModel.setMemo("一次批量匹配" + msg);
                         actualModel.setUploadFlag("1");
                         actualModel.setIsPreSacale("0");
                         actualModel.setValueFlag("1");
@@ -9918,7 +9939,7 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                             grossModel.setUpdateTime(new Date());
                             grossModel.setWeightType("0");
                             grossModel.setIsPreSacale("0");
-                            grossModel.setNote("一次批量匹配");
+                            grossModel.setNote("一次批量匹配" + msg);
                             meterWorkRailwayActFirstMapper.updateByPrimaryKey(grossModel);
 
                             MeterWorkRailwayActual actualTemp = meterWorkRailwayActualMapper.manualAdd(grossModel.getActualFirstNo(), tareModel.getActualFirstNo());
@@ -9930,7 +9951,8 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
                             actualModel.setActualNo(no);
                             actualModel.setTareWeight(tareWeight);
                             actualModel.setNetMode("1");
-                            actualModel.setNote("一次批量匹配结净保存");
+                            actualModel.setNote("一次批量匹配" + msg);
+                            actualModel.setMemo("一次批量匹配" + msg);
                             actualModel.setUploadFlag("1");
                             actualModel.setIsPreSacale("0");
                             actualModel.setValueFlag("1");

+ 506 - 223
src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/mapper/MeterWorkRailwayActualMapper.xml

@@ -114,6 +114,17 @@
     <result column="DOCUMENT_ID" jdbcType="VARCHAR" property="documentId" />
     <result column="IS_AUTO_PUBLISH" jdbcType="VARCHAR" property="isAutoPublish" />
     <result column="CHECK_FLAG" jdbcType="VARCHAR" property="checkFlag" />
+    <result column="CHECK_MEMO" jdbcType="VARCHAR" property="checkMemo" />
+    <result column="CHECK_MAN1_NO" jdbcType="VARCHAR" property="checkMan1No" />
+    <result column="CHECK_MAN1_NAME" jdbcType="VARCHAR" property="checkMan1Name" />
+    <result column="CHECK_TIME1" jdbcType="TIMESTAMP" property="checkTime1" />
+    <result column="CHECK_MEMO1" jdbcType="VARCHAR" property="checkMemo1" />
+    <result column="CHECK_MAN2_NO" jdbcType="VARCHAR" property="checkMan2No" />
+    <result column="CHECK_MAN2_NAME" jdbcType="VARCHAR" property="checkMan2Name" />
+    <result column="CHECK_TIME2" jdbcType="TIMESTAMP" property="checkTime2" />
+    <result column="CHECK_MEMO2" jdbcType="VARCHAR" property="checkMemo2" />
+    <result column="CHECK_FLAG1" jdbcType="VARCHAR" property="checkFlag1" />
+    <result column="CHECK_FLAG2" jdbcType="VARCHAR" property="checkFlag2" />
   </resultMap>
   <sql id="columns">
     ACTUAL_NO, PREDICTION_NO, NOTICE_NO, RAILWAY_NO, RAILWAY_CARRIAGE_NO, MATTER_NO, 
@@ -135,7 +146,9 @@
     AMOUNT_UNIT, MEASURE_OBJECT_TYPE, MEASURE_TASK_NUM, BILL_TYPE, CREATE_MAN_NAME, CREATE_TIME, 
     DATA_SOURCE, NOTE, IS_PRE_SACALE, LC_NO, PREDICTION_TYPE, PREDICTION_COMBINATION, 
     BOUND_LIST_URL, IS_BOUND_LIST, CONTRACT_ID, IS_BOUND_LIST_DOWNLOADED, DOCUMENT_ID, 
-    IS_AUTO_PUBLISH, CHECK_FLAG
+    IS_AUTO_PUBLISH, CHECK_FLAG, CHECK_MEMO, CHECK_MAN1_NO, CHECK_MAN1_NAME, CHECK_TIME1, 
+    CHECK_MEMO1, CHECK_MAN2_NO, CHECK_MAN2_NAME, CHECK_TIME2, CHECK_MEMO2, CHECK_FLAG1, 
+    CHECK_FLAG2
   </sql>
   <sql id="columns_alias">
     t.ACTUAL_NO, t.PREDICTION_NO, t.NOTICE_NO, t.RAILWAY_NO, t.RAILWAY_CARRIAGE_NO, t.MATTER_NO, 
@@ -159,7 +172,9 @@
     t.MEASURE_TASK_NUM, t.BILL_TYPE, t.CREATE_MAN_NAME, t.CREATE_TIME, t.DATA_SOURCE, 
     t.NOTE, t.IS_PRE_SACALE, t.LC_NO, t.PREDICTION_TYPE, t.PREDICTION_COMBINATION, t.BOUND_LIST_URL, 
     t.IS_BOUND_LIST, t.CONTRACT_ID, t.IS_BOUND_LIST_DOWNLOADED, t.DOCUMENT_ID, t.IS_AUTO_PUBLISH, 
-    t.CHECK_FLAG
+    t.CHECK_FLAG, t.CHECK_MEMO, t.CHECK_MAN1_NO, t.CHECK_MAN1_NAME, t.CHECK_TIME1, t.CHECK_MEMO1, 
+    t.CHECK_MAN2_NO, t.CHECK_MAN2_NAME, t.CHECK_TIME2, t.CHECK_MEMO2, t.CHECK_FLAG1, 
+    t.CHECK_FLAG2
   </sql>
   <sql id="select">
     SELECT <include refid="columns" /> FROM METER_WORK_RAILWAY_ACTUAL
@@ -505,6 +520,39 @@
       <if test="checkFlag != null and checkFlag != ''">
         and CHECK_FLAG = #{checkFlag}
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        and CHECK_MEMO = #{checkMemo}
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        and CHECK_MAN1_NO = #{checkMan1No}
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        and CHECK_MAN1_NAME = #{checkMan1Name}
+      </if>
+      <if test="checkTime1 != null">
+        and TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = #{checkTime1}
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        and CHECK_MEMO1 = #{checkMemo1}
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        and CHECK_MAN2_NO = #{checkMan2No}
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        and CHECK_MAN2_NAME = #{checkMan2Name}
+      </if>
+      <if test="checkTime2 != null">
+        and TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = #{checkTime2}
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        and CHECK_MEMO2 = #{checkMemo2}
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        and CHECK_FLAG1 = #{checkFlag1}
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        and CHECK_FLAG2 = #{checkFlag2}
+      </if>
     </where>
   </sql>
   <sql id="whereLike">
@@ -845,6 +893,39 @@
       <if test="checkFlag != null and checkFlag != ''">
         and CHECK_FLAG LIKE '%${checkFlag}%'
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        and CHECK_MEMO LIKE '%${checkMemo}%'
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        and CHECK_MAN1_NO LIKE '%${checkMan1No}%'
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        and CHECK_MAN1_NAME LIKE '%${checkMan1Name}%'
+      </if>
+      <if test="checkTime1 != null">
+        and TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = #{checkTime1}
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        and CHECK_MEMO1 LIKE '%${checkMemo1}%'
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        and CHECK_MAN2_NO LIKE '%${checkMan2No}%'
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        and CHECK_MAN2_NAME LIKE '%${checkMan2Name}%'
+      </if>
+      <if test="checkTime2 != null">
+        and TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = #{checkTime2}
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        and CHECK_MEMO2 LIKE '%${checkMemo2}%'
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        and CHECK_FLAG1 LIKE '%${checkFlag1}%'
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        and CHECK_FLAG2 LIKE '%${checkFlag2}%'
+      </if>
     </where>
   </sql>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
@@ -1187,6 +1268,39 @@
       <if test="checkFlag != null and checkFlag != ''">
         or CHECK_FLAG = #{checkFlag}
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        or CHECK_MEMO = #{checkMemo}
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        or CHECK_MAN1_NO = #{checkMan1No}
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        or CHECK_MAN1_NAME = #{checkMan1Name}
+      </if>
+      <if test="checkTime1 != null">
+        or TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = '#{checkTime1}'
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        or CHECK_MEMO1 = #{checkMemo1}
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        or CHECK_MAN2_NO = #{checkMan2No}
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        or CHECK_MAN2_NAME = #{checkMan2Name}
+      </if>
+      <if test="checkTime2 != null">
+        or TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = '#{checkTime2}'
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        or CHECK_MEMO2 = #{checkMemo2}
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        or CHECK_FLAG1 = #{checkFlag1}
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        or CHECK_FLAG2 = #{checkFlag2}
+      </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual">
     insert into METER_WORK_RAILWAY_ACTUAL (ACTUAL_NO, PREDICTION_NO, NOTICE_NO, 
@@ -1227,7 +1341,11 @@
       PREDICTION_TYPE, PREDICTION_COMBINATION, 
       BOUND_LIST_URL, IS_BOUND_LIST, CONTRACT_ID, 
       IS_BOUND_LIST_DOWNLOADED, DOCUMENT_ID, IS_AUTO_PUBLISH, 
-      CHECK_FLAG)
+      CHECK_FLAG, CHECK_MEMO, CHECK_MAN1_NO, 
+      CHECK_MAN1_NAME, CHECK_TIME1, CHECK_MEMO1, 
+      CHECK_MAN2_NO, CHECK_MAN2_NAME, CHECK_TIME2, 
+      CHECK_MEMO2, CHECK_FLAG1, CHECK_FLAG2
+      )
     values (#{actualNo,jdbcType=VARCHAR}, #{predictionNo,jdbcType=VARCHAR}, #{noticeNo,jdbcType=VARCHAR}, 
       #{railwayNo,jdbcType=VARCHAR}, #{railwayCarriageNo,jdbcType=VARCHAR}, #{matterNo,jdbcType=VARCHAR}, 
       #{matterName,jdbcType=VARCHAR}, #{contractNo,jdbcType=VARCHAR}, #{batchNo,jdbcType=VARCHAR}, 
@@ -1266,7 +1384,11 @@
       #{predictionType,jdbcType=VARCHAR}, #{predictionCombination,jdbcType=VARCHAR}, 
       #{boundListUrl,jdbcType=VARCHAR}, #{isBoundList,jdbcType=VARCHAR}, #{contractId,jdbcType=VARCHAR}, 
       #{isBoundListDownloaded,jdbcType=VARCHAR}, #{documentId,jdbcType=VARCHAR}, #{isAutoPublish,jdbcType=VARCHAR}, 
-      #{checkFlag,jdbcType=VARCHAR})
+      #{checkFlag,jdbcType=VARCHAR}, #{checkMemo,jdbcType=VARCHAR}, #{checkMan1No,jdbcType=VARCHAR}, 
+      #{checkMan1Name,jdbcType=VARCHAR}, #{checkTime1,jdbcType=TIMESTAMP}, #{checkMemo1,jdbcType=VARCHAR}, 
+      #{checkMan2No,jdbcType=VARCHAR}, #{checkMan2Name,jdbcType=VARCHAR}, #{checkTime2,jdbcType=TIMESTAMP}, 
+      #{checkMemo2,jdbcType=VARCHAR}, #{checkFlag1,jdbcType=VARCHAR}, #{checkFlag2,jdbcType=VARCHAR}
+      )
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual">
     insert into METER_WORK_RAILWAY_ACTUAL
@@ -1607,6 +1729,39 @@
       <if test="checkFlag != null">
         CHECK_FLAG,
       </if>
+      <if test="checkMemo != null">
+        CHECK_MEMO,
+      </if>
+      <if test="checkMan1No != null">
+        CHECK_MAN1_NO,
+      </if>
+      <if test="checkMan1Name != null">
+        CHECK_MAN1_NAME,
+      </if>
+      <if test="checkTime1 != null">
+        CHECK_TIME1,
+      </if>
+      <if test="checkMemo1 != null">
+        CHECK_MEMO1,
+      </if>
+      <if test="checkMan2No != null">
+        CHECK_MAN2_NO,
+      </if>
+      <if test="checkMan2Name != null">
+        CHECK_MAN2_NAME,
+      </if>
+      <if test="checkTime2 != null">
+        CHECK_TIME2,
+      </if>
+      <if test="checkMemo2 != null">
+        CHECK_MEMO2,
+      </if>
+      <if test="checkFlag1 != null">
+        CHECK_FLAG1,
+      </if>
+      <if test="checkFlag2 != null">
+        CHECK_FLAG2,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="actualNo != null">
@@ -1945,6 +2100,39 @@
       <if test="checkFlag != null">
         #{checkFlag,jdbcType=VARCHAR},
       </if>
+      <if test="checkMemo != null">
+        #{checkMemo,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1No != null">
+        #{checkMan1No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1Name != null">
+        #{checkMan1Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime1 != null">
+        #{checkTime1,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo1 != null">
+        #{checkMemo1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2No != null">
+        #{checkMan2No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2Name != null">
+        #{checkMan2Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime2 != null">
+        #{checkTime2,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo2 != null">
+        #{checkMemo2,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag1 != null">
+        #{checkFlag1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag2 != null">
+        #{checkFlag2,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKey" parameterType="com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual">
@@ -2059,7 +2247,18 @@
       IS_BOUND_LIST_DOWNLOADED = #{isBoundListDownloaded,jdbcType=VARCHAR},
       DOCUMENT_ID = #{documentId,jdbcType=VARCHAR},
       IS_AUTO_PUBLISH = #{isAutoPublish,jdbcType=VARCHAR},
-      CHECK_FLAG = #{checkFlag,jdbcType=VARCHAR}
+      CHECK_FLAG = #{checkFlag,jdbcType=VARCHAR},
+      CHECK_MEMO = #{checkMemo,jdbcType=VARCHAR},
+      CHECK_MAN1_NO = #{checkMan1No,jdbcType=VARCHAR},
+      CHECK_MAN1_NAME = #{checkMan1Name,jdbcType=VARCHAR},
+      CHECK_TIME1 = #{checkTime1,jdbcType=TIMESTAMP},
+      CHECK_MEMO1 = #{checkMemo1,jdbcType=VARCHAR},
+      CHECK_MAN2_NO = #{checkMan2No,jdbcType=VARCHAR},
+      CHECK_MAN2_NAME = #{checkMan2Name,jdbcType=VARCHAR},
+      CHECK_TIME2 = #{checkTime2,jdbcType=TIMESTAMP},
+      CHECK_MEMO2 = #{checkMemo2,jdbcType=VARCHAR},
+      CHECK_FLAG1 = #{checkFlag1,jdbcType=VARCHAR},
+      CHECK_FLAG2 = #{checkFlag2,jdbcType=VARCHAR}
     where ACTUAL_NO = #{actualNo,jdbcType=VARCHAR}
   </update>
   <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.meterwork.meterworkrailwayactual.model.MeterWorkRailwayActual">
@@ -2398,6 +2597,39 @@
       <if test="checkFlag != null">
         CHECK_FLAG = #{checkFlag,jdbcType=VARCHAR},
       </if>
+      <if test="checkMemo != null">
+        CHECK_MEMO = #{checkMemo,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1No != null">
+        CHECK_MAN1_NO = #{checkMan1No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1Name != null">
+        CHECK_MAN1_NAME = #{checkMan1Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime1 != null">
+        CHECK_TIME1 = #{checkTime1,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo1 != null">
+        CHECK_MEMO1 = #{checkMemo1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2No != null">
+        CHECK_MAN2_NO = #{checkMan2No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2Name != null">
+        CHECK_MAN2_NAME = #{checkMan2Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime2 != null">
+        CHECK_TIME2 = #{checkTime2,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo2 != null">
+        CHECK_MEMO2 = #{checkMemo2,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag1 != null">
+        CHECK_FLAG1 = #{checkFlag1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag2 != null">
+        CHECK_FLAG2 = #{checkFlag2,jdbcType=VARCHAR},
+      </if>
     </set>
     where ACTUAL_NO = #{actualNo,jdbcType=VARCHAR}
   </update>
@@ -2456,7 +2688,11 @@
       IS_PRE_SACALE, LC_NO, PREDICTION_TYPE, 
       PREDICTION_COMBINATION, BOUND_LIST_URL, 
       IS_BOUND_LIST, CONTRACT_ID, IS_BOUND_LIST_DOWNLOADED, 
-      DOCUMENT_ID, IS_AUTO_PUBLISH, CHECK_FLAG
+      DOCUMENT_ID, IS_AUTO_PUBLISH, CHECK_FLAG, 
+      CHECK_MEMO, CHECK_MAN1_NO, CHECK_MAN1_NAME, 
+      CHECK_TIME1, CHECK_MEMO1, CHECK_MAN2_NO, 
+      CHECK_MAN2_NAME, CHECK_TIME2, 
+      CHECK_MEMO2, CHECK_FLAG1, CHECK_FLAG2
       )
     ( <foreach collection="list" item="item" separator="union all"> 
    select  
@@ -2501,7 +2737,11 @@
       #{item.isPreSacale,jdbcType=VARCHAR}, #{item.lcNo,jdbcType=VARCHAR}, #{item.predictionType,jdbcType=VARCHAR}, 
       #{item.predictionCombination,jdbcType=VARCHAR}, #{item.boundListUrl,jdbcType=VARCHAR}, 
       #{item.isBoundList,jdbcType=VARCHAR}, #{item.contractId,jdbcType=VARCHAR}, #{item.isBoundListDownloaded,jdbcType=VARCHAR}, 
-      #{item.documentId,jdbcType=VARCHAR}, #{item.isAutoPublish,jdbcType=VARCHAR}, #{item.checkFlag,jdbcType=VARCHAR}
+      #{item.documentId,jdbcType=VARCHAR}, #{item.isAutoPublish,jdbcType=VARCHAR}, #{item.checkFlag,jdbcType=VARCHAR}, 
+      #{item.checkMemo,jdbcType=VARCHAR}, #{item.checkMan1No,jdbcType=VARCHAR}, #{item.checkMan1Name,jdbcType=VARCHAR}, 
+      #{item.checkTime1,jdbcType=TIMESTAMP}, #{item.checkMemo1,jdbcType=VARCHAR}, #{item.checkMan2No,jdbcType=VARCHAR}, 
+      #{item.checkMan2Name,jdbcType=VARCHAR}, #{item.checkTime2,jdbcType=TIMESTAMP}, 
+      #{item.checkMemo2,jdbcType=VARCHAR}, #{item.checkFlag1,jdbcType=VARCHAR}, #{item.checkFlag2,jdbcType=VARCHAR}
        from dual  
    </foreach> )
   </insert>
@@ -2956,6 +3196,50 @@
        <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
           when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkFlag,jdbcType=VARCHAR}
        </foreach>
+       ,CHECK_MEMO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMemo,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN1_NO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMan1No,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN1_NAME=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMan1Name,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_TIME1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkTime1,jdbcType=TIMESTAMP}
+       </foreach>
+       ,CHECK_MEMO1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMemo1,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN2_NO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMan2No,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN2_NAME=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMan2Name,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_TIME2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkTime2,jdbcType=TIMESTAMP}
+       </foreach>
+       ,CHECK_MEMO2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkMemo2,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_FLAG1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkFlag1,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_FLAG2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_NO" separator=" ">
+          when #{item.actualNo,jdbcType=VARCHAR} then #{item.checkFlag2,jdbcType=VARCHAR}
+       </foreach>
      where ACTUAL_NO in 
      <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
     #{item.actualNo,jdbcType=VARCHAR}
@@ -2970,7 +3254,6 @@
   </delete>
   <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
-
   <sql id="whereTime">
     <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
       and  NET_TIME  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and NET_TIME  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
@@ -4008,7 +4291,7 @@
   <select id="selectActual" parameterType="java.lang.String" resultMap="BaseResultMap">
     <include refid="select" />
     where (ACTUAL_FIRST1_NO = #{actualFirstNo} or ACTUAL_FIRST2_NO = #{actualFirstNo})
-        and rownum = 1
+    and rownum = 1
     order by actual_no desc
   </select>
 
@@ -4283,86 +4566,86 @@
   </select>
 
   <select id="railwayPrintLikeByDesc" parameterType="java.util.HashMap" resultMap="BaseResultMap">
-  select railway_no,
-         lc_no,
-         prediction_no,
-         matter_no,
-         matter_name,
-         sender_remark,
-         forwarding_unit_no,
-         forwarding_unit_name,
-         receiving_uint_no,
-         receiving_uint_name,
-         meter_type_name,
-         gross_weight,
-         tare_weight,
-         net_weight,
-         net_time,
-         net_man_name,
-         net_spot3_no,
-         net_spot3_name,
-         value_Flag,
-         upload_flag,
-         railway_type_no,
-         actual_first1_no,
-         actual_first2_no
+    select railway_no,
+    lc_no,
+    prediction_no,
+    matter_no,
+    matter_name,
+    sender_remark,
+    forwarding_unit_no,
+    forwarding_unit_name,
+    receiving_uint_no,
+    receiving_uint_name,
+    meter_type_name,
+    gross_weight,
+    tare_weight,
+    net_weight,
+    net_time,
+    net_man_name,
+    net_spot3_no,
+    net_spot3_name,
+    value_Flag,
+    upload_flag,
+    railway_type_no,
+    actual_first1_no,
+    actual_first2_no
     from ((select A.railway_no,
-                  A.lc_no,
-                  A.prediction_no,
-                  A.matter_no,
-                  A.matter_name,
-                  A.sender_remark,
-                  A.forwarding_unit_no,
-                  A.forwarding_unit_name,
-                  A.receiving_uint_no,
-                  A.receiving_uint_name,
-                  A.meter_type_name,
-                  A.gross_weight,
-                  A.tare_weight,
-                  A.net_weight,
-                  A.net_time,
-                  A.net_man_name,
-                  A.net_spot3_no,
-                  A.net_spot3_name,
-                  A.value_Flag,
-                  A.upload_flag,
-                  A.railway_type_no,
-                  A.actual_first1_no,
-                  A.actual_first2_no
-             from meter_work_railway_actual A
-             where 1 = 1
-             and A.value_flag != '0'
-              <if test="railwayTypeNo != null and railwayTypeNo != ''">
-                and RAILWAY_TYPE_NO LIKE '%${railwayTypeNo}%'
-              </if>
-           )
-          union all
-          (select A.railway_no,
-                  '' as lc_no,
-                  A.prediction_no,
-                  A.matter_no,
-                  A.matter_name,
-                  A.sender_remark,
-                  A.forwarding_unit_no,
-                  A.forwarding_unit_name,
-                  A.receiving_uint_no,
-                  A.receiving_uint_name,
-                  A.meter_type_name,
-                  A.gross_weight,
-                  A.tare_weight,
-                  A.net_weight,
-                  A.net_time,
-                  A.net_man_name,
-                  A.net_spot3_no,
-                  A.net_spot3_name,
-                  A.value_Flag,
-                  A.upload_flag,
-                  A.railway_type_no,
-                  A.actual_first1_no,
-                  A.actual_first2_no
-             from meter_work_measuring_instrument_second A
-             where A.value_flag != '0'))
-   where 1 = 1
+    A.lc_no,
+    A.prediction_no,
+    A.matter_no,
+    A.matter_name,
+    A.sender_remark,
+    A.forwarding_unit_no,
+    A.forwarding_unit_name,
+    A.receiving_uint_no,
+    A.receiving_uint_name,
+    A.meter_type_name,
+    A.gross_weight,
+    A.tare_weight,
+    A.net_weight,
+    A.net_time,
+    A.net_man_name,
+    A.net_spot3_no,
+    A.net_spot3_name,
+    A.value_Flag,
+    A.upload_flag,
+    A.railway_type_no,
+    A.actual_first1_no,
+    A.actual_first2_no
+    from meter_work_railway_actual A
+    where 1 = 1
+    and A.value_flag != '0'
+    <if test="railwayTypeNo != null and railwayTypeNo != ''">
+      and RAILWAY_TYPE_NO LIKE '%${railwayTypeNo}%'
+    </if>
+    )
+    union all
+    (select A.railway_no,
+    '' as lc_no,
+    A.prediction_no,
+    A.matter_no,
+    A.matter_name,
+    A.sender_remark,
+    A.forwarding_unit_no,
+    A.forwarding_unit_name,
+    A.receiving_uint_no,
+    A.receiving_uint_name,
+    A.meter_type_name,
+    A.gross_weight,
+    A.tare_weight,
+    A.net_weight,
+    A.net_time,
+    A.net_man_name,
+    A.net_spot3_no,
+    A.net_spot3_name,
+    A.value_Flag,
+    A.upload_flag,
+    A.railway_type_no,
+    A.actual_first1_no,
+    A.actual_first2_no
+    from meter_work_measuring_instrument_second A
+    where A.value_flag != '0'))
+    where 1 = 1
     <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
       and  net_time  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and net_time  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
     </if>
@@ -4399,7 +4682,7 @@
     <if test="senderRemark != null and senderRemark != ''">
       and sender_remark LIKE '%${senderRemark}%'
     </if>
-   order by net_time desc
+    order by net_time desc
   </select>
 
   <select id="likeByDescTemp" parameterType="java.util.HashMap" resultMap="BaseResultMap">
@@ -4697,140 +4980,140 @@
   </select>
   <select id="autoPrintRailway2" parameterType="java.util.HashMap" resultMap="BaseResultMap">
     select * from (
-      select t1.actual_no,
-        t1.railway_no,
-        t1.matter_no,
-        t1.matter_name,
-        decode(t1.meter_type_name,'SendToOutTms','外发','PO2GM','外进','GM2GM','厂内转储',t1.meter_type_name) meter_type_name,
-        t1.forwarding_unit_name,
-        t1.receiving_uint_name,
-        nvl(t1.gross_weight,0)/1000 gross_weight,
-        nvl(t1.tare_weight,0)/1000 tare_weight,
-        nvl(t1.net_weight,0)/1000 net_weight,
-        t1.gross_time,
-        t1.tare_time,
-        t1.net_time,
-        t1.net_spot3_name,
-        t1.sender_remark,
-        t1.create_man_name,
-        t1.create_time,
-        nvl(t2.print_num,0) PACKAGE_AMOUNT
-      from (
-        (
-          select actual_no,
-            railway_no,
-            matter_no,
-            matter_name,
-            meter_type_name,
-            forwarding_unit_name,
-            receiving_uint_name,
-            gross_weight,
-            tare_weight,
-            net_weight,
-            gross_time,
-            tare_time,
-            net_time create_time,
-            net_spot3_name,
-            sender_remark,
-            create_man_name,
-            create_time net_time
-          from meter_work_railway_actual
-          where 1 = 1
-          <if test="railwayNo != null and railwayNo != ''">
-            and railway_no like '%${railwayNo}%'
-          </if>
-          and MATTER_NAME in (select base_name from com_base_info where p_base_code = '001044' and valid_flag = '1')
-          and forwarding_unit_no in (select memo from com_base_info where p_base_code = '001038' and valid_flag = '1')
-          <if test="matterNo != null and matterNo != ''">
-            and MATTER_NO LIKE '%${matterNo}%'
-          </if>
-          <if test="matterName != null and matterName != ''">
-            and MATTER_NAME LIKE '%${matterName}%'
-          </if>
-          <if test="forwardingUnitNo != null and forwardingUnitNo != ''">
-            and FORWARDING_UNIT_NO LIKE '%${forwardingUnitNo}%'
-          </if>
-          <if test="forwardingUnitName != null and forwardingUnitName != ''">
-            and FORWARDING_UNIT_NAME LIKE '%${forwardingUnitName}%'
-          </if>
-          <if test="receivingUintNo != null and receivingUintNo != ''">
-            and RECEIVING_UINT_NO LIKE '%${receivingUintNo}%'
-          </if>
-          <if test="receivingUintName != null and receivingUintName != ''">
-            and RECEIVING_UINT_NAME LIKE '%${receivingUintName}%'
-          </if>
-          <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
-            and net_time between TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
-          </if>
-          <if test="netSpot3No != null and netSpot3No != ''">
-            and NET_SPOT3_NO LIKE '%${netSpot3No}%'
-          </if>
-          <if test="netSpot3Name != null and netSpot3Name != ''">
-            and NET_SPOT3_NAME LIKE '%${netSpot3Name}%'
-          </if>
-          <if test="flag != null and flag != ''">
-            and NET_SPOT3_NAME is null
-          </if>
-          and value_flag != '0'
-        )
-        union
-        (
-          select actual_no,
-            railway_no,
-            matter_no,
-            matter_name,
-            meter_type_name,
-            forwarding_unit_name,
-            receiving_uint_name,
-            gross_weight,
-            tare_weight,
-            net_weight,
-            gross_time,
-            tare_time,
-            net_time create_time,
-            net_spot3_name,
-            sender_remark,
-            create_man_name,
-            create_time net_time
-          from meter_work_measuring_instrument
-            where 1 = 1
-              and value_flag != '0'
-              <if test="railwayNo != null and railwayNo != ''">
-                and railway_no like '%${railwayNo}%'
-              </if>
-              <if test="matterNo != null and matterNo != ''">
-                and MATTER_NO LIKE '%${matterNo}%'
-              </if>
-              <if test="matterName != null and matterName != ''">
-                and MATTER_NAME LIKE '%${matterName}%'
-              </if>
-              <if test="forwardingUnitNo != null and forwardingUnitNo != ''">
-                and FORWARDING_UNIT_NO LIKE '%${forwardingUnitNo}%'
-              </if>
-              <if test="forwardingUnitName != null and forwardingUnitName != ''">
-                and FORWARDING_UNIT_NAME LIKE '%${forwardingUnitName}%'
-              </if>
-              <if test="receivingUintNo != null and receivingUintNo != ''">
-                and RECEIVING_UINT_NO LIKE '%${receivingUintNo}%'
-              </if>
-              <if test="receivingUintName != null and receivingUintName != ''">
-                and RECEIVING_UINT_NAME LIKE '%${receivingUintName}%'
-              </if>
-              <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
-                and net_time between TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
-              </if>
-              <if test="netSpot3No != null and netSpot3No != ''">
-                and NET_SPOT3_NO LIKE '%${netSpot3No}%'
-              </if>
-              <if test="netSpot3Name != null and netSpot3Name != ''">
-                and NET_SPOT3_NAME LIKE '%${netSpot3Name}%'
-              </if>
-              <if test="flag != null and flag != ''">
-                and NET_SPOT3_NAME is null
-              </if>
-          )
-      )t1,meter_base_print t2
-      where t1.actual_no=t2.actual_no(+)
+    select t1.actual_no,
+    t1.railway_no,
+    t1.matter_no,
+    t1.matter_name,
+    decode(t1.meter_type_name,'SendToOutTms','外发','PO2GM','外进','GM2GM','厂内转储',t1.meter_type_name) meter_type_name,
+    t1.forwarding_unit_name,
+    t1.receiving_uint_name,
+    nvl(t1.gross_weight,0)/1000 gross_weight,
+    nvl(t1.tare_weight,0)/1000 tare_weight,
+    nvl(t1.net_weight,0)/1000 net_weight,
+    t1.gross_time,
+    t1.tare_time,
+    t1.net_time,
+    t1.net_spot3_name,
+    t1.sender_remark,
+    t1.create_man_name,
+    t1.create_time,
+    nvl(t2.print_num,0) PACKAGE_AMOUNT
+    from (
+    (
+    select actual_no,
+    railway_no,
+    matter_no,
+    matter_name,
+    meter_type_name,
+    forwarding_unit_name,
+    receiving_uint_name,
+    gross_weight,
+    tare_weight,
+    net_weight,
+    gross_time,
+    tare_time,
+    net_time create_time,
+    net_spot3_name,
+    sender_remark,
+    create_man_name,
+    create_time net_time
+    from meter_work_railway_actual
+    where 1 = 1
+    <if test="railwayNo != null and railwayNo != ''">
+      and railway_no like '%${railwayNo}%'
+    </if>
+    and MATTER_NAME in (select base_name from com_base_info where p_base_code = '001044' and valid_flag = '1')
+    and forwarding_unit_no in (select memo from com_base_info where p_base_code = '001038' and valid_flag = '1')
+    <if test="matterNo != null and matterNo != ''">
+      and MATTER_NO LIKE '%${matterNo}%'
+    </if>
+    <if test="matterName != null and matterName != ''">
+      and MATTER_NAME LIKE '%${matterName}%'
+    </if>
+    <if test="forwardingUnitNo != null and forwardingUnitNo != ''">
+      and FORWARDING_UNIT_NO LIKE '%${forwardingUnitNo}%'
+    </if>
+    <if test="forwardingUnitName != null and forwardingUnitName != ''">
+      and FORWARDING_UNIT_NAME LIKE '%${forwardingUnitName}%'
+    </if>
+    <if test="receivingUintNo != null and receivingUintNo != ''">
+      and RECEIVING_UINT_NO LIKE '%${receivingUintNo}%'
+    </if>
+    <if test="receivingUintName != null and receivingUintName != ''">
+      and RECEIVING_UINT_NAME LIKE '%${receivingUintName}%'
+    </if>
+    <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
+      and net_time between TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="netSpot3No != null and netSpot3No != ''">
+      and NET_SPOT3_NO LIKE '%${netSpot3No}%'
+    </if>
+    <if test="netSpot3Name != null and netSpot3Name != ''">
+      and NET_SPOT3_NAME LIKE '%${netSpot3Name}%'
+    </if>
+    <if test="flag != null and flag != ''">
+      and NET_SPOT3_NAME is null
+    </if>
+    and value_flag != '0'
+    )
+    union
+    (
+    select actual_no,
+    railway_no,
+    matter_no,
+    matter_name,
+    meter_type_name,
+    forwarding_unit_name,
+    receiving_uint_name,
+    gross_weight,
+    tare_weight,
+    net_weight,
+    gross_time,
+    tare_time,
+    net_time create_time,
+    net_spot3_name,
+    sender_remark,
+    create_man_name,
+    create_time net_time
+    from meter_work_measuring_instrument
+    where 1 = 1
+    and value_flag != '0'
+    <if test="railwayNo != null and railwayNo != ''">
+      and railway_no like '%${railwayNo}%'
+    </if>
+    <if test="matterNo != null and matterNo != ''">
+      and MATTER_NO LIKE '%${matterNo}%'
+    </if>
+    <if test="matterName != null and matterName != ''">
+      and MATTER_NAME LIKE '%${matterName}%'
+    </if>
+    <if test="forwardingUnitNo != null and forwardingUnitNo != ''">
+      and FORWARDING_UNIT_NO LIKE '%${forwardingUnitNo}%'
+    </if>
+    <if test="forwardingUnitName != null and forwardingUnitName != ''">
+      and FORWARDING_UNIT_NAME LIKE '%${forwardingUnitName}%'
+    </if>
+    <if test="receivingUintNo != null and receivingUintNo != ''">
+      and RECEIVING_UINT_NO LIKE '%${receivingUintNo}%'
+    </if>
+    <if test="receivingUintName != null and receivingUintName != ''">
+      and RECEIVING_UINT_NAME LIKE '%${receivingUintName}%'
+    </if>
+    <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
+      and net_time between TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+    </if>
+    <if test="netSpot3No != null and netSpot3No != ''">
+      and NET_SPOT3_NO LIKE '%${netSpot3No}%'
+    </if>
+    <if test="netSpot3Name != null and netSpot3Name != ''">
+      and NET_SPOT3_NAME LIKE '%${netSpot3Name}%'
+    </if>
+    <if test="flag != null and flag != ''">
+      and NET_SPOT3_NAME is null
+    </if>
+    )
+    )t1,meter_base_print t2
+    where t1.actual_no=t2.actual_no(+)
     )
     <if test="printNum != null and printNum == '0'.toString()">
       where PACKAGE_AMOUNT='0'

+ 166 - 1
src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/model/MeterWorkRailwayActual.java

@@ -634,7 +634,7 @@ public class MeterWorkRailwayActual implements IBasePO<String> {
     private String predictionType;
 
     /**
-     * 委托组合(PREDICTION_COMBINATION,VARCHAR,40)
+     * 委托组合(PREDICTION_COMBINATION,VARCHAR,100)
      */
     @ApiModelProperty(value="委托组合",required=false)
     private String predictionCombination;
@@ -681,6 +681,72 @@ public class MeterWorkRailwayActual implements IBasePO<String> {
     @ApiModelProperty(value="审核状态(0:未审核;1:已审核)",required=false)
     private String checkFlag;
 
+    /**
+     * 审核人原因(CHECK_MEMO,VARCHAR,255)
+     */
+    @ApiModelProperty(value="审核人原因",required=false)
+    private String checkMemo;
+
+    /**
+     * 二级审核人编号(CHECK_MAN1_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="二级审核人编号",required=false)
+    private String checkMan1No;
+
+    /**
+     * 二级审核人(CHECK_MAN1_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="二级审核人",required=false)
+    private String checkMan1Name;
+
+    /**
+     * 二级审核时间(CHECK_TIME1,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="二级审核时间",required=false)
+    private Date checkTime1;
+
+    /**
+     * 二级审核原因(CHECK_MEMO1,VARCHAR,255)
+     */
+    @ApiModelProperty(value="二级审核原因",required=false)
+    private String checkMemo1;
+
+    /**
+     * 三级审核人编号(CHECK_MAN2_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="三级审核人编号",required=false)
+    private String checkMan2No;
+
+    /**
+     * 三级审核人(CHECK_MAN2_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="三级审核人",required=false)
+    private String checkMan2Name;
+
+    /**
+     * 三级审核时间(CHECK_TIME2,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="三级审核时间",required=false)
+    private Date checkTime2;
+
+    /**
+     * 三级审核原因(CHECK_MEMO2,VARCHAR,255)
+     */
+    @ApiModelProperty(value="三级审核原因",required=false)
+    private String checkMemo2;
+
+    /**
+     * 二级审核状态(CHECK_FLAG1,VARCHAR,1)
+     */
+    @ApiModelProperty(value="二级审核状态",required=false)
+    private String checkFlag1;
+
+    /**
+     * 三级审核状态(CHECK_FLAG2,VARCHAR,1)
+     */
+    @ApiModelProperty(value="三级审核状态",required=false)
+    private String checkFlag2;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -1589,6 +1655,94 @@ public class MeterWorkRailwayActual implements IBasePO<String> {
         this.checkFlag = checkFlag == null ? null : checkFlag.trim();
     }
 
+    public String getCheckMemo() {
+        return checkMemo;
+    }
+
+    public void setCheckMemo(String checkMemo) {
+        this.checkMemo = checkMemo == null ? null : checkMemo.trim();
+    }
+
+    public String getCheckMan1No() {
+        return checkMan1No;
+    }
+
+    public void setCheckMan1No(String checkMan1No) {
+        this.checkMan1No = checkMan1No == null ? null : checkMan1No.trim();
+    }
+
+    public String getCheckMan1Name() {
+        return checkMan1Name;
+    }
+
+    public void setCheckMan1Name(String checkMan1Name) {
+        this.checkMan1Name = checkMan1Name == null ? null : checkMan1Name.trim();
+    }
+
+    public Date getCheckTime1() {
+        return checkTime1;
+    }
+
+    public void setCheckTime1(Date checkTime1) {
+        this.checkTime1 = checkTime1;
+    }
+
+    public String getCheckMemo1() {
+        return checkMemo1;
+    }
+
+    public void setCheckMemo1(String checkMemo1) {
+        this.checkMemo1 = checkMemo1 == null ? null : checkMemo1.trim();
+    }
+
+    public String getCheckMan2No() {
+        return checkMan2No;
+    }
+
+    public void setCheckMan2No(String checkMan2No) {
+        this.checkMan2No = checkMan2No == null ? null : checkMan2No.trim();
+    }
+
+    public String getCheckMan2Name() {
+        return checkMan2Name;
+    }
+
+    public void setCheckMan2Name(String checkMan2Name) {
+        this.checkMan2Name = checkMan2Name == null ? null : checkMan2Name.trim();
+    }
+
+    public Date getCheckTime2() {
+        return checkTime2;
+    }
+
+    public void setCheckTime2(Date checkTime2) {
+        this.checkTime2 = checkTime2;
+    }
+
+    public String getCheckMemo2() {
+        return checkMemo2;
+    }
+
+    public void setCheckMemo2(String checkMemo2) {
+        this.checkMemo2 = checkMemo2 == null ? null : checkMemo2.trim();
+    }
+
+    public String getCheckFlag1() {
+        return checkFlag1;
+    }
+
+    public void setCheckFlag1(String checkFlag1) {
+        this.checkFlag1 = checkFlag1 == null ? null : checkFlag1.trim();
+    }
+
+    public String getCheckFlag2() {
+        return checkFlag2;
+    }
+
+    public void setCheckFlag2(String checkFlag2) {
+        this.checkFlag2 = checkFlag2 == null ? null : checkFlag2.trim();
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -1707,6 +1861,17 @@ public class MeterWorkRailwayActual implements IBasePO<String> {
         sb.append(", documentId=").append(documentId);
         sb.append(", isAutoPublish=").append(isAutoPublish);
         sb.append(", checkFlag=").append(checkFlag);
+        sb.append(", checkMemo=").append(checkMemo);
+        sb.append(", checkMan1No=").append(checkMan1No);
+        sb.append(", checkMan1Name=").append(checkMan1Name);
+        sb.append(", checkTime1=").append(checkTime1);
+        sb.append(", checkMemo1=").append(checkMemo1);
+        sb.append(", checkMan2No=").append(checkMan2No);
+        sb.append(", checkMan2Name=").append(checkMan2Name);
+        sb.append(", checkTime2=").append(checkTime2);
+        sb.append(", checkMemo2=").append(checkMemo2);
+        sb.append(", checkFlag1=").append(checkFlag1);
+        sb.append(", checkFlag2=").append(checkFlag2);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 8 - 2
src/main/java/com/steerinfo/meterwork/meterworkrailwayactual/service/impl/MeterWorkRailwayActualServiceImpl.java

@@ -4036,7 +4036,13 @@ public class MeterWorkRailwayActualServiceImpl extends BaseServiceImpl<MeterWork
                 logModel.setCreateManName(userName);
                 logModel.setCreateTime(new Date());
                 logModel.setOperationPage("C#端-动轨净重数据维护");
-                logModel.setOperationFunction("净重信息修改");
+                if(StringUtils.isEmpty(modelTemp.getRailwayNo()) || !modelTemp.getRailwayNo().equals(model.getRailwayNo())) {
+                    logModel.setOperationFunction("车号修改");
+                }else{
+                    if(modelTemp.getTareWeight() == null || !(modelTemp.getTareWeight().compareTo(model.getTareWeight()) == 0)) {
+                        logModel.setOperationFunction("Ai标识皮修改");
+                    }
+                }
                 logModel.setOperationId(model.getActualNo());
                 logModel.setOperationPredictionNo(model.getPredictionNo());
                 logModel.setOperationCarnNo(model.getRailwayNo());
@@ -4048,7 +4054,7 @@ public class MeterWorkRailwayActualServiceImpl extends BaseServiceImpl<MeterWork
                 model.setUpdateManNo(userId);
                 model.setUpdateManName(userName);
                 model.setUpdateTime(new Date());
-                model.setNote("净重信息修改");
+                model.setNote(logModel.getOperationFunction());
                 meterWorkRailwayActualMapper.updateByPrimaryKeySelective(model);
                 count++;
             }

+ 292 - 8
src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.xml

@@ -68,6 +68,17 @@
     <result column="RAILWAY_MODEL_NO" jdbcType="VARCHAR" property="railwayModelNo" />
     <result column="RAILWAY_MODEL_NAME" jdbcType="VARCHAR" property="railwayModelName" />
     <result column="IS_AUTO_OPERATION" jdbcType="VARCHAR" property="isAutoOperation" />
+    <result column="CHECK_MEMO" jdbcType="VARCHAR" property="checkMemo" />
+    <result column="CHECK_MAN1_NO" jdbcType="VARCHAR" property="checkMan1No" />
+    <result column="CHECK_MAN1_NAME" jdbcType="VARCHAR" property="checkMan1Name" />
+    <result column="CHECK_TIME1" jdbcType="TIMESTAMP" property="checkTime1" />
+    <result column="CHECK_MEMO1" jdbcType="VARCHAR" property="checkMemo1" />
+    <result column="CHECK_MAN2_NO" jdbcType="VARCHAR" property="checkMan2No" />
+    <result column="CHECK_MAN2_NAME" jdbcType="VARCHAR" property="checkMan2Name" />
+    <result column="CHECK_TIME2" jdbcType="TIMESTAMP" property="checkTime2" />
+    <result column="CHECK_MEMO2" jdbcType="VARCHAR" property="checkMemo2" />
+    <result column="CHECK_FLAG1" jdbcType="VARCHAR" property="checkFlag1" />
+    <result column="CHECK_FLAG2" jdbcType="VARCHAR" property="checkFlag2" />
   </resultMap>
   <sql id="columns">
     ACTUAL_FIRST_NO, PREDICTION_NO, NOTICE_NO, RAILWAY_NO, RAILWAY_CARRIAGE_NO, RAILWAY_WORK_NO, 
@@ -81,7 +92,9 @@
     CREATE_TIME, BASE_SPOT_NO, BASE_SPOT_NAME, METER_CLASS, METER_GROUP, MEMO, VALUE_FLAG, 
     UPDATE_MAN_NO, UPDATE_MAN_NAME, UPDATE_TIME, CHECK_FLAG, CHECK_MAN_NO, CHECK_MAN_NAME, 
     CHECK_TIME, METER_MODE, RAILWAY_TYPE_NO, RAILWAY_TYPE_NAME, IS_CHEMICAL, LIMIT_WEIGHT, 
-    RAILWAY_MODEL_NO, RAILWAY_MODEL_NAME, IS_AUTO_OPERATION
+    RAILWAY_MODEL_NO, RAILWAY_MODEL_NAME, IS_AUTO_OPERATION, CHECK_MEMO, CHECK_MAN1_NO, 
+    CHECK_MAN1_NAME, CHECK_TIME1, CHECK_MEMO1, CHECK_MAN2_NO, CHECK_MAN2_NAME, CHECK_TIME2, 
+    CHECK_MEMO2, CHECK_FLAG1, CHECK_FLAG2
   </sql>
   <sql id="columns_alias">
     t.ACTUAL_FIRST_NO, t.PREDICTION_NO, t.NOTICE_NO, t.RAILWAY_NO, t.RAILWAY_CARRIAGE_NO, 
@@ -97,7 +110,9 @@
     t.METER_GROUP, t.MEMO, t.VALUE_FLAG, t.UPDATE_MAN_NO, t.UPDATE_MAN_NAME, t.UPDATE_TIME, 
     t.CHECK_FLAG, t.CHECK_MAN_NO, t.CHECK_MAN_NAME, t.CHECK_TIME, t.METER_MODE, t.RAILWAY_TYPE_NO, 
     t.RAILWAY_TYPE_NAME, t.IS_CHEMICAL, t.LIMIT_WEIGHT, t.RAILWAY_MODEL_NO, t.RAILWAY_MODEL_NAME, 
-    t.IS_AUTO_OPERATION
+    t.IS_AUTO_OPERATION, t.CHECK_MEMO, t.CHECK_MAN1_NO, t.CHECK_MAN1_NAME, t.CHECK_TIME1, 
+    t.CHECK_MEMO1, t.CHECK_MAN2_NO, t.CHECK_MAN2_NAME, t.CHECK_TIME2, t.CHECK_MEMO2, 
+    t.CHECK_FLAG1, t.CHECK_FLAG2
   </sql>
   <sql id="select">
     SELECT <include refid="columns" /> FROM METER_WORK_RAILWAY_RECEIVED
@@ -305,6 +320,39 @@
       <if test="isAutoOperation != null and isAutoOperation != ''">
         and IS_AUTO_OPERATION = #{isAutoOperation}
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        and CHECK_MEMO = #{checkMemo}
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        and CHECK_MAN1_NO = #{checkMan1No}
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        and CHECK_MAN1_NAME = #{checkMan1Name}
+      </if>
+      <if test="checkTime1 != null">
+        and TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = #{checkTime1}
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        and CHECK_MEMO1 = #{checkMemo1}
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        and CHECK_MAN2_NO = #{checkMan2No}
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        and CHECK_MAN2_NAME = #{checkMan2Name}
+      </if>
+      <if test="checkTime2 != null">
+        and TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = #{checkTime2}
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        and CHECK_MEMO2 = #{checkMemo2}
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        and CHECK_FLAG1 = #{checkFlag1}
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        and CHECK_FLAG2 = #{checkFlag2}
+      </if>
     </where>
   </sql>
   <sql id="whereLike">
@@ -507,6 +555,39 @@
       <if test="isAutoOperation != null and isAutoOperation != ''">
         and IS_AUTO_OPERATION LIKE '%${isAutoOperation}%'
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        and CHECK_MEMO LIKE '%${checkMemo}%'
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        and CHECK_MAN1_NO LIKE '%${checkMan1No}%'
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        and CHECK_MAN1_NAME LIKE '%${checkMan1Name}%'
+      </if>
+      <if test="checkTime1 != null">
+        and TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = #{checkTime1}
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        and CHECK_MEMO1 LIKE '%${checkMemo1}%'
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        and CHECK_MAN2_NO LIKE '%${checkMan2No}%'
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        and CHECK_MAN2_NAME LIKE '%${checkMan2Name}%'
+      </if>
+      <if test="checkTime2 != null">
+        and TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = #{checkTime2}
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        and CHECK_MEMO2 LIKE '%${checkMemo2}%'
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        and CHECK_FLAG1 LIKE '%${checkFlag1}%'
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        and CHECK_FLAG2 LIKE '%${checkFlag2}%'
+      </if>
     </where>
   </sql>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
@@ -711,6 +792,39 @@
       <if test="isAutoOperation != null and isAutoOperation != ''">
         or IS_AUTO_OPERATION = #{isAutoOperation}
       </if>
+      <if test="checkMemo != null and checkMemo != ''">
+        or CHECK_MEMO = #{checkMemo}
+      </if>
+      <if test="checkMan1No != null and checkMan1No != ''">
+        or CHECK_MAN1_NO = #{checkMan1No}
+      </if>
+      <if test="checkMan1Name != null and checkMan1Name != ''">
+        or CHECK_MAN1_NAME = #{checkMan1Name}
+      </if>
+      <if test="checkTime1 != null">
+        or TO_CHAR(CHECK_TIME1,'yyyy-MM-dd') = '#{checkTime1}'
+      </if>
+      <if test="checkMemo1 != null and checkMemo1 != ''">
+        or CHECK_MEMO1 = #{checkMemo1}
+      </if>
+      <if test="checkMan2No != null and checkMan2No != ''">
+        or CHECK_MAN2_NO = #{checkMan2No}
+      </if>
+      <if test="checkMan2Name != null and checkMan2Name != ''">
+        or CHECK_MAN2_NAME = #{checkMan2Name}
+      </if>
+      <if test="checkTime2 != null">
+        or TO_CHAR(CHECK_TIME2,'yyyy-MM-dd') = '#{checkTime2}'
+      </if>
+      <if test="checkMemo2 != null and checkMemo2 != ''">
+        or CHECK_MEMO2 = #{checkMemo2}
+      </if>
+      <if test="checkFlag1 != null and checkFlag1 != ''">
+        or CHECK_FLAG1 = #{checkFlag1}
+      </if>
+      <if test="checkFlag2 != null and checkFlag2 != ''">
+        or CHECK_FLAG2 = #{checkFlag2}
+      </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.meterwork.meterworkrailwayreceived.model.MeterWorkRailwayReceived">
     insert into METER_WORK_RAILWAY_RECEIVED (ACTUAL_FIRST_NO, PREDICTION_NO, NOTICE_NO, 
@@ -735,7 +849,11 @@
       CHECK_MAN_NO, CHECK_MAN_NAME, CHECK_TIME, 
       METER_MODE, RAILWAY_TYPE_NO, RAILWAY_TYPE_NAME, 
       IS_CHEMICAL, LIMIT_WEIGHT, RAILWAY_MODEL_NO, 
-      RAILWAY_MODEL_NAME, IS_AUTO_OPERATION)
+      RAILWAY_MODEL_NAME, IS_AUTO_OPERATION, CHECK_MEMO, 
+      CHECK_MAN1_NO, CHECK_MAN1_NAME, CHECK_TIME1, 
+      CHECK_MEMO1, CHECK_MAN2_NO, CHECK_MAN2_NAME, 
+      CHECK_TIME2, CHECK_MEMO2, CHECK_FLAG1, 
+      CHECK_FLAG2)
     values (#{actualFirstNo,jdbcType=VARCHAR}, #{predictionNo,jdbcType=VARCHAR}, #{noticeNo,jdbcType=VARCHAR}, 
       #{railwayNo,jdbcType=VARCHAR}, #{railwayCarriageNo,jdbcType=VARCHAR}, #{railwayWorkNo,jdbcType=VARCHAR}, 
       #{railwaySpeed,jdbcType=DECIMAL}, #{railwayModel,jdbcType=VARCHAR}, #{matterNo,jdbcType=VARCHAR}, 
@@ -758,7 +876,11 @@
       #{checkManNo,jdbcType=VARCHAR}, #{checkManName,jdbcType=VARCHAR}, #{checkTime,jdbcType=TIMESTAMP}, 
       #{meterMode,jdbcType=VARCHAR}, #{railwayTypeNo,jdbcType=VARCHAR}, #{railwayTypeName,jdbcType=VARCHAR}, 
       #{isChemical,jdbcType=VARCHAR}, #{limitWeight,jdbcType=DECIMAL}, #{railwayModelNo,jdbcType=VARCHAR}, 
-      #{railwayModelName,jdbcType=VARCHAR}, #{isAutoOperation,jdbcType=VARCHAR})
+      #{railwayModelName,jdbcType=VARCHAR}, #{isAutoOperation,jdbcType=VARCHAR}, #{checkMemo,jdbcType=VARCHAR}, 
+      #{checkMan1No,jdbcType=VARCHAR}, #{checkMan1Name,jdbcType=VARCHAR}, #{checkTime1,jdbcType=TIMESTAMP}, 
+      #{checkMemo1,jdbcType=VARCHAR}, #{checkMan2No,jdbcType=VARCHAR}, #{checkMan2Name,jdbcType=VARCHAR}, 
+      #{checkTime2,jdbcType=TIMESTAMP}, #{checkMemo2,jdbcType=VARCHAR}, #{checkFlag1,jdbcType=VARCHAR}, 
+      #{checkFlag2,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.meterwork.meterworkrailwayreceived.model.MeterWorkRailwayReceived">
     insert into METER_WORK_RAILWAY_RECEIVED
@@ -961,6 +1083,39 @@
       <if test="isAutoOperation != null">
         IS_AUTO_OPERATION,
       </if>
+      <if test="checkMemo != null">
+        CHECK_MEMO,
+      </if>
+      <if test="checkMan1No != null">
+        CHECK_MAN1_NO,
+      </if>
+      <if test="checkMan1Name != null">
+        CHECK_MAN1_NAME,
+      </if>
+      <if test="checkTime1 != null">
+        CHECK_TIME1,
+      </if>
+      <if test="checkMemo1 != null">
+        CHECK_MEMO1,
+      </if>
+      <if test="checkMan2No != null">
+        CHECK_MAN2_NO,
+      </if>
+      <if test="checkMan2Name != null">
+        CHECK_MAN2_NAME,
+      </if>
+      <if test="checkTime2 != null">
+        CHECK_TIME2,
+      </if>
+      <if test="checkMemo2 != null">
+        CHECK_MEMO2,
+      </if>
+      <if test="checkFlag1 != null">
+        CHECK_FLAG1,
+      </if>
+      <if test="checkFlag2 != null">
+        CHECK_FLAG2,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="actualFirstNo != null">
@@ -1161,6 +1316,39 @@
       <if test="isAutoOperation != null">
         #{isAutoOperation,jdbcType=VARCHAR},
       </if>
+      <if test="checkMemo != null">
+        #{checkMemo,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1No != null">
+        #{checkMan1No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1Name != null">
+        #{checkMan1Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime1 != null">
+        #{checkTime1,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo1 != null">
+        #{checkMemo1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2No != null">
+        #{checkMan2No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2Name != null">
+        #{checkMan2Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime2 != null">
+        #{checkTime2,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo2 != null">
+        #{checkMemo2,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag1 != null">
+        #{checkFlag1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag2 != null">
+        #{checkFlag2,jdbcType=VARCHAR},
+      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKey" parameterType="com.steerinfo.meterwork.meterworkrailwayreceived.model.MeterWorkRailwayReceived">
@@ -1229,7 +1417,18 @@
       LIMIT_WEIGHT = #{limitWeight,jdbcType=DECIMAL},
       RAILWAY_MODEL_NO = #{railwayModelNo,jdbcType=VARCHAR},
       RAILWAY_MODEL_NAME = #{railwayModelName,jdbcType=VARCHAR},
-      IS_AUTO_OPERATION = #{isAutoOperation,jdbcType=VARCHAR}
+      IS_AUTO_OPERATION = #{isAutoOperation,jdbcType=VARCHAR},
+      CHECK_MEMO = #{checkMemo,jdbcType=VARCHAR},
+      CHECK_MAN1_NO = #{checkMan1No,jdbcType=VARCHAR},
+      CHECK_MAN1_NAME = #{checkMan1Name,jdbcType=VARCHAR},
+      CHECK_TIME1 = #{checkTime1,jdbcType=TIMESTAMP},
+      CHECK_MEMO1 = #{checkMemo1,jdbcType=VARCHAR},
+      CHECK_MAN2_NO = #{checkMan2No,jdbcType=VARCHAR},
+      CHECK_MAN2_NAME = #{checkMan2Name,jdbcType=VARCHAR},
+      CHECK_TIME2 = #{checkTime2,jdbcType=TIMESTAMP},
+      CHECK_MEMO2 = #{checkMemo2,jdbcType=VARCHAR},
+      CHECK_FLAG1 = #{checkFlag1,jdbcType=VARCHAR},
+      CHECK_FLAG2 = #{checkFlag2,jdbcType=VARCHAR}
     where ACTUAL_FIRST_NO = #{actualFirstNo,jdbcType=VARCHAR}
   </update>
   <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.meterwork.meterworkrailwayreceived.model.MeterWorkRailwayReceived">
@@ -1430,6 +1629,39 @@
       <if test="isAutoOperation != null">
         IS_AUTO_OPERATION = #{isAutoOperation,jdbcType=VARCHAR},
       </if>
+      <if test="checkMemo != null">
+        CHECK_MEMO = #{checkMemo,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1No != null">
+        CHECK_MAN1_NO = #{checkMan1No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan1Name != null">
+        CHECK_MAN1_NAME = #{checkMan1Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime1 != null">
+        CHECK_TIME1 = #{checkTime1,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo1 != null">
+        CHECK_MEMO1 = #{checkMemo1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2No != null">
+        CHECK_MAN2_NO = #{checkMan2No,jdbcType=VARCHAR},
+      </if>
+      <if test="checkMan2Name != null">
+        CHECK_MAN2_NAME = #{checkMan2Name,jdbcType=VARCHAR},
+      </if>
+      <if test="checkTime2 != null">
+        CHECK_TIME2 = #{checkTime2,jdbcType=TIMESTAMP},
+      </if>
+      <if test="checkMemo2 != null">
+        CHECK_MEMO2 = #{checkMemo2,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag1 != null">
+        CHECK_FLAG1 = #{checkFlag1,jdbcType=VARCHAR},
+      </if>
+      <if test="checkFlag2 != null">
+        CHECK_FLAG2 = #{checkFlag2,jdbcType=VARCHAR},
+      </if>
     </set>
     where ACTUAL_FIRST_NO = #{actualFirstNo,jdbcType=VARCHAR}
   </update>
@@ -1474,7 +1706,11 @@
       CHECK_TIME, METER_MODE, RAILWAY_TYPE_NO, 
       RAILWAY_TYPE_NAME, IS_CHEMICAL, 
       LIMIT_WEIGHT, RAILWAY_MODEL_NO, 
-      RAILWAY_MODEL_NAME, IS_AUTO_OPERATION
+      RAILWAY_MODEL_NAME, IS_AUTO_OPERATION, 
+      CHECK_MEMO, CHECK_MAN1_NO, CHECK_MAN1_NAME, 
+      CHECK_TIME1, CHECK_MEMO1, CHECK_MAN2_NO, 
+      CHECK_MAN2_NAME, CHECK_TIME2, 
+      CHECK_MEMO2, CHECK_FLAG1, CHECK_FLAG2
       )
     ( <foreach collection="list" item="item" separator="union all"> 
    select  
@@ -1505,7 +1741,11 @@
       #{item.checkTime,jdbcType=TIMESTAMP}, #{item.meterMode,jdbcType=VARCHAR}, #{item.railwayTypeNo,jdbcType=VARCHAR}, 
       #{item.railwayTypeName,jdbcType=VARCHAR}, #{item.isChemical,jdbcType=VARCHAR}, 
       #{item.limitWeight,jdbcType=DECIMAL}, #{item.railwayModelNo,jdbcType=VARCHAR}, 
-      #{item.railwayModelName,jdbcType=VARCHAR}, #{item.isAutoOperation,jdbcType=VARCHAR}
+      #{item.railwayModelName,jdbcType=VARCHAR}, #{item.isAutoOperation,jdbcType=VARCHAR}, 
+      #{item.checkMemo,jdbcType=VARCHAR}, #{item.checkMan1No,jdbcType=VARCHAR}, #{item.checkMan1Name,jdbcType=VARCHAR}, 
+      #{item.checkTime1,jdbcType=TIMESTAMP}, #{item.checkMemo1,jdbcType=VARCHAR}, #{item.checkMan2No,jdbcType=VARCHAR}, 
+      #{item.checkMan2Name,jdbcType=VARCHAR}, #{item.checkTime2,jdbcType=TIMESTAMP}, 
+      #{item.checkMemo2,jdbcType=VARCHAR}, #{item.checkFlag1,jdbcType=VARCHAR}, #{item.checkFlag2,jdbcType=VARCHAR}
        from dual  
    </foreach> )
   </insert>
@@ -1776,6 +2016,50 @@
        <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
           when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.isAutoOperation,jdbcType=VARCHAR}
        </foreach>
+       ,CHECK_MEMO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMemo,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN1_NO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMan1No,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN1_NAME=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMan1Name,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_TIME1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkTime1,jdbcType=TIMESTAMP}
+       </foreach>
+       ,CHECK_MEMO1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMemo1,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN2_NO=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMan2No,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_MAN2_NAME=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMan2Name,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_TIME2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkTime2,jdbcType=TIMESTAMP}
+       </foreach>
+       ,CHECK_MEMO2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkMemo2,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_FLAG1=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkFlag1,jdbcType=VARCHAR}
+       </foreach>
+       ,CHECK_FLAG2=
+       <foreach close="end" collection="list" index="index" item="item" open="case ACTUAL_FIRST_NO" separator=" ">
+          when #{item.actualFirstNo,jdbcType=VARCHAR} then #{item.checkFlag2,jdbcType=VARCHAR}
+       </foreach>
      where ACTUAL_FIRST_NO in 
      <foreach close=")" collection="list" index="index" item="item" open="(" separator=",">
     #{item.actualFirstNo,jdbcType=VARCHAR}
@@ -1790,7 +2074,6 @@
   </delete>
   <!-- 友情提示!!!-->
   <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
-
   <update id="updateMeterWorkRailwayReceived">
         update METER_WORK_RAILWAY_RECEIVED set value_flag='2' where ACTUAL_FIRST_NO=#{actualFirstNo}
     </update>
@@ -2162,4 +2445,5 @@
     </where>
     order by CREATE_TIME desc
   </select>
+  
 </mapper>

+ 166 - 1
src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/model/MeterWorkRailwayReceived.java

@@ -10,7 +10,7 @@ import java.util.Date;
 @ApiModel(value="计量动态轨道衡接收实绩表")
 public class MeterWorkRailwayReceived implements IBasePO<String> {
     /**
-     * 计量作业编号(ACTUAL_FIRST_NO,VARCHAR,20)
+     * 计量作业编号(ACTUAL_FIRST_NO,VARCHAR,50)
      */
     @ApiModelProperty(value="计量作业编号",required=true)
     private String actualFirstNo;
@@ -410,6 +410,72 @@ public class MeterWorkRailwayReceived implements IBasePO<String> {
     @ApiModelProperty(value="是否自动执行匹配委托、结净(0:自动执行、1:不自动执行)",required=false)
     private String isAutoOperation;
 
+    /**
+     * 审核人原因(CHECK_MEMO,VARCHAR,255)
+     */
+    @ApiModelProperty(value="审核人原因",required=false)
+    private String checkMemo;
+
+    /**
+     * 二级审核人编号(CHECK_MAN1_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="二级审核人编号",required=false)
+    private String checkMan1No;
+
+    /**
+     * 二级审核人(CHECK_MAN1_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="二级审核人",required=false)
+    private String checkMan1Name;
+
+    /**
+     * 二级审核时间(CHECK_TIME1,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="二级审核时间",required=false)
+    private Date checkTime1;
+
+    /**
+     * 二级审核原因(CHECK_MEMO1,VARCHAR,255)
+     */
+    @ApiModelProperty(value="二级审核原因",required=false)
+    private String checkMemo1;
+
+    /**
+     * 三级审核人编号(CHECK_MAN2_NO,VARCHAR,20)
+     */
+    @ApiModelProperty(value="三级审核人编号",required=false)
+    private String checkMan2No;
+
+    /**
+     * 三级审核人(CHECK_MAN2_NAME,VARCHAR,50)
+     */
+    @ApiModelProperty(value="三级审核人",required=false)
+    private String checkMan2Name;
+
+    /**
+     * 三级审核时间(CHECK_TIME2,TIMESTAMP,7)
+     */
+    @ApiModelProperty(value="三级审核时间",required=false)
+    private Date checkTime2;
+
+    /**
+     * 三级审核原因(CHECK_MEMO2,VARCHAR,255)
+     */
+    @ApiModelProperty(value="三级审核原因",required=false)
+    private String checkMemo2;
+
+    /**
+     * 二级审核状态(CHECK_FLAG1,VARCHAR,1)
+     */
+    @ApiModelProperty(value="二级审核状态",required=false)
+    private String checkFlag1;
+
+    /**
+     * 三级审核状态(CHECK_FLAG2,VARCHAR,1)
+     */
+    @ApiModelProperty(value="三级审核状态",required=false)
+    private String checkFlag2;
+
     private static final long serialVersionUID = 1L;
 
     @Override
@@ -958,6 +1024,94 @@ public class MeterWorkRailwayReceived implements IBasePO<String> {
         this.isAutoOperation = isAutoOperation == null ? null : isAutoOperation.trim();
     }
 
+    public String getCheckMemo() {
+        return checkMemo;
+    }
+
+    public void setCheckMemo(String checkMemo) {
+        this.checkMemo = checkMemo == null ? null : checkMemo.trim();
+    }
+
+    public String getCheckMan1No() {
+        return checkMan1No;
+    }
+
+    public void setCheckMan1No(String checkMan1No) {
+        this.checkMan1No = checkMan1No == null ? null : checkMan1No.trim();
+    }
+
+    public String getCheckMan1Name() {
+        return checkMan1Name;
+    }
+
+    public void setCheckMan1Name(String checkMan1Name) {
+        this.checkMan1Name = checkMan1Name == null ? null : checkMan1Name.trim();
+    }
+
+    public Date getCheckTime1() {
+        return checkTime1;
+    }
+
+    public void setCheckTime1(Date checkTime1) {
+        this.checkTime1 = checkTime1;
+    }
+
+    public String getCheckMemo1() {
+        return checkMemo1;
+    }
+
+    public void setCheckMemo1(String checkMemo1) {
+        this.checkMemo1 = checkMemo1 == null ? null : checkMemo1.trim();
+    }
+
+    public String getCheckMan2No() {
+        return checkMan2No;
+    }
+
+    public void setCheckMan2No(String checkMan2No) {
+        this.checkMan2No = checkMan2No == null ? null : checkMan2No.trim();
+    }
+
+    public String getCheckMan2Name() {
+        return checkMan2Name;
+    }
+
+    public void setCheckMan2Name(String checkMan2Name) {
+        this.checkMan2Name = checkMan2Name == null ? null : checkMan2Name.trim();
+    }
+
+    public Date getCheckTime2() {
+        return checkTime2;
+    }
+
+    public void setCheckTime2(Date checkTime2) {
+        this.checkTime2 = checkTime2;
+    }
+
+    public String getCheckMemo2() {
+        return checkMemo2;
+    }
+
+    public void setCheckMemo2(String checkMemo2) {
+        this.checkMemo2 = checkMemo2 == null ? null : checkMemo2.trim();
+    }
+
+    public String getCheckFlag1() {
+        return checkFlag1;
+    }
+
+    public void setCheckFlag1(String checkFlag1) {
+        this.checkFlag1 = checkFlag1 == null ? null : checkFlag1.trim();
+    }
+
+    public String getCheckFlag2() {
+        return checkFlag2;
+    }
+
+    public void setCheckFlag2(String checkFlag2) {
+        this.checkFlag2 = checkFlag2 == null ? null : checkFlag2.trim();
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -1031,6 +1185,17 @@ public class MeterWorkRailwayReceived implements IBasePO<String> {
         sb.append(", railwayModelName=").append(railwayModelName);
         sb.append(", AiWeight=").append(AiWeight);
         sb.append(", isAutoOperation=").append(isAutoOperation);
+        sb.append(", checkMemo=").append(checkMemo);
+        sb.append(", checkMan1No=").append(checkMan1No);
+        sb.append(", checkMan1Name=").append(checkMan1Name);
+        sb.append(", checkTime1=").append(checkTime1);
+        sb.append(", checkMemo1=").append(checkMemo1);
+        sb.append(", checkMan2No=").append(checkMan2No);
+        sb.append(", checkMan2Name=").append(checkMan2Name);
+        sb.append(", checkTime2=").append(checkTime2);
+        sb.append(", checkMemo2=").append(checkMemo2);
+        sb.append(", checkFlag1=").append(checkFlag1);
+        sb.append(", checkFlag2=").append(checkFlag2);
         sb.append(", serialVersionUID=").append(serialVersionUID);
         sb.append("]");
         return sb.toString();

+ 72 - 22
src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/service/impl/MeterWorkRailwayReceivedServiceImpl.java

@@ -124,11 +124,19 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
                     MeterBaseOperationLog note = new MeterBaseOperationLog();
                     String no = PublicMethod.IdCreate(3);
                     note.setId(no);
+                    note.setOperationId(model.getActualFirstNo());
                     note.setCreateManNo(model.getUpdateManNo());
                     note.setCreateManName(model.getUpdateManName());
                     note.setCreateTime(new Date());
                     note.setOperationPage("终端-轨道衡从表数据维护");
-                    note.setOperationFunction("修改");
+                    if(StringUtils.isEmpty(received.getRailwayNo()) || !received.getRailwayNo().equals(model.getRailwayWorkNo())) {
+                        note.setOperationFunction("车号修改");
+                    }else {
+                        if(received.getMeterWeight() == null || !(received.getMeterWeight().compareTo(model.getMeterWeight()) == 0)) {
+                            note.setOperationFunction("Ai标识皮修改");
+                        }
+                    }
+
                     note.setOperationBeforeFix(received.toString());
                     note.setOperationAfterFix(model.toString());
                     note.setOperationCarnNo(model.getRailwayNo());
@@ -357,6 +365,7 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
                             note.setCreateTime(new Date());
                             note.setOperationPage("终端-轨道衡从表数据维护");
                             note.setOperationFunction("新增");
+                            note.setOperationId(receivedTemp.getActualFirstNo());
                             note.setOperationCarnNo(receivedTemp.getRailwayNo());
                             meterBaseOperationLogMapper.insertSelective(note);
 //                        }
@@ -384,6 +393,7 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
                             note.setCreateTime(new Date());
                             note.setOperationPage("终端-轨道衡从表数据维护");
                             note.setOperationFunction("新增");
+                            note.setOperationId(receivedTemp.getActualFirstNo());
                             note.setOperationCarnNo(receivedTemp.getRailwayNo());
                             meterBaseOperationLogMapper.insertSelective(note);
                             receivedTemp.setActualFirstNo(PublicMethod.IdCreate(3));
@@ -573,6 +583,25 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
         RESTfulResult rm = new RESTfulResult();
         rm.setFailed();
         try{
+            if(StringUtils.isEmpty(model.getPredictionNo())) {
+                rm.setMessage("请选择一条委托!!");
+                return rm;
+            }
+            //修改前数据
+            MeterWorkRailwayReceived modelTemp = meterWorkRailwayReceivedMapper.selectByPrimaryKey(model.getActualFirstNo());
+
+            MeterBaseOperationLog note = new MeterBaseOperationLog();
+            note.setId(PublicMethod.IdCreate(3));
+            note.setCreateManNo(model.getUpdateManNo());
+            note.setCreateManName(model.getUpdateManName());
+            note.setCreateTime(new Date());
+            note.setOperationPage("终端-轨道衡从表数据维护");
+            note.setOperationFunction("匹配委托");
+            note.setOperationId(model.getActualFirstNo());
+            note.setOperationPredictionNo(model.getPredictionNo());
+            note.setOperationCarnNo(model.getRailwayNo());
+            note.setOperationBeforeFix(modelTemp.toString());
+
             PreRailwayScale preRailwayScale = preRailwayScaleMapper.selectByPrimaryKey(model.getPredictionNo());
             preRailwayScale.setValueFlag("4");
             preRailwayScale.setUploadFlag("1");
@@ -582,10 +611,14 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
                 MeterWorkRailwayReceived firstRec1 = meterWorkRailwayReceivedMapper.selectAndMatch(model.getActualFirstNo(), preRailwayScale.getPredictionNo());
                 BeanUtils.copyProperties(firstRec1,model);
                 model.setPredictionType("1");
-                meterWorkRailwayReceivedMapper.updateByPrimaryKey(model);
+                meterWorkRailwayReceivedMapper.updateByPrimaryKeySelective(model);
             }
             model.setRailwayNo(preRailwayScale.getRailwayNo());
             meterWorkRailwayReceivedMapper.updateByPrimaryKeySelective(model);
+
+            note.setOperationAfterFix(model.toString());
+            meterBaseOperationLogMapper.insertSelective(note);
+
             rm.setSucceed();
             rm.setMessage("操作成功");
             rm.setCode("200");
@@ -606,29 +639,46 @@ public class MeterWorkRailwayReceivedServiceImpl extends BaseServiceImpl<MeterWo
         try{
             int count = 0;
             for(MeterWorkRailwayReceived model: models) {
+                //修改前数据
                 MeterWorkRailwayReceived modelTemp = meterWorkRailwayReceivedMapper.selectByPrimaryKey(model.getActualFirstNo());
-                if(StringUtil.isEmpty(modelTemp.getPredictionNo())) {
-                    PreRailwayScale scale = preRailwayScaleMapper.selectByPrimaryKey(model.getPredictionNo());
-                    scale.setValueFlag("4");
-                    scale.setUploadFlag("1");
-                    preRailwayScaleMapper.updateByPrimaryKeySelective(scale);
 
-                    if(StringUtils.isNotEmpty(model.getPredictionNo())) {
-                        MeterWorkRailwayReceived firstRec1 = meterWorkRailwayReceivedMapper.selectAndMatch(model.getActualFirstNo(), scale.getPredictionNo());
-                        BeanUtils.copyProperties(firstRec1,model);
-                        model.setPredictionType("1");
-                        meterWorkRailwayReceivedMapper.updateByPrimaryKey(model);
-                    }
-                    model.setRailwayNo(scale.getRailwayNo());
-                    model.setMatterNo(scale.getMatterNo());
-                    model.setMatterName(scale.getMatterName());
-                    model.setReceivingUintNo(scale.getReceivingUintNo());
-                    model.setReceivingUintName(scale.getReceivingUintName());
-                    model.setForwardingUnitNo(scale.getForwardingUnitNo());
-                    model.setForwardingUnitName(scale.getForwardingUnitName());
-                    meterWorkRailwayReceivedMapper.updateByPrimaryKeySelective(model);
-                    count ++;
+                MeterBaseOperationLog note = new MeterBaseOperationLog();
+                note.setId(PublicMethod.IdCreate(3));
+                note.setCreateManNo(model.getUpdateManNo());
+                note.setCreateManName(model.getUpdateManName());
+                note.setCreateTime(new Date());
+                note.setOperationPage("终端-轨道衡从表数据维护");
+                note.setOperationFunction("匹配委托");
+                note.setOperationId(model.getActualFirstNo());
+                note.setOperationPredictionNo(model.getPredictionNo());
+                note.setOperationCarnNo(model.getRailwayNo());
+                note.setOperationBeforeFix(modelTemp.toString());
+
+                PreRailwayScale scale = preRailwayScaleMapper.selectByPrimaryKey(model.getPredictionNo());
+                scale.setValueFlag("4");
+                scale.setUploadFlag("1");
+                scale.setMeasureStation(modelTemp.getBaseSpotNo());
+                scale.setMeasureStationName(modelTemp.getBaseSpotName());
+                preRailwayScaleMapper.updateByPrimaryKeySelective(scale);
+
+                if(StringUtils.isNotEmpty(model.getPredictionNo())) {
+                    MeterWorkRailwayReceived firstRec1 = meterWorkRailwayReceivedMapper.selectAndMatch(model.getActualFirstNo(), scale.getPredictionNo());
+                    BeanUtils.copyProperties(firstRec1,model);
+                    model.setPredictionType("1");
+                    meterWorkRailwayReceivedMapper.updateByPrimaryKey(model);
                 }
+                model.setRailwayNo(scale.getRailwayNo());
+                model.setMatterNo(scale.getMatterNo());
+                model.setMatterName(scale.getMatterName());
+                model.setReceivingUintNo(scale.getReceivingUintNo());
+                model.setReceivingUintName(scale.getReceivingUintName());
+                model.setForwardingUnitNo(scale.getForwardingUnitNo());
+                model.setForwardingUnitName(scale.getForwardingUnitName());
+                meterWorkRailwayReceivedMapper.updateByPrimaryKeySelective(model);
+                count ++;
+
+                note.setOperationAfterFix(model.toString());
+                meterBaseOperationLogMapper.insertSelective(note);
             }
             rm.setSucceed();
             rm.setMessage("操作成功,共有" + count + "条数据匹配委托成功");

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff