Browse Source

Merge branch 'master' of https://git.steerinfo.com/DAL-DAZHOU2/DAL-DAZHOU-JOIN-API

HUJIANGUO 3 years ago
parent
commit
47868e6ff6

+ 4 - 8
src/main/java/com/steerinfo/dil/controller/TmsTruckQualityResultController.java

@@ -22,17 +22,13 @@ import java.io.IOException;
 @RequestMapping("/${api.version}/tmsTruckQualityResult")
 public class TmsTruckQualityResultController extends BaseRESTfulController {
 
-    @Autowired
-    TmsTruckQualityService tmsTruckQualityService;
-
-
+//    @Autowired
+//    TmsTruckQualityService tmsTruckQualityService;
 //    @ApiModelProperty(value = "发送磅单号,接收质检实绩信息")
 //    @GetMapping("/insert")
 //    @Transactional
-//    public RESTfulResult addQualityResult(String WzInputId) throws IOException, DocumentException {
-//
-//        return success(tmsTruckQualityService.insertQualityResult(WzInputId));
-//
+//    public RESTfulResult addQualityResult() throws IOException, DocumentException {
 //
+//        return success(tmsTruckQualityService.insertQualityResult());
 //    }
 }

+ 5 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckQualityResultMapper.java

@@ -7,6 +7,7 @@ import java.math.*;
 import java.util.Map;
 
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
 
 @Mapper
 public interface TmstruckQualityResultMapper extends IBaseMapper<TmstruckQualityResult, BigDecimal> {
@@ -15,6 +16,9 @@ public interface TmstruckQualityResultMapper extends IBaseMapper<TmstruckQuality
 
     BigDecimal selectSamplePlaceId(String samplePlaceName);
 
-    BigDecimal Count();
+    // 得到销售订单主键
+    @Select("select seq_tmstruck_quality_result.nextval from dual")
+    BigDecimal qualityId();
+
 
 }

+ 1 - 1
src/main/java/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.java

@@ -20,7 +20,7 @@ public interface TmstruckWeightResultMapper extends IBaseMapper<TmstruckWeightRe
 
     List<Map<String,Object>> selectWzInputId();
 
-    int updateWzInputId(String wzInputId);
+    int updateWzInputId(BigDecimal wzInputId);
 
     BigDecimal getWeightTaskResultId(String orderNumber);
 

+ 11 - 7
src/main/java/com/steerinfo/dil/service/impl/TmsTruckQualityService.java

@@ -6,6 +6,7 @@ import com.steerinfo.dil.mapper.TmstruckQualityResultMapper;
 import com.steerinfo.dil.mapper.TmstruckWeightResultMapper;
 import com.steerinfo.dil.model.TmstruckQualityResult;
 import com.steerinfo.dil.service.ITmsTruckQualityResultService;
+import com.steerinfo.dil.util.DataChange;
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
@@ -35,7 +36,7 @@ public class TmsTruckQualityService implements ITmsTruckQualityResultService {
     @Autowired
     TmstruckWeightResultMapper tmstruckWeightResultMapper;
     //定时访问质检系统,获取质检实绩
-//    @Scheduled(cron = "* * 1 * * ?")
+    @Scheduled(cron = "30 10 10 * * ?")
 //    @Override
     public int insertQualityResult() throws IOException, DocumentException {
         //先查出所有需要质检的但是没有质检的磅单号
@@ -45,8 +46,10 @@ public class TmsTruckQualityService implements ITmsTruckQualityResultService {
         if (mapList.size() != 0){
             for (Map<String,Object> map:mapList
             ) {
-                String  WzInputId=(String) map.get("WzInputId");
                 BigDecimal  resultTotalId= (BigDecimal) map.get("resultTotalId");
+                String capacityNumber = (String) map.get("capacityNumber");
+                String grossWeightTime = (String) map.get("grossWeightTime");
+                String WzInputId = grossWeightTime + capacityNumber.substring(2);
                 //		1. 创建 HttpClient 的实例
                 CloseableHttpClient httpClient = HttpClientBuilder.create().build();
                 //		2. 创建某种连接方法的实例
@@ -68,14 +71,14 @@ public class TmsTruckQualityService implements ITmsTruckQualityResultService {
                         System.out.println(map1);
                         List mapList2= JSON.parseArray((String) map1.get("jsonResult"));
                         if(mapList2.size() == 0){
-                            return 0;
+                            continue;
                         }
                         List<Map<String,Object>>mapList9=mapList2;
                         for (Map<String,Object> map3:mapList9
                         ) {
                             //判断是否生成报告单,如果生成则生成质检实绩,否则退出
                             Object value =  map3.get("REPORT_ID");
-                            if(value == null){
+                            if("".equals(value)){
                                 continue;
                             }
                             //质检说明
@@ -85,13 +88,13 @@ public class TmsTruckQualityService implements ITmsTruckQualityResultService {
                             //查询卸货点ID
                             BigDecimal SamplePlaceId=tmstruckQualityResultMapper.selectSamplePlaceId(samplePlaceName);
                             //扣水扣杂量
-                            BigDecimal Deduction= new BigDecimal(Integer.parseInt(String.valueOf(map3.get("DEDUCT_NUMBER"))));
+                            BigDecimal Deduction= DataChange.dataToBigDecimal(map3.get("DEDUCT_NUMBER"));
                             //抽样时间
                             Date sampleDate= new Date((String)(map3.get("SAMPLE_DATE")));
                             //根据磅单号新增相应的质检实绩
                             TmstruckQualityResult tmstruckQualityResult = new TmstruckQualityResult();
                             //主键ID
-                            tmstruckQualityResult.setId(tmstruckQualityResultMapper.Count());
+                            tmstruckQualityResult.setId(tmstruckQualityResultMapper.qualityId());
                             tmstruckQualityResult.setInsertTime(new Date());
                             tmstruckQualityResult.setInsertUsername("质检系统-物流系统");
                             tmstruckQualityResult.setInsertUpdateRemark("原料质检实绩");
@@ -104,9 +107,10 @@ public class TmsTruckQualityService implements ITmsTruckQualityResultService {
                             //输入扣水扣杂量
                             tmstruckQualityResult.setResultDeduction(Deduction);
                             tmstruckQualityResult.setResultDeductionDescription(DeductionDescription);
+                            tmstruckQualityResult.setResultIssampling("已抽样");
                             tmstruckQualityResultMapper.insertSelective(tmstruckQualityResult);
                             //更新计重实绩表中的是否质检完成字段
-                            tmstruckWeightResultMapper.updateWzInputId(WzInputId);
+                            tmstruckWeightResultMapper.updateWzInputId(resultTotalId);
                         }
                     } catch (DocumentException e) {
                         e.printStackTrace();

+ 35 - 10
src/main/resources/com/steerinfo/dil/mapper/TmstruckWeightResultMapper.xml

@@ -619,19 +619,44 @@
         and TWR.MATERIAL_ID=#{materialId,jdbcType=DECIMAL}
     </select>
     <select id="selectWzInputId" resultType="java.util.Map">
-        SELECT twr.RESULT_POUND_NO "WzInputId", twr.RESULT_TOTAL_ID "resultTotalId"
-        from TMSTRUCK_WEIGHT_RESULT TWR
-        LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
-        ON TTR.RESULT_TOTAL_ID = TWR.RESULT_TOTAL_ID
-        LEFT JOIN OMSTRUCK_ORDER OO
-        ON OO.ORDER_ID = TTR.ORDER_ID
-        WHERE OO.ORDER_TYPE IN (7, 10, 18)
-        AND TWR.ISQUALITY IS NULL
+        (SELECT DISTINCT
+             twr.RESULT_TOTAL_ID "resultTotalId",
+             RC.CAPACITY_NUMBER  "capacityNumber",
+             to_char(TWR.RESULT_GROSS_WEIGHT_TIME,'YYYYMMDDHH24MISS')  "grossWeightTime"
+         from TMSTRUCK_WEIGHT_RESULT TWR
+                  LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                            ON TTR.RESULT_TOTAL_ID = TWR.RESULT_TOTAL_ID
+                  LEFT JOIN OMSTRUCK_ORDER OO
+                            ON OO.ORDER_ID = TTR.ORDER_ID
+                  LEFT JOIN RMS_CAPACITY RC
+                            ON RC.CAPACITY_ID = OO.CAPACITY_ID
+                  LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
+                            ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+         WHERE OO.ORDER_TYPE IN (10,20)
+           AND TWR.GROSS_SEGMENT_SQE = 7
+           AND TER.SEGMEN_SQE = 6
+           AND TWR.ISQUALITY IS NULL)
+        union
+        (SELECT DISTINCT
+             twr.RESULT_TOTAL_ID "resultTotalId",
+             RC.CAPACITY_NUMBER  "capacityNumber",
+             to_char(TWR.RESULT_GROSS_WEIGHT_TIME,'YYYYMMDDHH24MISS')  "grossWeightTime"
+         from TMSTRUCK_WEIGHT_RESULT TWR
+                  LEFT JOIN TMSTRUCK_TOTAL_RESULT TTR
+                            ON TTR.RESULT_TOTAL_ID = TWR.RESULT_TOTAL_ID
+                  LEFT JOIN OMSTRUCK_ORDER OO
+                            ON OO.ORDER_ID = TTR.ORDER_ID
+                  LEFT JOIN RMS_CAPACITY RC
+                            ON RC.CAPACITY_ID = OO.CAPACITY_ID
+                  LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
+                            ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
+         WHERE OO.ORDER_TYPE IN (6,7,18)
+           AND TWR.ISQUALITY IS NULL)
     </select>
-    <update id="updateWzInputId">
+    <update id="updateWzInputId" parameterType="decimal">
         update TMSTRUCK_WEIGHT_RESULT twr
         set twr.ISQUALITY=1
-        where twr.RESULT_POUND_NO=#{wzInputId}
+        where twr.RESULT_TOTAL_ID=#{resultTotalId}
     </update>
 
     <update id="updateTruckWeightResult" parameterType="java.util.Map">