فهرست منبع

全国各省品类实际销售明细

chenrui 4 سال پیش
والد
کامیت
e63f49b4d9

+ 5 - 5
src/config/router.config.js

@@ -1684,9 +1684,9 @@ export const asyncRouterMap = [
             ]
           },
           {
-            path: '/reportData/countryTypeProvinceSalesDetails',
-            redirect: '/reportData/countryTypeProvinceSalesDetails/list',
-            name: 'countryTypeProvinceSalesDetails',
+            path: '/reportData/provinceTypeSalesDetails',
+            redirect: '/reportData/provinceTypeSalesDetails/list',
+            name: 'provinceTypeSalesDetails',
             component: RouteView,
             meta: {
               title: '全国各省品类实际销售明细',
@@ -1697,8 +1697,8 @@ export const asyncRouterMap = [
             children: [
               {
                 path: 'list',
-                name: 'countryTypeProvinceSalesDetailsList',
-                component: () => import(/* webpackChunkName: "shop" */ '@/views/reportData/countryTypeProvinceSalesDetails/list.vue'),
+                name: 'provinceTypeSalesDetailsList',
+                component: () => import(/* webpackChunkName: "shop" */ '@/views/reportData/provinceTypeSalesDetails/list.vue'),
                 meta: {
                   title: '全国各省品类实际销售明细列表',
                   icon: 'deployment-unit',

+ 12 - 0
src/libs/reportData.js

@@ -0,0 +1,12 @@
+// 报表 数据
+export default {
+  reportDataList: [
+    { id: 'A', area: '西北地区', province: '陕西省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'B', area: '华南地区', province: '云南省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'C', area: '华东地区', province: '山西省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'D', area: '西南地区', province: '湖北省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'E', area: '华东地区', province: '江苏省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'F', area: '华东地区', province: '湖北省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 },
+    { id: 'G', area: '西南地区', province: '陕西省', targetName: 12, dealerLevelDictValue: 22, totalQty: 34, totalCost: 33, totalPrice: 88, auditTime: 133, allocateTypeName: 55, stateDictValue: 5, printStateDictValue: 8, printCount: 3, printCounts: 12, printCsounts: 9, printdCounts: 7, prfintCounts: 3, printCogunts: 32, phrintCounts: 78, printCsountss: 74, prinftCounts: 77, prisntCogunts: 4, prinxtCounts: 23, printCocunts: 15, printCvounts: 18, printCgounts: 16, printCouhnts: 27, printCoujnts: 34, printCournts: 39 }
+  ]
+}

+ 0 - 8
src/views/reportData/countryTypeProvinceSalesDetails/list.vue

@@ -1,8 +0,0 @@
-<template>
-</template>
-
-<script>
-</script>
-
-<style>
-</style>

+ 154 - 0
src/views/reportData/provinceTypeSalesDetails/list.vue

@@ -0,0 +1,154 @@
+<template>
+  <a-card size="small" :bordered="false" class="provinceTypeSalesDetailsList-wrap">
+    <!-- 搜索条件 -->
+    <div class="table-page-search-wrapper">
+      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+        <a-row :gutter="15">
+          <a-col :md="6" :sm="24">
+            <a-form-item label="创建时间">
+              <rangeDate ref="rangeDate" @change="dateChange" />
+            </a-form-item>
+          </a-col>
+          <a-col :md="6" :sm="24">
+            <a-form-item label="区域">
+              <a-select id="provinceTypeSalesDetailsList-allocateTypeSn" v-model="queryParam.allocateTypeSn" placeholder="请选择区域" allowClear >
+                <a-select-option v-for="item in allocateTypeList" :key="item.allocateTypeSn" :value="item.allocateTypeSn">{{ item.name }}</a-select-option>
+              </a-select>
+            </a-form-item>
+          </a-col>
+          <a-col :md="6" :sm="24">
+            <a-form-item label="省份">
+              <a-select id="provinceTypeSalesDetailsList-state" v-model="queryParam.state" placeholder="请选择省份" allowClear >
+                <a-select-option v-for="item in allocateTypeList" :key="item.allocateTypeSn" :value="item.allocateTypeSn">{{ item.name }}</a-select-option>
+              </a-select>
+            </a-form-item>
+          </a-col>
+          <a-col :md="6" :sm="24">
+            <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="provinceTypeSalesDetailsList-refresh">查询</a-button>
+            <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="provinceTypeSalesDetailsList-reset">重置</a-button>
+          </a-col>
+        </a-row>
+      </a-form>
+    </div>
+    <!-- 列表 -->
+    <s-table
+      class="sTable"
+      ref="table"
+      size="defalut"
+      :rowKey="(record) => record.id"
+      :columns="columns"
+      :data="loadData"
+      :scroll="{ x: 3650 }"
+      bordered>
+    </s-table>
+  </a-card>
+</template>
+
+<script>
+import { STable, VSelect } from '@/components'
+import reportData from '@/libs/reportData'
+import rangeDate from '@/views/common/rangeDate.vue'
+// import { allocateBillList, allocateBillDel, allocateBillAudit, allocateBillExport } from '@/api/allocateBill'
+// import { allocateTypeAllList } from '@/api/allocateType'
+export default {
+  components: { STable, VSelect, rangeDate },
+  data () {
+    return {
+      advanced: false, // 高级搜索 展开/关闭
+      tableHeight: 0,
+      queryParam: { //  查询条件
+        beginDate: '',
+        endDate: '',
+        targetName: '', //  调往对象
+        allocateTypeSn: undefined, //  调拨类型
+        state: undefined, //  业务状态
+        allocateNo: '' //  调拨单号
+      },
+      disabled: false, //  查询、重置按钮是否可操作
+      exportLoading: false,
+      reportData: reportData.reportDataList,
+      columns: [
+        { title: '序号', dataIndex: 'no', width: 80, align: 'center', fixed: 'left' },
+        { title: '区域', dataIndex: 'area', width: 200, align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '省份', dataIndex: 'province', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '箭牌滤清器', dataIndex: 'targetName', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '冠牌滤清器', dataIndex: 'dealerLevelDictValue', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '滤清器合计', dataIndex: 'totalQty', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '箭牌雨刮片', dataIndex: 'totalCost', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '冠牌雨刮片', dataIndex: 'totalPrice', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '雨刮片合计', dataIndex: 'auditTime', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '箭牌刹车片', dataIndex: 'allocateTypeName', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '箭牌感应线', dataIndex: 'stateDictValue', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '冠牌刹车片', dataIndex: 'printStateDictValue', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: 'TBU刹车片', dataIndex: 'printCount', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: 'TBU刹车油', dataIndex: 'printCounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: 'TBU感应线', dataIndex: 'printCsounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '刹车片合计', dataIndex: 'printdCounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '德路斯润滑油', dataIndex: 'prfintCounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '德路斯刹车油', dataIndex: 'printCogunts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '德路斯变速箱油', dataIndex: 'phrintCounts', width: 140, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '德路斯合计', dataIndex: 'printCsountss', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '稳升点火线圈', dataIndex: 'prinftCounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '稳升灯泡', dataIndex: 'prisntCogunts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '稳升合计', dataIndex: 'prinxtCounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '汇箭', dataIndex: 'printCocunts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '布瑞斯', dataIndex: 'printCvounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '箭牌喇叭', dataIndex: 'printCgounts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '品牌合计', dataIndex: 'printCouhnts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: 'NGK', dataIndex: 'printCoujnts', width: 120, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
+        { title: '品牌+NGK总合计', dataIndex: 'printCournts', width: 150, align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } }
+      ],
+      // 加载数据方法 必须为 Promise 对象
+      loadData: parameter => {
+        this.disabled = true
+        // return allocateBillList(Object.assign(parameter, this.queryParam)).then(res => {
+        //   const data = res.data
+        //   const no = (data.pageNo - 1) * data.pageSize
+        //   for (var i = 0; i < data.list.length; i++) {
+        //     data.list[i].no = no + i + 1
+        //   }
+        //   this.disabled = false
+        //   return data
+        // })
+        const _this = this
+        return new Promise(function (resolve, reject) {
+          const data = {
+            pageNo: 1,
+            pageSize: 10,
+            list: reportData.reportDataList,
+            count: 10
+          }
+          for (var i = 0; i < data.list.length; i++) {
+            data.list[i].no = i + 1
+          }
+          _this.disabled = false
+          resolve(data)
+        })
+      },
+      allocateTypeList: [], //  调拨类型
+      openModal: false //  新增编辑  弹框
+    }
+  },
+  methods: {
+    //  创建时间  change
+    dateChange (date) {
+      this.queryParam.beginDate = date[0]
+      this.queryParam.endDate = date[1]
+    },
+    //  重置
+    resetSearchForm () {
+      this.$refs.rangeDate.resetDate()
+      this.queryParam.beginDate = ''
+      this.queryParam.endDate = ''
+      this.queryParam.targetName = ''
+      this.queryParam.allocateTypeSn = undefined
+      this.queryParam.state = undefined
+      this.queryParam.allocateNo = ''
+      this.$refs.table.refresh(true)
+    }
+  },
+  beforeRouteEnter (to, from, next) {
+    next(vm => {})
+  }
+}
+</script>