Selaa lähdekoodia

优化接口 联调积分统计 修改约号 eta

Qukatie 10 kuukautta sitten
vanhempi
commit
6eebf73b28

+ 18 - 0
src/api/pointsDetail/index.js

@@ -0,0 +1,18 @@
+import request from '@/router/axios';
+
+// 统计销售明细
+export const pointsDetail = (params) => {
+  return request({
+    url: '/api/blade-sales-part/statistics/pointsDetail',
+    method: 'get',
+    params: params
+  })
+}
+// 统计销售明细合计
+export const pointsDetailSum = (params) => {
+  return request({
+    url: '/api/blade-sales-part/statistics/pointsDetailSum',
+    method: 'get',
+    params: params
+  })
+}

+ 12 - 0
src/components/tradeAgency/fee-oceanFreight.vue

@@ -1188,6 +1188,18 @@ export default {
                     el.exrate = null
                 }
             }
+            if(name=='unitNo'){
+                console.log(row, el,1234566777)
+                if(row.code=='JOB'){
+                    this.$set(el, 'quantity',1)
+                }
+                if(row.code=='KGS'){
+                    this.$set(el, 'quantity',this.form.grossWeight)
+                }
+                if(row.code!='JOB'&&row.code!='KGS'){
+                    this.$set(el, 'quantity',0)
+                }
+            }
         },
         allClick(name, type) {
             if (name == '一键保存') {

+ 6 - 0
src/enums/column-name.js

@@ -1929,6 +1929,12 @@ const columnName = [{
   },{
     code: 428,
     name: '货运代理-基础资料-危险品包装(F)'
+  },{
+    code: 429,
+    name: '轮胎商城-账务管理-统计积分(L)'
+  },{
+    code: 430,
+    name: '轮胎商城-库存管理-库间调拨明细(L)'
   }
 ]
 export const getColumnName = (key) => {

+ 14 - 0
src/router/views/index.js

@@ -2814,6 +2814,20 @@ export default [{
     component: () => import( /* webpackChunkName: "views" */ '@/views/tirePartsMall/financialManagement/saleDetail/index')
   }]
 },
+{
+  path: '/tirePartsMall/financialManagement/pointsDetail/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/tirePartsMall/financialManagement/pointsDetail/index',
+    name: '统计积分(L)',
+    meta: {
+      i18n: '/tirePartsMall/financialManagement/pointsDetail/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/tirePartsMall/financialManagement/pointsDetail/index')
+  }]
+},
 // 统计销售
 {
   path: '/tirePartsMall/financialManagement/purchaseDetail/index',

+ 8 - 11
src/views/iosBasicData/OceanFreightImport/bills/assembly/formbottom.vue

@@ -75,7 +75,7 @@
                             <span style="color: #1e9fff">装箱方式</span>
                         </span>
                         <search-query :datalist="loadTypeData" :selectValue="assemblyForm.loadType" :filterable="true"
-                            :clearable="true" :remote="true" :disabled="detailData.seeDisabled" :buttonIf="false"
+                            :clearable="true" :remote="true" :disabled="detailData.seeDisabled" :buttonIf="false" :forParameter="{ key: 'dictKey', label: 'dictValue', value: 'dictKey', }"
                             placeholder="请选择装箱方式" @corpChange="corpChange($event, 'loadType')">
                         </search-query>
                     </el-form-item>
@@ -310,16 +310,7 @@ export default {
             // 签单方式
             issueTypeData: [],
             // 装箱方式
-            loadTypeData: [
-                {
-                    label: '整箱',
-                    value: 'FCL'
-                },
-                {
-                    label: '拼箱',
-                    value: 'LCL'
-                }
-            ],
+            loadTypeData: [],
             // 业务类型
             businessTypeData: [
                 {
@@ -538,6 +529,12 @@ export default {
             getWorkDicts('issue_type_F').then(res => {
                 this.issueTypeData = res.data.data
             })
+            getWorkDicts('packing_method').then(res => {
+                this.loadTypeData = res.data.data
+            })
+            getWorkDicts('business_Type_detail').then(res => {
+                // this.businessTypeData = res.data.data
+            })
         },
         // 获取份数数据
         numberoforiginalWorkDicts() {

+ 39 - 27
src/views/iosBasicData/SeafreightExportF/bills/assembly/EntrustmentLnformation.vue

@@ -55,23 +55,23 @@
                                     </search-query>
                                 </el-col>
                                 <el-col :span="8">
-<!--                                    <span style="padding-left: 10px"></span>-->
+                                    <!--                                    <span style="padding-left: 10px"></span>-->
                                     <el-input type="age" style="width: 100%;"
                                         v-model="assemblyForm.detail.hconsigneeCntyName" size="small" autocomplete="off"
                                         :disabled="detailData.seeDisabled" clearable placeholder="收货人国家代码"></el-input>
                                 </el-col>
-<!--                                <el-col :span="4">-->
-<!--                                    <span style="margin-left: 20px"></span>-->
-<!--                                    <span style="font-size: 12px;color: #1e9fff;cursor: pointer;"-->
-<!--                                        @click="notifybyfun">同通</span>-->
-<!--                                </el-col>-->
+                                <!--                                <el-col :span="4">-->
+                                <!--                                    <span style="margin-left: 20px"></span>-->
+                                <!--                                    <span style="font-size: 12px;color: #1e9fff;cursor: pointer;"-->
+                                <!--                                        @click="notifybyfun">同通</span>-->
+                                <!--                                </el-col>-->
                             </div>
                         </el-form-item>
                         <div>
                             <el-form-item label="同通" prop="hconsigneeDetails">
                                 <span slot="label">
                                     <span style="font-size: 12px;color: #1e9fff;cursor: pointer;"
-                                          @click="notifybyfun">同通</span>
+                                        @click="notifybyfun">同通</span>
                                 </span>
                                 <el-input type="textarea" style="width: 100%;"
                                     v-model="assemblyForm.detail.hconsigneeDetails" size="small" autocomplete="off"
@@ -105,11 +105,11 @@
                                                 autocomplete="off" :disabled="detailData.seeDisabled" clearable
                                                 placeholder="通知人国家代码"></el-input>
                                         </div>
-<!--                                        <div style="flex: 1;margin-left: 10px">-->
-<!--                                            <el-button type="primary" icon="el-icon-plus" size="mini"-->
-<!--                                                @click="hnotifyClick"></el-button>-->
-                                            <!-- <div class="addbuttonClass" @click="hnotifyClick">+</div> -->
-<!--                                        </div>-->
+                                        <!--                                        <div style="flex: 1;margin-left: 10px">-->
+                                        <!--                                            <el-button type="primary" icon="el-icon-plus" size="mini"-->
+                                        <!--                                                @click="hnotifyClick"></el-button>-->
+                                        <!-- <div class="addbuttonClass" @click="hnotifyClick">+</div> -->
+                                        <!--                                        </div>-->
                                     </div>
                                 </el-col>
                             </div>
@@ -118,7 +118,7 @@
                             <el-form-item label="" prop="hnotifyDetails">
                                 <span slot="label">
                                     <el-button type="primary" icon="el-icon-plus" size="mini"
-                                           @click="hnotifyClick"></el-button>
+                                        @click="hnotifyClick"></el-button>
                                 </span>
 
                                 <el-input type="textarea" style="width: 100%;"
@@ -445,14 +445,16 @@
                                     clearable placeholder="请输入航次"></el-input>
                             </el-form-item>
                         </div>
-                        <el-form-item label="客户约号" prop="corpArgreementNo" label-width="90px">
+                        <el-form-item label="ETA" prop="eta" label-width="90px">
                             <span slot="label">
-                                <span style="color: #1e9fff">客户约号</span>
+                                <span style="color: #1e9fff">ETA</span>
                             </span>
-                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.corpArgreementNo"
-                                size="small" autocomplete="off" :disabled="detailData.seeDisabled" clearable
-                                placeholder="请输入客户约号"></el-input>
+                            <el-date-picker style="width: 100%;" v-model="assemblyForm.eta" clearable type="date"
+                                size="small" :disabled="detailData.seeDisabled" value-format="yyyy-MM-dd HH:mm:ss"
+                                placeholder="选择日期">
+                            </el-date-picker>
                         </el-form-item>
+
                         <el-form-item label="船公司" prop="carrierCnName">
                             <span slot="label">
                                 <span style="color: #4c9e44;cursor: pointer;text-decoration: underline"
@@ -468,14 +470,24 @@
                                 @corpFocus="remoteMethod($event, 'carrier')">
                             </search-query>
                         </el-form-item>
-                        <el-form-item label="船司约号" prop="carrierArgreementNo">
-                            <span slot="label">
-                                <span style="color: #1e9fff">船司约号</span>
-                            </span>
-                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.carrierArgreementNo"
-                                size="small" autocomplete="off" :disabled="detailData.seeDisabled" clearable
-                                placeholder="请输入船司约号"></el-input>
-                        </el-form-item>
+                        <div style="display: flex;">
+                            <el-form-item label="船司约号" prop="carrierArgreementNo">
+                                <span slot="label">
+                                    <span style="color: #1e9fff">船司约号</span>
+                                </span>
+                                <el-input type="age" style="width: 100%;" v-model="assemblyForm.carrierArgreementNo"
+                                    size="small" autocomplete="off" :disabled="detailData.seeDisabled" clearable
+                                    placeholder="请输入船司约号"></el-input>
+                            </el-form-item>
+                            <el-form-item label="客户约号" prop="corpArgreementNo" label-width="60px">
+                                <span slot="label">
+                                    <span style="color: #1e9fff">客户约号</span>
+                                </span>
+                                <el-input type="age" style="width: 100%;" v-model="assemblyForm.corpArgreementNo"
+                                    size="small" autocomplete="off" :disabled="detailData.seeDisabled" clearable
+                                    placeholder="请输入客户约号"></el-input>
+                            </el-form-item>
+                        </div>
                         <el-form-item label="订舱代理" prop="bookingAgentCnName">
                             <span slot="label">
                                 <span style="color: #1e9fff">订舱代理</span>
@@ -776,7 +788,7 @@
                                 <!-- <el-input type="age" style="width: 100%;" v-model="assemblyForm.dgImdgCode" size="small"
                                     autocomplete="off" :disabled="detailData.seeDisabled" clearable
                                     placeholder="请输入危险品类别"></el-input> -->
-<!--                                -->
+                                <!--                                -->
                                 <dic-select v-model="assemblyForm.dgImdgCode" placeholder="危险品类别" key="dictKey"
                                     label="dictKey" keyValue="dictKey"
                                     url="/blade-system/dict-biz/dictionary?code=dg_imdg_code" :filterable="true"

+ 6 - 11
src/views/iosBasicData/SeafreightExportF/bills/assembly/formbottom.vue

@@ -75,7 +75,7 @@
                             <span style="color: #1e9fff">装箱方式</span>
                         </span>
                         <search-query :datalist="loadTypeData" :selectValue="assemblyForm.loadType" :filterable="true"
-                            :clearable="true" :remote="true" :disabled="detailData.seeDisabled" :buttonIf="false"
+                            :clearable="true" :remote="true" :disabled="detailData.seeDisabled" :buttonIf="false" :forParameter="{ key: 'dictKey', label: 'dictValue', value: 'dictKey', }"
                             placeholder="请选择装箱方式" @corpChange="corpChange($event, 'loadType')">
                         </search-query>
                     </el-form-item>
@@ -492,16 +492,7 @@ export default {
             // 签单方式
             issueTypeData: [],
             // 装箱方式
-            loadTypeData: [
-                {
-                    label: '整箱',
-                    value: 'FCL'
-                },
-                {
-                    label: '拼箱',
-                    value: 'LCL'
-                }
-            ],
+            loadTypeData: [],
             // 业务类型
             businessTypeData: [
                 {
@@ -783,6 +774,10 @@ export default {
             getWorkDicts('issue_type_F').then(res => {
                 this.issueTypeData = res.data.data
             })
+            getWorkDicts('packing_method').then(res => {
+                this.loadTypeData = res.data.data
+            })
+            
         },
         // 获取份数数据
         numberoforiginalWorkDicts() {

+ 380 - 0
src/views/tirePartsMall/financialManagement/pointsDetail/index.vue

@@ -0,0 +1,380 @@
+<template>
+    <basic-container>
+        <avue-crud :key="key" ref="crud" :option="option" :data="data" :search.sync="query" @on-load="onLoad"
+            :table-loading="loading" @search-reset="resetChange" :page.sync="page" :cell-style="cellStyle"
+            @search-change="searchChange" @resetColumn="resetColumnTwo('crud', 'option', 'optionList', 429)"
+            @saveColumn="saveColumnTwo('crud', 'option', 'optionList', 429)">
+            <template slot="menuLeft">
+                <el-button type="warning" icon="el-icon-download" size="small" @click="outExport">导 出</el-button>
+            </template>
+            <template slot="header">
+                <el-table :data="commodityData" border size="small" @header-click="cellClick" style="width: 100%"
+                    v-loading="loading">
+                    <el-table-column v-for="(item, index) in commodityLabel" :key="index" :prop="item.prop"
+                        show-overflow-tooltip :label="item.label" />
+                </el-table>
+            </template>
+            <template slot="brandNameSearch">
+                <search-query :datalist="brandData" :selectValue="query.brandName" :clearable="true" :buttonIf="false"
+                    :forParameter="{ key: 'id', label: 'cname', value: 'cname' }" placeholder="请选择品牌"
+                    @corpFocus="listAllfun" @corpChange="corpChange($event, 'brandName')">
+                </search-query>
+            </template>
+            <template slot="salerNameSearch">
+                <search-query :datalist="salerData" :selectValue="query.salerName" :clearable="true" :buttonIf="false"
+                    :forParameter="{ key: 'id', label: 'name', value: 'name' }" placeholder="请选择业务员"
+                    @corpFocus="YWYgetListfun" @corpChange="corpChange($event, 'salerName')">
+                </search-query>
+            </template>
+            <template slot-scope="{ row, index }" slot="ordNo">
+                <span style="color: #409EFF;cursor: pointer" @click.stop="Jump(row)">{{ row.ordNo }}
+                </span>
+            </template>
+            <template slot="status" slot-scope="{ row }">
+                <span>{{ row.status }}</span>
+            </template>
+        </avue-crud>
+    </basic-container>
+</template>
+
+<script>
+
+import { pointsDetail, pointsDetailSum } from "@/api/pointsDetail";
+import { defaultDate3 } from "@/util/date";
+import { getList as KHgetList } from '@/api/tirePartsMall/basicData/customerInformation/index'
+import { getList as SPgetList } from '@/api/tirePartsMall/basicData/commodityInformation/index'
+import SearchQuery from "@/components/iosbasic-data/searchquery.vue";
+import { getWorkDicts } from "@/api/system/dictbiz";
+import { getToken } from "@/util/auth";
+import { getSalesman } from "@/api/landTransportation";
+import { listAll, storageDesc } from "@/api/tirePartsMall/basicData/listingManagement";
+import { isProcurement } from "@/api/basicData/configuration";
+export default {
+    components: { SearchQuery },
+    data() {
+        return {
+            loading: false,
+            key: 0,
+            data: [],
+            total: [],
+            storageData: [],
+            query: {
+                businesDateStart: defaultDate3()[0],
+                businesDateEnd: defaultDate3()[1],
+                bsType: "JF",
+            },
+            page: {
+                pageSize: 10,
+                currentPage: 1,
+                total: 0,
+                pageSizes: [10, 50, 100, 200, 300]
+            },
+            option: {},
+            optionList: {
+                align: 'center',
+                stripe: true,
+                index: true,
+                menu: false,
+                height: "auto",
+                searchSpan: 6,
+                border: true,
+                searchMenuSpan: 24,
+                addBtn: false,
+                showSummary: true,
+                summaryText: "合计",
+                sumColumnList: [
+                    {
+                        name: 'goodsNum',
+                        type: 'sum',
+                        decimals: 0
+                    },
+                    {
+                        name: 'subTotalMoney',
+                        type: 'sum',
+                        decimals: 2
+                    }
+                ],
+                column: [
+                    {
+                        label: '客户名称',
+                        prop: 'customerName',
+                        overHidden: true,
+                        search: true,
+                        searchslot: true,
+                        searchOrder: 3
+                    },
+                    {
+                        label: '业务员',
+                        prop: 'salerName',
+                        overHidden: true,
+                        search: true,
+                        searchslot: true,
+                        searchOrder: 4
+                    },
+                    {
+                        label: '业务编号',
+                        prop: 'ordNo',
+                        overHidden: true,
+                        search: true,
+                        searchOrder: 5
+                    },
+                    {
+                        label: '业务日期',
+                        prop: 'businesDate',
+                        overHidden: true,
+                    },
+                    {
+                        label: '品牌',
+                        prop: 'brandName',
+                        overHidden: true,
+                        search: true,
+                        searchslot: true,
+                        searchOrder: 6.1,
+                    },
+                    {
+                        label: '商品编码',
+                        prop: 'code',
+                        overHidden: true,
+                        search: true,
+                        searchslot: true,
+                        searchOrder: 6
+                    },
+                    {
+                        label: '商品名称',
+                        prop: 'goodsName',
+                        overHidden: true,
+                        search: true,
+                        searchslot: true,
+                        searchOrder: 6
+                    },
+                    {
+                        label: '规格型号',
+                        prop: 'propertyName',
+                        overHidden: true,
+                    },
+                    {
+                        label: '数量',
+                        prop: 'goodsNum',
+                        overHidden: true,
+                    }, {
+                        label: '积分',
+                        prop: 'price',
+                        overHidden: true,
+                    },
+                    {
+                        label: '积分合计',
+                        prop: 'subTotalMoney',
+                        overHidden: true,
+                    },
+                    {
+                        label: '业务开始',
+                        prop: 'businesDateStart',
+                        overHidden: true,
+                        search: true,
+                        hide: true,
+                        searchOrder: 1,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd",
+                    }, {
+                        label: '业务结束',
+                        prop: 'businesDateEnd',
+                        overHidden: true,
+                        search: true,
+                        hide: true,
+                        searchOrder: 2,
+                        type: "date",
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd",
+                    },
+                    {
+                        label: '单据状态',
+                        prop: 'status',
+                        overHidden: true,
+                        // search: true,
+                        // searchslot: true,
+                        // searchOrder: 8
+                    }
+                ]
+            },
+            bsTypeData: [],
+            customerData: [], // 客户数据
+            brandData: [], // 品牌数据
+            goodsData: [], // 商品名称
+            salerData: [], // 业务员
+            statusData: [], // 单据状态
+            commodityData: [], // 合计数据
+            // 合计的配置项
+            commodityLabel: [{
+                id: 1,
+                label: '销售数量',
+                prop: 'goodsNum'
+            }, {
+                id: 2,
+                label: '销售金额',
+                prop: 'amount'
+            }],
+        }
+    },
+    async created() {
+        this.option = await this.getColumnData(this.getColumnName(429), this.optionList);
+        isProcurement({ "param": "whether.model" }).then(res => {
+            if (res.data.data == 1) {
+                this.findObject(this.option.column, "pattern").label = '规格型号1'
+            }
+        })
+        getWorkDicts('xs_business_Type').then(res => {
+            this.bsTypeData = res.data.data
+        })
+        this.query = this.deepClone(this.query)
+    },
+    methods: {
+        Jump(row) {
+            this.$router.push({
+                path: "/tirePartsMall/pointsMall/pointsOrder/index",
+                query: {
+                    jumpId: row.pid
+                }
+            })
+        },
+        resetChange() {
+            this.query = this.$options.data().query
+        },
+        cellStyle({ row, rowIndex }) {
+            if (row.status == '已取消') {
+                return 'color: red';
+            }
+            return
+        },
+        //导出
+        outExport() {
+            console.log(this.query)
+            let config = { params: { ...this.query } }
+            if (config.params) {
+                for (const propName of Object.keys(config.params)) {
+                    const value = config.params[propName];
+                    if (value !== null && typeof (value) !== "undefined") {
+                        if (value instanceof Array) {
+                            for (const key of Object.keys(value)) {
+                                let params = propName + '[' + key + ']';
+                                config.params[params] = value[key]
+                            }
+                            delete config.params[propName]
+                        }
+                    }
+                }
+            }
+            const routeData = this.$router.resolve({
+                path: '/api/blade-sales-part/statistics/pointsDetailExport',   //跳转目标窗口的地址
+                query: {
+                    ...config.params,    //括号内是要传递给新窗口的参数
+                }
+            })
+            window.open(routeData.href.slice(1, routeData.href.length) + '&' + `${this.website.tokenHeader}=${getToken()}`);
+        },
+        // 获取品牌数据
+        listAllfun() {
+            listAll().then(res => {
+                this.brandData = res.data.data
+            })
+        },
+        // 获取客户数据
+        KHgetListfun(cname) {
+            KHgetList({ current: 1, size: 20, corpType: 'KH', cname: cname ? cname : null }).then(res => {
+                this.customerData = res.data.data.records
+            })
+        },
+        // 获取业务员数据
+        YWYgetListfun(realName) {
+            // YWYgetList(1,10,{realName:realName?realName:null}).then(res=>{
+            //     this.salerData = res.data.data.records
+            // })
+            getSalesman().then(res => {
+                this.salerData = res.data.data
+            })
+        },
+        // 获取商品数据
+        SPgetListfun(cname) {
+            SPgetList({ current: 1, size: 20, cname: cname ? cname : null }).then(res => {
+                this.goodsData = res.data.data.records
+            })
+        },
+        // 单据状态
+        statusWorkDictsfun() {
+            getWorkDicts('sales_Status').then(res => {
+                this.statusData = res.data.data
+            })
+        },
+        // 下拉回调
+        corpChange(value, name) {
+            this.$set(this.query, name, value)
+        },
+        //搜索
+        searchChange(params, done) {
+            this.query = params;
+            this.onLoad(this.page, params)
+            done();
+        },
+        // 获取列表数据
+        onLoad(page, params = {}) {
+            let queryParams = {
+                size: page.pageSize,
+                current: page.currentPage,
+                ...Object.assign(params, this.query)
+            }
+            this.loading = true;
+            pointsDetail(queryParams).then(res => {
+                this.data = res.data.data.records
+                this.page.total = res.data.data.total
+                this.$nextTick(() => {
+                    this.$refs.crud.doLayout();
+                    this.$refs.crud.dicInit();
+                });
+                pointsDetailSum({ ...Object.assign(params, this.query) }).then(re => {
+                    this.commodityData = [re.data.data]
+
+                })
+            }).finally(() => {
+                this.$refs.crud.doLayout();
+                this.loading = false;
+            })
+        },
+        //自定义列保存
+        async saveColumnTwo(ref, option, optionBack, code) {
+            /**
+             * 已定义全局方法,直接使用,saveColumnData保存列数据方法,参数传值(表格名称,当前表格的option数据)
+             * 已定义全局方法,直接使用,getColumnName方法用来获取枚举值,参数根据自己定义的code值获取中文名
+             * 一定要执行异步操作,要等接口成功返回,才能执行下一行代码
+             */
+            const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
+            isProcurement({ "param": "whether.model" }).then(res => {
+                if (res.data.data == 1) {
+                    this.findObject(this.option.column, "pattern").label = '规格型号1'
+                }
+            })
+            if (inSave) {
+                this.$message.success("保存成功");
+                //关闭窗口
+                this.$refs[ref].$refs.dialogColumn.columnBox = false;
+            }
+        },
+        //自定义列重置
+        async resetColumnTwo(ref, option, optionBack, code) {
+            this[option] = this[optionBack];
+            const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
+            isProcurement({ "param": "whether.model" }).then(res => {
+                if (res.data.data == 1) {
+                    this.findObject(this.option.column, "pattern").label = '规格型号1'
+                }
+            })
+            if (inSave) {
+                this.$message.success("重置成功");
+                this.$refs[ref].$refs.dialogColumn.columnBox = false;
+            }
+        },
+
+    }
+}
+</script>
+
+<style scoped></style>

+ 0 - 1
src/views/tirePartsMall/pointsMall/pointsOrder/detailsPage.vue

@@ -1033,7 +1033,6 @@ export default {
             }
         })
         this.findObject(this.optionContacts.column, "goodsId").change = ({ value, column }) => {
-
             if (this.formContacts.goodsId !== value) {
                 goodsDetail({ id: value, customId: this.dicUrlWithCustomId, stock: this.form.storageId ? this.form.storageId : '' }).then(res => {
                     this.goods = res.data.data

+ 3 - 10
src/views/tirePartsMall/purchasingManagement/financingProcurement/detailsPage.vue

@@ -123,10 +123,6 @@
                                     :disabled="form.status != '录入' || editButton">一键删除</el-button>
                             </template>
                             <template slot="goodsId" slot-scope="{ row }">
-                                <!--<el-select v-if="row.$cellEdit" v-model="row.goodsId" allow-create filterable default-first-option >-->
-                                <!--    <el-option v-for="(item, index) in goodsIdoptions" :key="index" :label="item.cname"-->
-                                <!--        :value="item.id"></el-option>-->
-                                <!--</el-select>-->
                                 <span>{{ row.goodsName }}</span>
                             </template>
                             <template slot="goodsNum" slot-scope="{ row }">
@@ -1369,9 +1365,9 @@ export default {
             // this.batchNo = this.detailData.check.batchNo
         }
 
-        if (this.detailData.id) {
-            this.getDetailsfun()
-        }
+        // if (this.detailData.id) {
+        //     this.getDetailsfun()
+        // }
         isProcurement({ "param": "number.decimal" }).then(res => {
             this.numberDecimal = res.data.data?Number(res.data.data):0
         })
@@ -2123,9 +2119,6 @@ export default {
                 spinner: 'el-icon-loading',
                 background: 'rgba(255,255,255,0.7)'
             })
-            goodsListAll().then(res => {
-                console.log();
-            })
             getDetails({ id: id }).then(res => {
                 this.form = res.data.data
                 let ordForm = { srcBillNo: this.form.ordNo }

+ 3 - 3
src/views/tirePartsMall/purchasingManagement/warehouseEntryOrder/detailsPage.vue

@@ -700,9 +700,9 @@ export default {
             // this.$set(this.optionForm,'disabled',false)
             // this.$set(this.optionContacts,'disabled',false)
         }
-        if (this.detailData.id) {
-            this.refresh()
-        }
+        // if (this.detailData.id) {
+        //     this.refresh()
+        // }
         if (this.$route.query.srcId) {
             this.refresh(this.$route.query.srcId)
         }

+ 2 - 27
src/views/tirePartsMall/salesManagement/outboundTask/index.vue

@@ -150,25 +150,8 @@ export default {
           prop: "customerName",
           search: true,
           width: 140,
-          // cell:true,
-          // type: 'select',
-          // overHidden: true,
-          // filterable: true,
-          // remote: true,
-          // props: {
-          //   label: 'cname',
-          //   value: 'cname',
-          //   res: 'data.records'
-          // },
-          // dicUrl: '/api/blade-sales-part/corpsDesc/list?current=1&size=20&corpType=KH&cname={{key}}',
-        }
-          // , {
-          //     label: "商品种类",
-          //     prop: "corpId",
-          //     width: 100,
-          //     overHidden: true,
-          // }
-          , {
+        },
+        {
           label: '业务来源',
           prop: "bsType",
           width: 100,
@@ -209,14 +192,7 @@ export default {
           cell: true,
           slot: true,
           formslot: true,
-          // cell: false,
           overHidden: true,
-          // type: 'select',
-          // props: {
-          //   label: 'realName',
-          //   value: 'realName'
-          // },
-          // dicUrl: '/api/blade-user/stockClerkList',
         },
         {
           label: '收货地址',
@@ -432,7 +408,6 @@ export default {
         bizTypeName: "FHRW",
         statusName: '待处理',
         ...Object.assign(params, this.search),
-        customerName: params.$customerName
       }
       console.log(params);
       this.loading = true

+ 378 - 21
src/views/tirePartsMall/salesManagement/outboundWorkOrderL/detailsPage.vue

@@ -27,8 +27,8 @@
       <trade-card title="明细信息">
         <avue-crud :option="optionContacts" v-model="formContacts" ref="formContacts" :data="form.shipItemsList"
           :key="key" @row-save="rowSave" @row-update="rowUpdate"
-          @resetColumn="resetColumnTwo('formContacts', 'optionContacts', 'optionContactsBack', 270.1)"
-          @saveColumn="saveColumnTwo('formContacts', 'optionContacts', 'optionContactsBack', 270.1)">
+          @resetColumn="resetColumnTwo('formContacts', 'optionContacts', 'optionContactsBack', 430)"
+          @saveColumn="saveColumnTwo('formContacts', 'optionContacts', 'optionContactsBack', 430)">
           <template slot-scope="scope" slot="menuLeft">
             <el-button type="primary" icon="el-icon-printer" size="small" @click="adddiailsfun">录入明细</el-button>
             <el-button type="primary" icon="el-icon-printer" size="small" @click="handlePrint">打印</el-button>
@@ -262,17 +262,10 @@ export default {
           }],
         column: [{
           label: '商品名称',
-          prop: 'goodsId',
-          // disabled: true,
+          prop: 'goodsName',
           width: 200,
           overHidden: true,
           hide: false,
-          type: 'select',
-          props: {
-            label: 'cname',
-            value: 'id'
-          },
-          dicUrl: '/api/blade-sales-part/goodsDesc/goodsListAll'
         }, {
           label: '商品编码',
           disabled: true,
@@ -334,19 +327,15 @@ export default {
           label: '单价',
           prop: "price",
           disabled: true,
-        }, {
+        },
+        {
           label: '品牌',
-          prop: 'brandId',
-          disabled: true,
+          prop: 'brandName',
+          disabled: false,
           width: 100,
           overHidden: true,
-          type: 'select',
-          props: {
-            label: 'cname',
-            value: 'id'
-          },
-          dicUrl: '/api/blade-sales-part/brandDesc/listAll?type=PP&enableOrNot=1'
-        }, {
+        },
+        {
           label: '规格型号',
           prop: 'propertyName',
           disabled: true,
@@ -375,6 +364,374 @@ export default {
           prop: 'remarks',
         }]
       },
+      optionContactsBack2: {
+                disabled: false,
+                border: true,
+                align: 'center',
+                index: true,
+                addBtnText: "添加商品",
+                updateBtnText: '保存',
+                refreshBtn: false,
+                dialogDrag: true,
+                addBtn: false,
+                span: 8,
+                height: 500,
+                // 添加
+                addRowBtn: false,
+                // 保存按钮
+                editBtn: false,
+                // 航编辑开启
+                cellBtn: true,
+                rowKey: 'ids',
+                delBtn: false,
+                menuWidth: 140,
+                dialogTop: 25,
+                dialogWidth: "80%",
+                summaryText: "合计",
+                showSummary: true,
+                selection: true,
+                sumColumnList: [{
+                    name: "goodsNum",
+                    type: "sum"
+                }, {
+                    name: "price",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "sendNum",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "outGoodsTotalShipNum",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "outGoodsTotalShipAmount",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "subTotalMoney",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "returnsNumber",
+                    type: "sum"
+                }, {
+                    name: "returnsAmount",
+                    type: "sum"
+                }, {
+                    name: "primaryGoodsTotalNum",
+                    type: "sum"
+                }, {
+                    name: "inventory",
+                    type: "sum"
+                }, {
+                    name: "rebatePrice",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "rebateCostprie",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "rebateProfit",
+                    type: "sum",
+                    decimals: 2
+                }, {
+                    name: "primaryGoodsTotalAmount",
+                    type: "sum",
+                    decimals: 2
+                }],
+                column: [
+                    {
+                        label: '商品名称',
+                        prop: 'goodsId',
+                        width: 200,
+                        disabled: false,
+                        remote: true,
+                        hide: true,
+                        overHidden: true,
+                        type: 'select',
+                        // dicData: [],
+                        props: {
+                            label: 'cname',
+                            value: 'id'
+                        },
+                        // dicUrl: '/api/blade-sales-part/goodsDesc/goodsListAll?cname={{key}}'
+                        dicUrl: "/api/blade-sales-part/goodsDesc/list?current=1&size=10&cname={{key}}&enableOrNot=1"
+                        // dicUrl: "/api/blade-sales-part/goodsDesc/goodsListXs?cname={{key}}"
+                    },
+                    {
+                        label: '商品名称',
+                        prop: 'goodsName',
+                        width: 200,
+                        disabled: false,
+                        remote: true,
+                        overHidden: true,
+                    }, {
+                        label: '数量',
+                        prop: 'goodsNum',
+                        overHidden: true,
+                        disabled: false,
+                        cell: true,
+                        width: 100,
+                        rules: [{
+                            required: true,
+                            message: " ",
+                            trigger: "blur"
+                        }, {
+                            validator: (rule, value, callback) => {
+                                console.log(this.formContacts.inventory);
+                                if (value < 0) {
+                                    callback(new Error("数量不能小于0"));
+                                } else {
+                                    callback();
+                                }
+                            },
+                            trigger: "blur"
+                        }]
+                    },
+                    {
+                        label: '价格',
+                        prop: 'price',
+                        overHidden: true,
+                        width: 100,
+                        disabled: false,
+                        cell: true,
+                        rules: [{
+                            required: true,
+                            message: " ",
+                            trigger: "blur"
+                        }, {
+                            validator: (rule, value, callback) => {
+                                if (value < 0) {
+                                    callback(new Error("价格不能小于0"));
+                                } else {
+                                    callback();
+                                }
+                            },
+                            trigger: "blur"
+                        }]
+                    },
+                    {
+                        label: '库存',
+                        prop: 'inventory',
+                        overHidden: true,
+                        width: 100
+                    }, {
+                        label: '批次号',
+                        prop: 'dot',
+                        cell: true,
+                        width: 120,
+                        type: "select",
+                        disabled: true,
+                        allowCreate: true,
+                        filterable: true,
+                        dicData: [],
+                        props: {
+                            label: "dot",
+                            value: "dot"
+                        },
+                        dicUrl: "/api/blade-sales-part/stockDesc/dotList",
+                        overHidden: true,
+                    }, {
+                        label: '小计',
+                        prop: 'subTotalMoney',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    }, {
+                        label: '商品编码',
+                        prop: 'goodsNo',
+                        overHidden: true,
+                        disabled: false,
+                        width: 100
+                    },
+                    {
+                        label: '品牌',
+                        prop: 'brandName',
+                        disabled: false,
+                        width: 100,
+                        overHidden: true,
+                    },
+                    {
+                        label: '规格型号',
+                        prop: 'propertyName',
+                        overHidden: true,
+                        disabled: false,
+                        width: 100
+                    }, {
+                        label: '花纹',
+                        prop: 'pattern',
+                        overHidden: true,
+                        disabled: false,
+                        width: 100
+                    }, {
+                        label: '商品描述',
+                        prop: 'goodsDescription',
+                        disabled: false,
+                        overHidden: true,
+                        width: 100
+                    },
+                    {
+                        label: '单位',
+                        prop: 'units',
+                        type: "select",
+                        disabled: false,
+                        props: {
+                            label: "dictValue",
+                            value: "dictValue"
+                        },
+                        dicUrl: "/api/blade-system/dict-biz/dictionary?code=unit",
+                        overHidden: true,
+                        width: 100
+                    },
+                    {
+                        label: '订单数量',
+                        prop: 'primaryGoodsTotalNum',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '订单金额',
+                        prop: "primaryGoodsTotalAmount",
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '入库数量',
+                        prop: 'sendNum',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '出库数量',
+                        prop: 'outGoodsTotalShipNum',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '出库金额',
+                        prop: 'outGoodsTotalShipAmount',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '原始数量',
+                        prop: 'primaryGoodsTotalNum',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '原始金额',
+                        prop: 'primaryGoodsTotalAmount',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '返利后单价',
+                        prop: 'rebatePrice',
+                        overHidden: true,
+                        width: 100,
+                        cell: true,
+                    },
+                    {
+                        label: '返利后成本价',
+                        prop: 'rebateCostprie',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    {
+                        label: '返利后利润',
+                        prop: 'rebateProfit',
+                        overHidden: true,
+                        width: 100,
+                        disabled: true,
+                        editDisplay: false,
+                        addDisplay: false
+                    },
+                    // {
+                    //     label: '退货数量',
+                    //     prop: "returnsNumber",
+                    //     overHidden: true,
+                    //     width: 100,
+                    //     disabled: true,
+                    // },
+                    // {
+                    //     label: '退货金额',
+                    //     prop: "returnsAmount",
+                    //     overHidden: true,
+                    //     width: 100,
+                    //     disabled: true,
+                    // },
+                    // {
+                    //     label: '利润',
+                    //     prop: 'profit',
+                    //     overHidden: true,
+                    //     width: 100
+                    // },
+
+                    // {
+                    //     label: '返利',
+                    //     prop: 'thisAmount',
+                    //     overHidden: true,
+                    //     width: 100
+                    // },
+                    // {
+                    //     label: '成本',
+                    //     prop: 'costprie',
+                    //     overHidden: true,
+                    //     width: 100,
+                    //     disabled: true,
+                    //     editDisplay: false,
+                    //     addDisplay: false
+
+                    // },
+                    // {
+                    //     label: '毛利',
+                    //     prop: 'grossProfit',
+                    //     overHidden: true,
+                    //     width: 100,
+                    //     disabled: true,
+                    //     editDisplay: false,
+                    //     addDisplay: false
+                    // },
+                    {
+                        label: '备注',
+                        prop: "remarks",
+                        overHidden: true,
+                        width: 100,
+                        disabled: false,
+
+                    }
+                ]
+            },
     }
   },
   components: {
@@ -386,7 +743,7 @@ export default {
     detailData: Object
   },
   async created() {
-    this.optionContacts = await this.getColumnData(this.getColumnName(270.1), this.optionContactsBack);
+    this.optionContacts = await this.getColumnData(this.getColumnName(430), this.optionContactsBack);
     isProcurement({ "param": "whether.model" }).then(res => {
       if (res.data.data == 1) {
         this.findObject(this.optionContacts.column, "pattern").label = '规格型号1'

+ 3 - 3
src/views/tirePartsMall/salesManagement/purchaseOrder/detailsPage.vue

@@ -1202,9 +1202,9 @@ export default {
             // this.batchNo = this.detailData.check.batchNo
         }
 
-        if (this.detailData.id) {
-            this.getDetailsfun()
-        }
+        // if (this.detailData.id) {
+        //     this.getDetailsfun()
+        // }
         isProcurement({ "param": "number.decimal" }).then(res => {
             this.numberDecimal = res.data.data?Number(res.data.data):0
         })

+ 4 - 10
src/views/tirePartsMall/salesManagement/saleOrder/detailsPage.vue

@@ -965,16 +965,10 @@ export default {
                 },
                 {
                     label: '品牌',
-                    prop: 'brandId',
+                    prop: 'brandName',
                     disabled: false,
                     width: 100,
                     overHidden: true,
-                    type: 'select',
-                    props: {
-                        label: 'cname',
-                        value: 'id'
-                    },
-                    dicUrl: '/api/blade-sales-part/brandDesc/listAll?type=PP&enableOrNot=1'
                 },
                 {
                     label: '规格型号',
@@ -1385,9 +1379,9 @@ export default {
             }
         })
 
-        if (this.detailData.id) {
-            this.getDetailsfun()
-        }
+        // if (this.detailData.id) {
+        //     this.getDetailsfun()
+        // }
         isProcurement({ "param": "number.decimal" }).then(res => {
             this.numberDecimal = res.data.data ? Number(res.data.data) : 0
         })