From af1a961e1d714f6f3ab714d7b7a790275cc799e4 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期四, 11 四月 2024 09:25:59 +0800
Subject: [PATCH] 发货修改

---
 north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryReport.vue             |  190 +++++++----------------
 north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java |    7 
 north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue                   |    2 
 north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java   |    7 
 north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue             |    2 
 north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java       |   22 ++
 north-glass-erp/src/main/resources/mapper/sd/DeliveryDetail.xml                     |  200 +++++++++++++++++++++++++
 7 files changed, 294 insertions(+), 136 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
index 68a6330..e2b1b73 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
@@ -22,7 +22,7 @@
       <el-breadcrumb :separator-icon="ArrowRight">
         <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/delivery/selectDelivery' }">{{$t('delivery.shippingHomepage')}}</el-breadcrumb-item>
         <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/delivery/selectOrderList' }">{{$t('delivery.orderShipment')}}</el-breadcrumb-item>
-<!--        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/delivery/deliveryReport' }">{{$t('productStock.reportForms')}}</el-breadcrumb-item>-->
+        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/delivery/deliveryReport' }">{{$t('productStock.reportForms')}}</el-breadcrumb-item>
 
       </el-breadcrumb>
     </div>
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryReport.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryReport.vue
index 7219aea..96bed46 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryReport.vue
@@ -1,149 +1,71 @@
 <script setup>
 
-import {Folder, Search} from "@element-plus/icons-vue";
-import {reactive} from "vue";
+import BasicTable from "@/components/BasicTable.vue"
+import request from "@/utils/request"
+import {onMounted, reactive, ref} from "vue"
+import { useI18n } from 'vue-i18n'
+
+//璇█鑾峰彇
+const { t } = useI18n()
+const selectData = ref(["",""])
+let filterData = ref({})
 
 
 
-const gridOptions = reactive({
-  border:  "full",//琛ㄦ牸鍔犺竟妗�
-  keepSource: true,//淇濇寔婧愭暟鎹�
-  align: 'center',//鏂囧瓧灞呬腑
-  stripe:true,//鏂戦┈绾�
-  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
-  id: 'OrderList',
-  showFooter: true,//鏄剧ず鑴�
-  printConfig: {},
-  importConfig: {},
-  exportConfig: {},
-  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
-  showOverflow:true,
-  columnConfig: {
-    resizable: true,
-    useKey: true
-  },
-  filterConfig: {   //绛涢�夐厤缃」
-    remote: true
-  },
-  customConfig: {
-    storage: true
-  },
-  editConfig: {
-    trigger: 'click',
-    mode: 'row',
-    showStatus: true
-  },//琛ㄥご鍙傛暟
+const childrenData = ref({
   columns:[
-
-    {type:'expand',slots: { content:'content' },width: 50,fixed:"left"},
-    {type: 'seq', title: '鑷簭', width: 80 ,fixed:"left"},
-    {field: '0',width:120,  title: '鍙戣揣鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '1',width:120,  title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '2',width:120,  title: '瀹㈡埛鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '3',width:120,  title: '椤圭洰鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '4',width:120,  title: '瀹㈡埛鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '5',width:120,  title: '涓氬姟鍛�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '6',width:120,  title: '閫佽揣鍦板潃',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '7',width:120,   title: '鍙戣揣鍛�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '8',width:120,  title: '妤煎彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '9',width:120,  title: '浜у搧缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '10',width:120,  title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '11',width:120,  title: '鍙戣揣鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '12',width:120,  title: '鍛ㄩ暱',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '13',width:120,  title: '瀹為檯闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '14',width:120,  title: '鍙戣揣闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '15',width:120,   title: '鍗曚环',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '16',width:120,   title: '鍙戣揣閲戦',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '17',width:120,  title: '瀹�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '18',width:120,  title: '楂�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '19',width:120,  title: '褰㈢姸',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '20',width:120,  title: '纾ㄨ竟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '21',width:120,  title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '22',width:120,  title: '鍔犲伐瑕佹眰',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: '22',width:120,  title: '寤虹珛鏃堕棿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
-
-
-  ],//琛ㄥご鎸夐挳
-  toolbarConfig: {
-    buttons: [
-    ],
-    import: false,
-    export: true,
-    print: true,
-    zoom: true,
-    custom: true
-  },
-  data:  [
-  ],//table body瀹為檯鏁版嵁
-  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
-    return[
-      columns.map((column, columnIndex) => {
-        if (columnIndex === 0) {
-          return '鍚堣:'
-        }
-        // if (props.tableProp.footList.includes(column.field)) {
-        //   return sumNum(data, column.field)
-        // }
-        return ''
-      })
-    ]
-  }
-
+    {type: 'seq', title: t('basicData.Number'), width: 80 },
+    {field: 'deliveryId',width:120,  title: t('delivery.deliveryNoteId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'creator',width:120,  title: t('delivery.shipper'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'deliveryDate',width:120,  title: t('delivery.deliveryDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'customerId',width:120,  title: t('customer.customerNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'customerName',width:120,  title: t('customer.customerName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'project',width:120,  title: t('order.project'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'orderId',width:120,   title: t('order.OrderNum'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'paymentTerms',width:120,  title: t('delivery.paymentTerms'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'payMethod',width:120,  title:t('delivery.paymentMethod'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'quantity',width:120,  title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'area',width:120,  title: t('productStock.totalArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'createTime',width:120,  title: t('productStock.statementDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}
+  ],//琛ㄦ牸琛ㄥご瀛楁
+  data:[],//琛ㄦ牸鏁版嵁
+  pageTotal : 0,//鎬婚〉鏁�
+  dataTotal : 0,//鏁版嵁鎬绘潯鏁�
+  pageSize : 100,//椤甸潰鏄剧ず鏁伴噺
+  pageNum:1,//褰撳墠椤�
+  selectDate:['',''],//鏌ヨ鐨勬棩鏈�
+  footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount']
 })
+//椤甸潰绗竴娆″姞杞�
+onMounted(() => {
+
+  getReportData()
+})
+
+//灏佽鑾峰彇鏁版嵁鏂规硶鏂规硶
+const  getReportData = () => {
+  request.post(`/Delivery/getSelectShippingOrder/${childrenData.value.pageNum}/${childrenData.value.pageSize}/${childrenData.value.selectDate}`,filterData.value).then(res => {
+    if(res.code === '200'){
+      childrenData.value.data = res.data.data
+      childrenData.value.pageTotal = res.data.total.pageTotal
+      childrenData.value.dataTotal = res.data.total.total
+      childrenData.value.selectDate = res.data.selectDate
+    }
+  })
+}
+
+const getData = (filter) => {
+  filterData.value = filter
+  getReportData()
+}
 
 </script>
 
 <template>
-  <div class="main-div">
-    <el-date-picker
-        v-model="value1"
-        type="daterange"
-        start-placeholder="寮�濮嬫椂闂�"
-        end-placeholder="缁撴潫鏃堕棿"
-    />
-    <el-button style="margin-top: -5px"  id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
-    <div class="order-detail">
-      <vxe-grid
-          max-height="97%"
-          class="mytable-scrollbar"
-          ref="xGrid"
-          v-bind="gridOptions"
-
-      >
-        <template #num1_filter="{ column, $panel }">
-          <div>
-            <div v-for="(option, index) in column.filters" :key="index">
-              <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
-            </div>
-          </div>
-        </template>
-        <template #content="{ row}">
-          <ul class="expand-wrapper">
-            <li  v-for="(item,key,index) in row">
-              <span style="font-weight: bold">{{key+':  '}}</span>
-              <span>{{ item }}</span>
-            </li>
-          </ul>
-        </template>
-
-      </vxe-grid>
-    </div>
-  </div>
+  <basic-table
+      @getData="getData"
+      :childrenData="childrenData"/>
 </template>
 
 <style scoped>
-.main-div {
-  width: 100%;
-  height: 100%;
-}
-.el-col{
-  border: #181818 1px solid;
-}
-.order-primary{
-  width: 100%;
-}
-.order-detail{
-  width: 100%;
-  height: 80%;
-}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
index 1bcff93..086149f 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
@@ -198,7 +198,7 @@
     {field: 'deliveryState',title: t('basicData.review'), width: 40, slots: { default: 'state' }},
     {field: 'stockState',title: t('productStock.outbound'), width: 40, slots: { default: 'state' }},
 
-    {field: 'deliveryId',width:120,  title: t('delivery.deliveryNoteNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'deliveryId',width:120,  title: t('delivery.deliveryNoteId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'creator',width:120,  title: t('delivery.shipper'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'deliveryDate',width:120,  title: t('delivery.deliveryDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'customerId',width:120,  title: t('customer.customerNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java b/north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java
index 5812579..4f1645d 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/sd/DeliveryController.java
@@ -33,6 +33,13 @@
         return Result.seccess(deliveryService.getSelectShippingOrder(pageNum,pageSize,selectDate,delivery));
     }
 
+    /*鍙戣揣鎶ヨ〃鏌ヨ*/
+    @ApiOperation("鍙戣揣鎶ヨ〃鏌ヨ鎺ュ彛")
+    @PostMapping("/getSelectDeliveryDetailReport/{pageNum}/{pageSize}/{selectDate}")
+    public Result getSelectDeliveryDetailReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody DeliveryDetail deliveryDetail){
+        return Result.seccess(deliveryService.getSelectDeliveryDetailReport(pageNum,pageSize,selectDate,deliveryDetail));
+    }
+
     /*鍙戣揣璁㈠崟鏄庣粏鏌ヨ*/
     @ApiOperation("鍙戣揣缂栬緫璁㈠崟鏄庣粏鏌ヨ鎺ュ彛")
     @PostMapping("/getSelectShippingOrderDetail/{pageNum}/{pageSize}")
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
index 23d6e09..bae21c0 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
@@ -9,6 +9,7 @@
 import org.springframework.data.repository.CrudRepository;
 
 import java.util.List;
+import java.util.Map;
 
 @Mapper
 public interface DeliveryDetailMapper extends CrudRepository<DeliveryDetail,Long> {
@@ -21,6 +22,12 @@
 
     Integer getSelectShippingOrderDetailPageTotal(Integer offset, Integer pageSize,OrderDetail orderDetail);
 
+    List<DeliveryDetail> getSelectDeliveryDetailReport(@Param("offset") Integer offset,
+                                                      @Param("pageSize") Integer pageSize,String startDate, String endDate,
+                                                      @Param("deliveryDetail") DeliveryDetail deliveryDetail);
+
+    Map<String,Integer> getSelectDeliveryDetailReportPageTotal(Integer offset, Integer pageSize,String startDate, String endDate, DeliveryDetail deliveryDetail);
+
     List<DeliveryDetail> getSelectShippingOrderDetails(@Param("offset") Integer offset,
                                                      @Param("pageSize") Integer pageSize,
                                                      @Param("orderDetail") OrderDetail orderDetail);
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
index 289d005..42b70b4 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -63,6 +63,28 @@
         return map;
     }
 
+    public Map<String, Object> getSelectDeliveryDetailReport(Integer pageNum, Integer pageSize,List<String> selectDate, DeliveryDetail deliveryDetail) {
+        Integer offset = (pageNum - 1) * pageSize;
+        String endDate = LocalDate.now().toString();
+        String startDate = LocalDate.now().minusDays(15).toString();
+        if(selectDate !=null && selectDate.size()==2){
+            if(!selectDate.get(0).isEmpty()){
+                startDate = selectDate.get(0);
+            }
+            if(!selectDate.get(1).isEmpty()){
+                endDate = selectDate.get(1);
+            }
+        }
+        Map<String, Object> map = new HashMap<>();
+        map.put("data", deliveryDetailMapper.getSelectDeliveryDetailReport(offset, pageSize,startDate,endDate, deliveryDetail));
+        map.put("total", deliveryDetailMapper.getSelectDeliveryDetailReportPageTotal(offset, pageSize,startDate,endDate, deliveryDetail));
+        List<String> list = new ArrayList<>();
+        list.add(startDate);
+        list.add(endDate);
+        map.put("selectDate",list);
+        return map;
+    }
+
     public Map<String, Object> getSelectShippingOrderDetail(Integer pageNum, Integer pageSize, OrderDetail orderDetail) {
         Integer offset = (pageNum - 1) * pageSize;
 
diff --git a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetail.xml b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetail.xml
index 9d83e9a..99bea70 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetail.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetail.xml
@@ -56,6 +56,36 @@
 
     </resultMap>
 
+    <resultMap id="selectDeliveryDetail" type="com.example.erp.entity.sd.DeliveryDetail">
+
+        <result column="order_id" property="orderId"/>
+        <result column="order_number" property="orderNumber"/>
+        <result column="o_quantity" property="quantity"/>
+        <result column="delivery_id" property="deliveryId"/>
+        <result column="delivery_number" property="deliveryNumber"/>
+        <result column="area" property="area"/>
+        <result column="money" property="money"/>
+        <result column="delivery_detail_remakes" property="deliveryDetailRemakes"/>
+        <result column="delivery_detail_state" property="deliveryDetailState"/>
+        <result column="create_time" property="createTime"/>
+
+        <result column="customer_id" property="delivery.customerId"/>
+        <result column="customer_name" property="delivery.customerName"/>
+        <result column="project" property="delivery.project"/>
+        <result column="pay_method" property="delivery.payMethod"/>
+        <result column="payment_terms" property="delivery.paymentTerms"/>
+        <result column="pay_date" property="delivery.payDate"/>
+        <result column="contacts" property="delivery.contacts"/>
+        <result column="contact_number" property="delivery.contactNumber"/>
+        <result column="delivery_address" property="delivery.deliveryAddress"/>
+        <result column="delivery_date" property="delivery.deliveryDate"/>
+        <result column="creator" property="delivery.creator"/>
+        <result column="salesman" property="delivery.salesman"/>
+
+
+
+    </resultMap>
+
     <delete id="deleteDeliveryDetail">
         delete from sd.delivery_detail where delivery_id=#{deliveryId}
     </delete>
@@ -443,4 +473,174 @@
         </where>
         limit #{offset},#{pageSize};
     </select>
+
+
+    <select id="getSelectDeliveryDetailReport" resultMap="selectDeliveryDetail">
+        select dd.delivery_id,
+        dd.delivery_number,
+        d.payment_terms,
+        d.project,
+        d.customer_id,
+        d.customer_name,
+        d.delivery_date,
+        d.pay_method,
+        d.pay_date,
+        d.salesman,
+        d.creator,
+        d.contacts,
+        d.contact_number,
+        d.delivery_address,
+        dd.order_id,
+        dd.order_number,
+        dd.area,
+        dd.money,
+        dd.quantity,
+        dd.delivery_detail_remakes,
+        dd.create_time
+        from sd.delivery_detail dd
+        left join sd.delivery d on dd.delivery_id=d.delivery_id
+        <where>
+            <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+                and dd.delivery_id regexp #{deliveryDetail.deliveryId}
+            </if>
+            <if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
+                and dd.delivery_number regexp #{deliveryDetail.deliveryNumber}
+            </if>
+            <if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
+                and dd.order_id regexp #{deliveryDetail.orderId}
+            </if>
+            <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+                and dd.order_number regexp #{deliveryDetail.orderNumber}
+            </if>
+            <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+                and dd.area regexp #{deliveryDetail.area}
+            </if>
+            <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+                and dd.money regexp #{deliveryDetail.money}
+            </if>
+            <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+                and dd.quantity regexp #{deliveryDetail.quantity}
+            </if>
+            <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+                and dd.delivery_detail_remakes regexp #{deliveryDetail.deliveryDetailRemakes}
+            </if>
+            <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+                and dd.create_time regexp #{deliveryDetail.createTime}
+            </if>
+            <if test="deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != ''">
+                and d.payment_terms regexp #{deliveryDetail.delivery.paymentTerms}
+            </if>
+            <if test="deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != ''">
+                and d.project regexp #{deliveryDetail.delivery.project}
+            </if>
+            <if test="deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != ''">
+                and d.customer_id regexp #{deliveryDetail.delivery.customerId}
+            </if>
+            <if test="deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != ''">
+                and d.customer_name regexp #{deliveryDetail.delivery.customerName}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != ''">
+                and d.delivery_date regexp #{deliveryDetail.delivery.deliveryDate}
+            </if>
+            <if test="deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != ''">
+                and d.pay_method regexp #{deliveryDetail.delivery.payMethod}
+            </if>
+            <if test="deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != ''">
+                and d.pay_date regexp #{deliveryDetail.delivery.payDate}
+            </if>
+            <if test="deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != ''">
+                and d.salesman regexp #{deliveryDetail.delivery.salesman}
+            </if>
+            <if test="deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != ''">
+                and d.creator regexp #{deliveryDetail.delivery.creator}
+            </if>
+            <if test="deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != ''">
+                and d.contacts regexp #{deliveryDetail.delivery.contacts}
+            </if>
+            <if test="deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != ''">
+                and d.contact_number regexp #{deliveryDetail.delivery.contactNumber}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != ''">
+                and d.delivery_address regexp #{deliveryDetail.delivery.deliveryAddress}
+            </if>
+
+        </where>
+        order by dd.delivery_id,dd.delivery_number
+        limit #{offset},#{pageSize};
+    </select>
+
+    <select id="getSelectDeliveryDetailReportPageTotal" resultMap="selectDeliveryDetail">
+        select CEILING(count(dd.id)/#{pageSize}) as 'pageTotal',
+        count(dd.id) as 'total'
+        from sd.delivery_detail dd
+        left join sd.delivery d on dd.delivery_id=d.delivery_id
+        <where>
+            <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+                and dd.delivery_id regexp #{deliveryDetail.deliveryId}
+            </if>
+            <if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
+                and dd.delivery_number regexp #{deliveryDetail.deliveryNumber}
+            </if>
+            <if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
+                and dd.order_id regexp #{deliveryDetail.orderId}
+            </if>
+            <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+                and dd.order_number regexp #{deliveryDetail.orderNumber}
+            </if>
+            <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+                and dd.area regexp #{deliveryDetail.area}
+            </if>
+            <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+                and dd.money regexp #{deliveryDetail.money}
+            </if>
+            <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+                and dd.quantity regexp #{deliveryDetail.quantity}
+            </if>
+            <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+                and dd.delivery_detail_remakes regexp #{deliveryDetail.deliveryDetailRemakes}
+            </if>
+            <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+                and dd.create_time regexp #{deliveryDetail.createTime}
+            </if>
+            <if test="deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != ''">
+                and d.payment_terms regexp #{deliveryDetail.delivery.paymentTerms}
+            </if>
+            <if test="deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != ''">
+                and d.project regexp #{deliveryDetail.delivery.project}
+            </if>
+            <if test="deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != ''">
+                and d.customer_id regexp #{deliveryDetail.delivery.customerId}
+            </if>
+            <if test="deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != ''">
+                and d.customer_name regexp #{deliveryDetail.delivery.customerName}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != ''">
+                and d.delivery_date regexp #{deliveryDetail.delivery.deliveryDate}
+            </if>
+            <if test="deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != ''">
+                and d.pay_method regexp #{deliveryDetail.delivery.payMethod}
+            </if>
+            <if test="deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != ''">
+                and d.pay_date regexp #{deliveryDetail.delivery.payDate}
+            </if>
+            <if test="deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != ''">
+                and d.salesman regexp #{deliveryDetail.delivery.salesman}
+            </if>
+            <if test="deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != ''">
+                and d.creator regexp #{deliveryDetail.delivery.creator}
+            </if>
+            <if test="deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != ''">
+                and d.contacts regexp #{deliveryDetail.delivery.contacts}
+            </if>
+            <if test="deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != ''">
+                and d.contact_number regexp #{deliveryDetail.delivery.contactNumber}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != ''">
+                and d.delivery_address regexp #{deliveryDetail.delivery.deliveryAddress}
+            </if>
+
+        </where>
+        order by dd.delivery_id,dd.delivery_number
+        limit #{offset},#{pageSize};
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0