Browse Source

feat:更新发票限制

jinx 3 years ago
parent
commit
e3ed3fe447

+ 179 - 120
src/page/edition/index.vue

@@ -4,42 +4,87 @@
       <div class="order-management-body">
         <div class="order-management-inner">
           <span>时间段:</span>
-          <el-date-picker size="large" v-model="searchDate" type="daterange" unlink-panels range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions2" value-format="yyyy-MM-dd" align="center">
+          <el-date-picker
+            size="large"
+            v-model="searchDate"
+            type="daterange"
+            unlink-panels
+            range-separator="-"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            :picker-options="pickerOptions2"
+            value-format="yyyy-MM-dd"
+            align="center"
+          >
           </el-date-picker>
           <span>关键字:</span>
-          <el-input @keyup.enter.native="_searchOrderData(1)" ref="searchOrderNumber" v-model="searchOrderNumber" value="" placeholder="留言内容、备注"></el-input>
-          <el-button type="primary" @click="_searchOrderData(1)" color='red'>筛选</el-button>
+          <el-input
+            @keyup.enter.native="_searchOrderData(1)"
+            ref="searchOrderNumber"
+            v-model="searchOrderNumber"
+            value=""
+            placeholder="留言内容、备注"
+          ></el-input>
+          <el-button type="primary" @click="_searchOrderData(1)" color="red"
+            >筛选</el-button
+          >
 
-          <el-button type="success" @click="active = {file: ''}" color='red' style="float: right">上传</el-button>
+          <el-button
+            type="success"
+            @click="active = { file: '' }"
+            color="red"
+            style="float: right"
+            >上传</el-button
+          >
         </div>
         <div class="order-check_bottom">
           <div class="order-management-table">
-            <el-table ref="order_table" @expand-change="_getOrderDetail" class='e-table' :data="orders" style="width: 100%">
-              <el-table-column prop="id" label="序号">
-              </el-table-column>
+            <el-table
+              ref="order_table"
+              @expand-change="_getOrderDetail"
+              class="e-table"
+              :data="orders"
+              style="width: 100%"
+            >
+              <el-table-column prop="id" label="序号"> </el-table-column>
               <!-- <el-table-column prop="name" label="名称">
               </el-table-column> -->
-              <el-table-column prop="description" label="描述">
-              </el-table-column>
-              <el-table-column prop="version" label="版本">
-              </el-table-column>
-              <el-table-column prop="fileUrl" label="文件地址">
+              <el-table-column prop="description" label="描述"> </el-table-column>
+              <el-table-column prop="version" label="版本"> </el-table-column>
+              <el-table-column prop="minVersion" label="最低版本号">
+                <template slot-scope="scope">
+                  <span>{{scope.row.minVersion || '-'}}</span>
+                </template>
               </el-table-column>
+              <el-table-column prop="fileUrl" label="文件地址"> </el-table-column>
               <el-table-column prop="state" label="状态">
                 <template slot-scope="scope">
-                  <el-switch @change="updateAduitStatus(scope.row.id,scope.row.status)" :value="scope.row.status === 'A'" active-color="#13ce66" inactive-color="#ff4949">
+                  <el-switch
+                    @change="updateAduitStatus(scope.row.id, scope.row.status)"
+                    :value="scope.row.status === 'A'"
+                    active-color="#13ce66"
+                    inactive-color="#ff4949"
+                  >
                   </el-switch>
                 </template>
               </el-table-column>
               <el-table-column label="发布日期">
                 <template slot-scope="scope">
-                  <div>{{new Date(scope.row.createTime).format('yyyy-MM-dd hh:mm:ss')}}</div>
+                  <div>
+                    {{ new Date(scope.row.createTime).format("yyyy-MM-dd hh:mm:ss") }}
+                  </div>
                 </template>
               </el-table-column>
             </el-table>
           </div>
           <div class="order-management-pagination">
-            <el-pagination  @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="10" layout="total, prev, pager, next, jumper" :total="total">
+            <el-pagination
+              @current-change="handleCurrentChange"
+              :current-page.sync="currentPage"
+              :page-size="10"
+              layout="total, prev, pager, next, jumper"
+              :total="total"
+            >
             </el-pagination>
           </div>
         </div>
@@ -60,8 +105,8 @@
         <el-form-item label="文件" width="100%">
           <div class="upload-file">
             <el-button type="primary">文件上传</el-button>
-            <input type="file" @change="active.file = $event.target.value" ref="file">
-            <p>{{active.file}}</p>
+            <input type="file" @change="active.file = $event.target.value" ref="file" />
+            <p>{{ active.file }}</p>
           </div>
         </el-form-item>
       </el-form>
@@ -70,23 +115,18 @@
         <el-button type="primary" @click="updateMaker">确 定</el-button>
       </div>
     </el-dialog>
-
   </div>
 </template>
 
 <script>
-
 export default {
-
   name: 'order-check',
 
   data () {
     return {
       type: 1, // 1八目,2双目,不传默认八目 3:转台相机 4:激光
       active: null,
-      colors: [
-        '#08e2c0', '#39bafe', '#fce439', '#fda000', '#f96d6c'
-      ],
+      colors: ['#08e2c0', '#39bafe', '#fce439', '#fda000', '#f96d6c'],
       statusMap: {
         unprocessed: '未处理',
         processed: '已确认',
@@ -94,11 +134,11 @@ export default {
         invalid: '已取消'
       },
       payMap: {
-        '0': '微信',
-        '1': '支付宝',
-        '2': 'paypal',
-        '3': '其他',
-        '4': '货到付款'
+        0: '微信',
+        1: '支付宝',
+        2: 'paypal',
+        3: '其他',
+        4: '货到付款'
       },
       paymentStatusMap: {
         unpaid: '未付款',
@@ -108,43 +148,55 @@ export default {
         partRefund: '部分退款',
         refunded: '全额退款'
       },
-      tabs: [{ name: '全部', idx: -1 }, { name: '未支付', idx: 0 }, { name: '待发货', idx: 1 }, { name: '已发货', idx: 2 }, { name: '已完成', idx: 3 }],
+      tabs: [
+        { name: '全部', idx: -1 },
+        { name: '未支付', idx: 0 },
+        { name: '待发货', idx: 1 },
+        { name: '已发货', idx: 2 },
+        { name: '已完成', idx: 3 }
+      ],
       expandedArr: [],
       orders: [],
       currentPage: 1,
       key_input: '',
       fullscreenLoading: false,
       product: {
-        'name': '',
-        'packageName': '',
-        'count': '',
-        'amount': '',
-        'url': ''
+        name: '',
+        packageName: '',
+        count: '',
+        amount: '',
+        url: ''
       },
       receive: {
-        'name': '',
-        'phone': '',
-        'address': '',
-        'invoice': '',
-        'expressNum': ''
+        name: '',
+        phone: '',
+        address: '',
+        invoice: '',
+        expressNum: ''
       },
       total: 0,
-      options: [{
-        value: undefined,
-        label: '全部筛选订单'
-      }, {
-        value: 0,
-        label: '未支付筛选订单'
-      }, {
-        value: 1,
-        label: '待发货筛选订单'
-      }, {
-        value: 2,
-        label: '已发货筛选订单'
-      }, {
-        value: 3,
-        label: '已完成筛选订单'
-      }],
+      options: [
+        {
+          value: undefined,
+          label: '全部筛选订单'
+        },
+        {
+          value: 0,
+          label: '未支付筛选订单'
+        },
+        {
+          value: 1,
+          label: '待发货筛选订单'
+        },
+        {
+          value: 2,
+          label: '已发货筛选订单'
+        },
+        {
+          value: 3,
+          label: '已完成筛选订单'
+        }
+      ],
       selectValue: '',
       // expressNum_input: "",
       searchDate: [],
@@ -154,31 +206,35 @@ export default {
       hasClickSearch: false,
       tabIndex: -1,
       pickerOptions2: {
-        shortcuts: [{
-          text: '最近一周',
-          onClick (picker) {
-            const end = new Date()
-            const start = new Date()
-            start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
-            picker.$emit('pick', [start, end])
-          }
-        }, {
-          text: '最近一个月',
-          onClick (picker) {
-            const end = new Date()
-            const start = new Date()
-            start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
-            picker.$emit('pick', [start, end])
-          }
-        }, {
-          text: '最近三个月',
-          onClick (picker) {
-            const end = new Date()
-            const start = new Date()
-            start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
-            picker.$emit('pick', [start, end])
+        shortcuts: [
+          {
+            text: '最近一周',
+            onClick (picker) {
+              const end = new Date()
+              const start = new Date()
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
+              picker.$emit('pick', [start, end])
+            }
+          },
+          {
+            text: '最近一个月',
+            onClick (picker) {
+              const end = new Date()
+              const start = new Date()
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
+              picker.$emit('pick', [start, end])
+            }
+          },
+          {
+            text: '最近三个月',
+            onClick (picker) {
+              const end = new Date()
+              const start = new Date()
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
+              picker.$emit('pick', [start, end])
+            }
           }
-        }]
+        ]
       }
     }
   },
@@ -188,7 +244,9 @@ export default {
     },
     async updateAduitStatus (id, status) {
       let m = status === 'A' ? 'I' : 'A'
-      let data = (await this.$http.get('/manager/goods/version/update/' + id + '/' + m + '/' + this.type))
+      let data = await this.$http.get(
+        '/manager/goods/version/update/' + id + '/' + m + '/' + this.type
+      )
       this._searchOrderData(this.currentPage)
     },
     async updateMaker () {
@@ -222,9 +280,7 @@ export default {
       if (pattern.test(expressNum)) {
         this.$alert('快递单号不能为中文', '提示', {
           confirmButtonText: '确定',
-          callback: action => {
-
-          }
+          callback: (action) => {}
         })
       }
 
@@ -243,7 +299,7 @@ export default {
       } else {
         this.$alert('保存失败', '提示', {
           confirmButtonText: '确定',
-          callback: action => {}
+          callback: (action) => {}
         })
       }
 
@@ -296,8 +352,8 @@ export default {
       let date1, date2, orderNum
       this.date1 = this.searchDate ? this.searchDate[0] : null
       this.date2 = this.searchDate ? this.searchDate[1] : null
-      date1 = this.date1 ? (this.date1 + ' 00:00:00') : null
-      date2 = this.date2 ? (this.date2 + ' 23:59:59') : null
+      date1 = this.date1 ? this.date1 + ' 00:00:00' : null
+      date2 = this.date2 ? this.date2 + ' 23:59:59' : null
 
       this.userName = this.searchPhone || null
       this.expressNum = this.searchExpressNum || null
@@ -329,7 +385,7 @@ export default {
       console.log(method, para)
       if (method === 'get') {
         let paras = []
-        Object.keys(para).forEach(k => {
+        Object.keys(para).forEach((k) => {
           if (para[k] || typeof para[k] === 'number') {
             paras.push(`${k}=${para[k]}`)
           } else {
@@ -357,20 +413,20 @@ export default {
       let date1, date2, userName, expressNum, orderNum
       this.date1 = this.searchDate ? this.searchDate[0] : null
       this.date2 = this.searchDate ? this.searchDate[1] : null
-      date1 = this.date1 ? (this.date1 + ' 00:00:00') : null
-      date2 = this.date2 ? (this.date2 + ' 23:59:59') : null
+      date1 = this.date1 ? this.date1 + ' 00:00:00' : null
+      date2 = this.date2 ? this.date2 + ' 23:59:59' : null
 
       this.userName = userName = this.searchPhone || null
       this.expressNum = expressNum = this.searchExpressNum || null
       this.orderNum = orderNum = this.searchOrderNumber || null
 
       let data = {
-        'type': this.status,
-        'startDate': date1,
-        'endDate': date2,
-        'orderSn': orderNum,
-        'phoneNum': userName,
-        'expressNum': expressNum
+        type: this.status,
+        startDate: date1,
+        endDate: date2,
+        orderSn: orderNum,
+        phoneNum: userName,
+        expressNum: expressNum
       }
       this.fullscreenLoading = true
 
@@ -379,35 +435,38 @@ export default {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         type: 'warning'
-      }).then(async () => {
-        let exec = await this.$http({
-          methods: 'get',
-          params: data,
-          url: '/manager/order/export',
-          responseType: 'arraybuffer'
+      })
+        .then(async () => {
+          let exec = await this.$http({
+            methods: 'get',
+            params: data,
+            url: '/manager/order/export',
+            responseType: 'arraybuffer'
+          })
+          try {
+            let blob = new Blob([exec], { type: 'application/vnd.ms-excel' })
+            let url = URL.createObjectURL(blob)
+            location.href = url
+          } catch (e) {
+            console.error(e)
+          }
+          this.fullscreenLoading = false
         })
-        try {
-          let blob = new Blob([exec], {type: 'application/vnd.ms-excel'})
-          let url = URL.createObjectURL(blob)
-          location.href = url
-        } catch (e) {
-          console.error(e)
-        }
-        this.fullscreenLoading = false
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消导出'
+        .catch(() => {
+          this.$message({
+            type: 'info',
+            message: '已取消导出'
+          })
+          this.fullscreenLoading = false
         })
-        this.fullscreenLoading = false
-      })
     },
     async _getOrderDetail (row) {
       this.fullscreenLoading = true
-      let data = (await this.$http.post('/manager/order/detail', {orderId: row.id})).data
-      let temp = this.orders.find(item => item.id === row.id)
+      let data = (await this.$http.post('/manager/order/detail', { orderId: row.id }))
+        .data
+      let temp = this.orders.find((item) => item.id === row.id)
 
-      temp.items = data.orderItems.map(item => {
+      temp.items = data.orderItems.map((item) => {
         return {
           ...item,
           product: {
@@ -440,11 +499,11 @@ export default {
 </script>
 
 <style scoped>
-@import url('./style.css');
+@import url("./style.css");
 </style>
 
 <style type="text/css">
-.el-table__expand-icon>i {
+.el-table__expand-icon > i {
   display: none !important;
 }
 </style>

+ 17 - 4
src/page/invoice/index.vue

@@ -71,7 +71,11 @@
                 :label="item.label"
               >
                 <template slot-scope="scope">
-                  <span>{{ scope.row[item.name] || "-" }}</span>
+                  <span v-if="item.name=='orderSn' && scope.row.responseDownloadOrder">{{scope.row.responseDownloadOrder.orderSn || "-"}}</span>
+                  <span v-else-if="item.name=='shipAddress' && scope.row.type==2">{{ "-"}}</span>
+                  <span v-else-if="item.name=='money' && scope.row.consumeType==2">{{scope.row.responseIncrementOrder.amount || "-"}}</span>
+                  <span v-else-if="item.name=='money' && scope.row.consumeType==3">{{scope.row.responseDownloadOrder.amount || "-"}}</span>
+                  <span v-else>{{ scope.row[item.name] || "-" }}</span>
                 </template>
               </el-table-column>
               <el-table-column type="expand" prop="operation" label="操作" width="150">
@@ -104,19 +108,28 @@
                         <div class="order_info_body_info">
                           <div class="order_info_body_info_item">
                             <span class="order_info_body_info_item_title">顾客姓名</span>
-                            <span class="order_info_body_info_item_content">{{
+                            <span v-if="scope.row.type==2" class="order_info_body_info_item_content">{{
+                              "-"
+                            }}</span>
+                            <span v-else class="order_info_body_info_item_content">{{
                               scope.row.shipName || "-"
                             }}</span>
                           </div>
                           <div class="order_info_body_info_item">
                             <span class="order_info_body_info_item_title">电话</span>
-                            <span class="order_info_body_info_item_content">{{
+                            <span v-if="scope.row.type==2" class="order_info_body_info_item_content">{{
+                               "-"
+                            }}</span>
+                            <span v-else class="order_info_body_info_item_content">{{
                               scope.row.shipMobile || "-"
                             }}</span>
                           </div>
                           <div class="order_info_body_info_item">
                             <span class="order_info_body_info_item_title">收货地址</span>
-                            <span class="order_info_body_info_item_content">{{
+                            <span v-if="scope.row.type==2" class="order_info_body_info_item_content">{{
+                               "-"
+                            }}</span>
+                            <span v-else class="order_info_body_info_item_content">{{
                               scope.row.shipAddress || "-"
                             }}</span>
                           </div>

+ 6 - 1
src/page/laserCamera/index.vue

@@ -23,6 +23,11 @@
               </el-table-column>
               <el-table-column prop="version" label="版本">
               </el-table-column>
+              <el-table-column prop="minVersion" label="最低版本号">
+                <template slot-scope="scope">
+                  <span>{{scope.row.minVersion || '-'}}</span>
+                </template>
+              </el-table-column>
               <el-table-column prop="fileUrl" label="文件地址">
               </el-table-column>
               <el-table-column prop="state" label="状态">
@@ -47,7 +52,7 @@
     </div>
 
     <el-dialog width="750px" title="添加版本" :visible.sync="active">
-      <el-form v-if="active" label-width="80px">
+      <el-form v-if="active" label-width="100px">
         <el-form-item label="版本" width="100%">
           <el-input v-model="active.version"></el-input>
         </el-form-item>

+ 6 - 1
src/page/turntableCamera/index.vue

@@ -23,6 +23,11 @@
               </el-table-column>
               <el-table-column prop="version" label="版本">
               </el-table-column>
+              <el-table-column prop="minVersion" label="最低版本号">
+                <template slot-scope="scope">
+                  <span>{{scope.row.minVersion || '-'}}</span>
+                </template>
+              </el-table-column>
               <el-table-column prop="fileUrl" label="文件地址">
               </el-table-column>
               <el-table-column prop="state" label="状态">
@@ -47,7 +52,7 @@
     </div>
 
     <el-dialog width="750px" title="添加版本" :visible.sync="active">
-      <el-form v-if="active" label-width="80px">
+      <el-form v-if="active" label-width="100px">
         <el-form-item label="版本" width="100%">
           <el-input v-model="active.version"></el-input>
         </el-form-item>