wsx 11 месяцев назад
Родитель
Сommit
3185e1581e

+ 10 - 2
src/views/purchasingManage/purchaseOrder/components/detailDialog.vue

@@ -10,6 +10,7 @@
     @close="cancel"
     :maxable="true"
     :resizable="true"
+    :modal="modal"
   >
     <div class="switch">
       <div class="switch_left">
@@ -410,7 +411,7 @@
   import { levelList } from '@/enum/dict.js';
 
   export default {
-    mixins: [dictMixins,tabMixins],
+    mixins: [dictMixins, tabMixins],
     components: {
       billDetailDialog,
       // fileMain,
@@ -419,6 +420,12 @@
       accountstatementList,
       bpmDetail
     },
+    props: {
+      modal: {
+        type: Boolean,
+        default: true
+      }
+    },
     data() {
       return {
         orderSourceType,
@@ -700,7 +707,8 @@
             prop: 'goodsLevel',
             label: '物品级别',
             formatter: (_row, _column, cellValue) => {
-              return levelList.find(item=>item.value==_row.goodsLevel)?.label
+              return levelList.find((item) => item.value == _row.goodsLevel)
+                ?.label;
             },
             align: 'center'
           },

+ 37 - 9
src/views/purchasingManage/supplierManage/components/contactDetailDialog.vue

@@ -350,22 +350,25 @@
           >
             <!-- 查看详情列 -->
             <!-- 查看详情列 -->
-            <template v-slot:contractNo="{ row }">
+            <template v-slot:orderNo="{ row }">
+              <!-- 订单编码 -->
               <el-link
                 type="primary"
                 :underline="false"
-                @click="opencontractDetail(row)"
+                @click="openorderDetail(row, 'orderNo')"
               >
-                {{ row.contractNo }}
+                {{ row.orderNo }}
               </el-link>
             </template>
-            <template v-slot:orderNo="{ row }">
+
+            <template v-slot:contractNo="{ row }">
+              <!-- 合同编码 -->
               <el-link
                 type="primary"
                 :underline="false"
-                @click="openorderDetail(row)"
+                @click="opencontractDetail(row, 'contractNo')"
               >
-                {{ row.orderNo }}
+                {{ row.contractNo }}
               </el-link>
             </template>
           </ele-pro-table>
@@ -529,10 +532,22 @@
     <div slot="footer" class="footer">
       <el-button @click="cancel">返回</el-button>
     </div>
+
+    <detail-dialog1
+      ref="contactDetailDialogRef1"
+      :modal="false"
+    ></detail-dialog1>
+    <!-- <detail-dialog2
+      ref="contactDetailDialogRef2"
+      :modal="false"
+    ></detail-dialog2> -->
   </ele-modal>
 </template>
 
 <script>
+  import detailDialog1 from '@/views/purchasingManage/purchaseOrder/components/detailDialog.vue';
+  // import detailDialog2 from '@/views/contractManage/contractBook/components/detailDialog.vue';
+
   import {
     contactDetail,
     contactQcPackPageAPI
@@ -565,7 +580,9 @@
       certificateManagement,
       fileUpload,
       deptSelect,
-      personSelect
+      personSelect,
+      detailDialog1,
+      // detailDialog2
     },
     data() {
       let formDef = {
@@ -1418,7 +1435,8 @@
     methods: {
       async open(row, curNodeData) {
         this.requestDict('生产类型');
-        this.type = curNodeData.rootCategoryLevelId == '20250317001' ? '6' : '3';
+        this.type =
+          curNodeData.rootCategoryLevelId == '20250317001' ? '6' : '3';
 
         this.row = row;
         this.visible = true;
@@ -1541,7 +1559,17 @@
 
       downloadFile(file) {
         getFile({ objectName: file.storePath }, file.name);
-      }
+      },
+      // 订单记录订单编码跳转
+      openorderDetail(row, type) {
+        console.log(type);
+        this.$refs.contactDetailDialogRef1.open(row);
+      },
+      // 订单记录合同编码
+      // opencontractDetail(row, type) {
+      //   console.log(row, type);
+      //   this.$refs.contactDetailDialogRef2.open(row);
+      // }
     }
   };
 </script>

+ 163 - 147
src/views/saleManage/contact/components/darwerComponents/followList.vue

@@ -29,7 +29,7 @@
           type="primary"
           :underline="false"
           icon="el-icon-edit"
-          @click="openEdit('edit', row,$index )"
+          @click="openEdit('edit', row, $index)"
         >
           修改
         </el-link>
@@ -52,162 +52,178 @@
 </template>
 
 <script>
-import AddFollowDialog from './addFollowDialog.vue';
-import { contactUpdate } from '@/api/saleManage/contact';
-
-export default {
-  components: {
-    AddFollowDialog
-  },
-
-  data() {
-    return {
-      list: [],
-      form: {},
-      delVisible: false,
-      columns: [
-        {
-          columnKey: 'index',
-          label: '序号',
-          type: 'index',
-          width: 55,
-          align: 'center',
-          showOverflowTooltip: true,
-          fixed: 'left'
-        },
-        {
-          prop: 'content',
-          label: '跟进内容',
-          slot: 'content',
-          showOverflowTooltip: true,
-          minWidth: 200
-        },
-        {
-          prop: 'stageName',
-          label: '跟进阶段',
-          slot: 'stageName',
-          showOverflowTooltip: true,
-          minWidth: 100
-        },
-        {
-          prop: 'agreement',
-          label: '达成共识',
-          showOverflowTooltip: true,
-          minWidth: 110
-        },
-        {
-          prop: 'linkName',
-          label: '客户联系人名称',
-          showOverflowTooltip: true,
-          minWidth: 110
-        },
-        {
-          prop: 'nextPlan',
-          label: '下一步计划',
-          showOverflowTooltip: true,
-          minWidth: 110
-        },
-        {
-          prop: 'followupTime',
-          label: '跟进时间',
-          align: 'center',
-          showOverflowTooltip: true,
-          minWidth: 110,
-          formatter: (_row, _column, cellValue) => {
-            return this.$util.toDateString(cellValue);
-          }
-        },
-        {
-          prop: 'createTime',
-          label: '创建时间',
-          align: 'center',
-          showOverflowTooltip: true,
-          minWidth: 110,
-          formatter: (_row, _column, cellValue) => {
-            return this.$util.toDateString(cellValue);
-          }
-        },
-
-        {
-          columnKey: 'action',
-          label: '操作',
-          width: 230,
-          align: 'center',
-          resizable: false,
-          slot: 'action',
-          showOverflowTooltip: true,
-          fixed: 'right'
-        }
-      ]
-    };
-  },
-
-  methods: {
-    openEdit(type, row,index) {
-      this.$refs.addFollowDialogRef.open(type, row, this.form.linkList,index);
-      this.$refs.addFollowDialogRef.$refs.form &&
-        this.$refs.addFollowDialogRef.$refs.form.clearValidate();
-    },
+  import AddFollowDialog from './addFollowDialog.vue';
+  import { contactUpdate } from '@/api/saleManage/contact';
+
+  import { contactDetail } from '@/api/saleManage/contact';
 
-    async init(row) {
-      this.form = row;
-      this.list = row.base.opportunityFollowupList;
+  export default {
+    components: {
+      AddFollowDialog
     },
-    handleBankDel(row, index) {
-      this.list.splice(index, 1);
-      // this.save();
+
+    data() {
+      return {
+        key: '',
+        list: [],
+        form: {},
+        delVisible: false,
+        columns: [
+          {
+            columnKey: 'index',
+            label: '序号',
+            type: 'index',
+            width: 55,
+            align: 'center',
+            showOverflowTooltip: true,
+            fixed: 'left'
+          },
+          {
+            prop: 'content',
+            label: '跟进内容',
+            slot: 'content',
+            showOverflowTooltip: true,
+            minWidth: 200
+          },
+          {
+            prop: 'stageName',
+            label: '跟进阶段',
+            slot: 'stageName',
+            showOverflowTooltip: true,
+            minWidth: 100
+          },
+          {
+            prop: 'agreement',
+            label: '达成共识',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'linkName',
+            label: '客户联系人名称',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'nextPlan',
+            label: '下一步计划',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'followupTime',
+            label: '跟进时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110,
+            formatter: (_row, _column, cellValue) => {
+              return this.$util.toDateString(cellValue);
+            }
+          },
+          {
+            prop: 'createTime',
+            label: '创建时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110,
+            formatter: (_row, _column, cellValue) => {
+              return this.$util.toDateString(cellValue);
+            }
+          },
+
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 230,
+            align: 'center',
+            resizable: false,
+            slot: 'action',
+            showOverflowTooltip: true,
+            fixed: 'right'
+          }
+        ]
+      };
     },
-    done({data,type,index}) {
-      data.linkId=data.linkId.toString()
-      if(type=='add'){
-        this.list.unshift(data);
-      }else{
-        this.$set(this.list,index,data)
+
+    methods: {
+      openEdit(type, row, index) {
+        this.$refs.addFollowDialogRef.open(
+          type,
+          row,
+          this.form.linkList,
+          index
+        );
+        this.$refs.addFollowDialogRef.$refs.form &&
+          this.$refs.addFollowDialogRef.$refs.form.clearValidate();
+      },
+
+      async init(row) {
+        this.form = row;
+        this.list = row.base.opportunityFollowupList;
+      },
+      handleBankDel(row, index) {
+        this.list.splice(index, 1);
+        // this.save();
+      },
+      done({ data, type, index }) {
+        data.linkId = data.linkId.toString();
+        if (type == 'add') {
+          this.list.unshift(data);
+        } else {
+          this.$set(this.list, index, data);
+        }
+      },
+      save() {
+        console.log(this.form);
+
+        this.form.base.opportunityFollowupList = this.list;
+        contactUpdate(this.form)
+          .then((res) => {
+            this.$message.success('修改成功');
+
+            contactDetail(this.form.base.id).then((res) => {
+              this.list = res.base.opportunityFollowupList;
+            });
+
+        
+            this.$emit('success');
+          })
+          .catch((e) => {
+            //this.loading = false;
+          });
       }
-    },
-    save() {
-      this.form.base.opportunityFollowupList = this.list
-      contactUpdate(this.form)
-        .then((res) => {
-          this.$message.success('修改成功');
-          this.$emit('success')
-        })
-        .catch((e) => {
-          //this.loading = false;
-        });
     }
-  }
-};
+  };
 </script>
 
 <style lang="scss" scoped>
-.tree_col {
-  border: 1px solid #eee;
-  padding: 10px 0;
-  box-sizing: border-box;
-  height: 500px;
-  overflow: auto;
-}
-
-.table_col {
-  padding-left: 10px;
-
-  ::v-deep .el-table th.el-table__cell {
-    background: #f2f2f2;
+  .tree_col {
+    border: 1px solid #eee;
+    padding: 10px 0;
+    box-sizing: border-box;
+    height: 500px;
+    overflow: auto;
   }
-}
 
-.pagination {
-  text-align: right;
-  padding: 10px 0;
-}
+  .table_col {
+    padding-left: 10px;
 
-.btns {
-  text-align: center;
-  padding: 10px 0;
-}
+    ::v-deep .el-table th.el-table__cell {
+      background: #f2f2f2;
+    }
+  }
 
-.topsearch {
-  margin-bottom: 15px;
-}
+  .pagination {
+    text-align: right;
+    padding: 10px 0;
+  }
+
+  .btns {
+    text-align: center;
+    padding: 10px 0;
+  }
+
+  .topsearch {
+    margin-bottom: 15px;
+  }
 </style>

+ 2 - 0
src/views/saleManage/contact/components/drawer.vue

@@ -275,6 +275,8 @@
     },
     methods: {
       async open(row, pageName) {
+        console.log(row, pageName);
+        
         this.row = await contactDetail(row.id);
         this.pageName = pageName;
         const contactCountData = await queryContactIdCount(row.id);

+ 7 - 0
src/views/transportManager/carBook/index.vue

@@ -380,6 +380,13 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+
+:deep(.el-badge__content) {
+  top:25%;
+}
+
+
+
 :deep(.el-link--inner) {
   margin-left: 0px !important;
 }