Browse Source

文档需求提交

wucl 2 years ago
parent
commit
bbbc90b482

+ 2 - 0
src/router/urlMap.js

@@ -102,4 +102,6 @@ export default {
   _views_brokerage_settle,
   _views_brokerage_settle_detail,
   _views_brokerage_deduction,
+  _views_market_visit_reply: () =>
+    import('../views/market/visit/reply'), //拜访日志回复页
 }

+ 2 - 2
src/views/item/list.vue

@@ -123,7 +123,7 @@
         </el-table-column>
         <el-table-column label="状态" align="center" width="100">
           <template slot-scope="{row}">
-            <el-tag>{{ row.state}}</el-tag>
+            <el-tag>{{ row.itemStatus}}</el-tag>
           </template>
         </el-table-column>
         <el-table-column label="当前阶段" align="center" width="100">
@@ -248,7 +248,7 @@
           page: 1,
           size: 10,
           descs: 'id',
-          state:null
+          state:'进行中'
         },
         listQueryKey: 'keyword',
         importLoading: false,

+ 1 - 1
src/views/market/customer/list.vue

@@ -89,7 +89,7 @@
             <span>{{ row.secCity }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="部门" align="center" width="300">
+        <el-table-column label="单位" align="center" width="300">
           <template slot-scope="{row}">
             <span>{{ row.department }}</span>
           </template>

+ 1 - 1
src/views/market/index.vue

@@ -197,7 +197,7 @@
       toItemPage(){
         const date = new Date();
         const curYear = date.getFullYear();
-        this.$router.push(`/item/list/me?businessNo=${curYear}`);
+        this.$router.push(`/item/list/mine?businessNo=${curYear}`);
       },
       toBusinessPage() {
         this.$router.push(`/market/business`)

+ 1 - 0
src/views/market/payment/detailList.vue

@@ -62,6 +62,7 @@
               style="margin-left: 10px;"
               icon="el-icon-delete-solid"
               type="danger"
+              disabled
               @click="deleteInfo(row.id)"
             >
               删除

+ 10 - 10
src/views/market/visit/detail.vue

@@ -7,7 +7,7 @@
       <div style="padding-top: 30px;">
         <el-tabs v-model="activeName">
           <el-tab-pane label="拜访详情" name="first">
-            <el-form ref="postForm" :model="postForm" class="form-container" style="padding-left: 500px">
+            <el-form ref="postForm" :model="postForm" class="form-container" style="padding-left: 200px;">
               <div>
                 <div class="postInfo-container">
                   <el-row>
@@ -25,7 +25,7 @@
                           clearable
                           filterable
                           class="filter-item"
-                          style=" width: 100%"
+                          style="width:360px"
                           @change="getCustomerDetail"
 
                         >
@@ -47,7 +47,7 @@
                         label-width="180px"
                         class="postInfo-container-item"
                       >
-                        <el-input style="width: 100%" :value="postForm.customerLevel" readonly disabled/>
+                        <el-input style="width:360px" :value="postForm.customerLevel" readonly disabled/>
                       </el-form-item>
                     </el-col>
                   </el-row>
@@ -59,7 +59,7 @@
                         label-width="180px"
                         class="postInfo-container-item"
                       >
-                        <el-input style="width: 100%" :value="postForm.customerDepartment" readonly disabled/>
+                        <el-input style="width:360px" :value="postForm.customerDepartment" readonly disabled/>
                       </el-form-item>
                     </el-col>
                   </el-row>
@@ -71,7 +71,7 @@
                         label-width="180px"
                         class="postInfo-container-item"
                       >
-                        <el-input style="width: 100%" :value="postForm.customerSection" readonly disabled/>
+                        <el-input style="width:360px" :value="postForm.customerSection" readonly disabled/>
                       </el-form-item>
                     </el-col>
                   </el-row>
@@ -83,7 +83,7 @@
                         label-width="180px"
                         class="postInfo-container-item"
                       >
-                        <el-input style="width: 100%" :value="postForm.customerPosition" readonly disabled/>
+                        <el-input style="width:360px" :value="postForm.customerPosition" readonly disabled/>
                       </el-form-item>
                     </el-col>
                   </el-row>
@@ -101,7 +101,7 @@
                           class="postInfo-container-item"
                           :rules="{required: true, message: '选择拜访类型', trigger: 'blur'}"
                         >
-                          <el-select clearable style="width: 100%" v-model="postForm.visitType" placeholder="拜访类型">
+                          <el-select clearable style="width:360px" v-model="postForm.visitType" placeholder="拜访类型">
                             <el-option key="0" label="初访" value="初访"/>
                             <el-option key="1" label="回访" value="回访"/>
                           </el-select>
@@ -125,7 +125,7 @@
                             v-model="postForm.visitTime"
                             type="date"
                             value-format="yyyy-MM-dd"
-                            style="width: 100%"
+                            style="width:360px"
                             placeholder="选择日期"
                           />
                         </el-form-item>
@@ -143,7 +143,7 @@
                           label-width="180px"
                           class="postInfo-container-item"
                         >
-                          <el-input v-model="postForm.spot" class="filter-item"/>
+                          <el-input v-model="postForm.spot"  style="width:360px" class="filter-item"/>
                         </el-form-item>
                       </el-col>
                     </el-row>
@@ -159,7 +159,7 @@
                           label-width="180px"
                           class="postInfo-container-item"
                         >
-                          <el-input type="textarea" v-model="postForm.content" class="filter-item" placeholder="200字符" :autosize="{ minRows: 8, maxRows: 8}"/>
+                          <el-input type="textarea" style="width:360px" v-model="postForm.content" class="filter-item" placeholder="200字符" :autosize="{ minRows: 8, maxRows: 8}"/>
                         </el-form-item>
                       </el-col>
                     </el-row>

+ 15 - 6
src/views/market/visit/list.vue

@@ -17,8 +17,8 @@
           style="float: left"
         />
         <el-input
-          v-model="listQuery.customerName"
-          placeholder="客户名字"
+          v-model="listQuery.keyword"
+          placeholder="名字/等级/部门/科室/职位"
           clearable
           style="margin-left: 20px;width: 320px;float: left;">
         </el-input>
@@ -113,6 +113,15 @@
               round
               size="mini"
             />
+            <el-button
+              class="filter-item"
+              style="margin-left: 10px;"
+              type="success"
+              round
+              @click="jumpReply(row.id)"
+            >
+              回复
+            </el-button>
             <PermissionButton
               menu-code="_views_market_visit_remove"
               class-name="filter-item"
@@ -161,9 +170,7 @@
           page: 1,
           size: 10,
           descs: 'id',
-          current:null
         },
-        listQueryKey: 'keyword',
       }
     },
     created() {
@@ -171,6 +178,9 @@
       that.getList();
     },
     methods: {
+      jumpReply(id){
+        this.$router.push({path:'/market/visit/reply', query:{bizTableId:id}})
+      },
       resetSearch() {
         this.listQuery = {
           current: 1,
@@ -188,9 +198,8 @@
       getList() {
         const that = this
         this.listLoading = true;
-        const key = {};
         this.$api.visit
-          .list(Object.assign({}, that.listQuery, key))
+          .list(Object.assign({}, that.listQuery))
           .then((res) => {
             that.pageData = res.data
             setTimeout(() => {

+ 162 - 0
src/views/market/visit/reply.vue

@@ -0,0 +1,162 @@
+<template>
+  <div class="app-container">
+    <div class="title-container">
+      <breadcrumb id="breadcrumb-container" class="breadcrumb-container"/>
+    </div>
+    <y-page-list-layout :page-list="pageData" :page-para="listQuery" :get-page-list="getList">
+      <template slot="left">
+        <el-input
+          v-model="listQuery.userName"
+          placeholder="人员名称"
+          clearable
+          style="margin-left: 20px;width: 320px;float: left;"
+        >
+        </el-input>
+        <el-button
+          class="filter-item"
+          style="margin-left: 10px;float: left;"
+          type="primary"
+          @click="getList"
+          round
+        >搜索
+        </el-button>
+        <el-button
+          class="filter-item"
+          style="float: left;"
+          round
+          type="warning"
+          @click="resetSearch()"
+        >重置
+        </el-button>
+      </template>
+      <parentTable
+        v-loading="listLoading"
+        :data="pageData.records"
+        slot="table"
+        style="width: 100%;"
+      >
+        <el-table-column label="内容" align="center">
+          <template slot-scope="{row}">
+            <span>{{ row.content }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="回复人" align="center">
+          <template slot-scope="{row}">
+            <span>{{ row.replier }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="状态" align="center">
+          <template slot-scope="{row}">
+            <span>{{row.state}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="回复时间" align="center">
+          <template slot-scope="{row}">
+            <span>{{ row.created}}</span>
+          </template>
+        </el-table-column>
+      </parentTable>
+    </y-page-list-layout>
+  </div>
+</template>
+<script>
+  import YPageListLayout from '@/components/YPageListLayout'
+  import Breadcrumb from '@/components/Breadcrumb'
+  export default {
+    name: 'ViewsMarketVisitReply',
+    components: {
+      Breadcrumb,
+      YPageListLayout,
+    },
+    filters: {
+      statusFilter(status) {
+        const statusMap = {
+          published: 'success',
+          draft: 'info',
+          deleted: 'danger',
+        }
+        return statusMap[status]
+      },
+    },
+    data() {
+      return {
+        tableKey: 0,
+        pageData: {},
+        total: 20,
+        listLoading: true,
+        listQuery: {
+          page: 1,
+          size: 10,
+          descs: 'id',
+        },
+        listQueryKey: 'keyword',
+      }
+    },
+    created() {
+      this.getList()
+    },
+    methods: {
+      resetSearch() {
+        this.listQuery = {
+          current: 1,
+          size: 10,
+          descs: 'id',
+        }
+        this.getList()
+      },
+      getList() {
+        const that = this;
+        this.listLoading = true;
+        this.$api.itemBrokerageSequence.deduction(Object.assign({}, that.listQuery)).then((res) => {
+          that.pageData = res.data;
+          setTimeout(() => {
+            that.listLoading = false
+          }, 200);
+        })
+          .catch(() => {
+            that.listLoading = false
+          })
+      },
+    }
+  }
+</script>
+<style lang="scss" scoped>
+  .right {
+    flex: 1;
+
+    .title {
+      font-size: 16px;
+      font-weight: 500;
+      color: rgba(51, 51, 51, 1);
+      line-height: 35px;
+      margin-bottom: 8px;
+    }
+
+    .menu-2-box {
+      display: flex;
+      flex-wrap: wrap;
+      width: 100%;
+    }
+
+    .menu-2-item {
+      display: flex;
+      align-items: center;
+      color: #656565;
+      font-size: 12px;
+      width: 230px;
+      height: 101px;
+      background: rgb(255, 185, 129);
+      border-radius: 3px;
+      padding-left: 20px;
+      margin-right: 10px;
+      margin-bottom: 10px;
+      cursor: pointer;
+      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12), 0 0 6px rgba(0, 0, 0, 0.04);
+
+      .text {
+        margin-left: 16px;
+      }
+    }
+  }
+
+</style>