zhoux 1 год назад
Родитель
Сommit
ad408fe02b

+ 58 - 36
src/main/java/com/dk/mdm/mapper/report/ReportMapper.xml

@@ -327,6 +327,12 @@
             <if test="staffIdList != null and staffIdList.size() > 0">
                 AND t.staff_id =any(#{staffIdList, typeHandler=uuidListTypeHandler})
             </if>
+            <if test="staffName != null and staffName != ''">
+                AND tms.staff_name LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+            </if>
+            <if test="orgName != null and orgName != ''">
+                AND tmo.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+            </if>
             <if test="outStatusList != null and outStatusList.size() > 0">
                 AND t.out_status =any(#{outStatusList, typeHandler=StringListTypeHandler})
             </if>
@@ -643,6 +649,12 @@
             <if test="staffIdList != null and staffIdList.size() > 0">
                 AND t.staff_id =any(#{staffIdList, typeHandler=uuidListTypeHandler})
             </if>
+            <if test="staffName != null and staffName != ''">
+                AND tms.staff_name LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+            </if>
+            <if test="orgName != null and orgName != ''">
+                AND tmo.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+            </if>
             <if test="accDateStart != null and accDateEnd != null">
                 AND t.acc_date &gt;= #{accDateStart}::timestamp with time zone
                 AND t.acc_date &lt; #{accDateEnd}::timestamp with time zone + interval '1 day'
@@ -651,6 +663,13 @@
                 AND t.make_time &gt;= #{makeTimeStart}::timestamp with time zone
                 AND t.make_time &lt; #{makeTimeEnd}::timestamp with time zone + interval '1 day'
             </if>
+            <if test="searchText !=null and searchText != ''">
+                AND (
+                t.rp_no   LIKE concat('%',my_ex.likequery(#{searchText}),'%')
+                or tmc.cus_phone LIKE concat('%',my_ex.likequery(#{searchText}),'%')
+                or tmc.cus_name LIKE concat('%',my_ex.likequery(#{searchText}),'%')
+                )
+            </if>
         </where>
     </sql>
     <!-- 采购明细报表主表 -->
@@ -1038,13 +1057,13 @@
         ,t.out_date as "outDate"
         ,t.remarks
         ,makestaff.staff_name as "makeStaffName"
-        ,tmgs.sku_name as "skuName"
-        ,tmgs.sku_model as "skuModel"
+        ,tpoi.sku_name as "skuName"
+        ,tpoi.sku_model as "skuModel"
         ,tmgs.sku_spec as "skuSpec"
         ,tpi.non_std_code as "nonStdCode"
         ,tmgb.short_name as "shortName"
         ,tmgb.brand_name as "brandName"
-        ,tmw.wh_name as "whName"
+        ,CASE WHEN tpoi.sku_id IS NULL THEN tmsp.sup_name || '(外协)' ELSE tmw.wh_name end as "whName"
         ,tmgc.cat_name as "catName"
         ,series.series_name as "seriesName"
         ,sys.f_remove_zero(tpoi.outing_qty) as "outingQty"
@@ -1068,6 +1087,7 @@
         left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
         left join sys.t_data_kind tdktype ON tdktype.kind_code = t.out_type
         left join dkic_b.t_psi_outbound_item as tpoi on tpoi.out_id = t.out_id
+        left join dkic_b.t_mst_supplier tmsp on tpoi.sup_id = tmsp.sup_id
         left join dkic_b.t_mst_goods_sku as tmgs on tmgs.sku_id = tpoi.sku_id
         left join dkic_b.t_mst_goods_brand as tmgb on tmgb.brand_id = tmgs.brand_id
         left join dkic_b.t_mst_goods_category as tmgc on tmgc.cat_id = tmgs.category_id
@@ -1154,45 +1174,47 @@
         count(1) from (
             SELECT 1
             FROM dkic_b.t_psi_outbound as t
-            left join dkic_b.t_mst_org tmo on tmo.org_id = t.org_id
-            Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = t.sup_id
-            left join dkic_b.t_mst_staff tms on tms.staff_id = t.staff_id
-            left join dkic_b.t_mst_staff as makestaff on makestaff.staff_id = t.make_staff
-            left join dkic_b.t_mst_customer tmc on tmc.cus_id = t.cus_id
-            left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
-            left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
-            left join sys.t_data_kind tdktype ON tdktype.kind_code = t.out_type
-            left join dkic_b.t_psi_outbound_item as tpoi on tpoi.out_id = t.out_id
-            left join dkic_b.t_mst_goods_sku as tmgs on tmgs.sku_id = tpoi.sku_id
-            left join dkic_b.t_mst_goods_brand as tmgb on tmgb.brand_id = tmgs.brand_id
-            left join dkic_b.t_mst_goods_category as tmgc on tmgc.cat_id = tmgs.category_id
-            left join dkic_b.t_mst_goods_series as series on series.series_id = tmgs.series_id
-            left join dkic_b.t_psi_inventory as tpi on tpi.inv_id = tpoi.inv_id
-            left join dkic_b.t_mst_warehouse as tmw on tmw.wh_id = tpi.wh_id
+        left join dkic_b.t_mst_org tmo on tmo.org_id = t.org_id
+        Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = t.sup_id
+        left join dkic_b.t_mst_staff tms on tms.staff_id = t.staff_id
+        left join dkic_b.t_mst_staff as makestaff on makestaff.staff_id = t.make_staff
+        left join dkic_b.t_mst_customer tmc on tmc.cus_id = t.cus_id
+        left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
+        left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
+        left join sys.t_data_kind tdktype ON tdktype.kind_code = t.out_type
+        left join dkic_b.t_psi_outbound_item as tpoi on tpoi.out_id = t.out_id
+        left join dkic_b.t_mst_goods_sku as tmgs on tmgs.sku_id = tpoi.sku_id
+        left join dkic_b.t_mst_goods_brand as tmgb on tmgb.brand_id = tmgs.brand_id
+        left join dkic_b.t_mst_goods_category as tmgc on tmgc.cat_id = tmgs.category_id
+        left join dkic_b.t_mst_goods_series as series on series.series_id = tmgs.series_id
+        left join dkic_b.t_psi_inventory as tpi on tpi.inv_id = tpoi.inv_id
+        left join dkic_b.t_mst_warehouse as tmw on tmw.wh_id = tpi.wh_id
+        left join dkic_b.t_mst_unit as tmgu on tmgs.unit_id = tmgu.unit_id
+        left join dkic_b.t_mst_unit as tmgus on tmgs.sub_unit_id = tmgus.unit_id
             <include refid="Condition_OutboundDetailReport"/>
             union all
             select
             1
             FROM dkic_b.t_psi_inbound as tpi
-            left join dkic_b.t_mst_org tmo on tmo.org_id = tpi.org_id
-            Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = tpi.sup_id
-            left join dkic_b.t_mst_staff tms on tms.staff_id = tpi.staff_id
-            left join dkic_b.t_mst_staff as makestaff on makestaff.staff_id = tpi.make_staff
-            left join dkic_b.t_mst_customer tmc on tmc.cus_id = tpi.cus_id
-            left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
-            left join sys.t_data_kind as tdk1 on tdk1.kind_code = tpi.into_status
-            left join sys.t_data_kind tdktype ON tdktype.kind_code = tpi.into_type
-            left join dkic_b.t_psi_inbound_item as tpii on tpii.into_id = tpi.into_id
-            left join dkic_b.t_mst_goods_sku as tmgs on tmgs.sku_id = tpii.sku_id
-            left join dkic_b.t_mst_goods_brand as tmgb on tmgb.brand_id = tmgs.brand_id
-            left join dkic_b.t_mst_goods_category as tmgc on tmgc.cat_id = tmgs.category_id
-            left join dkic_b.t_mst_goods_series as series on series.series_id = tmgs.series_id
-            left join dkic_b.t_psi_inventory as tpin on tpin.inv_id = tpii.inv_id
-            left join dkic_b.t_mst_warehouse as tmw on tmw.wh_id = tpi.wh_id
-            left join dkic_b.t_mst_unit as tmgu on tmgs.unit_id = tmgu.unit_id
-            left join dkic_b.t_mst_unit as tmgus on tmgs.sub_unit_id = tmgus.unit_id
+        left join dkic_b.t_mst_org tmo on tmo.org_id = tpi.org_id
+        Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = tpi.sup_id
+        left join dkic_b.t_mst_staff tms on tms.staff_id = tpi.staff_id
+        left join dkic_b.t_mst_staff as makestaff on makestaff.staff_id = tpi.make_staff
+        left join dkic_b.t_mst_customer tmc on tmc.cus_id = tpi.cus_id
+        left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
+        left join sys.t_data_kind as tdk1 on tdk1.kind_code = tpi.into_status
+        left join sys.t_data_kind tdktype ON tdktype.kind_code = tpi.into_type
+        left join dkic_b.t_psi_inbound_item as tpii on tpii.into_id = tpi.into_id
+        left join dkic_b.t_mst_goods_sku as tmgs on tmgs.sku_id = tpii.sku_id
+        left join dkic_b.t_mst_goods_brand as tmgb on tmgb.brand_id = tmgs.brand_id
+        left join dkic_b.t_mst_goods_category as tmgc on tmgc.cat_id = tmgs.category_id
+        left join dkic_b.t_mst_goods_series as series on series.series_id = tmgs.series_id
+        left join dkic_b.t_psi_inventory as tpin on tpin.inv_id = tpii.inv_id
+        left join dkic_b.t_mst_warehouse as tmw on tmw.wh_id = tpi.wh_id
+        left join dkic_b.t_mst_unit as tmgu on tmgs.unit_id = tmgu.unit_id
+        left join dkic_b.t_mst_unit as tmgus on tmgs.sub_unit_id = tmgus.unit_id
             <include refid="Condition_OutInboundDetailReport"/>
-        )
+        ) t
     </select>
     <!-- 入库明细报表主表 -->
     <select id="getInboundlReport" resultType="java.util.Map">

+ 1 - 1
src/main/java/com/dk/mdm/service/report/ReportService.java

@@ -135,7 +135,7 @@ public class ReportService {
             dataList= reportMapper.getOutboundDetailReport(param);
         }
         data.setList(dataList);
-        data.setTotal(reportMapper.getSalesTrackingReportCount(param));
+        data.setTotal(reportMapper.getOutboundDetailReportCount(param));
         data.setPageSize((Integer) param.get("pageSize"));
         data.setCurrentPage((Integer) param.get("currentPage"));
         return ResponseResultUtil.success(data);