Преглед на файлове

谷物订单添加报表信息

wangxy преди 1 седмица
родител
ревизия
cd426c200d

+ 18 - 0
src/api/store/rejectNoReturn.js

@@ -35,3 +35,21 @@ export function exportStoreRejectNoReturn(query) {
     params: query
   })
 }
+
+// 拒收未还货列表(谷币订单)
+export function listGuCoinRejectNoReturn(query) {
+  return request({
+    url: '/store/rejectNoReturn/guCoinList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 拒收未还货导出(谷币订单)
+export function exportGuCoinRejectNoReturn(query) {
+  return request({
+    url: '/store/rejectNoReturn/guCoinExport',
+    method: 'get',
+    params: query
+  })
+}

+ 36 - 0
src/api/store/rejectReport.js

@@ -71,3 +71,39 @@ export function exportStoreRejectProductReport(query) {
     params: query
   })
 }
+
+// 查询拒收明细报表订单维度列表(谷币订单)
+export function listGuCoinRejectOrderReport(query) {
+  return request({
+    url: '/store/rejectReport/guCoinOrderList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 导出拒收明细报表订单维度(谷币订单)
+export function exportGuCoinRejectOrderReport(query) {
+  return request({
+    url: '/store/rejectReport/guCoinOrderExport',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询拒收明细报表产品维度列表(谷币订单)
+export function listGuCoinRejectProductReport(query) {
+  return request({
+    url: '/store/rejectReport/guCoinProductList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 导出拒收明细报表产品维度(谷币订单)
+export function exportGuCoinRejectProductReport(query) {
+  return request({
+    url: '/store/rejectReport/guCoinProductExport',
+    method: 'get',
+    params: query
+  })
+}

+ 18 - 0
src/api/store/signDetailReport.js

@@ -35,3 +35,21 @@ export function exportStoreSignDetailReport(query) {
     params: query
   })
 }
+
+// 签收情况明细列表(谷币订单)
+export function listGuCoinSignDetailReport(query) {
+  return request({
+    url: '/store/signDetailReport/guCoinList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 签收情况明细导出(谷币订单)
+export function exportGuCoinSignDetailReport(query) {
+  return request({
+    url: '/store/signDetailReport/guCoinExport',
+    method: 'get',
+    params: query
+  })
+}

+ 8 - 3
src/views/store/rejectNoReturn/index.vue

@@ -6,6 +6,7 @@
         <el-radio-group v-model="orderType" size="small" @change="handleOrderTypeChange">
           <el-radio-button label="external">外部订单</el-radio-button>
           <el-radio-button label="store">药品订单</el-radio-button>
+          <el-radio-button label="guCoin">谷币积分订单</el-radio-button>
         </el-radio-group>
       </el-form-item>
     </el-form>
@@ -99,7 +100,7 @@
 </template>
 
 <script>
-import { listRejectNoReturn, exportRejectNoReturn, listStoreRejectNoReturn, exportStoreRejectNoReturn } from '@/api/store/rejectNoReturn'
+import { listRejectNoReturn, exportRejectNoReturn, listStoreRejectNoReturn, exportStoreRejectNoReturn, listGuCoinRejectNoReturn, exportGuCoinRejectNoReturn } from '@/api/store/rejectNoReturn'
 
 export default {
   name: 'RejectNoReturn',
@@ -146,7 +147,9 @@ export default {
       this.loading = true
       const params = { ...this.queryParams }
       if (params.totalPrice === 0) params.totalPrice = null
-      const api = this.orderType === 'store' ? listStoreRejectNoReturn : listRejectNoReturn
+      let api = listRejectNoReturn
+      if (this.orderType === 'store') api = listStoreRejectNoReturn
+      else if (this.orderType === 'guCoin') api = listGuCoinRejectNoReturn
       api(params).then(response => {
         this.tableList = response.rows || []
         this.total = response.total || 0
@@ -271,7 +274,9 @@ export default {
         type: 'warning'
       }).then(() => {
         this.exportLoading = true
-        const api = this.orderType === 'store' ? exportStoreRejectNoReturn : exportRejectNoReturn
+        let api = exportRejectNoReturn
+        if (this.orderType === 'store') api = exportStoreRejectNoReturn
+        else if (this.orderType === 'guCoin') api = exportGuCoinRejectNoReturn
         return api(this.queryParams)
       }).then(response => {
         this.download(response.msg)

+ 14 - 5
src/views/store/rejectReport/index.vue

@@ -11,6 +11,7 @@
         <el-radio-group v-model="orderType" size="small" @change="handleOrderTypeChange">
           <el-radio-button label="external">外部订单</el-radio-button>
           <el-radio-button label="store">药品订单</el-radio-button>
+          <el-radio-button label="guCoin">谷币积分订单</el-radio-button>
         </el-radio-group>
       </el-form-item>
     </el-form>
@@ -189,7 +190,7 @@
 </template>
 
 <script>
-import { listRejectOrderReport, exportRejectOrderReport, listRejectProductReport, exportRejectProductReport, listStoreRejectOrderReport, exportStoreRejectOrderReport, listStoreRejectProductReport, exportStoreRejectProductReport } from '@/api/store/rejectReport'
+import { listRejectOrderReport, exportRejectOrderReport, listRejectProductReport, exportRejectProductReport, listStoreRejectOrderReport, exportStoreRejectOrderReport, listStoreRejectProductReport, exportStoreRejectProductReport, listGuCoinRejectOrderReport, exportGuCoinRejectOrderReport, listGuCoinRejectProductReport, exportGuCoinRejectProductReport } from '@/api/store/rejectReport'
 
 export default {
   name: 'RejectReport',
@@ -360,7 +361,9 @@ export default {
       this.orderLoading = true
       const params = { ...this.orderQuery }
       if (params.totalPrice === 0) params.totalPrice = null
-      const api = this.orderType === 'store' ? listStoreRejectOrderReport : listRejectOrderReport
+      let api = listRejectOrderReport
+      if (this.orderType === 'store') api = listStoreRejectOrderReport
+      else if (this.orderType === 'guCoin') api = listGuCoinRejectOrderReport
       api(params).then(response => {
         this.orderList = response.rows || []
         this.orderTotal = response.total || 0
@@ -424,7 +427,9 @@ export default {
         type: 'warning'
       }).then(() => {
         this.orderExportLoading = true
-        const api = this.orderType === 'store' ? exportStoreRejectOrderReport : exportRejectOrderReport
+        let api = exportRejectOrderReport
+        if (this.orderType === 'store') api = exportStoreRejectOrderReport
+        else if (this.orderType === 'guCoin') api = exportGuCoinRejectOrderReport
         return api(this.orderQuery)
       }).then(response => {
         this.download(response.msg)
@@ -440,7 +445,9 @@ export default {
       const params = { ...this.productQuery }
       if (params.totalNum === 0) params.totalNum = null
       if (params.totalPrice === 0) params.totalPrice = null
-      const api = this.orderType === 'store' ? listStoreRejectProductReport : listRejectProductReport
+      let api = listRejectProductReport
+      if (this.orderType === 'store') api = listStoreRejectProductReport
+      else if (this.orderType === 'guCoin') api = listGuCoinRejectProductReport
       api(params).then(response => {
         this.productList = response.rows || []
         this.productTotal = response.total || 0
@@ -467,7 +474,9 @@ export default {
         type: 'warning'
       }).then(() => {
         this.productExportLoading = true
-        const api = this.orderType === 'store' ? exportStoreRejectProductReport : exportRejectProductReport
+        let api = exportRejectProductReport
+        if (this.orderType === 'store') api = exportStoreRejectProductReport
+        else if (this.orderType === 'guCoin') api = exportGuCoinRejectProductReport
         return api(this.productQuery)
       }).then(response => {
         this.download(response.msg)

+ 26 - 10
src/views/store/signDetailReport/index.vue

@@ -1,5 +1,15 @@
 <template>
   <div class="app-container">
+    <!-- 订单类型选择 -->
+    <el-form :inline="true" style="margin-bottom: 10px;">
+      <el-form-item label="订单类型">
+        <el-radio-group v-model="orderType" size="small" @change="handleOrderTypeChange">
+          <el-radio-button label="external">外部订单</el-radio-button>
+          <el-radio-button label="store">药品订单</el-radio-button>
+          <el-radio-button label="guCoin">谷币积分订单</el-radio-button>
+        </el-radio-group>
+      </el-form-item>
+    </el-form>
     <!-- 查询条件 -->
     <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="80px">
       <el-form-item label="公司" prop="companyId">
@@ -7,12 +17,6 @@
           <el-option v-for="item in companyList" :key="item.companyId" :label="item.companyName" :value="item.companyId" />
         </el-select>
       </el-form-item>
-      <el-form-item label="订单类型" prop="orderType">
-        <el-select v-model="queryParams.orderType" placeholder="请选择订单类型" clearable size="small" style="width: 160px">
-          <el-option label="外部订单" :value="1" />
-          <el-option label="套餐包" :value="2" />
-        </el-select>
-      </el-form-item>
       <el-form-item label="部门" prop="deptId">
         <treeselect v-model="queryParams.deptId" :options="deptOptions" :show-count="true" placeholder="请选择部门" clearable style="width: 200px" />
       </el-form-item>
@@ -90,7 +94,7 @@
 </template>
 
 <script>
-import { listSignDetailReport, exportSignDetailReport, listStoreSignDetailReport, exportStoreSignDetailReport } from '@/api/store/signDetailReport'
+import { listSignDetailReport, exportSignDetailReport, listStoreSignDetailReport, exportStoreSignDetailReport, listGuCoinSignDetailReport, exportGuCoinSignDetailReport } from '@/api/store/signDetailReport'
 import { selectDeptTreeByCompanyId } from '@/api/company/companyDept'
 import { getCompanyList } from '@/api/company/company'
 import Treeselect from '@riophae/vue-treeselect'
@@ -101,6 +105,7 @@ export default {
   components: { Treeselect },
   data() {
     return {
+      orderType: 'external',
       loading: false,
       exportLoading: false,
       total: 0,
@@ -145,6 +150,12 @@ export default {
     this.getList()
   },
   methods: {
+    handleOrderTypeChange() {
+      // 切换订单类型时清空内部订单类型筛选,并重置列头筛选
+      this.queryParams.orderType = null
+      this.resetColumnFilters()
+      this.handleQuery()
+    },
     getList() {
       this.loading = true
       const params = { ...this.queryParams }
@@ -152,7 +163,9 @@ export default {
       if (params.deliveryAmount === 0) params.deliveryAmount = null
       if (params.signCount === 0) params.signCount = null
       if (params.signAmount === 0) params.signAmount = null
-      const api = this.queryParams.orderType === 2 ? listStoreSignDetailReport : listSignDetailReport
+      let api = listSignDetailReport
+      if (this.orderType === 'store') api = listStoreSignDetailReport
+      else if (this.orderType === 'guCoin') api = listGuCoinSignDetailReport
       api(params).then(response => {
         this.tableList = response.rows || []
         this.total = response.total || 0
@@ -229,6 +242,7 @@ export default {
       this.queryParams.eTime = null
       this.queryParams.companyId = null
       this.queryParams.deptId = null
+      this.queryParams.orderType = null
       this.deptOptions = []
       this.resetForm('queryForm')
       this.resetColumnFilters()
@@ -241,7 +255,9 @@ export default {
         type: 'warning'
       }).then(() => {
         this.exportLoading = true
-        const api = this.queryParams.orderType === 2 ? exportStoreSignDetailReport : exportSignDetailReport
+        let api = exportSignDetailReport
+        if (this.orderType === 'store') api = exportStoreSignDetailReport
+        else if (this.orderType === 'guCoin') api = exportGuCoinSignDetailReport
         return api(this.queryParams)
       }).then(response => {
         this.download(response.msg)
@@ -251,7 +267,7 @@ export default {
       })
     },
     formatOrderType(type) {
-      const map = { 1: '外部订单', 2: '套餐包'}
+      const map = { 1: '外部订单', 2: '套餐包', 5: '谷币'}
       return map[type] || '-'
     },
     getSummaries(param) {