web100 2 лет назад
Родитель
Сommit
c9ebfeb271

+ 28 - 3
src/views/bidingDocument/issueTender/detailsPageEdit.vue

@@ -1722,7 +1722,28 @@ export default {
           label: '目的港箱使天数',
           prop: 'objectiveHarborFee',
           index: 10,
-        }, {
+        }, 
+        {
+          label: '亏舱费',
+          prop: 'brokenStowageAmount',
+          index: 11,
+        }, 
+        {
+          label: '航程',
+          prop: 'voyage',
+          index: 12,
+        }, 
+        {
+          label: '主单/分单',
+          prop: 'documentType',
+          index: 13,
+        }, 
+        {
+          label: '船期',
+          prop: 'shippingDate',
+          index: 14,
+        }, 
+       {
           label: '状态',
           prop: 'status',
           type: 'select',
@@ -1732,12 +1753,16 @@ export default {
             label: "dictValue",
             value: "dictKey"
           },
-          index: 11,
+          index: 15,
+        }, {
+          label: '竞价排名',
+          prop: 'ranking',
+          index: 16,
         }, {
           label: '备注',
           prop: 'remark',
           cell: true,
-          index: 12,
+          index: 17,
         }]
       },
       form: {},

+ 1 - 0
src/views/bidingDocument/issueTender/index.vue

@@ -107,6 +107,7 @@ export default {
           label: '目的港',
           prop: 'objectiveHarbor',
           overHidden: true,
+          search: true,
           width:120,
           index:4,
         },{

+ 5 - 0
src/views/businessManagement/inventoryAccount/index.vue

@@ -61,6 +61,7 @@
           >报表打印
           </el-button>
           <el-button
+            v-if="userInfo"
             type="info"
             icon="el-icon-printer"
             size="small"
@@ -100,6 +101,7 @@ export default {
     return {
       data: [],
       search:{},
+      userInfo:null,
       // 仓库配置
       configurationWarehouse: {
         multipleChoices: false,
@@ -159,6 +161,9 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
+  mounted(){
+    this.userInfo = localStorage.getItem('saber-userInfo') && JSON.parse(localStorage.getItem('saber-userInfo')).content.role_name.split(',').includes('admin');
+  },
   methods: {
     cellStyle() {
       return "padding:0;height:40px;";

+ 16 - 8
src/views/tirePartsMall/basicData/customerInformation/detailsPage.vue

@@ -303,6 +303,12 @@ export default {
           search: true,
           overHidden: true,
           width: 120,
+          type: 'select',
+          props: {
+            label: 'fullName',
+            value: 'id'
+          },
+          dicUrl: '/api/blade-system/dept/top-list',
           rules: [
             {
               required: true,
@@ -565,11 +571,13 @@ export default {
     this.getAllWorkDicts()
     this.getCorpTypeCk()
   },
-  activated() {
-    this.$nextTick(() => {
-      this.$refs.crud.doLayout()
-    })
-  },
+  activated () {
+      setTimeout(() => {
+        this.$nextTick(() => {
+          this.$refs.crud.doLayout()
+        })
+      }, 100)
+    },
   methods: {
     // 启用或禁用
     editEnable() {
@@ -820,9 +828,9 @@ export default {
             this.getDetail(res.data.data.id);
             //添加成功后默认启用
             let data = this.form
-            editenable({ id: res.data.data.id, enableOrNot: data.enableOrNot ? 0 : 1  }).then(res => {
-        this.$set(this.form, 'enableOrNot', data.enableOrNot == 1 ? 0 : 1)
-              
+            editenable({ id: res.data.data.id, enableOrNot: data.enableOrNot ? 0 : 1 }).then(res => {
+              this.$set(this.form, 'enableOrNot', data.enableOrNot == 1 ? 0 : 1)
+
             })
           }).finally(() => {
             this.loadingBtn = false;

+ 12 - 3
src/views/tirePartsMall/basicData/customerInformation/index.vue

@@ -265,9 +265,14 @@ export default {
     this.option = await this.getColumnData(this.getColumnName(207), option);
     this.getAllWorkDicts()
   },
-  activated() {
-    this.$refs.crud.refreshTable();
-  },
+  activated () {
+      setTimeout(() => {
+        this.$nextTick(() => {
+          this.$refs.crud.doLayout()
+        })
+      }, 100)
+    },
+
   methods: {
     derivation() {
       window.open(
@@ -468,6 +473,10 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+// 解决.cell:empty::before存在时, avue 表格最后一个0px的空白列显示-,使表格错位问题
+/deep/ .avue-crud table tr td:last-child {
+  display: none;
+}
 .page-crad ::v-deep .basic-container__card {
   height: 94.2vh;
 }

+ 6 - 0
src/views/tirePartsMall/basicData/supplier/detailsPage.vue

@@ -323,6 +323,12 @@ export default {
             });
             loading.close();
             this.refresh(res.data.data.id)
+            //添加成功后默认启用
+            let data = this.form
+            editenable({ id: res.data.data.id, enableOrNot: data.enableOrNot ? 0 : 1 }).then(res => {
+              this.$set(this.form, 'enableOrNot', data.enableOrNot == 1 ? 0 : 1)
+
+            })
           }).catch(() => {
             loading.close();
           })

+ 23 - 5
src/views/tirePartsMall/basicData/supplier/index.vue

@@ -151,7 +151,7 @@ export default {
         border: true,
         align: "center",
         // height: "auto",
-        Height:'50',
+        Height: '50',
         searchMenuPosition: "right",
         size: "small",
         menuWidth: 120,
@@ -163,10 +163,22 @@ export default {
         column: [{
           label: '全称',
           prop: "cname",
-          search: true,
+          search: {
+            fuzzy: true // 启用模糊搜索
+          },
+          type: 'select',
+          dicUrl: "/api/blade-sales-part/corpsDesc/listAll",
+          props: {
+            label: "cname",
+            value: "id"
+          },
           overHidden: true,
         }, {
           label: '供应商分类',
+          type: 'select',
+          search: {
+            fuzzy: true // 启用模糊搜索
+          },
           prop: "corpsTypeName",
           search: true,
           overHidden: true,
@@ -222,8 +234,8 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
-  activated(){
-    this.$nextTick(()=>{
+  activated() {
+    this.$nextTick(() => {
       this.$refs.crud.doLayout()
     })
   },
@@ -305,12 +317,18 @@ export default {
       });
     },
     searchChange(params, done) {
-      done();
       this.onLoad(this.page, params)
+      done();
     },
     onLoad(page, params = {}) {
       params = {
         ...params,
+        cname: {
+          like: params.cname // 使用like操作符进行模糊匹配
+        },
+        supplierCategory: {
+          like: params.supplierCategory // 使用like操作符进行模糊匹配
+        },
         current: page.currentPage,
         size: page.pageSize,
         corpType: "GYS",

+ 28 - 12
src/views/tirePartsMall/purchasingManagement/warehouseEntryOrder/detailsPage.vue

@@ -190,7 +190,7 @@ export default {
                             message: " ",
                             trigger: "blur"
                         }]
-                    }, 
+                    },
                     {
                         label: "商品数量",
                         prop: "goodsTotalNum",
@@ -234,7 +234,7 @@ export default {
                     {
                         label: "来源单号",
                         prop: "srcOrdNo"
-                    },  {
+                    }, {
                         label: '备注',
                         prop: "remarks",
                         type: 'textarea',
@@ -610,16 +610,32 @@ export default {
             done(form);
         },
         handlePrint() {
-            const salesDetail = this.form.orderItemsList;
-            // 调用 Avue 的打印方法
-            this.$print({
-                title: '销售明细打印', // 打印页面的标题
-                printBody: [
-                    // 构建打印内容,可以根据实际需求进行调整
-                    { type: 'html', value: '<h1>销售明细</h1>' },
-                    { type: 'table', value: salesDetail }
-                ]
-            });
+            // 获取表格的表头和内容的HTML代码
+            const tableHeader = this.$refs.formContacts.$el.querySelector('.el-table__header-wrapper').outerHTML;
+            const tableContent = this.$refs.formContacts.$el.querySelector('.el-table__body-wrapper').outerHTML;
+            // 创建一个新的打印页面
+            const printWindow = window.open('', '_blank');
+
+            // 将新窗口的内容设置为表头和内容的HTML代码
+            printWindow.document.open();
+            printWindow.document.write(`
+        <html>
+          <head>
+            <style>
+              /* 添加打印样式 */
+            </style>
+          </head>
+          <body>
+            ${tableHeader}
+            ${tableContent}
+          </body>
+        </html>
+      `);
+            printWindow.document.close();
+
+            // 在新窗口中调用浏览器的打印功能
+            printWindow.print();
+            printWindow.close();
         },
         //自定义列保存
         async saveColumnTwo(ref, option, optionBack, code) {

+ 18 - 18
src/views/tirePartsMall/salesManagement/outboundTask/index.vue

@@ -102,12 +102,12 @@ export default {
           width: 100,
           overHidden: true,
         },
-        // {
-        //   label: '来源公司',
-        //   prop: "sourceCompanyId",
-        //   width: 100,
-        //   overHidden: true,
-        // },
+        {
+          label: '来源公司',
+          prop: "sourceCompanyId",
+          width: 100,
+          overHidden: true,
+        },
         {
           label: '发货仓库',
           prop: "storageName",
@@ -126,18 +126,18 @@ export default {
           width: 200,
           overHidden: true,
         },
-        //  {
-        //   label: '销售数量',
-        //   prop: "bsType",
-        //   width: 100,
-        //   overHidden: true,
-        // }, 
-        //  {
-        //   label: '发货数量',
-        //   prop: "bsType",
-        //   width: 100,
-        //   overHidden: true,
-        // },  
+         {
+          label: '销售数量',
+          prop: "goodsTotalNum",
+          width: 100,
+          overHidden: true,
+        }, 
+         {
+          label: '发货数量',
+          prop: "goodsTotalShipNum",
+          width: 100,
+          overHidden: true,
+        },  
         {
           label: '联系人',
           prop: "contacts",

+ 41 - 13
src/views/tirePartsMall/salesManagement/outboundWorkOrder/detailsPage.vue

@@ -66,6 +66,7 @@
 
 import { getDetails, tradingBox, submit, warehousingComplete } from "@/api/tirePartsMall/salesManagement/outboundWorkOrder";
 import { dateFormat } from "@/util/date";
+// 
 
 export default {
   name: "detailsPage",
@@ -188,11 +189,13 @@ export default {
         dialogWidth: "80%",
         column: [{
           label: '物料编码',
+          disabled: true,
           prop: 'goodsNo',
           width: 100
         }, {
           label: '商品名称',
           prop: 'goodsId',
+          disabled: true,
           width: 200,
           overHidden: true,
           type: 'select',
@@ -204,6 +207,7 @@ export default {
         }, {
           label: '品牌',
           prop: 'brandId',
+          disabled: true,
           width: 100,
           overHidden: true,
           type: 'select',
@@ -215,21 +219,27 @@ export default {
         }, {
           label: '规格型号',
           prop: 'propertyName',
+          disabled: true,
           width: 100
         }, {
           label: '花纹',
           prop: 'pattern',
+          disabled: true,
           width: 100
         }, {
           label: '商品描述',
-          prop: 'goodsDescription'
+          prop: 'goodsDescription',
+          disabled: true,
         }, {
           label: '批次号',
-          prop: 'dot'
+          prop: 'dot',
+          disabled: true,
+
         }, {
           label: '单位',
           prop: 'units',
           type: "select",
+          disabled: true,
           props: {
             label: "dictValue",
             value: "dictValue"
@@ -237,7 +247,8 @@ export default {
           dicUrl: "/api/blade-system/dict-biz/dictionary?code=unit"
         }, {
           label: '出库数量',
-          prop: 'goodsNum'
+          prop: 'goodsNum',
+          disabled: true,
         }, {
           label: '实际数量',
           prop: 'sendNum'
@@ -432,17 +443,34 @@ export default {
     },
     //打印
     handlePrint() {
-      const salesDetail = this.form.orderItemsList;
-      // 调用 Avue 的打印方法
-      this.$print({
-        title: '销售明细打印', // 打印页面的标题
-        printBody: [
-          // 构建打印内容,可以根据实际需求进行调整
-          { type: 'html', value: '<h1>销售明细</h1>' },
-          { type: 'table', value: salesDetail }
-        ]
-      });
+      // 获取表格的表头和内容的HTML代码
+      const tableHeader = this.$refs.formContacts.$el.querySelector('.el-table__header-wrapper').outerHTML;
+      const tableContent = this.$refs.formContacts.$el.querySelector('.el-table__body-wrapper').outerHTML;
+      // 创建一个新的打印页面
+      const printWindow = window.open('', '_blank');
+
+      // 将新窗口的内容设置为表头和内容的HTML代码
+      printWindow.document.open();
+      printWindow.document.write(`
+        <html>
+          <head>
+            <style>
+              /* 添加打印样式 */
+            </style>
+          </head>
+          <body>
+            ${tableHeader}
+            ${tableContent}
+          </body>
+        </html>
+      `);
+      printWindow.document.close();
+
+      // 在新窗口中调用浏览器的打印功能
+      printWindow.print();
+      printWindow.close();
     },
+
     //自定义列保存
     async saveColumnTwo(ref, option, optionBack, code) {
       /**

+ 94 - 52
src/views/tirePartsMall/salesManagement/saleOrder/detailsPage.vue

@@ -158,7 +158,7 @@ export default {
                         label: "dictValue",
                         value: "dictValue"
                     },
-                    value:'网络支付'
+                    value: '网络支付'
                 }, {
                     label: '联系人',
                     prop: "contacts",
@@ -218,17 +218,6 @@ export default {
                 refreshBtn: false,
                 dialogDrag: true,
                 addBtn: true,
-                btns: [
-                    {
-                        text: "录入明细",
-                        type: "primary"
-                    },
-                    {
-                        text: "打印",
-                        type: "default",
-                        click: "handlePrint"
-                    }
-                ],
                 span: 8,
                 height: 500,
                 addRowBtn: false,
@@ -272,6 +261,10 @@ export default {
                     label: '商品名称',
                     prop: 'goodsId',
                     width: 200,
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     overHidden: true,
                     type: 'select',
                     props: {
@@ -283,10 +276,18 @@ export default {
                     label: '物料编码',
                     prop: 'goodsNo',
                     overHidden: true,
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     width: 100
                 }, {
                     label: '品牌',
                     prop: 'brandId',
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     width: 100,
                     overHidden: true,
                     type: 'select',
@@ -299,26 +300,46 @@ export default {
                     label: '规格型号',
                     prop: 'propertyName',
                     overHidden: true,
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     width: 100
                 }, {
                     label: '花纹',
                     prop: 'pattern',
                     overHidden: true,
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     width: 100
                 }, {
                     label: '商品描述',
                     prop: 'goodsDescription',
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     overHidden: true,
                     width: 100
                 }, {
                     label: '数量',
                     prop: 'goodsNum',
                     overHidden: true,
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     width: 100
                 }, {
                     label: '单位',
                     prop: 'units',
                     type: "select",
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     props: {
                         label: "dictValue",
                         value: "dictValue"
@@ -350,39 +371,43 @@ export default {
                 {
                     label: '发货数量',
                     prop: 'sendNum',
+                    disabled: function (row) {
+                        // 根据行数据进行条件判断
+                        return row.businessSource === '外部销售'; // 如果销售类型为外部销售,禁止编辑
+                    },
                     overHidden: true,
                     width: 100
                 },
-                //  {
-                //     label: '毛利',
-                //     prop: 'grossProfit',
-                //     overHidden: true,
-                //     width: 100
-                // },
-                // {
-                //   label: '利润',
-                //   prop: 'profit',
-                //   overHidden: true,
-                //   width: 100
-                // }
-                // , {
-                //     label: '小计',
-                //     prop: 'subTotalMoney',
-                //     overHidden: true,
-                //     width: 100
-                // }, {
-                //     label: '返利',
-                //     prop: 'thisAmount',
-                //     overHidden: true,
-                //     width: 100
-                // }, 
-                // {
-                //     label: '成本',
-                //     prop: 'costprie',
-                //     overHidden: true,
-                //     width: 100
-                // }
-            ]
+                    //  {
+                    //     label: '毛利',
+                    //     prop: 'grossProfit',
+                    //     overHidden: true,
+                    //     width: 100
+                    // },
+                    // {
+                    //   label: '利润',
+                    //   prop: 'profit',
+                    //   overHidden: true,
+                    //   width: 100
+                    // }
+                    // , {
+                    //     label: '小计',
+                    //     prop: 'subTotalMoney',
+                    //     overHidden: true,
+                    //     width: 100
+                    // }, {
+                    //     label: '返利',
+                    //     prop: 'thisAmount',
+                    //     overHidden: true,
+                    //     width: 100
+                    // }, 
+                    // {
+                    //     label: '成本',
+                    //     prop: 'costprie',
+                    //     overHidden: true,
+                    //     width: 100
+                    // }
+                ]
             },
             optionPaymentDetails: {},
             optionPaymentDetailsBack: {
@@ -579,16 +604,33 @@ export default {
         },
         //打印
         handlePrint() {
-            const salesDetail = this.form.orderItemsList;
-            // 调用 Avue 的打印方法
-            this.$print({
-                title: '销售明细打印', // 打印页面的标题
-                printBody: [
-                    // 构建打印内容,可以根据实际需求进行调整
-                    { type: 'html', value: '<h1>销售明细</h1>' },
-                    { type: 'table', value: salesDetail }
-                ]
-            });
+            // 获取表格的表头和内容的HTML代码
+            const tableHeader = this.$refs.formContacts.$el.querySelector('.el-table__header-wrapper').outerHTML;
+            const tableContent = this.$refs.formContacts.$el.querySelector('.el-table__body-wrapper').outerHTML;
+
+            // 创建一个新的打印页面
+            const printWindow = window.open('', '_blank');
+
+            // 将新窗口的内容设置为表头和内容的HTML代码
+            printWindow.document.open();
+            printWindow.document.write(`
+        <html>
+          <head>
+            <style>
+              /* 添加打印样式 */
+            </style>
+          </head>
+          <body>
+            ${tableHeader}
+            ${tableContent}
+          </body>
+        </html>
+      `);
+            printWindow.document.close();
+
+            // 在新窗口中调用浏览器的打印功能
+            printWindow.print();
+            printWindow.close();
         },
         //自定义列保存
         async saveColumnTwo(ref, option, optionBack, code) {

+ 2 - 2
vue.config.js

@@ -33,9 +33,9 @@ module.exports = {
         //本地服务接口地址
         // target: 'http://192.168.3.64:1080',
         // target: 'http://192.168.8.108:1080',
-        target: 'http://192.168.8.104:1080',
+        // target: 'http://192.168.8.113:1080',
         // 打包地址
-        // target: 'http://121.37.83.47:10004',//服务器ip
+        target: 'http://121.37.83.47:10004',//服务器ip
         // target: 'http://trade.tubaosoft.com:10004',//服务器域名
         ws: true,
         pathRewrite: {