Преглед изворни кода

Merge remote-tracking branch 'origin/dev' into dev

dongxin пре 1 година
родитељ
комит
ef5b0de3ec
30 измењених фајлова са 514 додато и 302 уклоњено
  1. BIN
      src/assets/机构人员.png
  2. 20 12
      src/components/UserDetail/index.vue
  3. 3 10
      src/components/customerService/floatingBar.vue
  4. 53 3
      src/views/AgreementManage/CarInsurance/AgreementEntry.vue
  5. 19 1
      src/views/AgreementManage/CarInsurance/AgreementProductFee.vue
  6. 2 1
      src/views/AgreementManage/CarInsurance/ProductCostExamine.vue
  7. 203 134
      src/views/PeopleManage/PcLoginRecord.vue
  8. 180 136
      src/views/PeopleManage/UserMap.vue
  9. 4 3
      src/views/PeopleManage/vdr.vue
  10. 1 0
      src/views/Task/AgentPoolChannel/AgentPoolChannel.vue
  11. 1 0
      src/views/Task/AgentPoolChannel/AgentPoolChannel1.vue
  12. 1 0
      src/views/Task/AgentPoolChannel/AgentPoolChannel2.vue
  13. 1 0
      src/views/Task/AgentPoolChannel/AgentPoolChannel3.vue
  14. 1 0
      src/views/Task/AgentPoolChannel/AgentPoolChannel4.vue
  15. 1 0
      src/views/Task/CompanyPoolChannel/CompanyPoolChannel.vue
  16. 1 0
      src/views/Task/CompanyPoolChannel/CompanyPoolChannel1.vue
  17. 1 0
      src/views/Task/CompanyPoolChannel/CompanyPoolChannel2.vue
  18. 1 0
      src/views/Task/CompanyPoolChannel/CompanyPoolChannel3.vue
  19. 1 0
      src/views/Task/CompanyPoolChannel/CompanyPoolChannel4.vue
  20. 1 0
      src/views/Task/ElectricSales/AgentPoolChannel.vue
  21. 1 0
      src/views/Task/ElectricSales/AgentPoolChannel1.vue
  22. 1 0
      src/views/Task/ElectricSales/AgentPoolChannel2.vue
  23. 1 0
      src/views/Task/ElectricSales/AgentPoolChannel3.vue
  24. 1 0
      src/views/Task/ElectricSales/AgentPoolChannel4.vue
  25. 1 0
      src/views/Task/TaskPoolChannel/TaskPoolChannel.vue
  26. 1 0
      src/views/Task/TaskPoolChannel/TaskPoolChannel1.vue
  27. 1 0
      src/views/Task/TaskPoolChannel/TaskPoolChannel2.vue
  28. 1 0
      src/views/Task/TaskPoolChannel/TaskPoolChannel3.vue
  29. 1 0
      src/views/Task/TaskPoolChannel/TaskPoolChannel4.vue
  30. 10 2
      src/views/Task/daikeComponents/KtOrder.vue

BIN
src/assets/机构人员.png


+ 20 - 12
src/components/UserDetail/index.vue

@@ -144,7 +144,7 @@
         <el-col :span="8">
           <el-form-item label="居住地址">
             <!-- <el-select
-              
+
               v-model="formDataDetail.address"
               placeholder="省市区"
             ></el-select> -->
@@ -241,25 +241,31 @@
         </el-col>
         <el-col :span="8">
           <el-form-item label="原工作单位" prop="formerEmployer">
+            <input type="text" style="display:none" />
             <el-input
               :disabled="isDisabled"
               style="width: 100%"
               v-model="formDataDetail.formerEmployer"
               placeholder="请输入原工作单位"
+              name="formerEmployer"
+              autocomplete="new-password"
             ></el-input>
           </el-form-item>
         </el-col>
         <el-col :span="8">
           <el-form-item label="密码" prop="password">
+            <input type="text" style="display:none" autocomplete="off" />
             <el-input
              :disabled="isDisabled"
               v-if="showPassWord"
               style="width: 100%"
               v-model="formData.password"
               type="text"
+              name="uniquePassword"
+              autocomplete="new-password"
             >
             <i v-show="formData.password" slot="suffix" @click="switchPassword">
-              <img class="Vector" src="@/assets/image/people/Vector.svg" alt="">
+              <img class="Vector" src="@/assets/image/people/Frame.svg" alt="">
             </i>
             </el-input>
             <el-input
@@ -268,9 +274,11 @@
               style="width: 100%"
               v-model="formData.password"
               type="password" show-password
+              name="uniquePassword"
+              autocomplete="new-password"
             >
             <i v-show="formData.password && !isDisabled" slot="suffix" @click="switchPassword">
-              <img class="Frame" src="@/assets/image/people/Frame.svg" alt="">
+              <img class="Frame" src="@/assets/image/people/Vector.svg" alt="">
             </i>
             </el-input>
             <!-- :class="isShow == true ? 'disc' : 'none'" -->
@@ -323,8 +331,8 @@
           </el-form-item>
         </el-col>
       </el-row>
-      
-        <!-- 
+
+        <!--
 
         <el-col :span="8">
           <el-form-item label="邮箱">
@@ -691,14 +699,14 @@ export default {
       color: #D42426; /* 你希望的选中颜色 */
     }
   }
-  .el-cascader-node.in-active-path, 
-  .el-cascader-node.is-active, 
+  .el-cascader-node.in-active-path,
+  .el-cascader-node.is-active,
   .el-cascader-node.is-selectable.in-checked-path{
     background: #FEF8F8;
     color: #D42426;
   }
-}  
-.el-cascader-menu .el-scrollbar__view 
+}
+.el-cascader-menu .el-scrollbar__view
 .select-prop {
   .el-select-dropdown__item.selected,
   .el-date-table td.available:hover {
@@ -775,7 +783,7 @@ export default {
 .el-form {
   overflow-y: scroll;
   max-height: 600px;
-  padding-top: 0px !important; 
+  padding-top: 0px !important;
 }
 .personnelInformation{
   padding: 0 !important;
@@ -827,7 +835,7 @@ export default {
       position: relative;
     }
   }
-  
+
 }
 /deep/ .el-input__suffix-inner{
   position: relative;
@@ -852,4 +860,4 @@ export default {
 .el-select-dropdown__item.hover{
   background: #FEF8F8;
 }
-</style>
+</style>

+ 3 - 10
src/components/customerService/floatingBar.vue

@@ -9,9 +9,7 @@
       </div>
       <el-popover placement="right-end" width="30" trigger="hover">
         <div class="flex f-c a-c">
-          <div class="qrCode flex j-c a-c">
-            <div id="qrcode" ref="qrcode"></div>
-          </div>
+          <img :src="wechatPictureUrl" alt="" style="width: 130px;height:130px;">
           <span style="font-size: 14px;color: #333;margin-top: 5px;">微信扫码咨询</span>
         </div>
         <div class="humanAgent flex f-c j-c a-c" slot="reference" >
@@ -40,6 +38,7 @@ export default {
       qrcode: null,
       qrcodeWidth: "130",
       qrcodeHeight: "130",
+      wechatPictureUrl:"",
     }
   },
   // 生命周期函数
@@ -55,13 +54,7 @@ export default {
     wechat() {
       this.$api.aiSupport.wechatpicture().then((res) => {
         if (res.code == '200') {
-          this.$nextTick(() => {
-            this.creatQrCode(res.data.wechatPictureUrl);
-          });
-        } else {
-          this.$nextTick(() => {
-            this.creatQrCode("https://www.baidu.com/s?ie=UTF-8&wd=baoidu");
-          });
+          this.wechatPictureUrl=process.env.APP_BASE_URL+ res.data.wechatPictureUrl;
         }
       });
     },

+ 53 - 3
src/views/AgreementManage/CarInsurance/AgreementEntry.vue

@@ -106,6 +106,14 @@
               <el-input :size="overSize" clearable v-model.trim="queryForm.dockingPerson" placeholder="请输入对接人"></el-input>
             </el-form-item>
           </el-col>
+          <el-col :span="6">
+            <el-form-item label="是否有效">
+              <el-select :size="overSize" v-model="queryForm.isValid" placeholder="请选择" clearable style="width: 100%">
+                <el-option label="有效" :value="1"></el-option>
+                <el-option label="无效" :value="0"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
         </el-row>
       </el-form>
       <div style="font-weight: bold;font-size: 15px;color: #242833;" class="p-1 flex j-s a-c">
@@ -352,6 +360,26 @@
                   </el-form-item>
                 </el-col>
               </el-row>
+              <el-row>
+                <el-col :span="12">
+                  <el-form-item label="选择机构">
+                    <el-select v-model="custodianIdData" placeholder="请选择对接管理人机构" :popper-append-to-body="false" style="width: 100%">
+                      <el-option :value="custodianIdTree" class="deptOption">
+                        <el-tree :data="internalDept" :props="defaultProps" ref="tree1" :highlight-current="true"
+                          @node-click="handleNodeClick1" default-expand-all></el-tree>
+                      </el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item label="对接管理人">
+                    <el-select v-model="agreement.custodianId" filterable clearable placeholder="请选择对接管理人" style="width: 100%">
+                      <el-option v-for="item in custodianList" :key="item.dictValue" :label="item.name"
+                        :value="item.userId"></el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+              </el-row>
               <el-row>
                 <el-col :span="12">
                   <el-form-item label="含增值税结算" prop="withTax">
@@ -504,7 +532,7 @@
       </el-tabs>
       <!-- 底部区域 -->
       <span slot="footer" class="dialog-footer">
-        <el-button :size="overSize" @click="agreementdialogVisible = false">取 消</el-button>
+        <el-button :size="overSize" @click="closeSubmit">取 消</el-button>
         <el-button :size="overSize" v-show="agreement.agreestatus != '0'" type="primary"
           style="background: #2D4D89;color: #fff;border-color: #2D4D89;" @click="submitForm">提交</el-button>
       </span>
@@ -1363,7 +1391,7 @@
         <el-steps direction="vertical" :active="trajectoryTable1.length - 1">
           <el-step :title="item.readme" :key="item.id" v-for="item in trajectoryTable1">
             <template slot="description">
-              <span>提交人:{{ item.createBy }}</span>
+              <span>提交人:{{ item.createName }}</span>
               <div style="margin-bottom: 20px;">创建时间:{{ item.createTime }}</div>
             </template>
           </el-step>
@@ -2009,6 +2037,7 @@ export default {
         cooperationChannels: "", //合作渠道
         dockingPerson: "", //对接人
         dockingPhone: "", //联系方式(对接人)
+        custodianId: '',
         endDate: "", //协议止期
         fileId: "", //	附件id
         insuranceCompanyId: "", //保险公司id
@@ -2366,6 +2395,9 @@ export default {
       showTrajectoryDialog: false,    // 协议轨迹
       ddgjdialogVisible1: false,
       trajectoryTable1: [],
+      custodianIdData: '',
+      custodianIdTree: '',
+      custodianList: [],
     };
   },
   computed: {
@@ -2463,7 +2495,7 @@ export default {
     this.defaultattributionform = JSON.parse(
       JSON.stringify(this.attributionform)
     );
-
+    this.getCustodianList()
   },
   mounted() {
     // this.labelWidth = "auto";
@@ -2530,6 +2562,18 @@ export default {
     agreementCurrentChange(val) {
       this.agreementActiveInfo = val;
     },
+    handleNodeClick1(data, self, child) {
+      this.custodianIdData = data.name;//展示部分
+      this.getCustodianList(data.id)
+    },
+    getCustodianList(id) {
+      this.$api.user.findBackUserList1({
+        deptId: id,
+        agentFlag: 0
+      }).then((res) => {
+        this.custodianList = res.data
+      })
+    },
     handleNodeClick(data, self, child) {
       this.labelData = data.name;//展示部分
       this.agreement.deptId = data.id
@@ -3921,6 +3965,12 @@ export default {
         this.agreement.agreementType = "2";
       }
     },
+    // 关闭提交
+    closeSubmit() {
+      this.agreementdialogVisible = false
+      this.agreement.custodianId = ''
+      this.custodianIdData = ''
+    },
     //提交
     submitForm() {
       let agreementCheckFlag = true; //协议信息校验标志

+ 19 - 1
src/views/AgreementManage/CarInsurance/AgreementProductFee.vue

@@ -44,6 +44,13 @@
             </el-select>
           </el-form-item>
         </el-col>
+        <el-col :span="6">
+          <el-form-item label="创建日期">
+            <el-date-picker style="width: 100%;" v-model="createDate" type="daterange" value-format="yyyy-MM-dd"
+              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" @change="costsEndDateChange1">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
         <el-col :span="12">
           <el-form-item label="费用描述">
             <el-select style="width: 100%;"  v-model="productpageRequest.costsDescription" multiple filterable allow-create default-first-option
@@ -604,7 +611,7 @@
             <el-col :span="12">
               <el-form-item label="费用起期:">
                 <el-date-picker size="small"  v-model="batchUpdateForm1.costsStartDate" type="datetime"
-                  placeholder="选择结束日期" value-format="yyyy-MM-dd HH:mm:ss">
+                  placeholder="选择开始日期" value-format="yyyy-MM-dd HH:mm:ss">
                 </el-date-picker>
               </el-form-item>
             </el-col>
@@ -640,6 +647,7 @@ export default {
   data() {
     return {
       productDate: [],
+      createDate: [],
       productcopyDate: [],
       protocolpageResult: [],
       productcopyItemResult: [],//协议费用列表
@@ -1734,6 +1742,16 @@ export default {
       this.productpageRequest.costStartDate = e[0];
       this.productpageRequest.costsEndDate = e[1];
     },
+    costsEndDateChange1(e) {
+      if (e) {
+        this.productpageRequest.createStartTime = e[0];
+        this.productpageRequest.createEndTime = e[1];
+      } else {
+        this.productpageRequest.createStartTime = '';
+        this.productpageRequest.createEndTime = '';
+      }
+    },
+    
     //产品分页json
     productCostFindPage(data) {
       if (data && data.pageRequest) {

+ 2 - 1
src/views/AgreementManage/CarInsurance/ProductCostExamine.vue

@@ -12,7 +12,8 @@
 
       <el-form-item label="协议选择">
         <el-select size="small" multiple clearable collapse-tags filterable v-model="productpageRequest.agreementIdList" :placeholder="'请输入'">
-          <el-option v-for="(s, i) in agreementList" :key="i" :label="s.agreementName" :value="s.id"></el-option>
+          <el-option v-for="(s, i) in agreementList" :key="i" 
+          :label="s.agreementTitle + '-' + (s.businessDescription || ' ') + '-' + (s.jobDescription || '  ')" :value="s.id"></el-option>
         </el-select>
       </el-form-item>
 

+ 203 - 134
src/views/PeopleManage/PcLoginRecord.vue

@@ -20,10 +20,19 @@
             :value="option.code"></el-option>
         </el-select>
         <el-button size="small" type="primary" @click="onSearch">搜索</el-button>
-        <el-button size="small" type="primary" @click="getUserDeptTreeFun()">机构人员树</el-button>
         <!-- <el-button size="small" type="primary" @click="onCircular">圆形定位</el-button> -->
         <!-- <el-button size="small" type="primary" @click="map.remove(circle)">删除定位</el-button> -->
       </div>
+
+      <div class="personnel-tree" v-show="!deptPeopleVisible" @click="getUserDeptTreeFun()">
+        <img src="../../assets/机构人员.png" />
+        <span style="margin: 0 10px 0 5px;">机构人员树</span>
+        <i class="el-icon-arrow-right"></i>
+      </div>
+      <div class="line-window">
+      <span><i style=" background: #54B569 ;"></i>在线</span>
+      <span style="margin-left: 15px;"><i></i>离线</span>
+    </div>
       <div class="source-window">
         <div>
           <span>全部</span>
@@ -47,8 +56,8 @@
         </el-switch> -->
         </div>
       </div>
-       <!-- <MobileZoomDiv> -->
-        <div v-if="personnelVisible">
+      <!-- <MobileZoomDiv> -->
+      <div v-if="personnelVisible">
         <vdr title="人员详情" @visiblefun="personnelVisible = false" :width="700" :height="370">
           <el-table :data="personnelData" border style="width: 100%; " :header-cell-style="{
             background: '#F7F7F9',
@@ -69,7 +78,7 @@
             </el-table-column>
             <el-table-column prop="address" label="地址">
             </el-table-column>
-            <el-table-column prop="operationTime" label="登录时间"> 
+            <el-table-column prop="operationTime" label="登录时间">
             </el-table-column>
             <el-table-column prop="source" label="分类">
               <template slot-scope="scope">
@@ -82,9 +91,9 @@
                   size="small">
                   历史记录
                 </el-button>
-                <el-button  @click.native.prevent="operatelRecords(scope.row)" type="text"
+                <el-button style="color:#E96238 " @click.native.prevent="operatelRecords(scope.row)" type="text"
                   size="small">
-                  操作记录
+                  操作统计
                 </el-button>
               </template>
             </el-table-column>
@@ -103,29 +112,84 @@
       <!-- </MobileZoomDiv> -->
       <!-- <MobileZoomDivTR> -->
       <div v-if="infoWindowVisible">
-        <vdr title="历史记录" @visiblefun="infoWindowVisible = false"  :width="600" :height="430">
-          <el-table :data="tableData" border style="width: 98%; max-height: 45vh;
+        <vdr @visiblefun="infoWindowVisible = false" :width="600" :height="320">
+          <el-tabs slot="title" style="width: 92%;" v-model="historyName" @tab-click="handHistoryoperate">
+            <el-tab-pane label="历史记录" name="1">
+            </el-tab-pane>
+            <el-tab-pane label="操作统计" name="2">
+            </el-tab-pane>
+          </el-tabs>
+          <div v-show="historyName == 1">
+            <el-table :data="tableData" border style="width: 100%; max-height: 23vh;
             overflow-y: auto; " :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
               background: '#F2F7FC',
               fontWeight: '700',
               color: '#606266',
 
             }">
-          <el-table-column prop="userId" label="工号" width="130">
-          </el-table-column>
-          <el-table-column prop="userName" label="姓名" width="80">
-          </el-table-column>
-          <el-table-column prop="address" label="地址" >
-          </el-table-column>
-          <el-table-column prop="operationTime" label="登录时间" width="120">
-          </el-table-column>
-        </el-table>
-        <div class="bottomFixed">
-          <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
-            :page-sizes="[5, 10, 20, 30, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next"
-            :total="totalSum">
-          </el-pagination>
-        </div>
+              <el-table-column prop="userId" label="工号" width="130">
+              </el-table-column>
+              <el-table-column prop="userName" label="姓名" width="80">
+              </el-table-column>
+              <el-table-column prop="address" label="地址">
+              </el-table-column>
+              <el-table-column prop="operationTime" label="登录时间" width="120">
+              </el-table-column>
+            </el-table>
+            <div class="bottomFixed">
+              <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
+                :page-sizes="[3,5, 10, 20, 30, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next"
+                :total="totalSum">
+              </el-pagination>
+            </div>
+          </div>
+          <div v-show="historyName == 2">
+              <div style="margin-bottom: 10px;">
+                <span style="color: #262626;font-weight: 700;font-size: 14px;">时间筛选 </span>
+                <el-date-picker v-model="operateDate" type="datetimerange" size="small" @change="operateDateFun"
+                  :default-time="['00:00:01', '23:59:59']" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至"
+                  start-placeholder="开始日期" end-placeholder="结束日期">
+                </el-date-picker>
+              </div>
+              <el-table :data="tableoperateData" border style="width: 100%" :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
+                background: '#F2F7FC',
+                fontWeight: '700',
+                color: '#606266',
+
+              }">
+                <el-table-column prop="userId" label="工号">
+                </el-table-column>
+                <el-table-column prop="userName" label="姓名">
+                </el-table-column>
+                <el-table-column prop="carNumber" label="车险录单">
+                  <template slot-scope="scope">
+                    <el-tooltip v-if="scope.row.carNumber" class="item" effect="dark" :content="scope.row.carNumberTime"
+                      placement="bottom">
+                      <span>{{ scope.row.carNumber }}</span>
+                    </el-tooltip>
+                    <span v-else>{{ scope.row.carNumber }}</span>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="orderNumber" label="订单查询">
+                  <template slot-scope="scope">
+                    <el-tooltip v-if="scope.row.orderNumber" class="item" effect="dark"
+                      :content="scope.row.orderNumberTime" placement="bottom">
+                      <span>{{ scope.row.orderNumber }}</span>
+                    </el-tooltip>
+                    <span v-else>{{ scope.row.orderNumber }}</span>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="walletNumber" label="钱包">
+                  <template slot-scope="scope">
+                    <el-tooltip v-if="scope.row.walletNumber" class="item" effect="dark"
+                      :content="scope.row.walletNumberTime" placement="bottom">
+                      <span>{{ scope.row.walletNumber }}</span>
+                    </el-tooltip>
+                    <span v-else>{{ scope.row.walletNumber }}</span>
+                  </template>
+                </el-table-column>
+              </el-table>
+            </div>
         </vdr>
       </div>
       <!-- </MobileZoomDivTR> -->
@@ -201,84 +265,20 @@
         </div>
 
       </MobileZoomDivR>
-     
-      <div v-if="operatelVisible">
-        <vdr title="操作记录" @visiblefun="operatelVisible = false"  :width="600"  :height="250">
-          <div style="margin-bottom: 10px;">
-            <span style="color: #262626;font-weight: 700;font-size: 14px;">时间筛选 </span>
-            <el-date-picker v-model="operateDate" type="datetimerange" size="small" @change="operateDateFun"
-              :default-time="['00:00:01', '23:59:59']" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至"
-              start-placeholder="开始日期" end-placeholder="结束日期">
-            </el-date-picker>
-          </div>
-          <el-table :data="tableoperateData" border style="width: 98%; max-height: 45vh;
-              overflow-y: auto; " :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
-                background: '#F2F7FC',
-                fontWeight: '700',
-                color: '#606266',
-
-              }">
-            <el-table-column prop="userId" label="工号">
-            </el-table-column>
-            <el-table-column prop="userName" label="姓名">
-            </el-table-column>
-            <el-table-column prop="carNumber" label="车险录单">
-              <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.carNumber" class="item" effect="dark" :content="scope.row.carNumberTime" placement="bottom">
-                  <span >{{ scope.row.carNumber }}</span>
-                </el-tooltip>
-              <span v-else>{{ scope.row.carNumber }}</span>
-              </template > 
-            </el-table-column>
-            <el-table-column prop="orderNumber" label="订单查询">
-              <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.orderNumber" class="item" effect="dark" :content="scope.row.orderNumberTime" placement="bottom">
-                  <span >{{ scope.row.orderNumber }}</span>
-                </el-tooltip>
-                <span v-else>{{ scope.row.orderNumber }}</span>
-              </template > 
-            </el-table-column>
-            <el-table-column prop="walletNumber" label="钱包">
-              <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.walletNumber" class="item" effect="dark" :content="scope.row.walletNumberTime" placement="bottom">
-                  <span >{{ scope.row.walletNumber }}</span>
-                </el-tooltip>
-                <span v-else>{{ scope.row.walletNumber }}</span>
-              </template > 
-            </el-table-column>  
-          </el-table>
-          <!-- <div class="bottomFixed">
-            <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
-              :page-sizes="[5, 10, 20, 30, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next"
-              :total="totalSum">
-            </el-pagination>
-          </div> -->
-        </vdr>
-      </div>
 
       <div class="info-window" v-if="deptPeopleVisible">
-          <!-- <p class="close flex j-s">
-          <span>历史记录</span>
-          <span style="color: #c3c3c3;font-size:18px" @click="infoWindowVisible = false"> ×</span>
-        </p> -->
-        <div class="close flex j-s" style="padding:10px 0" >
-          <el-switch
-          v-model="deptPeopleValue"
-          @change="deptPeopleFun"
-          size="small"
-          active-text="机构树"
-          :disabled="ztreeNodeAll.type==1"
-          inactive-text="人员树">
-        </el-switch>
-        <span class="el-icon-close" style="color: #c3c3c3;cursor: pointer" @click="deptPeopleVisible = false"> </span>
+        <div class="info-box">
+          <i class="el-icon-arrow-left close-button" @click="deptPeopleVisible = false"></i>
+          <el-tabs style="width: 100%;" v-model="deptPeopleName" @tab-click="deptPeopleFun">
+            <el-tab-pane label="机构树" name="1"></el-tab-pane>
+            <el-tab-pane label="人员树" name="2" :disabled="ztreeNodeAll.type == 1"></el-tab-pane>
+          </el-tabs>
+          <div style=" height: 70vh;
+    overflow-y: auto;">
+            <el-tree :data="ztreeNodes" :props="{ children: 'children', label: 'name' }" node-key="id"
+              :default-expanded-keys="['9']" @node-click="onZTreeClick"></el-tree>
+          </div>
         </div>
-        <el-tree
-            :data="ztreeNodes"
-            :props="{ children: 'children', label: 'name' }"
-            node-key="id"
-            :default-expanded-keys="['9']"
-            @node-click="onZTreeClick"
-          ></el-tree>
       </div>
       <div class="info-window input-card" v-if="circle">
         <el-button size="small" round @click="circleEditor.open()" style="margin-bottom: 5px">开始编辑</el-button>
@@ -304,14 +304,14 @@ var myChart;
 export default {
   data() {
     return {
-      deptPeopleVisible:false,
-      deptPeopleType:0,
-      deptPeopleId:'',
-      ztreeNodes:[],
-      ztreeNodeAll:{},
-      deptPeopleValue:true,
+      deptPeopleVisible: false,
+      deptPeopleType: 0,
+      deptPeopleId: '',
+      ztreeNodes: [],
+      ztreeNodeAll: {},
+      deptPeopleValue: true,
       pageNum: 1, //当前页面
-      pageSize: 5, //每页显示条数
+      pageSize: 3, //每页显示条数
       totalSum: 0, //全部的数据条数
       tableData: [],
       marker: null,
@@ -366,9 +366,10 @@ export default {
       status: null,
       positionType: null,
       historyData: [],
-      operatelVisible: false,
       tableoperateData: [],
       operateDate: [],
+      deptPeopleName: '1',
+      historyName: '1',
     };
   },
   components: { MobileZoomDiv, MobileZoomDivR, MobileZoomDivTR, vdr },
@@ -385,40 +386,51 @@ export default {
     window.personnelclick = () => {
       this.personnelVisible = true;
     };
-   
+
   },
   destroyed() {
     // 销毁地图,并清空地图容器.该方法执行后,地图对象被注销,内存释放,地图容器被清空。
     this.map.destroy();
   },
   methods: {
-    getUserDeptTreeFun(){
+    handHistoryoperate(tab) {
+      if (tab.name == '1') {
+        this.detail()
+      }
+      else {
+        this.sysMenuRecordGetClick()
+      }
+    },
+    getUserDeptTreeFun() {
       this.$api.user
         .getUserDeptTree()
         .then(res => {
           if (res.code == 200) {
             this.ztreeNodes = res.data.deptList;
             this.ztreeNodeAll = res.data;
-            this.deptPeopleVisible=true;
+            this.deptPeopleVisible = true;
+            this.deptPeopleName = '1'
           }
         });
     },
-    deptPeopleFun(val){
-     if(val){
-      this.ztreeNodes = this.ztreeNodeAll.deptList;
-     }
-     else{
-      this.ztreeNodes = this.ztreeNodeAll.userList;
-     }
+    deptPeopleFun(tab) {
+      if (tab.name == '1') {
+        this.ztreeNodes = this.ztreeNodeAll.deptList;
+        this.deptPeopleType = 1
+      }
+      else {
+        this.ztreeNodes = this.ztreeNodeAll.userList;
+        this.deptPeopleType = 2
+      }
     },
     onZTreeClick: function (evt, treeId, treeNode) {
-      if(this.deptPeopleValue){
-        this.deptPeopleType=1
+      if (this.deptPeopleValue) {
+        this.deptPeopleType = 1
       }
-      else{
-        this.deptPeopleType=2
+      else {
+        this.deptPeopleType = 2
       }
-      this.deptPeopleId=evt.id
+      this.deptPeopleId = evt.id
       this.initMap();
     },
     operateDateFun(val) {
@@ -440,13 +452,14 @@ export default {
     },
     historicRecords(row) {
       this.rowId = row.userId
-      this.isCollapse = false
       this.infoWindowVisible = true
+      this.historyName='1'
       this.detail()
     },
     operatelRecords(row) {
       this.rowId = row.userId
-      this.operatelVisible = true
+      this.infoWindowVisible = true
+      this.historyName='2'
       this.sysMenuRecordGetClick()
     },
 
@@ -815,7 +828,7 @@ export default {
         this.initMap();
       }
       else {
-          this.queryAnalysis({ startTime: this.historyData[0], endTime: this.historyData[1] });
+        this.queryAnalysis({ startTime: this.historyData[0], endTime: this.historyData[1] });
       }
     },
     onLineChange(val) {
@@ -903,7 +916,7 @@ export default {
           mapStyle: "amap://styles/normal" //地图样式,彩色
         });
         _this.map.on("complete", () => {
-          _this.$api.user.queryPositionLoginRecord({ source: this.source,queryId: this.deptPeopleId,type: this.deptPeopleType, ...this.province }).then(res => {
+          _this.$api.user.queryPositionLoginRecord({ source: this.source, queryId: this.deptPeopleId, type: this.deptPeopleType, ...this.province }).then(res => {
             if (res.code == 200) {
               if (res.data && res.data.length > 0) {
                 //处理后台返回要用到的数据
@@ -1003,7 +1016,7 @@ export default {
     },
     markerClick(e,) {
       let _this = this
-      _this.personnelPageNum=1
+      _this.personnelPageNum = 1
       this.position = e.target._position
       // _this.morelFun()
       let data = {
@@ -1040,6 +1053,30 @@ export default {
 </script>
 
 <style scoped lang="scss">
+.personnel-tree {
+  position: absolute;
+  background: #fff;
+  top: 70px;
+  left: 0;
+  padding: 15px 10px;
+  font-weight: 700;
+  color: #3355FF;
+  display: flex;
+  align-items: center;
+  box-shadow: 0px 5px 10px #ddd;
+  cursor: pointer;
+
+  i {
+    color: #fff;
+    background: #7189FE;
+    border-radius: 50%;
+    border: 1px solid #E6EBF3;
+    padding: 4px;
+    font-size: 10px;
+  }
+
+}
+
 .province-window {
   position: absolute;
   top: 20px;
@@ -1053,12 +1090,13 @@ export default {
 
 .source-window {
   position: absolute;
-  bottom: 20px;
-  left: 20px;
+  right: 20px;
+  top: 20px;
   z-index: 100;
   padding: 5px 10px;
   background: #fff;
   font-size: 14px;
+  display: flex;
 
   .el-switch {
     zoom: .8
@@ -1094,14 +1132,15 @@ export default {
 .info-window {
   position: absolute;
   top: 60px;
-  left: 20px;
+  left: 0;
   z-index: 100;
+}
+
+.info-box {
   background-color: white;
   padding: 10px;
-  width: 22vw;
   box-shadow: 0px 5px 10px #ddd;
-  height: 45vh;
-    overflow-y: auto;
+  width: 20vw
 }
 
 .infohis-window {
@@ -1154,6 +1193,37 @@ export default {
   }
 }
 
+.close-button {
+  color: #fff;
+  background: #7189FE;
+  border-radius: 50%;
+  border: 1px solid #E6EBF3;
+  padding: 4px;
+  font-size: 10px;
+  position: absolute;
+  right: -13px;
+  top: 20px;
+  cursor: pointer
+}
+.line-window {
+  position: absolute;
+  top: 20px;
+  right: 380px;
+  z-index: 100;
+  background: #fff;
+  font-size: 14px;
+  padding: 9px 10px;
+  i {
+    display: inline-block;
+    width: 6px;
+    height: 6px;
+    background: #979797;
+    border-radius: 50%;
+    margin-right: 10px;
+  }
+
+}
+
 .close {
   color: #333;
   font-size: 16px;
@@ -1282,5 +1352,4 @@ export default {
     // background: none;
     // border: 1px solid transparent;
   }
-}
-</style>
+}</style>

+ 180 - 136
src/views/PeopleManage/UserMap.vue

@@ -18,8 +18,12 @@
           :value="option.code"></el-option>
       </el-select>
       <el-button size="small" type="primary" @click="onSearch">搜索</el-button>
-      <el-button size="small" type="primary" @click="getUserDeptTreeFun()">机构人员树</el-button>
     </div>
+    <div class="personnel-tree" v-show="!deptPeopleVisible" @click="getUserDeptTreeFun()">
+        <img src="../../assets/机构人员.png" />
+        <span style="margin: 0 10px 0 5px;">机构人员树</span>
+        <i class="el-icon-arrow-right"></i>
+      </div>
     <div class="line-window">
       <span><i style=" background: #54B569 ;"></i>在线</span>
       <span style="margin-left: 15px;"><i></i>离线</span>
@@ -50,8 +54,9 @@
      <!-- <MobileZoomDiv> -->
       <!-- 人员详情 -->
       <div v-if="personnelVisible">
-      <vdr title="人员详情" @visiblefun="personnelVisible = false" :width="900" :height="350">
-        <el-table :data="personnelData" border style="width: 100%; " :header-cell-style="{
+      <vdr title="人员详情" @visiblefun="personnelVisible = false" :width="1000" :height="300">
+        <el-table :data="personnelData" border style="width: 100%; max-height: 21vh;
+            overflow-y: auto; "  :header-cell-style="{
           background: '#F7F7F9',
           fontWeight: '700',
           color: '#606266',
@@ -70,13 +75,13 @@
           </el-table-column>
           <el-table-column prop="deptName" label="所属机构" width="220" >
           </el-table-column>
-          <el-table-column prop="leaderName" label="管理人" >
+          <el-table-column prop="leaderName" label="管理人" width="80">
           </el-table-column>
-          <el-table-column prop="address" label="地址" >
+          <el-table-column prop="address" label="地址" width="150">
           </el-table-column>
           <el-table-column prop="createTime" label="登录时间" >
           </el-table-column>
-          <el-table-column prop="source" label="分类" >
+          <el-table-column prop="source" label="分类"  >
             <template slot-scope="scope">
               {{ scope.row.source == '1' ? '渠道' : '代理' }}
             </template>
@@ -87,9 +92,9 @@
                 size="small">
                 历史记录
               </el-button>
-              <el-button  @click.native.prevent="operatelRecords(scope.row)" type="text"
+              <el-button style="color:#E96238 "   @click.native.prevent="operatelRecords(scope.row)" type="text"
                 size="small">
-                操作记录
+                操作统计
               </el-button>
             </template>
           </el-table-column>
@@ -108,16 +113,24 @@
     <!-- </MobileZoomDiv> -->
     <!-- <MobileZoomDivTR> -->
     <div v-if="infoWindowVisible">
-      <vdr title="历史记录" @visiblefun="infoWindowVisible = false"  :width="800" :height="420">
-        <el-table :data="tableData" border style="width: 98%; max-height: 45vh;
-          overflow-y: auto;" :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
-            background: '#F2F7FC',
-            fontWeight: '700',
-            color: '#606266',
-          }">
-          <el-table-column prop="userId" label="工号" width="130">
+      <vdr @visiblefun="infoWindowVisible = false" :width="803" :height="430">
+          <el-tabs slot="title" style="width: 92%;" v-model="historyName" @tab-click="handHistoryoperate">
+            <el-tab-pane label="历史记录" name="1">
+            </el-tab-pane>
+            <el-tab-pane label="操作统计" name="2">
+            </el-tab-pane>
+          </el-tabs>
+          <div v-show="historyName == 1">
+            <el-table :data="tableData" border style="width: 100%; max-height: 35vh;
+            overflow-y: auto; " :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
+              background: '#F2F7FC',
+              fontWeight: '700',
+              color: '#606266',
+
+            }">
+            <el-table-column prop="userId" label="工号" width="110">
           </el-table-column>
-          <el-table-column prop="userName" label="姓名" width="100">
+          <el-table-column prop="userName" label="姓名" width="110">
           </el-table-column>
           <el-table-column prop="deptName" label="所属机构"  >
           </el-table-column>
@@ -125,14 +138,77 @@
           </el-table-column>
           <el-table-column prop="createTime" label="登录时间" width="120">
           </el-table-column>
+            </el-table>
+            <div class="bottomFixed">
+              <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
+                :page-sizes="[3,5, 10, 20, 30, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next"
+                :total="totalSum">
+              </el-pagination>
+            </div>
+          </div>
+          <div v-show="historyName == 2">
+              <div style="margin-bottom: 10px;">
+                <span style="color: #262626;font-weight: 700;font-size: 14px;">时间筛选 </span>
+                <el-date-picker v-model="operateDate" type="datetimerange" size="small" @change="operateDateFun"
+                  :default-time="['00:00:01', '23:59:59']" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至"
+                  start-placeholder="开始日期" end-placeholder="结束日期">
+                </el-date-picker>
+              </div>
+              <el-table :data="tableoperateData" border style="width: 100%;" :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
+                background: '#F2F7FC',
+                fontWeight: '700',
+                color: '#606266',
+
+              }">
+          <el-table-column prop="userId" label="工号">
+          </el-table-column>
+          <el-table-column prop="userName" label="姓名">
+          </el-table-column>
+          <el-table-column prop="deptName" label="所属机构"  width="220" >
+          </el-table-column>
+          <el-table-column prop="carNumber" label="车险录单">
+            <template slot-scope="scope">
+              <el-tooltip v-if="scope.row.carNumber" class="item" effect="dark" :content="scope.row.carNumberTime" placement="bottom">
+                  <span >{{ scope.row.carNumber }}</span>
+                </el-tooltip>
+              <span v-else>{{ scope.row.carNumber }}</span>
+              </template > 
+          </el-table-column>
+          <el-table-column prop="memberNumber" label="会员分享">
+            <template  slot-scope="scope">
+              <el-tooltip v-if="scope.row.memberNumber" class="item" effect="dark" :content="scope.row.memberNumberTime" placement="bottom">
+                  <span >{{ scope.row.memberNumber }}</span>
+                </el-tooltip>
+              <span v-else>{{ scope.row.memberNumber }}</span>
+              </template > 
+          </el-table-column>
+          <el-table-column prop="managementNumber" label="会员管理">
+            <template slot-scope="scope">
+              <el-tooltip v-if="scope.row.managementNumber" class="item" effect="dark" :content="scope.row.managementNumberTime" placement="bottom">
+                  <span >{{ scope.row.managementNumber }}</span>
+                </el-tooltip>
+              <span v-else>{{ scope.row.managementNumber }}</span>
+              </template > 
+          </el-table-column>
+          <el-table-column prop="walletNumber" label="钱包">
+            <template slot-scope="scope">
+              <el-tooltip v-if="scope.row.walletNumber" class="item" effect="dark" :content="scope.row.walletNumberTime" placement="bottom">
+                  <span >{{ scope.row.walletNumber }}</span>
+                </el-tooltip>
+              <span v-else>{{ scope.row.walletNumber }}</span>
+              </template > 
+          </el-table-column>
+          <el-table-column prop="posterNumber" label="海报管理">
+            <template slot-scope="scope">
+              <el-tooltip v-if="scope.row.posterNumber" class="item" effect="dark" :content="scope.row.posterNumberTime" placement="bottom">
+                  <span >{{ scope.row.posterNumber }}</span>
+                </el-tooltip>
+                <span v-else>{{ scope.row.posterNumber }}</span>
+              </template > 
+          </el-table-column>
         </el-table>
-        <div class="bottomFixed">
-          <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
-            :page-sizes="[3,5, 10, 20, 30, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next"
-            :total="totalSum">
-          </el-pagination>
-        </div>
-      </vdr>
+            </div>
+        </vdr>
     </div>
     <!-- </MobileZoomDivTR> -->
     <MobileZoomDivR>
@@ -207,94 +283,26 @@
       </div>
     </MobileZoomDivR>
 
-   
-    <div v-if="operatelVisible">
-      <vdr title="操作记录" @visiblefun="operatelVisible = false" :width="820" :height="300">
-        <div style="margin-bottom: 10px;">
-          <span style="color: #262626;font-weight: 700;font-size: 14px;">时间筛选 </span>
-          <el-date-picker v-model="operateDate" type="datetimerange" size="small" @change="operateDateFun"
-            :default-time="['00:00:01', '23:59:59']" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至"
-            start-placeholder="开始日期" end-placeholder="结束日期">
-          </el-date-picker>
-        </div>
-        <el-table :data="tableoperateData" border style="width: 98%; max-height: 45vh;
-              overflow-y: auto; " :cell-style="{ padding: '3px 8px' }" :header-cell-style="{
-                background: '#F2F7FC',
-                fontWeight: '700',
-                color: '#606266',
-
-              }">
-          <el-table-column prop="userId" label="工号">
-          </el-table-column>
-          <el-table-column prop="userName" label="姓名">
-          </el-table-column>
-          <el-table-column prop="deptName" label="所属机构"  width="220" >
-          </el-table-column>
-          <el-table-column prop="carNumber" label="车险录单">
-            <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.carNumber" class="item" effect="dark" :content="scope.row.carNumberTime" placement="bottom">
-                  <span >{{ scope.row.carNumber }}</span>
-                </el-tooltip>
-              <span v-else>{{ scope.row.carNumber }}</span>
-              </template > 
-          </el-table-column>
-          <el-table-column prop="memberNumber" label="会员分享">
-            <template  slot-scope="scope">
-              <el-tooltip v-if="scope.row.memberNumber" class="item" effect="dark" :content="scope.row.memberNumberTime" placement="bottom">
-                  <span >{{ scope.row.memberNumber }}</span>
-                </el-tooltip>
-              <span v-else>{{ scope.row.memberNumber }}</span>
-              </template > 
-          </el-table-column>
-          <el-table-column prop="managementNumber" label="会员管理">
-            <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.managementNumber" class="item" effect="dark" :content="scope.row.managementNumberTime" placement="bottom">
-                  <span >{{ scope.row.managementNumber }}</span>
-                </el-tooltip>
-              <span v-else>{{ scope.row.managementNumber }}</span>
-              </template > 
-          </el-table-column>
-          <el-table-column prop="walletNumber" label="钱包">
-            <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.walletNumber" class="item" effect="dark" :content="scope.row.walletNumberTime" placement="bottom">
-                  <span >{{ scope.row.walletNumber }}</span>
-                </el-tooltip>
-              <span v-else>{{ scope.row.walletNumber }}</span>
-              </template > 
-          </el-table-column>
-          <el-table-column prop="posterNumber" label="海报管理">
-            <template slot-scope="scope">
-              <el-tooltip v-if="scope.row.posterNumber" class="item" effect="dark" :content="scope.row.posterNumberTime" placement="bottom">
-                  <span >{{ scope.row.posterNumber }}</span>
-                </el-tooltip>
-                <span v-else>{{ scope.row.posterNumber }}</span>
-              </template > 
-          </el-table-column>
-        </el-table>
-      </vdr>
-
-    </div>
-    <div class="info-window" v-if="deptPeopleVisible">
-        <div class="close flex j-s" style="padding:15px 0" >
-          <el-switch
-          v-model="deptPeopleValue"
-          @change="deptPeopleFun"
-          size="small"
-          active-text="机构树"
-          :disabled="ztreeNodeAll.type==1"
-          inactive-text="人员树">
-        </el-switch>
-        <span class="el-icon-close" style="color: #c3c3c3;cursor: pointer" @click="deptPeopleVisible = false"> </span>
+    <div class="info-window"  v-if="deptPeopleVisible">
+      <div class="info-box" >
+        <i class="el-icon-arrow-left close-button" @click="deptPeopleVisible = false"></i>
+        <el-tabs style="width: 100%;" v-model="deptPeopleName" @tab-click="deptPeopleFun" >
+              <el-tab-pane label="机构树" name="1"></el-tab-pane>
+              <el-tab-pane label="人员树" name="2"  :disabled="ztreeNodeAll.type==1"></el-tab-pane>
+            </el-tabs>
+        <div style=" height: 70vh;overflow-y: auto;">
+          <el-tree
+              :data="ztreeNodes"
+              :props="{ children: 'children', label: 'name' }"
+              node-key="id"
+              :default-expanded-keys="['9']"
+              @node-click="onZTreeClick"
+            ></el-tree>
         </div>
-        <el-tree
-            :data="ztreeNodes"
-            :props="{ children: 'children', label: 'name' }"
-            node-key="id"
-            :default-expanded-keys="['9']"
-            @node-click="onZTreeClick"
-          ></el-tree>
       </div>
+    </div>
   </div>
+
 </template>
 
 <script>
@@ -374,13 +382,11 @@ export default {
       status: null,
       positionType: null,
       historyData: [],
-      operatelVisible: false,
       tableoperateData: [],
       operateDate: [],
-      operateWidth: 600,
-      operateHight: 285,
-      operateX: 0,
-      operateY: 0,
+      deptPeopleName:'1',
+      historyName: '1',
+
     };
   },
   components: { MobileZoomDiv, MobileZoomDivR, MobileZoomDivTR, vdr },
@@ -401,6 +407,14 @@ export default {
     this.map.destroy();
   },
   methods: {
+    handHistoryoperate(tab) {
+      if (tab.name == '1') {
+        this.detail()
+      }
+      else {
+        this.sysMenuRecordGetClick()
+      }
+    },
     getUserDeptTreeFun(){
       this.$api.user
         .getUserDeptTree()
@@ -409,15 +423,18 @@ export default {
             this.ztreeNodes = res.data.deptList;
             this.ztreeNodeAll = res.data;
             this.deptPeopleVisible=true;
+            this.deptPeopleName='1'
           }
         });
     },
-    deptPeopleFun(val){
-     if(val){
+    deptPeopleFun(tab){
+      if (tab.name == '1') {
       this.ztreeNodes = this.ztreeNodeAll.deptList;
+      this.deptPeopleType=1
      }
      else{
       this.ztreeNodes = this.ztreeNodeAll.userList;
+      this.deptPeopleType=2
      }
     },
     onZTreeClick: function (evt, treeId, treeNode) {
@@ -432,15 +449,10 @@ export default {
     },
     operatelRecords(row) {
       this.rowId = this.positionType == 1 ? row.id : row.userId
-      this.operatelVisible = true
+      this.infoWindowVisible = true
+      this.historyName='2'
       this.sysMenuRecordGetClick()
     },
-    operateWidthFun() {
-      this.operateWidth = window.innerWidth - 240
-      this.operateHight = window.innerHeight - 120
-      this.operateX = 0
-      this.operateY = 0
-    },
     operateDateFun(val) {
       this.operateDate = val
       this.sysMenuRecordGetClick({ beginTime: val[0], endTime: val[1] });
@@ -460,8 +472,8 @@ export default {
     },
     historicRecords(row) {
       this.rowId = this.positionType == 1 ? row.id : row.userId
-      this.isCollapse = false
       this.infoWindowVisible = true
+      this.historyName='1'
       this.detail()
     },
     handHistory(tab, event) {
@@ -976,7 +988,28 @@ export default {
 //     margin-right: 5px;
 //   }
 // }
-
+.personnel-tree{
+  position: absolute;
+  background: #fff;
+  top: 70px;
+  left:0;
+  padding: 15px 10px;
+  font-weight: 700;
+  color: #3355FF;
+  display: flex;
+    align-items: center;
+    box-shadow: 0px 5px 10px #ddd;
+    cursor: pointer;
+  i{
+      color: #fff;
+    background: #7189FE;
+    border-radius: 50%;
+    border: 1px solid #E6EBF3;
+    padding: 4px;
+    font-size: 10px;
+  }
+  
+}
 .province-window {
   position: absolute;
   top: 20px;
@@ -987,16 +1020,26 @@ export default {
     width: 100px;
   }
 }
-
+.close-button {
+  color: #fff;
+  background: #7189FE;
+  border-radius: 50%;
+  border: 1px solid #E6EBF3;
+  padding: 4px;
+  font-size: 10px;
+  position: absolute;
+  right: -13px;
+  top: 20px;
+  cursor: pointer
+}
 .line-window {
   position: absolute;
-  bottom: 130px;
-  left: 20px;
+  top: 20px;
+  right: 380px;
   z-index: 100;
-  padding: 5px 10px;
   background: #fff;
   font-size: 14px;
-
+  padding: 9px 10px;
   i {
     display: inline-block;
     width: 6px;
@@ -1010,12 +1053,13 @@ export default {
 
 .source-window {
   position: absolute;
-  bottom: 20px;
-  left: 20px;
+  right: 20px;
+  top: 20px;
   z-index: 100;
   padding: 5px 10px;
   background: #fff;
   font-size: 14px;
+  display: flex;
 
   .el-switch {
     zoom: .8
@@ -1051,14 +1095,14 @@ export default {
 .info-window {
   position: absolute;
   top: 60px;
-  left: 20px;
+  left: 0;
   z-index: 100;
+}
+.info-box{
   background-color: white;
   padding: 10px;
-  width: 22vw;
   box-shadow: 0px 5px 10px #ddd;
-  height: 45vh;
-    overflow-y: auto;
+  width:20vw
 }
 
 .infohis-window {

+ 4 - 3
src/views/PeopleManage/vdr.vue

@@ -3,9 +3,10 @@
     @resizing="onResize"  :x="operateX" :y="operateY"
     @dragging="onDrag" style="z-index:999" class-name="my-class" class="infohis-window"
         >
-        <div class="close flex j-s" style="padding:15px 0" v-if="title">
-            <span>{{ title }}</span>
-            <div>
+        <div class="close flex j-s"  >
+            <span v-if="title" style="padding:15px 0">{{ title }}</span>
+             <slot name="title" v-else></slot>
+            <div style="padding:10px 0">
                 <span v-if="isOperate==false" style="color: #c3c3c3;font-size:18px;cursor: pointer"
                     @click="operateWidthFun()" class="el-icon-rank"> </span>
                 <span v-else style="color: #c3c3c3;font-size:18px;cursor: pointer"

+ 1 - 0
src/views/Task/AgentPoolChannel/AgentPoolChannel.vue

@@ -29,6 +29,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/AgentPoolChannel/AgentPoolChannel1.vue

@@ -31,6 +31,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/AgentPoolChannel/AgentPoolChannel2.vue

@@ -36,6 +36,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/AgentPoolChannel/AgentPoolChannel3.vue

@@ -33,6 +33,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/AgentPoolChannel/AgentPoolChannel4.vue

@@ -32,6 +32,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/CompanyPoolChannel/CompanyPoolChannel.vue

@@ -30,6 +30,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/CompanyPoolChannel/CompanyPoolChannel1.vue

@@ -32,6 +32,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/CompanyPoolChannel/CompanyPoolChannel2.vue

@@ -73,6 +73,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/CompanyPoolChannel/CompanyPoolChannel3.vue

@@ -34,6 +34,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/CompanyPoolChannel/CompanyPoolChannel4.vue

@@ -34,6 +34,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/ElectricSales/AgentPoolChannel.vue

@@ -29,6 +29,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/ElectricSales/AgentPoolChannel1.vue

@@ -31,6 +31,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/ElectricSales/AgentPoolChannel2.vue

@@ -36,6 +36,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/ElectricSales/AgentPoolChannel3.vue

@@ -33,6 +33,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/ElectricSales/AgentPoolChannel4.vue

@@ -32,6 +32,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/TaskPoolChannel/TaskPoolChannel.vue

@@ -32,6 +32,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/TaskPoolChannel/TaskPoolChannel1.vue

@@ -29,6 +29,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/TaskPoolChannel/TaskPoolChannel2.vue

@@ -37,6 +37,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/TaskPoolChannel/TaskPoolChannel3.vue

@@ -31,6 +31,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 1 - 0
src/views/Task/TaskPoolChannel/TaskPoolChannel4.vue

@@ -32,6 +32,7 @@
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>

+ 10 - 2
src/views/Task/daikeComponents/KtOrder.vue

@@ -408,11 +408,12 @@
       </div>
       <div style="height: 300px; overflow-y: auto">
         <el-steps direction="vertical" :active="trajectoryTable.length - 1">
-          <el-step :title="item.orderStatus | cap" :key="item.id" v-for="item in trajectoryTable">
+          <el-step :title="item.orderStatus | caps" :key="item.id" v-for="item in trajectoryTable">
             <template slot="description">
               <span>保险公司:{{ item.insCompany }}</span>
               <span>提交人:{{ item.operator }}</span>
               <div>创建时间:{{ item.createTime }}</div>
+              <div v-if="item.remark">状态更新:{{ item.remark }}</div>
             </template>
           </el-step>
         </el-steps>
@@ -815,6 +816,7 @@ export default {
       logoImg: "", //报价单保险公司logo图
       value2: "",
       optionsStatus: [],
+      optionsStatusAll: [],
       codedialogVisible: false,
       codedialogVisiblePro: false,
       loading: false,
@@ -965,7 +967,8 @@ export default {
     });
 
     this.$api.insCompany.dicType("insOrderStatus").then((res) => {
-      this.optionsStatus = res.data.ddList;
+      this.optionsStatusAll = res.data.ddList;
+      this.optionsStatus = res.data.ddList.filter(item => item.dictValue !="状态更新");
     });
     this.peopleid = Cookies.get("user");
     this.$api.dept.findDeptTree().then((res) => {
@@ -1011,6 +1014,11 @@ export default {
         return item.dictValue === ele;
       }).dictTag;
     },
+    caps(ele) {
+      return _self.optionsStatusAll.find((item) => {
+        return item.dictValue === ele;
+      }).dictTag;
+    },
   },
   unmounted() {
     window.removeEventListener("resize", this.getDimensions);