From cddcf22a61489ee9c2dfee169d817ccd66f95430 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 03 九月 2021 02:23:43 +0800
Subject: [PATCH] 优化代码

---
 java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml |  271 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 199 insertions(+), 72 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
old mode 100644
new mode 100755
index 06591aa..5d4c0e9
--- a/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/store/PurchaseApplyServiceDaoImplMapper.xml
@@ -3,62 +3,49 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="purchaseApplyServiceDaoImpl">
-
-
     <resultMap type="com.java110.dto.purchaseApply.PurchaseApplyDto" id="applyMap">
-        <id column="applyOrderId"  property="applyOrderId"/>
-        <result column="description"  property="description"/>
-        <result column="resOrderType"  property="resOrderType"/>
-        <result column="statusCd"  property="statusCd"/>
-        <result column="state"  property="state"/>
-        <result column="storeId"  property="storeId"/>
-        <result column="userName"  property="userName"/>
-        <result column="bId"  property="bId"/>
+        <id column="applyOrderId" property="applyOrderId"/>
+        <result column="description" property="description"/>
+        <result column="resOrderType" property="resOrderType"/>
+        <result column="statusCd" property="statusCd"/>
+        <result column="state" property="state"/>
+        <result column="storeId" property="storeId"/>
+        <result column="userName" property="userName"/>
+        <result column="bId" property="bId"/>
         <result column="userId" property="userId"/>
         <result column="createTime" property="createTime"/>
         <result column="stateName" property="stateName"/>
+        <result column="endUserName" property="endUserName"/>
+        <result column="endUserTel" property="endUserTel"/>
+        <result column="communityId" property="communityId"/>
         <!-- 涓�瀵瑰鍏崇郴 -->
-        <collection property="purchaseApplyDetailVo" ofType="com.java110.vo.api.purchaseApply.PurchaseApplyDetailVo"  javaType="java.util.ArrayList">
+        <collection property="purchaseApplyDetailVo" ofType="com.java110.vo.api.purchaseApply.PurchaseApplyDetailVo"
+                    javaType="java.util.ArrayList">
             <id property="id" column="id"/>
             <result property="applyOrderId" column="applyOrderId"/>
             <result property="resId" column="resId"/>
+            <result column="rsId" property="rsId"/>
             <result property="quantity" column="quantity"/>
             <result property="resName" column="resName"/>
             <result property="remark" column="remark"/>
             <result property="resCode" column="resCode"/>
             <result property="price" column="price"/>
             <result property="stock" column="stock"/>
+            <result property="description" column="description"/>
         </collection>
     </resultMap>
 
     <!-- 淇濆瓨閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
     <insert id="saveBusinessPurchaseApplyInfo" parameterType="Map">
-           insert into business_purchase_apply
-                (operate,res_order_type,description,apply_order_id,state,store_id,user_id,user_name,b_id)
-           values
-                (#{operate},#{resOrderType},#{description},#{applyOrderId},#{state},#{storeId},#{userId},#{userName},#{bId})
+        insert into business_purchase_apply
+        (operate,res_order_type,description,apply_order_id,state,store_id,user_id,user_name,b_id,end_user_name,end_user_tel,community_id)
+        values
+        (#{operate},#{resOrderType},#{description},#{applyOrderId},#{state},#{storeId},#{userId},#{userName},#{bId},#{endUserName},#{endUserTel},#{communityId})
     </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>
-
-
-    <!-- 淇濆瓨閲囪喘鏄庣粏琛�-->
-    <insert id="savePurchaseApplyDetailInfo" parameterType="List">
-        insert into purchase_apply_detail (apply_order_id,res_id,quantity,remark,b_id,operate)
+        insert into business_purchase_apply_detail (apply_order_id,res_id,quantity,remark,b_id,operate,status_cd)
         values
         <foreach collection="list" item="item" index="index" separator=",">
             (
@@ -67,21 +54,59 @@
             #{item.quantity},
             #{item.remark},
             #{item.bId},
-            #{item.operate}
+            #{item.operate},
+            #{item.statusCd}
             )
         </foreach>
     </insert>
 
-
+    <!-- 淇濆瓨閲囪喘鏄庣粏琛�-->
+    <insert id="savePurchaseApplyDetailInfo" parameterType="List">
+        insert into purchase_apply_detail
+        (id,rs_id,apply_order_id,res_id,quantity,remark,b_id,operate,status_cd,price,purchase_quantity,purchase_remark,original_stock)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+            (
+            #{item.id},
+            #{item.rsId},
+            #{item.applyOrderId},
+            #{item.resId},
+            #{item.quantity},
+            #{item.remark},
+            '-1',
+            'ADD',
+            '0',
+            #{item.price},
+            #{item.purchaseQuantity},
+            #{item.purchaseRemark},
+            #{item.originalStock}
+            )
+        </foreach>
+    </insert>
 
     <!-- 鏌ヨ閲囪喘鐢宠淇℃伅锛圔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.user_name userName,t.b_id bId,t.user_id userId
+        t.operate,
+        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.user_name userName,
+        t.b_id bId,
+        t.b_id,
+        t.user_id,
+        t.user_id userId,
+        t.status_cd statusCd,
+        t.end_user_name,
+        t.end_user_tel,
+        t.end_user_name endUserName,
+        t.end_user_tel endUserTel,
+        t.community_id communityId
         from business_purchase_apply t
         where 1 =1
         <if test="operate !=null and operate != ''">
@@ -108,12 +133,20 @@
         <if test="userId !=null and userId != ''">
             and t.user_id= #{userId}
         </if>
-
+        <if test="endUserName !=null and endUserName != ''">
+            and t.end_user_name= #{endUserName}
+        </if>
+        <if test="endUserTel !=null and endUserTel != ''">
+            and t.end_user_tel= #{endUserTel}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </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
+        t.apply_order_id applyOrderId,t.b_id bId,t.res_id resId,t.quantity,t.remark,t.operate,t.status_cd statusCd
         from business_purchase_apply_detail t
         where 1 =1
         <if test="operate !=null and operate != ''">
@@ -131,13 +164,13 @@
         </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,user_name,b_id,user_id)
+        (res_order_type,description,apply_order_id,status_cd,state,store_id,user_name,b_id,user_id,end_user_name,end_user_tel,community_id)
         select
-        t.res_order_type,t.description,t.apply_order_id,'0',t.state,t.store_id,t.user_name,t.b_id,t.user_id
+        t.res_order_type,t.description,t.apply_order_id,'0',t.state,t.store_id,t.user_name,t.b_id,t.user_id,t.end_user_name,t.end_user_tel,
+        t.community_id
         from business_purchase_apply t where 1=1
         and t.operate= 'ADD'
         <if test="resOrderType !=null and resOrderType != ''">
@@ -161,20 +194,30 @@
         <if test="userId !=null and userId != ''">
             and t.user_id= #{userId}
         </if>
-
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </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.user_name userName,
-            t.b_id bId,t.user_id userId,t.create_time createTime,d.name stateName
+        t.res_order_type resOrderType,t.description,
+        t.apply_order_id applyOrderId,t.status_cd statusCd,t.state,
+        t.store_id storeId,t.user_name userName,
+        t.b_id bId,t.user_id userId,t.create_time createTime,d.name stateName,
+        t.end_user_name,
+        t.end_user_tel,
+        t.end_user_name endUserName,
+        t.end_user_tel endUserTel,
+        t.description,
+        t.create_user_id createUserId,
+        t.create_user_name createUserName,
+        t.warehousing_way warehousingWay,
+        t.community_id communityId
         from purchase_apply t
         inner join t_dict d on t.state = d.status_cd and d.table_name = 'purchase_apply' and d.table_columns = 'state'
-        where 1 =1
+        where 1 = 1
         <if test="resOrderType !=null and resOrderType != ''">
             and t.res_order_type= #{resOrderType}
         </if>
@@ -183,6 +226,13 @@
         </if>
         <if test="applyOrderId !=null and applyOrderId != ''">
             and t.apply_order_id= #{applyOrderId}
+        </if>
+        <if test="applyOrderIds !=null ">
+            and t.apply_order_id in
+            <foreach open="(" close=")"
+                     separator="," collection="applyOrderIds" item="item">
+                #{item}
+            </foreach>
         </if>
         <if test="userName !=null and userName != ''">
             and t.user_name like concat('%',#{userName},'%')
@@ -199,15 +249,23 @@
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
         </if>
-
+        <if test="endUserName !=null and endUserName != ''">
+            and t.end_user_name= #{endUserName}
+        </if>
+        <if test="endUserTel !=null and endUserTel != ''">
+            and t.end_user_tel= #{endUserTel}
+        </if>
+        <if test="userId !=null and userId != ''">
+            and t.user_id= #{userId}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </if>
         order by t.create_time desc
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}
         </if>
-
     </select>
-
-
 
     <select id="getPurchaseApplyInfo2" parameterType="Map" resultMap="applyMap">
         select
@@ -215,17 +273,21 @@
         t.apply_order_id applyOrderId,t.status_cd statusCd,t.state,
         t.store_id storeId,t.user_name userName,
         t.b_id bId,t.user_id userId,t.create_time createTime,d.name stateName,
-        de.apply_order_id applyOrderId,de.res_id resId,de.quantity,de.remark,rs.res_name resName,rs.price,rs.stock,rs.res_code resCode
+        de.apply_order_id applyOrderId,de.res_id resId,de.quantity,de.remark,rs.res_name
+        resName,rs.price,rs.stock,rs.res_code resCode,rs.description,
+        t.end_user_name,
+        t.end_user_tel,
+        t.end_user_name endUserName,
+        t.end_user_tel endUserTel,
+        t.community_id communityId
         from purchase_apply t
         inner join t_dict d on t.state = d.status_cd and d.table_name = 'purchase_apply' and d.table_columns = 'state'
         inner join purchase_apply_detail de on de.apply_order_id = t.apply_order_id
         inner join resource_store rs on de.res_id = rs.res_id
-
         where 1 =1
         <if test="resOrderType !=null and resOrderType != ''">
             and t.res_order_type= #{resOrderType}
         </if>
-
         <if test="applyOrderId !=null and applyOrderId != ''">
             and t.apply_order_id= #{applyOrderId}
         </if>
@@ -241,28 +303,45 @@
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
         </if>
-
+        <if test="endUserName !=null and endUserName != ''">
+            and t.end_user_name= #{endUserName}
+        </if>
+        <if test="endUserTel !=null and endUserTel != ''">
+            and t.end_user_tel= #{endUserTel}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id= #{communityId}
+        </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
+        p.id,
+        p.apply_order_id applyOrderId,
+        p.res_id resId,p.quantity,p.remark,p.purchase_quantity purchaseQuantity,p.purchase_remark purchaseRemark,p.price
+        purchasePrice,p.original_stock originalStock,
+        r.res_name resName,r.res_code resCode,
+        r.price,r.price standardPrice,r.stock,rst.name rstName,rss.spec_name specName,rs.supplier_name supplierName
         from
-            purchase_apply_detail p inner join resource_store r on p.res_id = r.res_id
+        purchase_apply_detail p inner join resource_store r on p.res_id = r.res_id and r.status_cd = '0'
+        LEFT JOIN resource_supplier rs on p.rs_id=rs.rs_id
+        LEFT JOIN resource_store_type rst on r.rst_id=rst.rst_id
+        LEFT JOIN resource_store_specification rss on r.rss_id=rss.rss_id
         where 1=1
+        and p.status_cd = '0'
         <if test="applyOrderIds !=null">
             and p.apply_order_id in
             <foreach collection="applyOrderIds" item="item" open="(" close=")" separator=",">
                 #{item}
             </foreach>
+        </if>
+        <if test="resOrderType !=null and resOrderType != ''">
+            and t.res_order_type= #{resOrderType}
         </if>
         <if test="bId !=null and bId != ''">
             and p.b_id= #{bId}
@@ -271,7 +350,6 @@
             and p.operate= #{operate}
         </if>
     </select>
-
 
     <!-- 淇敼閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
     <update id="updatePurchaseApplyInfoInstance" parameterType="Map">
@@ -297,6 +375,15 @@
         <if test="userId !=null and userId != ''">
             , t.user_id= #{userId}
         </if>
+        <if test="endUserName !=null and endUserName != ''">
+            , t.end_user_name= #{endUserName}
+        </if>
+        <if test="endUserTel !=null and endUserTel != ''">
+            , t.end_user_tel= #{endUserTel}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            , t.community_id= #{communityId}
+        </if>
         where 1=1
         <if test="applyOrderId !=null and applyOrderId != ''">
             and t.apply_order_id= #{applyOrderId}
@@ -304,14 +391,13 @@
         <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
+        where 1 = 1
         <if test="resOrderType !=null and resOrderType != ''">
             and t.res_order_type= #{resOrderType}
         </if>
@@ -324,6 +410,9 @@
         <if test="statusCd !=null and statusCd != ''">
             and t.status_cd= #{statusCd}
         </if>
+        <if test="warehousingWay !=null and warehousingWay != ''">
+            and t.warehousing_way= #{warehousingWay}
+        </if>
         <if test="state !=null and state != ''">
             and t.state= #{state}
         </if>
@@ -333,9 +422,47 @@
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
         </if>
-
-
-
+        <if test="endUserName !=null and endUserName != ''">
+            and t.end_user_name= #{endUserName}
+        </if>
+        <if test="endUserTel !=null and endUserTel != ''">
+            and t.end_user_tel= #{endUserTel}
+        </if>
+        <if test="userId !=null and userId != ''">
+            and t.user_id= #{userId}
+        </if>
+        <if test="communityId !=null and communityId != ''">
+            and t.community_id = #{communityId}
+        </if>
+        <if test='urgentFlag !=null and urgentFlag == "1"'>
+            and date_format(t.create_time,'%Y-%m') = date_format(now(),'%Y-%m')
+        </if>
     </select>
 
+    <!-- 淇濆瓨閲囪喘鐢宠淇℃伅 add by wuxw 2018-07-03 -->
+    <insert id="savePurchaseApply" parameterType="Map">
+        insert into purchase_apply
+        (status_cd,res_order_type,description,apply_order_id,state,store_id,user_id,user_name,b_id,end_user_name,end_user_tel,
+        create_time,create_user_id,create_user_name,warehousing_way,community_id)
+        values
+        ('0',#{resOrderType},#{description},#{applyOrderId},#{state},#{storeId},#{userId},#{userName},'-1',#{endUserName},#{endUserTel},
+        #{createTime},#{createUserId},#{createUserName},#{warehousingWay},#{communityId})
+    </insert>
+
+    <!--鏌ヨ涓嬬骇鐢ㄦ埛id-->
+    <select id="getActRuTaskUserId" parameterType="Map" resultType="Map">
+        SELECT ASSIGNEE_ taskUserId FROM act_ru_task t
+        LEFT JOIN act_hi_procinst ahp on t.PROC_INST_ID_=ahp.ID_
+        LEFT JOIN act_ru_execution are on t.EXECUTION_ID_=are.ID_
+        where 1 = 1
+        <if test="actRuTaskId !=null and actRuTaskId != ''">
+            and ahp.ID_ = #{actRuTaskId}
+        </if>
+        <if test="procDefId !=null and procDefId != ''">
+            and t.PROC_DEF_ID_ = #{procDefId}
+        </if>
+        <if test="businessKey !=null and businessKey != ''">
+            and ahp.BUSINESS_KEY_ = #{businessKey}
+        </if>
+    </select>
 </mapper>

--
Gitblit v1.8.0