dengyj 3 anni fa
parent
commit
d54f224a6f
18 ha cambiato i file con 922 aggiunte e 33 eliminazioni
  1. 131 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/controller/MeterBaseMatterMapController.java
  2. 10 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/mapper/MeterBaseMatterMapMapper.java
  3. 188 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/mapper/MeterBaseMatterMapMapper.xml
  4. 91 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/model/MeterBaseMatterMap.java
  5. 26 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/service/IMeterBaseMatterMapService.java
  6. 134 0
      src/main/java/com/steerinfo/baseinfo/meterbasemattermap/service/impl/MeterBaseMatterMapServiceImpl.java
  7. 14 2
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/controller/MeterWorkCarActualFirstController.java
  8. 2 0
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.java
  9. 9 0
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.xml
  10. 3 1
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/IMeterWorkCarActualFirstService.java
  11. 82 27
      src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java
  12. 5 0
      src/main/java/com/steerinfo/meterwork/meterworkimage/service/impl/MeterWorkImageServiceImpl.java
  13. 15 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/controller/MeterWorkRailwayActFirstController.java
  14. 4 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/IMeterWorkRailwayActFirstService.java
  15. 199 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java
  16. 1 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.java
  17. 5 0
      src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.xml
  18. 3 3
      src/main/java/com/steerinfo/meterwork/meterworkrailwayrecmain/service/impl/MeterWorkRailwayRecMainServiceImpl.java

+ 131 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/controller/MeterBaseMatterMapController.java

@@ -0,0 +1,131 @@
+package com.steerinfo.baseinfo.meterbasemattermap.controller;
+
+import com.steerinfo.framework.controller.BaseRESTfulController;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.service.pagehelper.PageList;
+import com.steerinfo.framework.utils.collection.ListUtils;
+import com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap;
+import com.steerinfo.baseinfo.meterbasemattermap.service.IMeterBaseMatterMapService;
+import com.steerinfo.meterwork.meterworkprewgttype.mapper.MeterWorkPreWgttypeMapper;
+import com.steerinfo.meterwork.meterworkprewgttype.model.MeterWorkPreWgttype;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.math.BigDecimal;
+
+/**
+ * MeterBaseMatterMap RESTful接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2022-08-30 09:28
+ * 类描述
+ * 修订历史:
+ * 日期:2022-08-30
+ * 作者:generator
+ * 参考:
+ * 描述:MeterBaseMatterMap RESTful接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@RestController
+@RequestMapping("/${api.version}/meterbasemattermaps")
+public class MeterBaseMatterMapController extends BaseRESTfulController {
+
+    @Resource
+    IMeterBaseMatterMapService meterBaseMatterMapService;
+
+    @ApiOperation(value="获取列表", notes="分页查询")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+        @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
+    })
+    //@RequiresPermissions("meterbasemattermap:view")
+    @GetMapping(value = "/")
+    public RESTfulResult list(@RequestParam HashMap parmas,Integer pageNum, Integer pageSize){
+        PageList<MeterBaseMatterMap> list = meterBaseMatterMapService.queryForPage(parmas, pageNum, pageSize);
+        return success(list);
+    }
+
+    @ApiOperation(value="获取列表", notes="分页模糊查询")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
+        @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer")
+    })
+    //@RequiresPermissions("meterbasemattermap:view")
+    @GetMapping(value = "/like/")
+    public RESTfulResult listLike(@RequestParam HashMap parmas,Integer pageNum, Integer pageSize){
+        PageList<MeterBaseMatterMap> list = meterBaseMatterMapService.queryLikeForPage(parmas, pageNum, pageSize);
+        return success(list);
+    }
+    
+    @ApiOperation(value="创建", notes="根据MeterBaseMatterMap对象创建")
+    @ApiImplicitParam(name = "meterBaseMatterMap", value = "详细实体meterBaseMatterMap", required = true, dataType = "MeterBaseMatterMap")
+    //@RequiresPermissions("meterbasemattermap:create")
+    @PostMapping(value = "/")
+    public RESTfulResult add(@ModelAttribute MeterBaseMatterMap model){
+        MeterBaseMatterMap meterBaseMatterMap = meterBaseMatterMapService.add(model);
+        return success(meterBaseMatterMap);
+    }
+
+    @ApiOperation(value="获取详细信息", notes="根据url的id来获取详细信息")
+    @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String")
+    //@RequiresPermissions("meterbasemattermap:view")
+    @GetMapping(value = "/{id}")
+    public RESTfulResult get(@PathVariable String id){
+        MeterBaseMatterMap meterBaseMatterMap = meterBaseMatterMapService.getById(id);
+        return success(meterBaseMatterMap);
+    }
+
+    @ApiOperation(value="更新详细信息", notes="根据url的id来指定更新对象,并根据传过来的meterBaseMatterMap信息来更新详细信息")
+    @ApiImplicitParams({
+        @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String"),
+        @ApiImplicitParam(name = "meterBaseMatterMap", value = "详细实体meterBaseMatterMap", required = true, dataType = "MeterBaseMatterMap")
+    })
+    //@RequiresPermissions("meterbasemattermap:update")
+    @PutMapping(value = "/{id}", produces  = "application/json;charset=UTF-8")
+    public RESTfulResult update(@PathVariable String id, @RequestBody MeterBaseMatterMap model){
+        model.setId(id);
+        MeterBaseMatterMap meterBaseMatterMap = meterBaseMatterMapService.modify(model);
+        return success(meterBaseMatterMap);
+    }
+
+    @ApiOperation(value="删除", notes="根据url的id来指定删除对象")
+    @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String")
+    //@RequiresPermissions("meterbasemattermap:delete")
+    @DeleteMapping(value = "/{id}")//String
+    public RESTfulResult delete(@PathVariable String id){
+    	List<String> list = Arrays.asList(id.split(","));
+    	if(ListUtils.isNotEmpty(list)) {
+	    	List<String> ids = ListUtils.convertList(list);
+			  meterBaseMatterMapService.delete(ids);
+    	}
+      return success();
+    }
+
+    @ApiOperation(value="更新详细信息", notes="根据url的id来指定更新对象,并根据传过来的meterBaseMatterMap信息来更新详细信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "path", name = "id", value = "ID", required = true, dataType = "String"),
+            @ApiImplicitParam(name = "meterBaseMatterMap", value = "详细实体meterBaseMatterMap", required = true, dataType = "MeterBaseMatterMap")
+    })
+    //@RequiresPermissions("meterbasemattermap:update")
+    @PutMapping(value = "/isDoublePre", produces  = "application/json;charset=UTF-8")
+    public boolean isDoublePre(@RequestParam String carNo){
+        try {
+            return meterBaseMatterMapService.isDoublePre(carNo);
+        }
+        catch (Exception e){
+            e.printStackTrace();
+            return false;
+        }
+    }
+}

+ 10 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/mapper/MeterBaseMatterMapMapper.java

@@ -0,0 +1,10 @@
+package com.steerinfo.baseinfo.meterbasemattermap.mapper;
+
+import com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import java.math.*;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface MeterBaseMatterMapMapper extends IBaseMapper<MeterBaseMatterMap, String> {
+}

+ 188 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/mapper/MeterBaseMatterMapMapper.xml

@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.baseinfo.meterbasemattermap.mapper.MeterBaseMatterMapMapper">
+  <resultMap id="BaseResultMap" type="com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap">
+    <id column="MAP_NO" jdbcType="VARCHAR" property="mapNo" />
+    <result column="MAATER_NO1" jdbcType="VARCHAR" property="maaterNo1" />
+    <result column="MAATER_NO2" jdbcType="VARCHAR" property="maaterNo2" />
+    <result column="VALUE_FLAG" jdbcType="VARCHAR" property="valueFlag" />
+  </resultMap>
+  <sql id="columns">
+    MAP_NO, MAATER_NO1, MAATER_NO2, VALUE_FLAG
+  </sql>
+  <sql id="columns_alias">
+    t.MAP_NO, t.MAATER_NO1, t.MAATER_NO2, t.VALUE_FLAG
+  </sql>
+  <sql id="select">
+    SELECT <include refid="columns"/> FROM METER_BASE_MATTER_MAP
+  </sql>
+  <sql id="select_alias">
+    SELECT <include refid="columns_alias"/> FROM METER_BASE_MATTER_MAP t
+  </sql>
+  <sql id="where">
+    <where> 
+      <if test="mapNo != null and mapNo != ''">
+        and MAP_NO = #{mapNo}
+      </if>
+      <if test="maaterNo1 != null and maaterNo1 != ''">
+        and MAATER_NO1 = #{maaterNo1}
+      </if>
+      <if test="maaterNo2 != null and maaterNo2 != ''">
+        and MAATER_NO2 = #{maaterNo2}
+      </if>
+      <if test="valueFlag != null and valueFlag != ''">
+        and VALUE_FLAG = #{valueFlag}
+      </if>
+    </where>
+  </sql>
+  <sql id="whereLike">
+    <where> 
+      <if test="mapNo != null and mapNo != ''">
+        and MAP_NO LIKE '%${mapNo}%'
+      </if>
+      <if test="maaterNo1 != null and maaterNo1 != ''">
+        and MAATER_NO1 LIKE '%${maaterNo1}%'
+      </if>
+      <if test="maaterNo2 != null and maaterNo2 != ''">
+        and MAATER_NO2 LIKE '%${maaterNo2}%'
+      </if>
+      <if test="valueFlag != null and valueFlag != ''">
+        and VALUE_FLAG LIKE '%${valueFlag}%'
+      </if>
+    </where>
+  </sql>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from METER_BASE_MATTER_MAP
+    where MAP_NO = #{mapNo,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
+    delete from METER_BASE_MATTER_MAP
+    where 1!=1 
+      <if test="maaterNo1 != null and maaterNo1 != ''">
+        or MAATER_NO1 = #{maaterNo1}
+      </if>
+      <if test="maaterNo2 != null and maaterNo2 != ''">
+        or MAATER_NO2 = #{maaterNo2}
+      </if>
+      <if test="valueFlag != null and valueFlag != ''">
+        or VALUE_FLAG = #{valueFlag}
+      </if>
+  </delete>
+  <insert id="insert" parameterType="com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap">
+    insert into METER_BASE_MATTER_MAP (MAP_NO, MAATER_NO1, MAATER_NO2, 
+      VALUE_FLAG)
+    values (#{mapNo,jdbcType=VARCHAR}, #{maaterNo1,jdbcType=VARCHAR}, #{maaterNo2,jdbcType=VARCHAR}, 
+      #{valueFlag,jdbcType=VARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap">
+    insert into METER_BASE_MATTER_MAP
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="mapNo != null">
+        MAP_NO,
+      </if>
+      <if test="maaterNo1 != null">
+        MAATER_NO1,
+      </if>
+      <if test="maaterNo2 != null">
+        MAATER_NO2,
+      </if>
+      <if test="valueFlag != null">
+        VALUE_FLAG,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="mapNo != null">
+        #{mapNo,jdbcType=VARCHAR},
+      </if>
+      <if test="maaterNo1 != null">
+        #{maaterNo1,jdbcType=VARCHAR},
+      </if>
+      <if test="maaterNo2 != null">
+        #{maaterNo2,jdbcType=VARCHAR},
+      </if>
+      <if test="valueFlag != null">
+        #{valueFlag,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKey" parameterType="com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap">
+    update METER_BASE_MATTER_MAP
+    set MAATER_NO1 = #{maaterNo1,jdbcType=VARCHAR},
+      MAATER_NO2 = #{maaterNo2,jdbcType=VARCHAR},
+      VALUE_FLAG = #{valueFlag,jdbcType=VARCHAR}
+    where MAP_NO = #{mapNo,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap">
+    update METER_BASE_MATTER_MAP
+    <set>
+      <if test="maaterNo1 != null">
+        MAATER_NO1 = #{maaterNo1,jdbcType=VARCHAR},
+      </if>
+      <if test="maaterNo2 != null">
+        MAATER_NO2 = #{maaterNo2,jdbcType=VARCHAR},
+      </if>
+      <if test="valueFlag != null">
+        VALUE_FLAG = #{valueFlag,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where MAP_NO = #{mapNo,jdbcType=VARCHAR}
+  </update>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    <include refid="select"/>
+    where MAP_NO = #{mapNo,jdbcType=VARCHAR}
+  </select>
+  <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="where"/>
+  </select>
+  <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
+    <include refid="select"/>
+    <include refid="whereLike"/>
+  </select>
+  <insert id="batchInsert" parameterType="java.util.List">
+    insert into METER_BASE_MATTER_MAP 
+      (MAP_NO, 
+      MAATER_NO1, MAATER_NO2, VALUE_FLAG
+      )
+    ( <foreach collection="list" item="item" separator="union all"> 
+   select  
+      #{item.mapNo,jdbcType=VARCHAR}, 
+      #{item.maaterNo1,jdbcType=VARCHAR}, #{item.maaterNo2,jdbcType=VARCHAR}, #{item.valueFlag,jdbcType=VARCHAR}
+       from dual  
+   </foreach> )
+  </insert>
+  <update id="batchUpdate" parameterType="java.util.List">
+     update METER_BASE_MATTER_MAP
+     set
+       MAP_NO=
+       <foreach collection="list" item="item" index="index" separator=" " open="case MAP_NO" close="end">
+          when #{item.mapNo,jdbcType=VARCHAR} then #{item.mapNo,jdbcType=VARCHAR}
+       </foreach>
+       ,MAATER_NO1=
+       <foreach collection="list" item="item" index="index" separator=" " open="case MAP_NO" close="end">
+          when #{item.mapNo,jdbcType=VARCHAR} then #{item.maaterNo1,jdbcType=VARCHAR}
+       </foreach>
+       ,MAATER_NO2=
+       <foreach collection="list" item="item" index="index" separator=" " open="case MAP_NO" close="end">
+          when #{item.mapNo,jdbcType=VARCHAR} then #{item.maaterNo2,jdbcType=VARCHAR}
+       </foreach>
+       ,VALUE_FLAG=
+       <foreach collection="list" item="item" index="index" separator=" " open="case MAP_NO" close="end">
+          when #{item.mapNo,jdbcType=VARCHAR} then #{item.valueFlag,jdbcType=VARCHAR}
+       </foreach>
+     where MAP_NO in 
+     <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
+    #{item.mapNo,jdbcType=VARCHAR}
+     </foreach> 
+  </update>
+  <delete id="batchDelete" parameterType="java.util.List">
+    delete from METER_BASE_MATTER_MAP
+    where MAP_NO in 
+    <foreach collection="list" item="id" open="(" close=")" separator=",">
+      #{id}
+    </foreach>
+  </delete>
+  <!-- 友情提示!!!-->
+  <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
+  
+</mapper>

+ 91 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/model/MeterBaseMatterMap.java

@@ -0,0 +1,91 @@
+package com.steerinfo.baseinfo.meterbasemattermap.model;
+
+import com.steerinfo.framework.model.IBasePO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+@ApiModel(value="null")
+public class MeterBaseMatterMap implements IBasePO<String> {
+    /**
+     * 主键(MAP_NO,VARCHAR,50)
+     */
+    @ApiModelProperty(value="主键",required=true)
+    private String mapNo;
+
+    /**
+     * 物料编号(MAATER_NO1,VARCHAR,50)
+     */
+    @ApiModelProperty(value="物料编号",required=false)
+    private String maaterNo1;
+
+    /**
+     * 映射物料编号(MAATER_NO2,VARCHAR,50)
+     */
+    @ApiModelProperty(value="映射物料编号",required=false)
+    private String maaterNo2;
+
+    /**
+     * 状态(0:无效,1:有效)(VALUE_FLAG,VARCHAR,50)
+     */
+    @ApiModelProperty(value="状态(0:无效,1:有效)",required=false)
+    private String valueFlag;
+
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public String getId() {
+        return this.mapNo;
+    }
+
+    @Override
+    public void setId(String mapNo) {
+        this.mapNo = mapNo == null ? null : mapNo.trim();
+    }
+
+    public String getMapNo() {
+        return mapNo;
+    }
+
+    public void setMapNo(String mapNo) {
+        this.mapNo = mapNo == null ? null : mapNo.trim();
+    }
+
+    public String getMaaterNo1() {
+        return maaterNo1;
+    }
+
+    public void setMaaterNo1(String maaterNo1) {
+        this.maaterNo1 = maaterNo1 == null ? null : maaterNo1.trim();
+    }
+
+    public String getMaaterNo2() {
+        return maaterNo2;
+    }
+
+    public void setMaaterNo2(String maaterNo2) {
+        this.maaterNo2 = maaterNo2 == null ? null : maaterNo2.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(", mapNo=").append(mapNo);
+        sb.append(", maaterNo1=").append(maaterNo1);
+        sb.append(", maaterNo2=").append(maaterNo2);
+        sb.append(", valueFlag=").append(valueFlag);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 26 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/service/IMeterBaseMatterMapService.java

@@ -0,0 +1,26 @@
+package com.steerinfo.baseinfo.meterbasemattermap.service;
+
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.service.IBaseService;
+import com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap;
+import com.steerinfo.meterwork.meterworkcaractualfirstbak.model.MeterWorkCarActualFirstBak;
+
+import java.util.Date;
+import java.math.BigDecimal;
+
+/**
+ * MeterBaseMatterMap服务接口:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2022-08-30 09:28
+ * 类描述
+ * 修订历史:
+ * 日期:2022-08-30
+ * 作者:generator
+ * 参考:
+ * 描述:MeterBaseMatterMap服务接口
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+public interface IMeterBaseMatterMapService extends IBaseService<MeterBaseMatterMap, String>{
+    boolean isDoublePre(String carNo);
+}

+ 134 - 0
src/main/java/com/steerinfo/baseinfo/meterbasemattermap/service/impl/MeterBaseMatterMapServiceImpl.java

@@ -0,0 +1,134 @@
+package com.steerinfo.baseinfo.meterbasemattermap.service.impl;
+
+import com.steerinfo.baseinfo.combaseinfo.mapper.ComBaseInfoMapper;
+import com.steerinfo.baseinfo.combaseinfo.model.ComBaseInfo;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.framework.mapper.IBaseMapper;
+import com.steerinfo.framework.service.impl.BaseServiceImpl;
+import com.steerinfo.baseinfo.meterbasemattermap.model.MeterBaseMatterMap;
+import com.steerinfo.baseinfo.meterbasemattermap.mapper.MeterBaseMatterMapMapper;
+import com.steerinfo.baseinfo.meterbasemattermap.service.IMeterBaseMatterMapService;
+import com.steerinfo.meterwork.meterworkcaractualfirst.mapper.MeterWorkCarActualFirstMapper;
+import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualFirst;
+import com.steerinfo.meterwork.meterworkprewgttype.mapper.MeterWorkPreWgttypeMapper;
+import com.steerinfo.meterwork.meterworkprewgttype.model.MeterWorkPreWgttype;
+import com.steerinfo.pretrack.prerailwayscale.mapper.PreRailwayScaleMapper;
+import com.steerinfo.pretrack.pretrackscale.model.PreTrackScale;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * MeterBaseMatterMap服务实现:
+ * @author generator
+ * @version 1.0-SNAPSHORT 2022-08-30 09:28
+ * 类描述
+ * 修订历史:
+ * 日期:2022-08-30
+ * 作者:generator
+ * 参考:
+ * 描述:MeterBaseMatterMap服务实现
+ * @see null
+ * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
+ */
+@Service(value = "meterBaseMatterMapService")
+public class MeterBaseMatterMapServiceImpl extends BaseServiceImpl<MeterBaseMatterMap, String> implements IMeterBaseMatterMapService {
+
+    @Resource
+    private MeterBaseMatterMapMapper meterBaseMatterMapMapper;
+
+    @Resource
+    MeterWorkPreWgttypeMapper meterWorkPreWgttypeMapper;
+
+    @Resource
+    ComBaseInfoMapper comBaseInfoMapper;
+
+    @Resource
+    PreRailwayScaleMapper preRailwayScaleMapper;
+
+    @Resource
+    MeterWorkCarActualFirstMapper meterWorkCarActualFirstMapper;
+
+    @Override
+    protected IBaseMapper<MeterBaseMatterMap, String> getMapper() {
+        return meterBaseMatterMapMapper;
+    }
+
+    @Override
+    public boolean isDoublePre(String carNo) {
+        try {
+            //查询车辆是否为内倒双委托车辆
+            HashMap preBase = new HashMap();
+            preBase.put("pBaseCode","001047");
+            preBase.put("valueFlag","1");
+            preBase.put("baseName",carNo);
+            List<ComBaseInfo> cbis = comBaseInfoMapper.selectByParameters(preBase);
+            if(cbis.size() != 1){
+                return false;
+            }
+            //查询车辆已选择的委托并拿到委托的发货单位和物料编号
+            HashMap preSel = new HashMap();
+            preSel.put("carNo",carNo);
+            preSel.put("lineDesc","1");
+            preSel.put("valueFlag","1");
+            List<PreTrackScale> ptsSel = preRailwayScaleMapper.selectByParameters(preSel);
+            String forwardingUnitNo = ptsSel.get(0).getForwardingUnitNo();
+            String matterNo = ptsSel.get(0).getMatterNo();
+            String receivingUintNo = ptsSel.get(0).getReceivingUintNo();
+            //查询改发货单位是否满足内倒双委托
+            HashMap preBaseUnit = new HashMap();
+            preBaseUnit.put("pBaseCode","001049");
+            preBaseUnit.put("valueFlag","1");
+            preBaseUnit.put("baseName",forwardingUnitNo);
+            List<ComBaseInfo> cbisUnit = comBaseInfoMapper.selectByParameters(preBaseUnit);
+            if(cbisUnit.size() != 1){
+                return false;
+            }
+            //查询改成已选择是皮重还是毛重
+            HashMap preMap = new HashMap();
+            preMap.put("carNo",carNo);
+            preMap.put("valueFlag","1");
+            List<MeterWorkPreWgttype> mwpws = meterWorkPreWgttypeMapper.selectByParameters(preMap);
+            if(mwpws.get(0).getWeightTypeNo().equals("001033001")){
+                HashMap preNoSel = new HashMap();
+                preSel.put("carNo",carNo);
+                preSel.put("valueFlag","1");
+                List<PreTrackScale> pts = preRailwayScaleMapper.selectByParameters(preSel);
+                for (PreTrackScale model : pts){
+                    if((model.getForwardingUnitNo().equals(receivingUintNo) && model.getMatterNo().equals(matterNo)) ||
+                            (model.getReceivingUintNo().equals(forwardingUnitNo) && model.getMatterNo().equals(matterNo))){
+                        return true;
+                    }
+                }
+                //查询映射物料编号
+                HashMap matterMap = new HashMap();
+                matterMap.put("matterNo1",matterNo);
+                matterMap.put("valueFlag","1");
+                List<MeterBaseMatterMap> mbmm = meterBaseMatterMapMapper.selectByParameters(matterMap);
+                for (MeterBaseMatterMap model : mbmm){
+
+                }
+            }
+            else {
+                List<MeterWorkCarActualFirst> meterWorkCarActualFirsts = meterWorkCarActualFirstMapper.selectByCarNo(carNo);
+                for (MeterWorkCarActualFirst model :meterWorkCarActualFirsts){
+                    if(model.getPredictionType().equals("")){
+                        break;
+                    }
+                    else {
+                        return false;
+                    }
+                }
+            }
+            return true;
+        }
+        catch (Exception e){
+            return false;
+        }
+    }
+}

+ 14 - 2
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/controller/MeterWorkCarActualFirstController.java

@@ -151,6 +151,18 @@ public class MeterWorkCarActualFirstController extends BaseRESTfulController {
         }
     }
 
+    @ApiOperation(value = "APP根据车号获取当日的过车数", notes = "模糊查询")
+    @PostMapping(value = "/countFirstByCar")
+    public RESTfulResult countFirstByCar(@RequestBody HashMap parmas) {
+        try {
+            RESTfulResult rm = meterWorkCarActualFirstService.countFirstByCar(parmas);
+            return rm;
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            throw new MarkerMetException(500, "操作异常!!");
+        }
+    }
+
     @ApiOperation(value = "获取列表", notes = "分页模糊查询")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
@@ -1323,9 +1335,9 @@ public class MeterWorkCarActualFirstController extends BaseRESTfulController {
 
     @ApiOperation(value = "内倒双委托---不使用期限皮结净,保存两条一次毛重")
     @PostMapping(value = "/doDoubleAdd", produces = "application/json;charset=UTF-8")
-    public RESTfulResult doDoubleAdd(@RequestBody PreTrackScale scale, MeterWorkCarActualFirst model) {
+    public RESTfulResult doDoubleAdd(@RequestBody MeterWorkCarActualFirst model, PreTrackScale scale01, PreTrackScale scale02) {
         try {
-            RESTfulResult rm = meterWorkCarActualFirstService.doDoubleAdd(model, scale);
+            RESTfulResult rm = meterWorkCarActualFirstService.doDoubleAdd(model, scale01, scale02);
             return rm;
         } catch (Exception e) {
             e.printStackTrace();

+ 2 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.java

@@ -80,4 +80,6 @@ public interface MeterWorkCarActualFirstMapper extends IBaseMapper<MeterWorkCarA
     List<MeterWorkCarActualFirst> queryForTimeInterval(Map<String, Object> params);
 
     List<MeterWorkCarActualFirst> selectById(List<String> actualNoList);
+
+    int countFirstByCar(HashMap params);
 }

+ 9 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.xml

@@ -2895,4 +2895,13 @@
     </if>
     order by create_time desc
   </select>
+
+  <select id="countFirstByCar" parameterType="java.util.HashMap" resultType="Integer">
+    select count(1) from meter_work_car_actual_first
+    where value_flag in ('1', '2')
+        and car_no like '%${carNo}%'
+        <if test="startTime != null and startTime != '' and endTime != null 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>
+  </select>
 </mapper>

+ 3 - 1
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/IMeterWorkCarActualFirstService.java

@@ -144,6 +144,8 @@ public interface IMeterWorkCarActualFirstService extends IBaseService<MeterWorkC
     RESTfulResult furConversion(HashMap<String, Object> params);
     RESTfulResult doNetByTermData(HashMap<String, Object> params);
 
-    RESTfulResult doDoubleAdd(MeterWorkCarActualFirst model, PreTrackScale scale);
+    RESTfulResult doDoubleAdd(MeterWorkCarActualFirst model, PreTrackScale scale01, PreTrackScale scale02);
     RESTfulResult doTermTareNetDouble(MeterWorkCarActualFirst model, PreTrackScale scale);
+
+    RESTfulResult countFirstByCar(HashMap<String, Object> parmas);
 }

+ 82 - 27
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java

@@ -5500,41 +5500,72 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public RESTfulResult doDoubleAdd(MeterWorkCarActualFirst model, PreTrackScale scale) {
+    public RESTfulResult doDoubleAdd(MeterWorkCarActualFirst model, PreTrackScale scale01, PreTrackScale scale02) {
         RESTfulResult rm = new RESTfulResult();
         rm.setFailed();
         try{
 
-            PreTrackScale pre = preTrackScaleMapper.selectByPrimaryKey(model.getPredictionNo());
+            PreTrackScale pre01 = preTrackScaleMapper.selectByPrimaryKey(scale01.getPredictionNo());
+            PreTrackScale pre02 = preTrackScaleMapper.selectByPrimaryKey(scale02.getPredictionNo());
             if(StringUtils.isNotEmpty(model.getPredictionNo())){
-                MeterWorkCarActualFirst modelTemp = meterWorkCarActualFirstMapper.selectAndMatch(model.getActualFirstNo(), scale.getPredictionNo());
-                BeanUtils.copyProperties(modelTemp, model);
-                String no = PublicMethod.IdCreate(3);
-                model.setActualFirstNo(no);
-                model.setMeterMode("2");
-                model.setWeightType("0");
-                model.setDataSource("1");
-                model.setValueFlag("1");
-                model.setIsPreScale("1");
-                model.setPredictionType("5");
-                model.setCreateManNo("SYSTEM");
-                model.setCreateManName("system");
-                model.setCreateTime(new Date());
+                MeterWorkCarActualFirst copyFirst01 = new MeterWorkCarActualFirst();
+                MeterWorkCarActualFirst copyFirst02 = new MeterWorkCarActualFirst();
+                MeterWorkCarActualFirst modelTemp01 = meterWorkCarActualFirstMapper.selectAndMatch(model.getActualFirstNo(), scale01.getPredictionNo());
+                BeanUtils.copyProperties(modelTemp01, copyFirst01);
+                MeterWorkCarActualFirst modelTemp02 = meterWorkCarActualFirstMapper.selectAndMatch(model.getActualFirstNo(), scale02.getPredictionNo());
+                BeanUtils.copyProperties(modelTemp02, copyFirst02);
+
+                copyFirst01.setActualFirstNo(PublicMethod.IdCreate(3));
+                copyFirst01.setMeterMode("2");
+                copyFirst01.setWeightType("0");
+                copyFirst01.setDataSource("1");
+                copyFirst01.setValueFlag("1");
+                copyFirst01.setIsPreScale("1");
+                copyFirst01.setPredictionType("5");
+                copyFirst01.setPredictionCombination(scale01.getPredictionNo() + "," + scale02.getPredictionNo());
+                copyFirst01.setCreateManNo("system");
+                copyFirst01.setCreateManName("system");
+                copyFirst01.setCreateTime(new Date());
                 meterWorkCarActualFirstMapper.insertSelective(model);
-                model.setNote("内倒双委托一次复制:" + model.getActualFirstNo());
-                model.setActualFirstNo(PublicMethod.IdCreate(3));
+
+                copyFirst02.setActualFirstNo(PublicMethod.IdCreate(3));
+                copyFirst02.setMeterMode("2");
+                copyFirst02.setWeightType("0");
+                copyFirst02.setDataSource("1");
+                copyFirst02.setValueFlag("1");
+                copyFirst02.setIsPreScale("1");
+                copyFirst02.setPredictionType("5");
+                copyFirst02.setPredictionCombination(scale01.getPredictionNo() + "," + scale02.getPredictionNo());
+                copyFirst02.setCreateManNo("system");
+                copyFirst02.setCreateManName("system");
+                copyFirst02.setCreateTime(new Date());
+                copyFirst02.setNote("内倒双委托一次复制:" + model.getActualFirstNo());
                 meterWorkCarActualFirstMapper.insertSelective(model);
+
                 //预约信息重置委托
-                pre.setPredictionType("5");
-                pre.setMeasureStation(model.getBaseSpotNo());
-                pre.setMeasureStationName(model.getBaseSpotName());
-                pre.setUpdateManNo("SYSTEM");
-                pre.setUpdateManName("system");
-                pre.setUpdateTime(new Date());
-                pre.setValueFlag("4");
-                pre.setUploadFlag("1");
-                pre.setLineDesc("0");
-                preTrackScaleMapper.updateByPrimaryKeySelective(pre);
+                pre01.setPredictionType("5");
+                pre01.setPredictionCombination(scale01.getPredictionNo() + "," + scale02.getPredictionNo());
+                pre01.setMeasureStation(model.getBaseSpotNo());
+                pre01.setMeasureStationName(model.getBaseSpotName());
+                pre01.setUpdateManNo("SYSTEM");
+                pre01.setUpdateManName("system");
+                pre01.setUpdateTime(new Date());
+                pre01.setValueFlag("4");
+                pre01.setUploadFlag("1");
+                pre01.setLineDesc("0");
+                preTrackScaleMapper.updateByPrimaryKeySelective(pre01);
+
+                pre02.setPredictionType("5");
+                pre02.setPredictionCombination(scale01.getPredictionNo() + "," + scale02.getPredictionNo());
+                pre02.setMeasureStation(model.getBaseSpotNo());
+                pre02.setMeasureStationName(model.getBaseSpotName());
+                pre02.setUpdateManNo("SYSTEM");
+                pre02.setUpdateManName("system");
+                pre02.setUpdateTime(new Date());
+                pre02.setValueFlag("4");
+                pre02.setUploadFlag("1");
+                pre02.setLineDesc("0");
+                preTrackScaleMapper.updateByPrimaryKeySelective(pre02);
 
                 rm.setSucceed(true);
                 rm.setCode("200");
@@ -5599,6 +5630,30 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
         return rm;
     }
 
+    @Override
+    public RESTfulResult countFirstByCar(HashMap<String, Object> params) {
+        RESTfulResult rm = new RESTfulResult();
+        rm.setFailed();
+        try{
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+            String afl = sdf.format(new Date());
+            String startTime = afl + " 00:00:00";
+            String endTime = afl + " 23:59:59";
+            params.put("startTime", startTime);
+            params.put("endTime", endTime);
+            int countFirst = meterWorkCarActualFirstMapper.countFirstByCar(params);
+            rm.setSucceed(true);
+            rm.setCode("200");
+            rm.setData(countFirst);
+            rm.setMessage("操作成功");
+        }catch(Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            rm.setMessage("操作异常," + e.getMessage());
+        }
+        return rm;
+    }
+
     @Override
     public RESTfulResult doNetAddMuchGross(List<MeterWorkCarActualFirst> gross, MeterWorkCarActualFirst tare, MeterMonitorNote note) throws Exception {
         RESTfulResult rm = new RESTfulResult();

+ 5 - 0
src/main/java/com/steerinfo/meterwork/meterworkimage/service/impl/MeterWorkImageServiceImpl.java

@@ -495,6 +495,11 @@ public class MeterWorkImageServiceImpl extends BaseServiceImpl<MeterWorkImage, S
                     }
                 }
             }else {
+                //判断图片主键是否保存了从表数据
+                List<MeterWorkRailwayReceived> receiveds = meterWorkRailwayReceivedMapper.selectByPrimaryKeyLike(mwi.getActualFirstNo());
+                if(receiveds.size() == 1) {
+                    mwi.setActualFirstNo(receiveds.get(0).getActualFirstNo());
+                }
                 MeterWorkImage mw= meterWorkImageMapper.selectByPrimaryKey(mwi.getActualFirstNo());
                 if(mw != null){
                     meterWorkImageMapper.updateByPrimaryKeySelective(mwi);

+ 15 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/controller/MeterWorkRailwayActFirstController.java

@@ -1421,6 +1421,21 @@ throw new MarkerMetException(500, "操作异常!!");
         }
     }
 
+    @ApiOperation(value = "动轨计量终端从表数据处理批量匹配从表回空皮", notes = "一定要有委托才能才能进行结净")
+    @Transactional
+    @PostMapping(value = "/DynamicBatchMatchReceivedWeight")
+    public RESTfulResult DynamicBatchMatchReceivedWeight(@RequestBody List<MeterWorkRailwayReceived> receivedList) {
+        RESTfulResult rm = failed();
+        try {
+            rm = meterWorkRailwayActFirstService.DynamicBatchMatchReceivedWeight(receivedList);
+            return rm;
+        }catch (Exception e) {
+            e.printStackTrace();
+            rm.setMessage("操作异常,请确认!>>>>" + e.getMessage());
+            return rm;
+        }
+    }
+
     @ApiOperation(value = "动轨计量终端从表数据处理批量匹配一次历史皮", notes = "一定要有委托才能才能进行结净")
     @Transactional
     @PostMapping(value = "/DynamicBatchMatchHisTareWeight")

+ 4 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/IMeterWorkRailwayActFirstService.java

@@ -139,6 +139,8 @@ public interface IMeterWorkRailwayActFirstService extends IBaseService<MeterWork
     RESTfulResult DynamicBatchMatchCarriageWeight(List<MeterWorkRailwayReceived> receivedList);
     //批量匹配一次空皮
     RESTfulResult DynamicBatchMatchFirstWeight(List<MeterWorkRailwayReceived> receivedList);
+    //批量匹配从表回空皮
+    RESTfulResult DynamicBatchMatchReceivedWeight(List<MeterWorkRailwayReceived> receivedList);
     //批量匹配历史皮
     RESTfulResult DynamicBatchMatchHisTareWeight(List<MeterWorkRailwayReceived> receivedList);
 
@@ -156,5 +158,7 @@ public interface IMeterWorkRailwayActFirstService extends IBaseService<MeterWork
     RESTfulResult batchRailwayFirst(List<HashMap> models);
 
     RESTfulResult doRecovery(List<MeterWorkRailwayActFirst> models);
+
+
 }
 

+ 199 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayactfirst/service/impl/MeterWorkRailwayActFirstServiceImpl.java

@@ -7600,6 +7600,205 @@ public class MeterWorkRailwayActFirstServiceImpl extends BaseServiceImpl<MeterWo
         return rm;
     }
 
+    @Override
+    public RESTfulResult DynamicBatchMatchReceivedWeight(List<MeterWorkRailwayReceived> receivedList) {
+        RESTfulResult rm = new RESTfulResult();
+        rm.setFailed();
+        try{
+            List<String> carList = new ArrayList<>();
+            String strCar = "";
+            //判断从表数据中是否包含委托编号
+            for (MeterWorkRailwayReceived receivedModel: receivedList) {
+                Assert.isTrue(receivedModel.getPredictionNo() != null && StringUtils.isNotEmpty(receivedModel.getPredictionNo()), "所选择的数据中包含没有委托的数据,不能结净");
+            }
+            int count = 0;
+            //将从表数据的车号所对应有效的AI标识皮进行结净,未找到历史皮就跳过
+            for (MeterWorkRailwayReceived received: receivedList) {
+                String userId = received.getUpdateManNo();
+                String userName = received.getUpdateManName();
+
+                //sampleNo:对应毛重、actualFirstNo:对应皮重;
+                MeterWorkRailwayReceived grossReceived = meterWorkRailwayReceivedMapper.selectByPrimaryKey(received.getSampleNo());
+                if(grossReceived != null) {
+                    MeterWorkRailwayReceived tareReceived = meterWorkRailwayReceivedMapper.selectByPrimaryKey(received.getActualFirstNo());
+
+                    //查找到一条有效的数据并且这条数据小于从表重量才进行结净,否则跳过
+                    if(grossReceived.getMeterWeight().compareTo(tareReceived.getMeterWeight()) <= 0) {
+                        continue;
+                    }
+
+                    MeterWorkRailwayActFirst grossModel = new MeterWorkRailwayActFirst();
+                    MeterWorkRailwayActFirst tareModel = new MeterWorkRailwayActFirst();
+                    MeterWorkRailwayActual actualRow = new MeterWorkRailwayActual();
+                    PreRailwayScale railwayScale = preRailwayScaleMapper.selectByPrimaryKey(grossReceived.getPredictionNo());
+                    //已使用 METER_WORK_RAILWAY_RECEIVED表状态设置为已使用
+                    meterWorkRailwayReceivedMapper.updateMeterWorkRailwayReceived(grossReceived.getActualFirstNo());
+                    meterWorkRailwayReceivedMapper.updateMeterWorkRailwayReceived(tareReceived.getActualFirstNo());
+                    //从表赋值grossModel、
+                    BeanUtils.copyProperties(grossReceived, grossModel);
+                    grossModel.setLcNo(grossReceived.getRailwayWorkNo());
+                    meterWorkRailwayActFirstMapper.insertSelective(grossModel);
+                    BeanUtils.copyProperties(tareReceived, tareModel);
+                    tareModel.setLcNo(tareReceived.getRailwayWorkNo());
+                    meterWorkRailwayActFirstMapper.insertSelective(tareModel);
+
+                    //修改主表是否已处理完
+                    MeterWorkRailwayReceived receivedModel = meterWorkRailwayReceivedMapper.selectByPrimaryKey(grossReceived.getActualFirstNo());
+                    if(receivedModel != null){
+                        HashMap<String, Object> obj = new HashMap<>();
+                        obj.put("railwayWorkNo", receivedModel.getRailwayWorkNo());
+                        HashMap<String, Object> countMap = meterWorkRailwayReceivedMapper.getCount(obj);
+                        int countNum = Integer.parseInt(countMap.get("COUNTNUM").toString());
+                        if(countNum < 1) {
+                            HashMap<String, Object> objMap = new HashMap<>();
+                            objMap.put("soundName", receivedModel.getRailwayWorkNo());
+                            List<MeterWorkRailwayRecMain> recMains = meterWorkRailwayRecMainMapper.selectByParameters(objMap);
+                            if(recMains.size() >= 1) {
+                                recMains.get(0).setIsDispose("1");
+                                meterWorkRailwayRecMainMapper.updateByPrimaryKeySelective(recMains.get(0));
+                            }
+                        }
+                    }
+
+                    grossModel.setValueFlag(DbConstants.NET);
+                    grossModel.setWeightType("0");
+                    grossModel.setNote("从表空皮匹配委托结净更新");
+                    grossModel.setWeightType("0");
+                    grossModel.setIsPreSacale("1");
+                    grossModel.setPredictionNo(railwayScale.getPredictionNo());
+                    grossModel.setPredictionType("1");
+                    grossModel.setUpdateManNo(userId);
+                    grossModel.setUpdateManName(userName);
+                    grossModel.setUpdateTime(new Date());
+                    meterWorkRailwayActFirstMapper.updateByPrimaryKey(grossModel);
+
+                    tareModel.setValueFlag(DbConstants.NET);
+                    tareModel.setWeightType("1");
+                    tareModel.setNote("从表空皮匹配委托结净更新");
+                    tareModel.setIsPreSacale("1");
+                    tareModel.setPredictionNo(railwayScale.getPredictionNo());
+                    tareModel.setPredictionType("1");
+                    tareModel.setUpdateManNo(userId);
+                    tareModel.setUpdateManName(userName);
+                    tareModel.setUpdateTime(new Date());
+                    meterWorkRailwayActFirstMapper.updateByPrimaryKey(tareModel);
+
+                    //保存历史皮重
+                    doSaveTare(tareModel);
+
+                    //添加第二次毛重数据
+                    SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyyMMdd");
+                    String afl = sdfFormat.format(new Date());
+                    MeterWorkRailwayActual mwca = meterWorkRailwayActualMapper.manualAddPre(grossModel.getActualFirstNo(), tareModel.getActualFirstNo(), railwayScale.getPredictionNo());
+                    BeanUtils.copyProperties(mwca, actualRow);
+
+                    //添加结净数据
+//                    actualRow.setActualNo(afl + meterWorkRailwayActualMapper.getNewID(afl));
+                    //    String no = PublicMethod.IdCreate(3);
+                    //    actualRow1.setActualNo(no);
+                    String no = PublicMethod.IdCreate(3);
+                    actualRow.setActualNo(no);
+                    actualRow.setTareWeight(tareModel.getMeterWeight());
+                    actualRow.setNetTime(new Date());
+                    actualRow.setNetMode(DbConstants.TYPE);
+                    actualRow.setNote("从表空皮配委托结净更新");
+                    actualRow.setNetMode("2");
+                    actualRow.setUploadFlag("1");
+                    actualRow.setIsPreSacale("1");
+                    actualRow.setValueFlag("2");
+                    actualRow.setPredictionType("1");
+                    actualRow.setPredictionNo(railwayScale.getPredictionNo());
+                    actualRow.setNetWeight(grossModel.getMeterWeight().subtract(tareModel.getMeterWeight()));
+                    if(actualRow.getGrossTime().compareTo(actualRow.getTareTime()) >= 0) {
+                        actualRow.setNetSpot3No(actualRow.getBaseSpot1No());
+                        actualRow.setNetSpot3Name(actualRow.getBaseSpot1Name());
+                        actualRow.setNetManNo(actualRow.getGrossManNo());
+                        actualRow.setNetManName(actualRow.getGrossManName());
+                        actualRow.setNetTime(actualRow.getGrossTime());
+                        actualRow.setCreateTime(actualRow.getGrossTime());
+                        actualRow.setCreateManName(actualRow.getGrossManName());
+                    }else {
+                        actualRow.setNetSpot3No(actualRow.getBaseSpot2No());
+                        actualRow.setNetSpot3Name(actualRow.getBaseSpot2Name());
+                        actualRow.setNetManNo(actualRow.getTareManNo());
+                        actualRow.setNetManName(actualRow.getTareManName());
+                        actualRow.setNetTime(actualRow.getTareTime());
+                        actualRow.setCreateTime(actualRow.getTareTime());
+                        actualRow.setCreateManName(actualRow.getTareManName());
+                    }
+                    //铁水衡自动导入情况
+                    if(actualRow.getTareManNo() != null && actualRow.getTareManNo().equals("system") &&
+                            actualRow.getGrossManNo() != null && actualRow.getGrossManNo().equals("system")) {
+                        if(userId != null && StringUtils.isNotEmpty(userId) && userName != null &&StringUtils.isNotEmpty(userName)) {
+                            actualRow.setNetManNo(userId);
+                            actualRow.setNetManName(userName);
+                        }
+                    }
+                    actualRow.setSampleNo(tareModel.getLcNo());
+                    actualRow.setLcNo(meterWorkRailwayActFirstMapper.getFirstLcNo(actualRow.getActualFirst1No()));
+                    actualRow.setUpdateManNo(userId);
+                    actualRow.setUpdateManName(userName);
+                    actualRow.setUpdateTime(new Date());
+                    actualRow.setMemo("从表回空皮结净");
+                    meterWorkRailwayActualMapper.insertSelective(actualRow);
+
+                    //更新预报数
+                    railwayScale.setValueFlag(DbConstants.NET);
+                    railwayScale.setUploadFlag("1");
+                    railwayScale.setValueFlag("2");
+                    railwayScale.setPredictionType("1");
+                    railwayScale.setMeasureStation(actualRow.getNetSpot3No());
+                    railwayScale.setMeasureStationName(actualRow.getNetSpot3Name());
+                    railwayScale.setUpdateTime(new Date());
+                    railwayScale.setUpdateManNo(userId);
+                    railwayScale.setUpdateManName(userName);
+                    preRailwayScaleMapper.updateByPrimaryKeySelective(railwayScale);
+
+                    count++;
+                }else {
+                    carList.add(received.getRailwayNo());
+                }
+            }
+
+            //修改主表是否已处理完
+            if(receivedList.size() >= 1) {
+                MeterWorkRailwayReceived receivedModel = meterWorkRailwayReceivedMapper.selectByPrimaryKey(receivedList.get(0).getActualFirstNo());
+                if(receivedModel != null){
+                    HashMap<String, Object> obj = new HashMap<>();
+                    obj.put("railwayWorkNo", receivedModel.getRailwayWorkNo());
+                    HashMap<String, Object> countMap = meterWorkRailwayReceivedMapper.getCount(obj);
+                    int countNum = Integer.parseInt(countMap.get("COUNTNUM").toString());
+                    if(countNum < 1) {
+                        HashMap<String, Object> objMap = new HashMap<>();
+                        objMap.put("soundName", receivedModel.getRailwayWorkNo());
+                        List<MeterWorkRailwayRecMain> recMains = meterWorkRailwayRecMainMapper.selectByParameters(objMap);
+                        if(recMains.size() >= 1) {
+                            recMains.get(0).setIsDispose("1");
+                            meterWorkRailwayRecMainMapper.updateByPrimaryKeySelective(recMains.get(0));
+                        }
+                    }
+                }
+            }
+            if(carList.size() >= 1) {
+                strCar = carList.get(0);
+                if(carList.size() >= 2) {
+                    for(String car: carList) {
+                        strCar = strCar + "," + car;
+                    }
+                }
+            }
+            rm.setSucceed();
+            rm.setCode("200");
+//            rm.setMessage("操作成功,总共"+ receivedList.size() +"条数据,共有:" + count + "条数据匹配空皮成功");
+            rm.setMessage(strCar);
+        }catch(Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            rm.setMessage("操作异常:>>>" + e.getMessage());
+        }
+        return rm;
+    }
+
     @Override
     public RESTfulResult DynamicBatchMatchHisTareWeight(List<MeterWorkRailwayReceived> receivedList) {
         RESTfulResult rm = new RESTfulResult();

+ 1 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.java

@@ -22,4 +22,5 @@ public interface MeterWorkRailwayReceivedMapper extends IBaseMapper<MeterWorkRai
     MeterWorkRailwayReceived selectAndRemove(@Param(value = "actualFirstNo")String actualFirstNo);
 
     int deleteByPrimaryKeyLike(@Param(value = "actualFirstNo")String actualFirstNo);
+    List<MeterWorkRailwayReceived> selectByPrimaryKeyLike(@Param(value = "actualFirstNo")String actualFirstNo);
 }

+ 5 - 0
src/main/java/com/steerinfo/meterwork/meterworkrailwayreceived/mapper/MeterWorkRailwayReceivedMapper.xml

@@ -2038,4 +2038,9 @@
     delete from METER_WORK_RAILWAY_RECEIVED
     where ACTUAL_FIRST_NO like '%${actualFirstNo}%'
   </delete>
+
+  <select id="selectByPrimaryKeyLike" parameterType="java.lang.String" resultMap="BaseResultMap">
+    <include refid="select" />
+    where ACTUAL_FIRST_NO like '%${actualFirstNo}%'
+  </select>
 </mapper>

+ 3 - 3
src/main/java/com/steerinfo/meterwork/meterworkrailwayrecmain/service/impl/MeterWorkRailwayRecMainServiceImpl.java

@@ -89,9 +89,9 @@ public class MeterWorkRailwayRecMainServiceImpl extends BaseServiceImpl<MeterWor
                 meterWorkRailwayReceivedMapper.deleteByPrimaryKeyLike(model.getActualFirstNo());
             }
             for (MeterWorkRailwayReceived model: receivedList) {
-                if(model.getRailwayNo() == null || StringUtils.isEmpty(model.getRailwayNo())) {
-                    model.setRailwayNo("车号异常");
-                }
+//                if(model.getRailwayNo() == null || StringUtils.isEmpty(model.getRailwayNo())) {
+//                    model.setRailwayNo("车号异常");
+//                }
                 SimpleDateFormat sdfD = new SimpleDateFormat("yyyyMMddHHmmss");
                 String key = model.getBaseSpotNo() + sdfD.format(model.getCreateTime()) + PublicMethod.RandomCreate(3);
                 model.setActualFirstNo(key);