Browse Source

销售列表完成

wolyshaw 4 năm trước cách đây
mục cha
commit
4b8ed4fe60
2 tập tin đã thay đổi với 87 bổ sung45 xóa
  1. 18 0
      src/api/orderManager.js
  2. 69 45
      src/views/businessManager/orderManager/salesList.vue

+ 18 - 0
src/api/orderManager.js

@@ -167,3 +167,21 @@ export function getOperatingReport (data) {
     params: data
   })
 }
+
+// 销售列表
+export function getSellOrder (data) {
+  return request({
+    url: api + '/sellOrder/queryPage',
+    method: 'GET',
+    params: data
+  })
+}
+
+// 销售列表修改成本
+export function updateSellOrder (data) {
+  return request({
+    url: api + '/sellOrder/update',
+    method: 'POST',
+    params: data
+  })
+}

+ 69 - 45
src/views/businessManager/orderManager/salesList.vue

@@ -9,28 +9,28 @@
                class="searchForm"
                v-model.trim="searchForm">
         <el-form-item>
-          <el-input placeholder="请输入流水号、订单号" type="text"></el-input>
+          <el-input v-model.trim="searchForm.search" placeholder="请输入流水号、订单号" type="text"></el-input>
         </el-form-item>
         <el-form-item>
-          <el-select v-model.trim="searchForm.organId" clearable filterable placeholder="请选择所属分部">
+          <el-select multiple collapse-tags v-model="searchForm.organIdList" clearable filterable placeholder="请选择所属分部">
             <el-option v-for="(item,index) in organList" :key="index" :label="item.name" :value="item.id"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-select clearable filterable placeholder="请选择所属学校" v-model="searchForm.schoolName">
-            <el-option label="1" value="1"></el-option>
+          <el-select clearable filterable placeholder="请选择所属学校" v-model="searchForm.schoolId">
+            <el-option v-for="(item,index) in cooperations" :key="index" :label="item.name" :value="item.id"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item>
+        <!-- <el-form-item>
           <el-select clearable filterable placeholder="请选择销售类型" v-model="searchForm.saleType">
             <el-option label="1" value="1"></el-option>
           </el-select>
-        </el-form-item>
-        <el-form-item>
+        </el-form-item> -->
+        <!-- <el-form-item>
           <el-select clearable filterable placeholder="请选择交易方式" v-model="searchForm.paymentChannel">
             <el-option v-for="item in paymentChannelStatus" :key="item.value" :label="item.label" :value="item.value"></el-option>
           </el-select>
-        </el-form-item>
+        </el-form-item> -->
         <el-form-item>
           <el-date-picker style="width:410px;"
                           v-model.trim="orderDate"
@@ -52,28 +52,28 @@
       <div class="tableWrap">
         <el-table :data='tableList' style="width: 100%"
                   :header-cell-style="{background:'#EDEEF0',color:'#444'}">
-          <el-table-column align='center' width="150" prop="orderNo" label="交易流水号"></el-table-column>
+          <el-table-column align='center' width="150" prop="transNo" label="交易流水号"></el-table-column>
           <el-table-column align='center' prop="orderNo" label="订单号"></el-table-column>
           <el-table-column align='center' label="销售日期">
             <template slot-scope="scope">
-              {{scope.row.createTime | dateForMinFormat}}
+              {{scope.row.sellTime | dateForMinFormat}}
             </template>
           </el-table-column>
-          <el-table-column align='center' prop="studentPaymentOrder.expectAmount" label="销售类型"></el-table-column>
-          <el-table-column align='center' prop="studentPaymentOrder.expectAmount" label="商品名称"></el-table-column>
-          <el-table-column align='center' prop="studentPaymentOrder.expectAmount" label="数量"></el-table-column>
-          <el-table-column align='center' width="100" prop="studentPaymentOrder.expectAmount" label="应付金额(元)"></el-table-column>
-          <el-table-column align='center' width="100" prop="studentPaymentOrder.actualAmount" label="余额支付(元)"></el-table-column>
-          <el-table-column align='center' width="100" prop="studentPaymentOrder.expectAmount" label="现金支付(元)"></el-table-column>
-          <el-table-column align='center' width="100" prop="studentPaymentOrder.actualAmount" label="销售成本(元)"></el-table-column>
-          <el-table-column align='center' prop="user.username" label="学员姓名"></el-table-column>
+          <el-table-column align='center' prop="type" label="销售类型"></el-table-column>
+          <el-table-column align='center' prop="goodsName" label="商品名称"></el-table-column>
+          <el-table-column align='center' prop="num" label="数量"></el-table-column>
+          <el-table-column align='center' width="100" prop="expectAmount" label="应付金额(元)"></el-table-column>
+          <el-table-column align='center' width="100" prop="balanceAmount" label="余额支付(元)"></el-table-column>
+          <el-table-column align='center' width="100" prop="actualAmount" label="现金支付(元)"></el-table-column>
+          <el-table-column align='center' width="100" prop="sellCost" label="销售成本(元)"></el-table-column>
+          <el-table-column align='center' prop="userName" label="学员姓名"></el-table-column>
           <!-- <el-table-column align='center' prop="remark" label="退费说明"></el-table-column> -->
           <el-table-column align='center' prop="paymentChannel" label="交易方式">
             <template slot-scope="scope">{{ scope.row.paymentChannel | paymentChannelStatus }}</template>
           </el-table-column>
           <el-table-column align='center' prop="merNos" label="收款账户"></el-table-column>
           <el-table-column align='center' prop="organName" label="所属分部"></el-table-column>
-          <el-table-column align='center' prop="actualAmount" label="所属学校"></el-table-column>
+          <el-table-column align='center' prop="schoolName" label="所属学校"></el-table-column>
           <el-table-column align='center' fixed="right" label="操作">
             <template slot-scope="scope">
               <el-button @click="onBackMoney(scope.row)"  v-permission="'vipGroupManage/applyRefundAudit'" type="text">修改成本</el-button>
@@ -89,35 +89,39 @@
       <el-dialog title="修改成本" :visible.sync="backStatus" @close="onFormClose('ruleForm')" width="500px">
         <el-form :model="form" :rules="rules" ref="ruleForm">
           <el-form-item label="交易流水号" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.transNo }}
           </el-form-item>
           <el-form-item label="订单号" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.orderNo }}
           </el-form-item>
           <el-form-item label="销售日期" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.sellTime | dateForMinFormat }}
           </el-form-item>
           <el-form-item label="学员姓名" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.userName }}
           </el-form-item>
-          <el-form-item label="所属乐团" :label-width="formLabelWidth">
-            {{ form.name }}
+          <el-form-item label="所属分部" :label-width="formLabelWidth">
+            {{ detail.organName }}
           </el-form-item>
           <el-form-item label="所属学校" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.schoolName }}
           </el-form-item>
           <el-form-item label="商品名称" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.goodsName }}
           </el-form-item>
-          <el-form-item label="商品型号" :label-width="formLabelWidth">
+          <!-- <el-form-item label="商品型号" :label-width="formLabelWidth">
             {{ form.name }}
-          </el-form-item>
+          </el-form-item> -->
           <el-form-item label="应付金额(元)" :label-width="formLabelWidth">
-            {{ form.name }}
+            {{ detail.expectAmount }}
           </el-form-item>
           <el-form-item label="成本(元)" prop="amount" :label-width="formLabelWidth">
              <!-- <el-input autocomplete="off"></el-input> -->
-             <el-autocomplete v-model="form.amount" class="inline-input" :fetch-suggestions="querySearch" placeholder="请输入成本"
+             <el-autocomplete
+              v-model="form.sellCost"
+              class="inline-input"
+              :fetch-suggestions="querySearch"
+              placeholder="请输入成本"
             ></el-autocomplete>
           </el-form-item>
         </el-form>
@@ -132,8 +136,8 @@
 </template>
 <script>
 import pagination from '@/components/Pagination/index'
-import { studentRefundsQueryPage, applyRefundAudit } from '@/api/orderManager'
-import { getEmployeeOrgan } from '@/api/buildTeam'
+import { getSellOrder, updateSellOrder } from '@/api/orderManager'
+import { getEmployeeOrgan, getCooperation } from '@/api/buildTeam'
 import { paymentChannelStatus } from '@/utils/searchArray'
 import dayjs from 'dayjs'
 export default {
@@ -143,10 +147,13 @@ export default {
     return {
       paymentChannelStatus: paymentChannelStatus,
       orderDate: null,
+      detail: {},
       searchForm: {
+        search: '',
+        schoolId: '',
         startTime: null,
         endTime: null,
-        organId: null
+        organIdList: []
       },
       tableList: [],
       organList: [],
@@ -161,12 +168,13 @@ export default {
       formLabelWidth: '150px',
       form: {
         id: null,
-        amount: null,
+        sellCost: null,
       },
       rules: {
-        amount: [{ required: true, message: '请输入金额', trigger: 'blur' }],
+        sellCost: [{ required: true, message: '请输入金额', trigger: 'input' }],
       },
-      restaurants: [{ value: '1000' }, { value: '100' }],
+      cooperations: [],
+      restaurants: [],
     }
   },
   mounted () {
@@ -175,6 +183,12 @@ export default {
         this.organList = res.data;
       }
     })
+    getCooperation({ 'rows': 1000, })
+    .then(res => {
+      if (res.code == 200) {
+        this.cooperations = res.data.rows;
+      }
+    })
     this.getList()
     var now = new Date();
     var startDate = dayjs().format('YYYY-MM-DD');
@@ -191,8 +205,7 @@ export default {
     onTeachingSubmit (formName, status) { // 添加数据
       this.$refs[formName].validate((valid) => {
         if (valid) {
-          this.form.status = status
-          applyRefundAudit(this.form).then(res => {
+          updateSellOrder(this.form).then(res => {
             if (res.code == 200) {
               this.$message.success('操作成功')
               this.backStatus = false
@@ -210,7 +223,10 @@ export default {
       let params = this.searchForm
       params.rows = this.pageInfo.limit
       params.page = this.pageInfo.page
-      studentRefundsQueryPage(params).then(res => {
+      getSellOrder({
+        ...params,
+        organIdList: [...this.searchForm.organIdList].join()
+      }).then(res => {
         let result = res.data
         if (res.code == 200) {
           this.tableList = result.rows
@@ -231,14 +247,21 @@ export default {
       this.orderDate = null
       this.searchForm = {
         startTime: null,
-        endTime: null
+        endTime: null,
+        organIdList: [],
+        search: '',
+        schoolId: '',
       }
     },
     querySearch(queryString, cb) {
-      let restaurants = this.restaurants;
+      let restaurants = []
+      try {
+        const json = JSON.parse(this.detail.sellCost2)
+        restaurants = [{value: String(json.sellCost)}, {value: String(json.sellcost2)}].filter(item => !!item)
+      } catch (error) {}
       // this.createFilter(queryString)
       let results = queryString ? restaurants.filter((restaurant) => {
-        return restaurant.value.toString().indexOf(queryString) === 0
+        return restaurant && restaurant.value && String(restaurant.value).indexOf(queryString) === 0
       }) : restaurants;
         // 调用 callback 返回建议列表的数据
       cb(results);
@@ -248,9 +271,10 @@ export default {
     },
     onBackMoney (row) { // 退费
       this.backStatus = true
+      this.detail = row
       this.form = {
         id: row.id,
-        amount: row.expectAmount.toString()
+        sellCost: String(row.sellCost)
       }
       // applyRefundAudit()
     }
@@ -258,4 +282,4 @@ export default {
 }
 </script>
 <style lang="scss">
-</style>
+</style>