Browse Source

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

luobang 2 years ago
parent
commit
86d7cdcbb2

+ 30 - 4
src/main/java/com/steerinfo/dil/controller/AmsContractTruckPriceController.java

@@ -18,9 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import java.math.BigDecimal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * AmsContractTransportPrice RESTful接口:
@@ -251,10 +249,38 @@ public class AmsContractTruckPriceController extends BaseRESTfulController {
         PageHelper.startPage(pageNum,pageSize);
         //分页数据
         List<Map<String, Object>> saleOrderList = amsContractTruckPriceService.getAddressDeliveryAddress(mapValue);
-        PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
+        List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);
+        int i=0;
+        for (Map<String, Object> columnData : columnDataList) {
+            //每个表头字段的过滤条件
+            columnData.put("filters", setListMap(saleOrderList, columnData.get("prop").toString()));
+            if (i==0){
+                columnData.put("min-width","78px");
+            }else if (i==2){
+                columnData.put("min-width","94px");
+            }
+            i++;
+        }
+        PageListAdd pageList = new PageListAdd(saleOrderList);
+        pageList.setColumnData(columnDataList);
+        //PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
         return success(pageList);
     }
 
+    private Set<Map<String, Object>> setListMap(List<Map<String, Object>> list, String name) {
+        Set<Map<String, Object>> setString = new HashSet<>();
+        for (Map<String, Object> map : list) {//遍历每条数据
+            Map<String, Object> map1 = new HashMap<>();
+            //map.get(name)获取每条数据中对应表头字段的数据
+            map1.put("text", map.get(name));
+            if (map.get(name) != null) {
+                map1.put("value", map.get(name));
+                setString.add(map1);
+            }
+        }
+        return setString;
+    }
+
     /**
      * 获取货物类型
      * @param

+ 4 - 3
src/main/java/com/steerinfo/dil/controller/DilNoticeController.java

@@ -240,9 +240,10 @@ public class DilNoticeController extends BaseRESTfulController {
     @ApiOperation(value = "查询通知信息", notes = "根据传过来的orgcode查询")
     @PostMapping(value = "/getNotice")
     public RESTfulResult getNotice(@RequestBody(required = false) Map<String, Object> mapValue){
-        String orgcode= (String) mapValue.get("orgcodezs");
-        List<Map<String, Object>> noticeData = dilNoticeService.getNoticeData(orgcode);
-        return success(noticeData);
+        return failed(null);
+        /*String orgcode= (String) mapValue.get("orgcodezs");
+        List<Map<String, Object>> noticeData = dilNoticeService.getNoticeData(orgcode);*/
+        //return success(noticeData);
     }
 
 

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

@@ -11,6 +11,6 @@ import java.util.Map;
 @Mapper
 public interface AmsContaactPriceMaterialMapper extends IBaseMapper<AmsContaactPriceMaterial, BigDecimal> {
     List<Map<String, Object>> getMaterialName(Map<String,Object> map);
-
+    int deletePriceByPriceId(String priceId);
 
 }

+ 0 - 2
src/main/java/com/steerinfo/dil/mapper/AmsContractTruckPriceMapper.java

@@ -60,6 +60,4 @@ public interface AmsContractTruckPriceMapper extends IBaseMapper<AmsContractTran
     List<Map<String, Object>> selectInwardPrice(Map<String, Object> mapvalue);
 
     List<Map<String, Object>> getRangePoint(Map<String, Object> mapValue);
-
-    int updatePriceByPriceId(Map<String, Object> map);
 }

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

@@ -167,4 +167,5 @@ public interface AmsSaleOrderMapper extends IBaseMapper<AmsSaleOrder, BigDecimal
 
     BigDecimal getMoreCarrier(String place);
 
+    Map<String,Object> getOrderIdByCapacity(Map<String,Object> map);
 }

+ 44 - 2
src/main/java/com/steerinfo/dil/service/impl/AmsContractTruckPriceServiceImpl.java

@@ -668,8 +668,50 @@ public class AmsContractTruckPriceServiceImpl implements IAmsContractTruckPriceS
     }
 
     @Override
-    public int updatePriceByPriceId(Map<String, Object> map){
-        int i = amsContractTruckPriceMapper.updatePriceByPriceId(map);
+    public int updatePriceByPriceId(Map<String, Object> mapValue){
+        int i = 0;
+        BigDecimal capacityTypeId = DataChange.dataToBigDecimal(mapValue.get("capacityTypeId"));
+        BigDecimal lineId = DataChange.dataToBigDecimal(mapValue.get("rangeId"));
+//        BigDecimal formulaId = DataChange.dataToBigDecimal(mapValue.get("cargonameId"));
+        BigDecimal priceValue = DataChange.dataToBigDecimal(mapValue.get("priceValue"));
+        Date priceDate = new Date((Long)mapValue.get("priceDate"));
+        BigDecimal type = DataChange.dataToBigDecimal(mapValue.get("type"));
+        BigDecimal oilpriceBase = DataChange.dataToBigDecimal(mapValue.get("oilpriceBase"));
+//        BigDecimal oilTypeId = DataChange.dataToBigDecimal(mapValue.get("oilTypeId"));
+        BigDecimal oilpriceChangeThreshold = DataChange.dataToBigDecimal(mapValue.get("oilpriceChangeThreshold"));
+        List<Map<String,Object>>mapList = (List<Map<String, Object>>) mapValue.get("mapList");
+        BigDecimal priceId=DataChange.dataToBigDecimal(mapValue.get("priceId"));
+
+        AmsContractTransportPrice amsContractTransportPrice = new AmsContractTransportPrice();
+        amsContractTransportPrice.setOilpriceBase(oilpriceBase);
+//        amsContractTransportPrice.setOilTypeId(oilTypeId);  油品名称
+        amsContractTransportPrice.setPriceValue(priceValue);
+        amsContractTransportPrice.setPriceDate(priceDate);
+//        amsContractTransportPrice.setCargonameId(formulaId);
+        amsContractTransportPrice.setPriceId(priceId);
+        amsContractTransportPrice.setUpdateTime(new Date());
+        i =  amsContractTruckPriceMapper.updateByPrimaryKeySelective(amsContractTransportPrice);
+        //把之前的全删了,然后新增
+        if (mapList!=null && mapList.size()>0) {
+            i = amsContaactPriceMaterialMapper.deletePriceByPriceId(mapValue.get("priceId").toString());
+        }
+        for (Map<String,Object>map:mapList
+        ) {
+            //新增
+            AmsContaactPriceMaterial amsContaactPriceMaterial = new AmsContaactPriceMaterial();
+            //设置最大主键ID
+            amsContaactPriceMaterial.setId(amsContractTruckPriceMapper.selectPriceMaterialMaxId());
+            amsContaactPriceMaterial.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
+            amsContaactPriceMaterial.setPriceId(amsContractTransportPrice.getPriceId());
+            amsContaactPriceMaterial.setDeleted(new BigDecimal(0));
+            i = amsContaactPriceMaterialMapper.insertSelective(amsContaactPriceMaterial);
+        }
         return i;
     }
+
+/*    @Override
+    public List<Map<String, Object>> getwz(Map<String, Object> map){
+        List<Map<String, Object>> selectwz = amsContractTruckPriceMapper.selectwz(map);
+        return selectwz;
+    }*/
 }

+ 8 - 7
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderMaterialServiceImpl.java

@@ -831,14 +831,15 @@ public class AmsSaleOrderMaterialServiceImpl implements IAmsSaleOrderMaterialSer
             // 运单状态
             omstruckOrder.setOrderStatus(new BigDecimal(4));
             BigDecimal status;
+            status = new BigDecimal(2);
             // 非钢材(危化品和焦炭)
-            if (isSteel != null && (isSteel.intValue() == 3 || isSteel.intValue() == 4)) {
-                status = new BigDecimal(2);
-            }
-            // 钢材
-            else {
-                status = new BigDecimal(1);
-            }
+//            if (isSteel != null && (isSteel.intValue() == 3 || isSteel.intValue() == 4 || isSteel.intValue() == 6)) {
+//                status = new BigDecimal(2);
+//            }
+//            // 钢材
+//            else {
+//                status = new BigDecimal(1);
+//            }
             // 订单类型
             omstruckOrder.setOrderType(status);
             // 运输线路id

+ 4 - 0
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -817,6 +817,10 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         for (Map<String,Object> map : mapList) {
             // 得到车牌号
             String capacityNumber = (String) map.get("capacityNumber");
+            Map<String,Object> details = amsSaleOrderMapper.getOrderIdByCapacity(map);
+            if(details!=null && details.get("orderId")!=null){
+                throw new Exception(capacityNumber+"有未完成的运输订单任务,无法派单");
+            }
             // 得到车序号表主键
             BigDecimal saleOrderMaterialId = DataChange.dataToBigDecimal(map.get("saleOrderMaterialId"));
             // 得到承运商

+ 3 - 0
src/main/resources/com/steerinfo/dil/mapper/AmsContaactPriceMaterialMapper.xml

@@ -199,4 +199,7 @@
     PRICE_ID = #{priceId}
     AND ACPR.DELETED = 0
   </select>
+  <update id="deletePriceByPriceId" parameterType="string">
+    update AMS_CONTAACT_PRICE_MATERIAL set deleted='1' where PRICE_ID=#{priceId}
+  </update>
 </mapper>

+ 18 - 8
src/main/resources/com/steerinfo/dil/mapper/AmsContractTruckPriceMapper.xml

@@ -851,13 +851,27 @@
   </select>
 
   <select id="getAddressDeliveryAddress" resultType="java.util.LinkedHashMap">
-    SELECT * FROM
-    (SELECT RRA.ADDRESS_ID "addressId",
-    CONCAT(CONCAT(CONCAT(RRA.ADDRESS_PROVINCE, RRA.ADDRESS_DISTRICT), RRA.ADDRESS_TOWN), RRA.ADDRESS_DELIVERY_ADDRESS) "address"
-    FROM RMS_RECEIVE_ADDRESS RRA) RRRA
+    SELECT *
+    FROM (SELECT
+    distinct
+    RRA.ADDRESS_ID "addressId",
+    RRA.ADDRESS_PROVINCE "province",
+    RRA.ADDRESS_DISTRICT "district",
+    RRA.ADDRESS_TOWN "town",
+    RRP.ADDRESS_DELIVERY_ADDRESS "address1",
+    RRA.ADDRESS_PROVINCE ||RRA.ADDRESS_DISTRICT|| RRA.ADDRESS_TOWN||RRP.ADDRESS_DELIVERY_ADDRESS "address",
+    ACTP.PRICE_VALUE "pricevalue",
+    ACTP.PRICE_ID  "priceid"
+    FROM RMS_RECEIVE_ADDRESS RRA
+    LEFT JOIN RMS_RECEIVE_PLACE RRP
+    ON RRP.ADDRESS_ID=RRA.ADDRESS_ID
+    LEFT JOIN AMS_CONTRACT_TRANSPORT_PRICE ACTP
+    ON ACTP.PLACE_ID=RRP.PLACE_ID
+    ) RRRA
     <if test="con != null" >
       WHERE RRRA."address" LIKE #{con}
     </if>
+    order by RRRA."pricevalue"  asc nulls last
   </select>
 
   <select id="selectByPriceId" parameterType="java.math.BigDecimal" resultType="java.util.LinkedHashMap">
@@ -1049,8 +1063,4 @@
           </if>
         </where>
     </select>
-
-  <update id="updatePriceByPriceId" parameterType="java.util.Map">
-    update AMS_CONTRACT_TRANSPORT_PRICE set PRICE_VALUE=#{priceValue} where PRICE_ID=#{priceId}
-  </update>
 </mapper>

+ 15 - 0
src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml

@@ -3377,6 +3377,8 @@
                      ON ASOM.SALE_SHIPPING_ADDRESS_ID = ACTP.PLACE_ID
     WHERE ACTP.CARRIER_ID = #{carrierId}
       AND ASOM.SALE_ORDER_MATERIAL_ID = #{saleOrderMaterialId}
+    ORDER BY ACTP.INSERT_TIME DESC
+    FETCH NEXT 1 ROWS ONLY
   </select>
 
   <select id="selectConsigneeName" parameterType="DECIMAL" resultType="java.lang.String" >
@@ -4551,4 +4553,17 @@
     SELECT count(RMCP.CARRIER_PLACE_ID) FROM RMS_MORE_CARRIER_PLACE RMCP
     WHERE RMCP.CARRIER_PLACE_VALUE LIKE #{place}
   </select>
+  <select id="getOrderIdByCapacity" resultType="java.util.Map">
+    select OO.order_ID "orderId",
+           RC.CAPACITY_NUMBER "capacityNumber",
+           OO.ORDER_STATUS "orderStatus",
+           OO.ORDER_LINE_SEQUENCE "orderLineSequence"
+    from OMSTRUCK_ORDER OO
+           LEFT JOIN RMS_CAPACITY RC ON OO.CAPACITY_ID =RC.CAPACITY_ID
+           LEFT JOIN RMS_CARRIER RCA ON OO.CARRIER_ID=RCA.CARRIER_ID
+           LEFT JOIN OMSTRAIN_ORDER_MATERIAL OOM ON OOM.ORDER_ID=OO.ORDER_ID
+           LEFT JOIN RMS_MATERIAL RM ON RM.MATERIAL_ID=OOM.MATERIAL_ID
+    where RC.CAPACITY_NUMBER=#{capacityNumber} and OO.order_status=5
+      fetch next 1 rows only
+  </select>
 </mapper>

+ 6 - 0
src/main/resources/com/steerinfo/dil/mapper/AmstruckInwardRequirementMapper.xml

@@ -944,6 +944,12 @@
                     "insertUsername" like '%${item}%'
                 </foreach>
             </if>
+            <if test="capacityTypeName != null">
+                and
+                <foreach collection="capacityTypeName" item="item" open="(" separator="or" close=")">
+                    "capacityTypeName" like '%${item}%'
+                </foreach>
+            </if>
         </where>
         <include refid="orderBy"></include>
     </select>