From 1c82625a2328ca075ba1334fa306fda014b4461b Mon Sep 17 00:00:00 2001
From: mrzcc <121184950@qq.com>
Date: 星期四, 05 三月 2020 17:05:53 +0800
Subject: [PATCH] 优化采购申请

---
 java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml |  443 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 255 insertions(+), 188 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
index 71ab07a..314b7b2 100644
--- a/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
@@ -5,213 +5,280 @@
 <mapper namespace="purchaseApplyServiceDaoImpl">
 
     <!-- 淇濆瓨閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
-       <insert id="saveBusinessPurchaseApplyInfo" parameterType="Map">
-           insert into business_purchase_apply(
-operate,apply_detail_id,res_order_type,description,apply_order_id,state,store_id,entry_person,b_id,user_id
-) values (
-#{operate},#{applyDetailId},#{resOrderType},#{description},#{applyOrderId},#{state},#{storeId},#{entryPerson},#{bId},#{userId}
-)
-       </insert>
+    <insert id="saveBusinessPurchaseApplyInfo" parameterType="Map">
+           insert into business_purchase_apply
+                (operate,res_order_type,description,apply_order_id,state,store_id,entry_person,b_id)
+           values
+                (#{operate},'20000',#{description},#{applyOrderId},#{state},#{storeId},#{userId},#{bId})
+    </insert>
+
+    <!-- 淇濆瓨閲囪喘鏄庣粏琛ㄥ浠借〃 -->
+    <insert id="saveBusinessPurchaseApplyDetailInfo" parameterType="List">
+        insert into business_purchase_apply_detail (apply_order_id,res_id,quantity,remark,b_id,operate)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+        (
+            #{item.applyOrderId},
+            #{item.resId},
+            #{item.quantity},
+            #{item.remark},
+            #{item.bId},
+            #{item.operate}
+        )
+        </foreach>
+    </insert>
 
 
-       <!-- 鏌ヨ閲囪喘鐢宠淇℃伅锛圔usiness锛� add by wuxw 2018-07-03 -->
-       <select id="getBusinessPurchaseApplyInfo" parameterType="Map" resultType="Map">
-           select  t.operate,t.apply_detail_id,t.apply_detail_id applyDetailId,t.res_order_type,t.res_order_type resOrderType,t.description,t.apply_order_id,t.apply_order_id applyOrderId,t.state,t.store_id,t.store_id storeId,t.entry_person,t.entry_person entryPerson,t.b_id,t.b_id bId,t.user_id,t.user_id userId 
-from business_purchase_apply t 
-where 1 =1 
-<if test="operate !=null and operate != ''">
-   and t.operate= #{operate}
-</if> 
-<if test="applyDetailId !=null and applyDetailId != ''">
-   and t.apply_detail_id= #{applyDetailId}
-</if> 
-<if test="resOrderType !=null and resOrderType != ''">
-   and t.res_order_type= #{resOrderType}
-</if> 
-<if test="description !=null and description != ''">
-   and t.description= #{description}
-</if> 
-<if test="applyOrderId !=null and applyOrderId != ''">
-   and t.apply_order_id= #{applyOrderId}
-</if> 
-<if test="state !=null and state != ''">
-   and t.state= #{state}
-</if> 
-<if test="storeId !=null and storeId != ''">
-   and t.store_id= #{storeId}
-</if> 
-<if test="entryPerson !=null and entryPerson != ''">
-   and t.entry_person= #{entryPerson}
-</if> 
-<if test="bId !=null and bId != ''">
-   and t.b_id= #{bId}
-</if> 
-<if test="userId !=null and userId != ''">
-   and t.user_id= #{userId}
-</if> 
-
-       </select>
-
-
-
-
-
-    <!-- 淇濆瓨閲囪喘鐢宠淇℃伅鑷� instance琛ㄤ腑 add by wuxw 2018-07-03 -->
-    <insert id="savePurchaseApplyInfoInstance" parameterType="Map">
-        insert into purchase_apply(
-apply_detail_id,res_order_type,description,apply_order_id,status_cd,state,store_id,entry_person,b_id,user_id
-) select t.apply_detail_id,t.res_order_type,t.description,t.apply_order_id,'0',t.state,t.store_id,t.entry_person,t.b_id,t.user_id from business_purchase_apply t where 1=1
-   and t.operate= 'ADD'
-<if test="applyDetailId !=null and applyDetailId != ''">
-   and t.apply_detail_id= #{applyDetailId}
-</if> 
-<if test="resOrderType !=null and resOrderType != ''">
-   and t.res_order_type= #{resOrderType}
-</if> 
-<if test="description !=null and description != ''">
-   and t.description= #{description}
-</if> 
-<if test="applyOrderId !=null and applyOrderId != ''">
-   and t.apply_order_id= #{applyOrderId}
-</if> 
-<if test="state !=null and state != ''">
-   and t.state= #{state}
-</if> 
-<if test="storeId !=null and storeId != ''">
-   and t.store_id= #{storeId}
-</if> 
-<if test="entryPerson !=null and entryPerson != ''">
-   and t.entry_person= #{entryPerson}
-</if> 
-<if test="bId !=null and bId != ''">
-   and t.b_id= #{bId}
-</if> 
-<if test="userId !=null and userId != ''">
-   and t.user_id= #{userId}
-</if> 
-
+    <!-- 淇濆瓨閲囪喘鏄庣粏琛�-->
+    <insert id="savePurchaseApplyDetailInfo" parameterType="List">
+        insert into purchase_apply_detail (apply_order_id,res_id,quantity,remark,b_id,operate)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+            (
+            #{item.applyOrderId},
+            #{item.resId},
+            #{item.quantity},
+            #{item.remark},
+            #{item.bId},
+            #{item.operate}
+            )
+        </foreach>
     </insert>
 
 
 
-    <!-- 鏌ヨ閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
-    <select id="getPurchaseApplyInfo" parameterType="Map" resultType="Map">
-        select  t.apply_detail_id,t.apply_detail_id applyDetailId,t.res_order_type,t.res_order_type resOrderType,t.description,t.apply_order_id,t.apply_order_id applyOrderId,t.status_cd,t.status_cd statusCd,t.state,t.store_id,t.store_id storeId,t.entry_person,t.entry_person entryPerson,t.b_id,t.b_id bId,t.user_id,t.user_id userId 
-from purchase_apply t 
-where 1 =1 
-<if test="applyDetailId !=null and applyDetailId != ''">
-   and t.apply_detail_id= #{applyDetailId}
-</if> 
-<if test="resOrderType !=null and resOrderType != ''">
-   and t.res_order_type= #{resOrderType}
-</if> 
-<if test="description !=null and description != ''">
-   and t.description= #{description}
-</if> 
-<if test="applyOrderId !=null and applyOrderId != ''">
-   and t.apply_order_id= #{applyOrderId}
-</if> 
-<if test="statusCd !=null and statusCd != ''">
-   and t.status_cd= #{statusCd}
-</if> 
-<if test="state !=null and state != ''">
-   and t.state= #{state}
-</if> 
-<if test="storeId !=null and storeId != ''">
-   and t.store_id= #{storeId}
-</if> 
-<if test="entryPerson !=null and entryPerson != ''">
-   and t.entry_person= #{entryPerson}
-</if> 
-<if test="bId !=null and bId != ''">
-   and t.b_id= #{bId}
-</if> 
-<if test="userId !=null and userId != ''">
-   and t.user_id= #{userId}
-</if> 
-order by t.create_time desc
-<if test="page != -1 and page != null ">
-   limit #{page}, #{row}
-</if> 
+    <!-- 鏌ヨ閲囪喘鐢宠淇℃伅锛圔usiness锛� add by wuxw 2018-07-03 -->
+    <select id="getBusinessPurchaseApplyInfo" parameterType="Map" resultType="Map">
+        select
+            t.operate,t.res_order_type resOrderType,
+            t.description,
+            t.apply_order_id applyOrderId,t.state,
+            t.store_id storeId,
+            t.entry_person entryPerson,t.b_id bId,t.user_id userId
+        from business_purchase_apply t
+        where 1 =1
+        <if test="operate !=null and operate != ''">
+            and t.operate= #{operate}
+        </if>
+        <if test="resOrderType !=null and resOrderType != ''">
+            and t.res_order_type= #{resOrderType}
+        </if>
+        <if test="description !=null and description != ''">
+            and t.description= #{description}
+        </if>
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="state !=null and state != ''">
+            and t.state= #{state}
+        </if>
+        <if test="storeId !=null and storeId != ''">
+            and t.store_id= #{storeId}
+        </if>
+        <if test="entryPerson !=null and entryPerson != ''">
+            and t.entry_person= #{entryPerson}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+        <if test="userId !=null and userId != ''">
+            and t.user_id= #{userId}
+        </if>
 
     </select>
 
+    <select id="getBusinessPurchaseApplyDetailInfo" parameterType="Map" resultType="Map">
+        select
+        t.apply_order_id applyOrderId,t.b_id bId,t.res_id resId,t.quantity,t.remark,t.operate
+        from business_purchase_apply_detail t
+        where 1 =1
+        <if test="operate !=null and operate != ''">
+            and t.operate= #{operate}
+        </if>
 
+        <if test="description !=null and description != ''">
+            and t.description= #{description}
+        </if>
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+    </select>
+
+
+    <!-- 淇濆瓨閲囪喘鐢宠淇℃伅鑷� instance琛ㄤ腑 add by wuxw 2018-07-03 -->
+    <insert id="savePurchaseApplyInfoInstance" parameterType="Map">
+        insert into purchase_apply
+        (res_order_type,description,apply_order_id,status_cd,state,store_id,entry_person,b_id,user_id)
+        select
+        t.res_order_type,t.description,t.apply_order_id,'0',t.state,t.store_id,t.entry_person,t.b_id,t.user_id
+        from business_purchase_apply t where 1=1
+        and t.operate= 'ADD'
+        <if test="resOrderType !=null and resOrderType != ''">
+            and t.res_order_type= #{resOrderType}
+        </if>
+        <if test="description !=null and description != ''">
+            and t.description= #{description}
+        </if>
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="state !=null and state != ''">
+            and t.state= #{state}
+        </if>
+        <if test="storeId !=null and storeId != ''">
+            and t.store_id= #{storeId}
+        </if>
+        <if test="entryPerson !=null and entryPerson != ''">
+            and t.entry_person= #{entryPerson}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+        <if test="userId !=null and userId != ''">
+            and t.user_id= #{userId}
+        </if>
+
+    </insert>
+
+
+    <!-- 鏌ヨ閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
+    <select id="getPurchaseApplyInfo" parameterType="Map" resultType="Map">
+        select
+            t.res_order_type resOrderType,t.description,
+            t.apply_order_id applyOrderId,t.status_cd statusCd,t.state,
+            t.store_id storeId,t.entry_person entryPerson,
+            t.b_id bId,t.user_id userId,t.create_time createTime
+        from purchase_apply t
+        where 1 =1
+        <if test="resOrderType !=null and resOrderType != ''">
+            and t.res_order_type= #{resOrderType}
+        </if>
+        <if test="description !=null and description != ''">
+            and t.description= #{description}
+        </if>
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd= #{statusCd}
+        </if>
+        <if test="state !=null and state != ''">
+            and t.state= #{state}
+        </if>
+        <if test="storeId !=null and storeId != ''">
+            and t.store_id= #{storeId}
+        </if>
+        <if test="entryPerson !=null and entryPerson != ''">
+            and t.entry_person= #{entryPerson}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
+
+        order by t.create_time desc
+        <if test="page != -1 and page != null ">
+            limit #{page}, #{row}
+        </if>
+
+    </select>
+
+    <!-- 鏌ヨ閲囪喘鏄庣粏 -->
+    <select id="getPurchaseApplyDetailInfo" parameterType="Map" resultType="Map">
+        select
+            p.apply_order_id applyOrderId,
+            p.res_id resId,p.quantity,p.remark,
+            r.res_name resName,r.res_code resCode,
+            r.price,r.stock
+        from
+            purchase_apply_detail p inner join resource_store r on p.res_id = r.res_id
+        where 1=1
+        <if test="applyOrderIds !=null">
+            and p.apply_order_id in
+            <foreach collection="applyOrderIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="bId !=null and bId != ''">
+            and p.b_id= #{bId}
+        </if>
+        <if test="operate !=null and operate != ''">
+            and p.operate= #{operate}
+        </if>
+    </select>
 
 
     <!-- 淇敼閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
     <update id="updatePurchaseApplyInfoInstance" parameterType="Map">
-        update  purchase_apply t set t.status_cd = #{statusCd}
-<if test="newBId != null and newBId != ''">
-,t.b_id = #{newBId}
-</if> 
-<if test="applyDetailId !=null and applyDetailId != ''">
-, t.apply_detail_id= #{applyDetailId}
-</if> 
-<if test="resOrderType !=null and resOrderType != ''">
-, t.res_order_type= #{resOrderType}
-</if> 
-<if test="description !=null and description != ''">
-, t.description= #{description}
-</if> 
-<if test="state !=null and state != ''">
-, t.state= #{state}
-</if> 
-<if test="storeId !=null and storeId != ''">
-, t.store_id= #{storeId}
-</if> 
-<if test="entryPerson !=null and entryPerson != ''">
-, t.entry_person= #{entryPerson}
-</if> 
-<if test="userId !=null and userId != ''">
-, t.user_id= #{userId}
-</if> 
- where 1=1 <if test="applyOrderId !=null and applyOrderId != ''">
-and t.apply_order_id= #{applyOrderId}
-</if> 
-<if test="bId !=null and bId != ''">
-and t.b_id= #{bId}
-</if> 
+        update purchase_apply t set t.status_cd = #{statusCd}
+        <if test="newBId != null and newBId != ''">
+            ,t.b_id = #{newBId}
+        </if>
+        <if test="applyDetailId !=null and applyDetailId != ''">
+            , t.apply_detail_id= #{applyDetailId}
+        </if>
+        <if test="resOrderType !=null and resOrderType != ''">
+            , t.res_order_type= #{resOrderType}
+        </if>
+        <if test="description !=null and description != ''">
+            , t.description= #{description}
+        </if>
+        <if test="state !=null and state != ''">
+            , t.state= #{state}
+        </if>
+        <if test="storeId !=null and storeId != ''">
+            , t.store_id= #{storeId}
+        </if>
+        <if test="entryPerson !=null and entryPerson != ''">
+            , t.entry_person= #{entryPerson}
+        </if>
+        <if test="userId !=null and userId != ''">
+            , t.user_id= #{userId}
+        </if>
+        where 1=1
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
 
     </update>
 
     <!-- 鏌ヨ閲囪喘鐢宠鏁伴噺 add by wuxw 2018-07-03 -->
-     <select id="queryPurchaseApplysCount" parameterType="Map" resultType="Map">
-        select  count(1) count 
-from purchase_apply t 
-where 1 =1 
-<if test="applyDetailId !=null and applyDetailId != ''">
-   and t.apply_detail_id= #{applyDetailId}
-</if> 
-<if test="resOrderType !=null and resOrderType != ''">
-   and t.res_order_type= #{resOrderType}
-</if> 
-<if test="description !=null and description != ''">
-   and t.description= #{description}
-</if> 
-<if test="applyOrderId !=null and applyOrderId != ''">
-   and t.apply_order_id= #{applyOrderId}
-</if> 
-<if test="statusCd !=null and statusCd != ''">
-   and t.status_cd= #{statusCd}
-</if> 
-<if test="state !=null and state != ''">
-   and t.state= #{state}
-</if> 
-<if test="storeId !=null and storeId != ''">
-   and t.store_id= #{storeId}
-</if> 
-<if test="entryPerson !=null and entryPerson != ''">
-   and t.entry_person= #{entryPerson}
-</if> 
-<if test="bId !=null and bId != ''">
-   and t.b_id= #{bId}
-</if> 
-<if test="userId !=null and userId != ''">
-   and t.user_id= #{userId}
-</if> 
+    <select id="queryPurchaseApplysCount" parameterType="Map" resultType="Map">
+        select count(1) count
+        from purchase_apply t
+        where 1 =1
+        <if test="resOrderType !=null and resOrderType != ''">
+            and t.res_order_type= #{resOrderType}
+        </if>
+        <if test="description !=null and description != ''">
+            and t.description= #{description}
+        </if>
+        <if test="applyOrderId !=null and applyOrderId != ''">
+            and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd= #{statusCd}
+        </if>
+        <if test="state !=null and state != ''">
+            and t.state= #{state}
+        </if>
+        <if test="storeId !=null and storeId != ''">
+            and t.store_id= #{storeId}
+        </if>
+        <if test="entryPerson !=null and entryPerson != ''">
+            and t.entry_person= #{entryPerson}
+        </if>
+        <if test="bId !=null and bId != ''">
+            and t.b_id= #{bId}
+        </if>
 
 
-     </select>
+
+    </select>
 
 </mapper>

--
Gitblit v1.8.0