Kaynağa Gözat

供应商修改

zhs 3 yıl önce
ebeveyn
işleme
209977d6f9

+ 35 - 9
src/main/java/com/travel/controller/PrivateOrderController.java

@@ -8,10 +8,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
+import java.util.*;
 
 /**
  * 私人订制
@@ -38,7 +35,8 @@ public class PrivateOrderController {
             //生成uuid
             String id = UUID.randomUUID().toString().replace("-", "");
             privateOrder.setUuid(id);
-            privateOrderService.insertPrivate(privateOrder);
+            privateOrderService.insertPrivate(privateOrder);//新增定制单
+//            privateOrderService.addPrivateType(privateOrder);//新增定制单状态
             map.put("msg", "200");
         }catch (Exception e){
             map.put("msg", "500");
@@ -60,8 +58,22 @@ public class PrivateOrderController {
             //获取token
             Map<String, Object> userMap = ParsingToken.tokenParsing(request);
             privateOrder.setCode((String) userMap.get("code"));
-            //查询
-            List<PrivateOrder> list = privateOrderService.getPrivate(privateOrder);
+            List<PrivateOrder> list = new ArrayList<>();
+            String[] orderTypeString = privateOrder.getOrderTypeString().split(",");
+            for(String orderType : orderTypeString){
+                privateOrder.setOrderType(Integer.parseInt(orderType));
+                if(orderType.equals("0")){
+                    //查询
+                    for(PrivateOrder privateOrder2 : privateOrderService.getPrivateZero(privateOrder)){
+                        list.add(privateOrder2);
+                    }
+                } else {
+                    //查询
+                    for(PrivateOrder privateOrder1 : privateOrderService.getPrivate(privateOrder)){
+                        list.add(privateOrder1);
+                    }
+                }
+            }
             map.put("data", list);
             map.put("msg", "200");
         }catch (Exception e){
@@ -82,8 +94,22 @@ public class PrivateOrderController {
     public Map<String, Object> getPrivateAll(PrivateOrder privateOrder, HttpServletRequest request){
         Map<String, Object> map = new HashMap<>();
         try{
-            //查询
-            List<PrivateOrder> list = privateOrderService.getPrivateAll(privateOrder);
+            List<PrivateOrder> list = new ArrayList<>();
+            String[] orderTypeString = {"0","1","2","3","4","5","6","9"};
+            for(String orderType : orderTypeString){
+                privateOrder.setOrderType(Integer.parseInt(orderType));
+                if(orderType.equals("0")){
+                    //查询
+                    for(PrivateOrder privateOrder2 : privateOrderService.getPrivateZero(privateOrder)){
+                        list.add(privateOrder2);
+                    }
+                } else {
+                    //查询
+                    for(PrivateOrder privateOrder1 : privateOrderService.getPrivateAll(privateOrder)){
+                        list.add(privateOrder1);
+                    }
+                }
+            }
             map.put("data", list);
             map.put("msg", "200");
         }catch (Exception e){

+ 4 - 0
src/main/java/com/travel/mapper/PrivateOrderMapper.java

@@ -17,4 +17,8 @@ public interface PrivateOrderMapper {
     List<PrivateOrder> getPrivateAll(PrivateOrder privateOrder);
 
     void addCollection(OrderingConllection orderingConllection);
+
+    void addPrivateType(PrivateOrder privateOrder);
+
+    List<PrivateOrder> getPrivateZero(PrivateOrder privateOrder);
 }

+ 8 - 4
src/main/java/com/travel/model/PrivateOrder.java

@@ -107,10 +107,6 @@ public class PrivateOrder implements Serializable {
      * 总条数
      */
     private String count;
-    /**
-     * 订单状态
-     */
-    private String orderType;
     /**
      * 金额
      */
@@ -127,4 +123,12 @@ public class PrivateOrder implements Serializable {
      * 其他
      */
     private String other;
+    /**
+     * 状态
+     */
+    private int orderType;
+    /**
+     * 前段传参状态
+     */
+    private String orderTypeString;
 }

+ 4 - 0
src/main/java/com/travel/service/PrivateOrderService.java

@@ -15,4 +15,8 @@ public interface PrivateOrderService {
     List<PrivateOrder> getPrivateAll(PrivateOrder privateOrder);
 
     void addCollection(OrderingConllection orderingConllection);
+
+    void addPrivateType(PrivateOrder privateOrder);
+
+    List<PrivateOrder> getPrivateZero(PrivateOrder privateOrder);
 }

+ 11 - 0
src/main/java/com/travel/service/impl/PrivateOrderServiceImpl.java

@@ -43,4 +43,15 @@ public class PrivateOrderServiceImpl implements PrivateOrderService {
     public void addCollection(OrderingConllection orderingConllection) {
         privateOrderMapper.addCollection(orderingConllection);
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void addPrivateType(PrivateOrder privateOrder) {
+        privateOrderMapper.addPrivateType(privateOrder);
+    }
+
+    @Override
+    public List<PrivateOrder> getPrivateZero(PrivateOrder privateOrder) {
+        return privateOrderMapper.getPrivateZero(privateOrder);
+    }
 }

+ 25 - 3
src/main/resources/config/mapping/PrivateOrderMapper.xml

@@ -5,9 +5,9 @@
     <!-- 新增私人订制 -->
     <insert id="insertPrivate" parameterType="PrivateOrder">
         insert into
-            bus_private_ordering(code,origin,destination,start_time,end_time,people_num,jdrq,people_all,budget_min,budget_max,language,nature_type,name,email,rhythm,hotel_scale,resources_needed,flight,remarks,uuid,order_type)
+            bus_private_ordering(code,origin,destination,start_time,end_time,people_num,jdrq,people_all,budget_min,budget_max,language,nature_type,name,email,rhythm,hotel_scale,resources_needed,flight,remarks,uuid)
         values
-            (#{code},#{origin},#{destination},#{startTime},#{endTime},#{peopleNum},format(SYSDATETIME(),'yyyy-MM-dd hh:mm:ss'),#{peopleAll},#{budgetMin},#{budgetMax},#{language},#{natureType},#{name},#{email},#{rhythm},#{hotelScale},#{resourcesNeeded},#{flight},#{remarks},#{uuid},0)
+            (#{code},#{origin},#{destination},#{startTime},#{endTime},#{peopleNum},format(SYSDATETIME(),'yyyy-MM-dd hh:mm:ss'),#{peopleAll},#{budgetMin},#{budgetMax},#{language},#{natureType},#{name},#{email},#{rhythm},#{hotelScale},#{resourcesNeeded},#{flight},#{remarks},#{uuid})
     </insert>
     <!-- 查询私人订制 -->
     <select id="getPrivate" resultType="PrivateOrder">
@@ -16,6 +16,7 @@
         FROM
             ( SELECT *, ROW_NUMBER ( ) OVER ( ORDER BY ID ) AS RowId FROM bus_private_ordering ) AS b
             LEFT JOIN bus_supplier_release c ON b.uuid = c.demand_uuid
+            RIGHT JOIN bus_private_ordering_type a on order_type = #{orderType} and b.uuid = a.demand_uuid and c.code = a.code
         WHERE
             RowId BETWEEN #{page} AND #{limit}
             <if test="uuid != null and uuid != ''">
@@ -24,7 +25,6 @@
             <if test="code != null and code != ''">
                 and b.code = #{code}
             </if>
-            AND b.order_type = #{orderType}
     </select>
     <!-- 查询私人订制 -->
     <select id="getPrivateAll" resultType="PrivateOrder">
@@ -33,6 +33,7 @@
         FROM
             ( SELECT *, ROW_NUMBER ( ) OVER ( ORDER BY ID ) AS RowId FROM bus_private_ordering ) AS b
             LEFT JOIN bus_supplier_release c ON b.uuid = c.demand_uuid
+            RIGHT JOIN bus_private_ordering_type a on order_type = #{orderType} and b.uuid = a.demand_uuid and c.code = a.code
         WHERE
             RowId BETWEEN #{page} AND #{limit}
             <if test="uuid != null and uuid != ''">
@@ -47,4 +48,25 @@
     <insert id="addCollection" parameterType="OrderingConllection">
         insert into bus_collection(uuid,code,jdrq,ordering_uuid) values(#{uuid},#{code},format(SYSDATETIME(),'yyyy-MM-dd hh:mm:ss'),#{orderingUuid})
     </insert>
+    <!-- 新增定制单状态 -->
+    <insert id="addPrivateType" parameterType="PrivateOrder">
+        insert into bus_private_ordering_type(code,demand_uuid,order_type) values(null, #{uuid}, 0)
+    </insert>
+    <!-- 查询私人订制零 -->
+    <select id="getPrivateZero" resultType="PrivateOrder">
+        SELECT
+            *,0 as orderType
+        FROM
+        ( SELECT *, ROW_NUMBER ( ) OVER ( ORDER BY ID ) AS RowId FROM bus_private_ordering ) AS b
+        LEFT JOIN bus_supplier_release c ON b.uuid = c.demand_uuid
+        WHERE
+        RowId BETWEEN #{page} AND #{limit}
+        and b.uuid NOT IN ( SELECT demand_uuid FROM bus_private_ordering_type where order_type = 0)
+        <if test="uuid != null and uuid != ''">
+            and b.uuid = #{uuid}
+        </if>
+        <if test="code != null and code != ''">
+            and b.code = #{code}
+        </if>
+    </select>
 </mapper>