Mr.ding 4 жил өмнө
parent
commit
b10bd18be9

+ 35 - 21
src/api/api.js

@@ -25,67 +25,81 @@ export const scribeKey = data => fetch.post('/entniche/subscribe/key/get', data)
 // 修改关键词设置
 export const updateKeys = data => fetch.post('/entniche/subscribe/key/update', data);
 
-export const entinfo = data => fetch.get('/ent/entinfo', data);
+//数据导出记录
+export const dataExport = data => fetch.get('/entniche/entExportAuth/logList', data);
+
+export const entinfo = data => fetch.get('/entbase/ent/entinfo', data);
+
+
+//企业信息
+export const componyMsg = data => fetch.get("/entbase/ent/mySelectent",data);
 
 //企业列表
-export const componyList = data => fetch.get("/person/pcManager",data);
+export const componyList = data => fetch.get("/entbase/person/pcManager",data);
 
 //添加部门
-export const addDepartInter = data => fetch.get("/department/add",data);
+export const addDepartInter = data => fetch.get("/entbase/department/add",data);
 
 //删除部门
-export const delDepartInter = data => fetch.get("/department/delete",data);
+export const delDepartInter = data => fetch.get("/entbase/department/delete",data);
 
 //获取部门信息
-export const departDetail = data => fetch.get("/department/detail",data);
+export const departDetail = data => fetch.get("/entbase/department/detail",data);
 
 //更新部门信息
-export const departUpdata = data => fetch.get("/department/update",data);
+export const departUpdata = data => fetch.get("/entbase/department/update",data);
 
 //查询部门下的子部门
-export const findDepart = data => fetch.get("/department/childrens",data);
+export const findDepart = data => fetch.get("/entbase/department/childrens",data);
 
 //部门管理员列表
-export const userList = data => fetch.get("/department/pcPersons",data);
+export const userList = data => fetch.get("/entbase/department/pcPersons",data);
 
 //人员管理列表
-export const personInter = data => fetch.get("/power/pcPersons",data);
+export const personInter = data => fetch.get("/entbase/power/pcPersons",data);
 
 //部门查询
-export const departsAll = data => fetch.get("/power/pcSearchDepartment",data);
+export const departsAll = data => fetch.get("/entbase/power/pcSearchDepartment",data);
 
 //新增人员
-export const personAddInter = data => fetch.get("/person/add",data);
+export const personAddInter = data => fetch.get("/entbase/person/add",data);
 
 //人员信息修改
-export const personUpdateInter = data => fetch.get("/person/update",data);
+export const personUpdateInter = data => fetch.get("/entbase/person/update",data);
 
 //人员详细信息
-export const personDetailInter = data => fetch.get("/person/detail",data);
+export const personDetailInter = data => fetch.get("/entbase/person/detail",data);
 
 //人员删除
-export const personDelInter = data => fetch.get("/person/delete",data);
+export const personDelInter = data => fetch.get("/entbase/person/delete",data);
 
 //商机管理人员
-export const sjPersonListInter = data => fetch.get("/entExportAuth/entPersonList",data);
+export const sjPersonListInter = data => fetch.get("/entniche/entExportAuth/entPersonList",data);
 
 //商机管理人员列表
-export const user_sjPersonListInter = data => fetch.get("/entExportAuth/entPersons",data);
+export const user_sjPersonListInter = data => fetch.get("/entniche/entExportAuth/entPersons",data);
+
+//商机管理添加人员
+export const add_sjPersonInter = data => fetch.get("/entbase/power/set",data);
 
 //商机管理列表删除                                         
-export const del_sjPersonListInter = data => fetch.get("/entExportAuth/entDeletePerson",data);
+export const del_sjPersonListInter = data => fetch.get("/entniche/entExportAuth/entDeletePerson",data);
 
 //数据导出人员列表
-export const recordPersonListInter = data => fetch.get("/entExportAuth/getList",data);
+export const recordPersonListInter = data => fetch.get("/entniche/entExportAuth/getList",data);
 
 //数据导出人员列表
-export const user_recordpersonListInter = data => fetch.get("/entExportAuth/persons",data);
+export const user_recordpersonListInter = data => fetch.get("/entniche/entExportAuth/persons",data);
 
 //数据导出设置限额
-export const setLimit_recordpersonListInter = data => fetch.get("/entExportAuth/setLimit",data);
+export const setLimit_recordpersonListInter = data => fetch.get("/entniche/entExportAuth/setLimit",data);
 
 //数据导出人员使用列表删除
-export const del_recordpersonListInter = data => fetch.get("/entExportAuth/deletePerson",data);
+export const del_recordpersonListInter = data => fetch.get("/entniche/entExportAuth/deletePerson",data);
+
+//数据导出人员添加
+export const add_recordpersonListInter = data => fetch.get("/entniche/entExportAuth/set",data);
+
 
 
 

+ 2 - 1
src/api/request.js

@@ -3,7 +3,8 @@ import axios from 'axios'
 //axios 默认参数配置
 if(process.env.NODE_ENV == "development"){
     //axios 默认参数配置
-    axios.defaults.baseURL = '/api'
+    // axios.defaults.baseURL = '/api';
+    // axios.defaults.baseURL = '/'
 }else{
     axios.defaults.baseURL = '/entbase'
 }

BIN
src/assets/images/checked.png


BIN
src/assets/images/half.png


+ 5 - 1
src/store/index.js

@@ -8,6 +8,7 @@ export default new Vuex.Store({
     departList:[],//企业部门列表
     chooseDepart:null,//选择的部门信息
     chooseUser:null,//选择的人员信息
+    entId:''
   },
   mutations: {
     departListFun(state,val){
@@ -18,7 +19,10 @@ export default new Vuex.Store({
     },
     chooseUserFun(state,val){
       state.chooseUser = val;
-   }
+    },
+    entIdFun(state,val){
+      state.entId = val;
+    }
   },
   actions: {},
   modules: {}

+ 43 - 35
src/views/bus/components/export.vue

@@ -1,69 +1,77 @@
 <template>
     <div class="export_msg">
         <el-table
-            :data="tableData"
+            :data="tableData.list"
             style="width: 100%;color:#1d1d1d">
-            <el-table-column prop="name" label="用户姓名"></el-table-column>
-            <el-table-column prop="date" label="导出时间" width="200" align="center"></el-table-column>
-            <el-table-column prop="name" label="数据来源" align="center"></el-table-column>
-            <el-table-column prop="address" label="搜索条件" width="200" align="center"></el-table-column>
-            <el-table-column prop="num1" label="导出条数" align="center"></el-table-column>
-            <el-table-column prop="num2" label="新扣条数" align="center"></el-table-column>
+            <el-table-column prop="user_name" label="用户姓名"></el-table-column>
+            <el-table-column prop="export_time" label="导出时间" width="200" align="center"></el-table-column>
+            <el-table-column  label="数据来源" align="center">
+                <template slot-scope="scope">
+                    <span v-if="scope.row.data_source == 1">企业统一订阅</span>
+                    <span v-else>用户搜索</span>
+                </template>
+            </el-table-column>
+            <el-table-column prop="filter.Buyerclass" label="搜索条件" width="200" align="center"></el-table-column>
+            <el-table-column prop="export_num" label="导出条数" align="center"></el-table-column>
+            <el-table-column prop="deduct_num" label="新扣条数" align="center"></el-table-column>
             <el-table-column label="下载链接" align="center">
                 <template slot-scope="scope">
-                    <el-button @click="handleExport(scope.row)" type="text" size="small" style="color: #2CB7CA;border:none">点击下载</el-button>
+                    <a :href="scope.row.download_url" class="downLoad" download="">点击下载</a>
                 </template>
             </el-table-column>
         </el-table>
         <el-pagination
             background
             layout="prev, pager, next"
-            :total="100">
+            @current-change="getPageData"
+            :hide-on-single-page="pageObj.isSingle"
+            :total="tableData.count">
         </el-pagination>
     </div>
 </template>
 
 <script>
+import { dataExport } from "@/api/api";
 export default {
     data() {
         return {
-            tableData: [{
-                date: '2020/05/02 11:16:12',
-                name: '王小虎',
-                address: '上海市普陀区',
-                num1: '123',
-                num2: '56'
-            }, {
-                date: '2020/05/02 11:16:12',
-                name: '王小虎',
-                address: '上海市普陀区',
-                num1: '123',
-                num2: '56'
-            }, {
-                date: '2020/05/02 11:16:12',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1519 弄',
-                num1: '123',
-                num2: '56'
-            }, {
-                date: '2020/05/02 11:16:12',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1516 弄',
-                num1: '123',
-                num2: '56'
-            }]
+            tableData: {},
+            pageObj:{
+                currentPage:1,
+                pageSize:10,
+                isSingle:false
+            }
         }
     },
+    created(){
+        this.getData();
+    },
     methods: {
         handleExport(data) {
             
+        },
+         getData(){
+            dataExport({page:this.pageObj.currentPage,limit:this.pageObj.pageSize}).then(res =>{
+                console.log(res.data)
+                this.tableData = res.data;
+                this.pageObj.isSingle = Number(res.data.count) < 10
+            })
+        },
+        getPageData(page){
+            this.pageObj.currentPage = page;
+            this.getData();
         }
-    }
+    },
+   
 }
 </script>
 
 <style lang="scss" scoped>
 .export_msg {
     padding: 30px;
+    .downLoad{
+        color: $light_color!important;
+        display: block;
+    }
 }
 </style>

+ 19 - 3
src/views/ent/components/addDrawer.vue

@@ -8,9 +8,7 @@
             :visible.sync="drawer"
             :direction="direction">
             <div class="drawer_content">
-                
                <slot name="formItem"></slot>
-               
                <choose-depart  ref="chooseDepart"></choose-depart>
                 <slot name="tips"></slot>
                 <div class="btns">
@@ -39,6 +37,7 @@ export default {
       this.drawer = true;
     },
     findCompont(){
+      this.$refs.chooseDepart.depaertInit();
       this.$refs.chooseDepart.centerDialogVisible = true;
     },
   }
@@ -69,15 +68,19 @@ export default {
                 text-indent: 16px;
             }
             .items{
+               
                 label{
                     display: flex;
                     justify-content: center;
                     align-items: center;
-                    margin-bottom: 20px;
+                    margin-bottom: 24px;
                     span{
                         width: 120px;
                         text-align: right;
                     }
+                    p{
+                      display: none;
+                    }
                     .el-input{
                         width: 352px;
                     }
@@ -85,6 +88,19 @@ export default {
                         width: 352px;
                         height: 40px;
                     }
+                    .test{
+                      position: relative;
+                      p{
+                        display: block;
+                        position: absolute;
+                        font-size: 12px;
+                        color: $del_color;
+                        line-height: 20px;
+                      }
+                      input{
+                        border: 1px solid $del_color;
+                      }
+                    }
                 }
                 .required{
                     i{

+ 137 - 95
src/views/ent/components/author.vue

@@ -21,78 +21,90 @@
                 </div>
                 <button @click="addDepart">添加人员</button>
             </header>
-            <el-table
-                v-if="currentIndex == 0"
-                :data="tableData"
-                style="width: 100%">
-                <el-table-column
-                    prop="user_name"
-                    label="姓名"
-                    width="190">
-                </el-table-column>
-                <el-table-column
-                    prop="user_mail"
-                    label="邮箱"
-                    width="230">
-                </el-table-column>
-                <el-table-column
-                    prop="user_phone"
-                    width="230"
-                    label="手机">
-                </el-table-column>
-                <el-table-column
-                    width="250"
-                    prop="name"
-                    label="部门">
-                </el-table-column>
-                <el-table-column
-                    label="编辑">
-                    <template slot-scope="scope">
-                        <span class="edit" @click="delSjData(scope.row)">删除</span>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <el-table
-                v-if="currentIndex == 1"
-                :data="recordTableData"
-                style="width: 100%">
-                <el-table-column
-                    prop="user_name"
-                    label="姓名"
-                    width="110">
-                </el-table-column>
-                <el-table-column
-                    prop="user_mail"
-                    label="邮箱"
-                    width="170">
-                </el-table-column>
-                <el-table-column
-                    prop="user_phone"
-                    width="170"
-                    label="手机">
-                </el-table-column>
-                <el-table-column
-                    width="290"
-                    prop="name"
-                    label="部门">
-                </el-table-column>
-                <el-table-column
-                    width="150"
-                    label="每日导出限额">
-                    <template slot-scope="scope">
-                       <div class="setNumber">
-                            <span v-if="scope.row.setNumber" @click="scope.row.setNumber = false"> {{ scope.row.data_limit || '输入数量' }} </span>
-                            <input v-else v-model="scope.row.data_limit" type="text" @blur="setLimit(scope.row)" /> 
-                       </div>
-                    </template>
-                </el-table-column>
-                <el-table-column
-                    label="编辑">
-                    <template slot-scope="scope">
-                        <span class="edit" @click="del_recordPerson(scope.row)">删除</span>
-                    </template>
-                </el-table-column>
-            </el-table>
+            <div class="dataBox" v-show="currentIndex == 0">
+                <el-table
+                    :data="tableData.list"
+                    style="width: 100%">
+                    <el-table-column
+                        prop="user_name"
+                        label="姓名"
+                        width="190">
+                    </el-table-column>
+                    <el-table-column
+                        prop="user_mail"
+                        label="邮箱"
+                        width="230">
+                    </el-table-column>
+                    <el-table-column
+                        prop="user_phone"
+                        width="230"
+                        label="手机">
+                    </el-table-column>
+                    <el-table-column
+                        width="250"
+                        prop="name"
+                        label="部门">
+                    </el-table-column>
+                    <el-table-column
+                        label="编辑">
+                        <template slot-scope="scope">
+                            <span class="edit" @click="del_recordPerson(scope.row)">删除</span>
+                        </template>
+                    </el-table-column>
+                </el-table>
+            </div>
+            <div class="dataBox"  v-show="currentIndex == 1">
+                <el-table
+                    :data="tableData.list"
+                    style="width: 100%">
+                    <el-table-column
+                        prop="user_name"
+                        label="姓名"
+                        width="110">
+                    </el-table-column>
+                    <el-table-column
+                        prop="user_mail"
+                        label="邮箱"
+                        width="170">
+                    </el-table-column>
+                    <el-table-column
+                        prop="user_phone"
+                        width="170"
+                        label="手机">
+                    </el-table-column>
+                    <el-table-column
+                        width="290"
+                        prop="name"
+                        label="部门">
+                    </el-table-column>
+                    <el-table-column
+                        width="150"
+                        label="每日导出限额">
+                        <template slot-scope="scope">
+                        <div class="setNumber">
+                                <span v-if="scope.row.setNumber" @click="scope.row.setNumber = false"> {{ scope.row.data_limit || '输入数量' }} </span>
+                                <input v-else v-model="scope.row.data_limit" type="text" @blur="setLimit(scope.row)" /> 
+                        </div>
+                        </template>
+                    </el-table-column>
+                    <el-table-column
+                        label="编辑">
+                        <template slot-scope="scope">
+                            <span class="edit" @click="del_recordPerson(scope.row)">删除</span>
+                        </template>
+                    </el-table-column>
+                </el-table>
+            </div>
+            <el-pagination
+                background
+                layout="prev, pager, next"
+                :key="pageobj.key"
+                :page-size="pageobj.pageSize"
+                :current-page="pageobj.current"
+                @current-change="getPageData"
+                :hide-on-single-page="pageobj.isSingle"
+                :total="tableData.count">
+            </el-pagination>
         </div>
         <power-person ref="powerNode"></power-person>
 
@@ -116,11 +128,16 @@
         components:{powerPerson,delTips},
         data() {
             return {
-                tableData: [],
-                recordTableData:[],
+                tableData: {},
                 tabbar:["商机管理使用人员","数据导出使用人员"],
                 currentIndex:'0',
                 del_current:{},
+                pageobj:{
+                    current:1,
+                    isSingle:true,
+                    pageSize:10,
+                    key:1,
+                }
             }
         },
         created(){
@@ -129,7 +146,7 @@
         methods:{
             //设置数据导出没人限额
             setLimit(val){
-                console.log(val,val.data_limit,val.user_id,val.limit_id)
+                console.log(val)
                 setLimit_recordpersonListInter({limitNum:Number(val.data_limit),userId:val.user_id,limitId:val.limit_id}).then(res =>{
                     if(res.data.status == 1){
                         this.$message({ message: '设置成功',type: 'success'});
@@ -139,40 +156,60 @@
             },
             //商机管理人员使用列表
             sj_getDataList(){
-                sjPersonListInter({page:1,pageSize:10}).then(res =>{
-                    this.tableData = res.data.list;
+                sjPersonListInter({page:this.pageobj.current,pageSize:this.pageobj.pageSize}).then(res =>{
+                    this.tableData = res.data;
+                    this.pageobj.isSingle = Number(res.data.count) < this.pageobj.pageSize;
                 })
             },
+            //获取当前点击页数据
+            getPageData(page){
+                this.pageobj.current = page;
+                if(this.currentIndex == 0){
+                     this.sj_getDataList();
+                }else{
+                    this.record_getDataList();
+                }
+            },
             //数据导出人员使用列表
             record_getDataList(){
-                recordPersonListInter({page:1,pageSize:10}).then(res =>{
-                    res.data.list.forEach(v =>{
-                        v.setNumber = true;
-                    })
-                    this.recordTableData = res.data.list;
-                })
-            },
-            //商机管理列表删除
-            delSjData(val){
-                del_sjPersonListInter({userId:val.id}).then(res =>{
-                    if(res.data.status == 1){
-                        this.$message({ message: '删除成功',type: 'success'});
-                        this.sj_getDataList();
+                recordPersonListInter({page:this.pageobj.current,pageSize:this.pageobj.pageSize}).then(res =>{
+                    console.log(res.data)
+                    if(res.data && res.data.list){
+                        res.data.list.forEach(v =>{
+                            v.setNumber = true;
+                        })
+                        this.pageobj.isSingle = Number(res.data.count) <= this.pageobj.pageSize;
+                        this.tableData = res.data;
                     }else{
-                        this.$message({ message: '删除失败',type: 'warning'});
+                        this.pageobj.isSingle = true;
+                        this.tableData = {};
                     }
+                    
                 })
             },
-            //数据导出人员列表删除
+            //商机管理、数据导出人员列表删除
             del_recordPerson(val){
                 this.del_current = val;
                 this.$refs.childDel.dialogTableVisible = true;
             },
             //确认删除
             del_Btn(){
+                console.log(this.del_current,this.currentIndex)
+                // return;
                  this.$refs.childDel.dialogTableVisible = false;
+                if( this.currentIndex == 0){
+                    del_sjPersonListInter({userId:this.del_current.user_id}).then(res =>{
+                        if(res.data.status == 1){
+                            this.$message({ message: '删除成功',type: 'success'});
+                            this.sj_getDataList();
+                        }else{
+                            this.$message({ message: '删除失败',type: 'warning'});
+                        }
+                    })
+                    return ;
+                }
                  del_recordpersonListInter({userId:this.del_current.user_id}).then(res =>{
-                    this.del_current = null;
+                    this.del_current = {};
                     if(res.data.status == 1){
                         this.$message({ message: '删除成功',type: 'success'});
                         this.record_getDataList();
@@ -181,20 +218,24 @@
                     }
                 })
             },
+            //添加人员
             addDepart(){
-                console.log(this.$refs.powerNode)
                 this.$refs.powerNode.centerDialogVisible = true;
+                this.$refs.powerNode.getData();
             },
             //商机、数据人员使用列表切换
             switchTabbar(i){
                 this.currentIndex = i;
+                this.pageobj.current = 1;
+                this.pageobj.isSingle = true;
+                this.pageobj.key ++ ;
                 if(i === 1){
                    this.record_getDataList();
                    this.$refs.line_border.className ="line_border move"
                 }else{
+                  this.sj_getDataList();
                   this.$refs.line_border.className ="line_border"
                 }
-                
             }
         }
     }
@@ -241,6 +282,7 @@
     .tabs{
         width: 1020px;
         margin: 0 auto;
+        padding-bottom: 30px;
         header{
             display: flex;
             align-items: center;

+ 27 - 22
src/views/ent/components/chooseDepart.vue

@@ -12,13 +12,10 @@
               <div class="content_left">
                 <div class="crumbs">
                   <h4>选择</h4>
-                  <span v-if="filterTitleList.length>1">
+                  <span @click="depaertInit"><i>通讯录</i></span>
+                  <span>
                     <i v-for="(item,i) in filterTitleList" :key="i" :style="{color:item.color}" @click="backDepart(item.id,i)">{{ item.aname }}</i>
                   </span>
-                  <p v-else>
-                     <i v-for="(item,i) in filterTitleList" :key="i">{{ item.name}}</i>
-                  </p>
-                  
                 </div>
                   <ul>
                     <li v-for="(item) in departList" :key="item.id">
@@ -37,7 +34,7 @@
           </div>
           <span slot="footer" class="dialog-footer btns">
               <button @click="saveDepart" class="save">保存</button>
-              <button  @click="centerDialogVisible = false" class="cancle">取消</button>
+              <button  @click="cancleDepart" class="cancle">取消</button>
           </span>
         </el-dialog>
   </div>
@@ -56,8 +53,7 @@ export default {
     }
   },
   created(){
-    let data = this.$store.state.departList
-    this.departList = [{name:data.department,id:2608,dept_count:data.departments.length}]
+      this.depaertInit();
   },
   computed:{
     filterTitleList:function(){
@@ -65,44 +61,48 @@ export default {
         let l = this.titleList.length-1;
         this.titleList.forEach((v,i) =>{
           let obj = {};
-          if(i>0){
-             Object.assign(obj,v,{aname:`>${v.name}`})
-          }
-          if(i == l && i>0){
-            Object.assign(obj,{color:"#2CB7CA"},v)
-          }
-          if(i == 0){
-            Object.assign(obj,v,{aname:v.name})
-          }
+            Object.assign(obj,v,{aname:`>${v.name}`})
+            if(i == l){
+              Object.assign(obj,{color:"#2CB7CA"},v);
+            }
            newArr.push(obj)
         })
         return newArr;
     }
   },
   methods:{
+    //部门选择初始化
+    depaertInit(){
+      this.titleList = [];
+      this.selectedList = [];
+      let data = this.$store.state.departList
+      let id = this.$store.state.entId;
+      this.departList = [{name:data.department,id:id,dept_count:data.departments.length}];
+      console.log("ddcs",this.selectedList)
+    },
      //返回上级部门
       backDepart(id,i){
           findDepart({id:id}).then(res =>{
               this.departList = res.data;
-              this.titleList.splice(i+1,10)
+              this.titleList.splice(i+1,20)
          })
       },
+      //选择下级
       checkLower(item){
           findDepart({id:item.id}).then(res =>{
               this.departList = res.data;
               this.titleList.push({name:item.name,id:item.id});
          })
       },
+      //选择部门
       chooseDepart(item){
         if(this.selectedList.length>0){
-          this.$message({
-            message: '只能选择一个部门',
-            type: 'warning'
-          });
+          this.$message({message: '只能选择一个部门',type: 'warning'});
           return 
         }
         this.selectedList.push(item)
       },
+      //删除选择的部门
       delChooseDepart(i){
         this.selectedList.splice(i,1);
       },
@@ -110,6 +110,11 @@ export default {
       saveDepart(){
         this.centerDialogVisible = false;
         this.$store.commit("chooseDepartFun",this.selectedList[0])
+      },
+      //取消
+      cancleDepart(){
+          this.centerDialogVisible = false;
+          this.selectedList = [];
       }
       
   }

+ 13 - 5
src/views/ent/components/chooseUser.vue

@@ -59,20 +59,22 @@ export default {
     }
   },
   created(){
-    userList().then(res =>{
-        this.personList.key = Object.keys(res.data);
-        this.personList.list = Object.values(res.data);
-    })
     this.$watch('searchVal', this.debounce((newValue, oldValue) => {
           userList({name:this.searchVal}).then(res =>{
               this.personList.key = Object.keys(res.data);
               this.personList.list = Object.values(res.data);
           })
     }, 500))
-
   },
 
   methods:{
+    getData(){
+      userList().then(res =>{
+        this.personList.key = Object.keys(res.data);
+        this.personList.list = Object.values(res.data);
+        console.log(this.personList,"this.personList")
+    })
+    },
       debounce (fn, delay) {
         let timer = null
         return function () {
@@ -83,6 +85,12 @@ export default {
             }, delay)
         }
       },
+      choosePersonInit(){
+          this.selectedList = [];
+          this.searchVal = '';
+          this.currentId = '';
+          this.getData();
+      },
       chooseDepart(item){
         if(this.selectedList.length>0){
           this.$message({

+ 100 - 33
src/views/ent/components/depart.vue

@@ -18,13 +18,15 @@
                 :data="data"
                 show-checkbox
                 accordion
-                @node-expand="getChildrenNode"
+                :props="props"
+                :load="loadNode"
+                lazy
                 @check-change="allSelectNode"
                 :indent="50"
                 ref="tree"
                 node-key="id">
-            <span class="custom-tree-node" slot-scope="{ node,data }">
-                <span>{{ node.label }}</span>
+            <span class="custom-tree-node" slot-scope="{ data }">
+                <span>{{ data.label }}</span>
                 <span>{{ data.aname || "--" }}</span><span>{{ data.user_count }}</span><span @click.stop="addDepart('edit',data)">编辑</span>
             </span>
             </el-tree>
@@ -72,7 +74,7 @@
                    
                      <label>
                         <span>设置管理员:</span>
-                        <el-input v-model="userMsg.name" placeholder="请选择管理员"></el-input>
+                        <el-input v-model="userMsg.name" placeholder="请选择管理员" readonly @focus="chooseUserFc"></el-input>
                     </label>
                 </div>
             </template>
@@ -83,7 +85,17 @@
             </template>
         </add-drawer>
         <!-- 删除弹窗 -->
-        <del-popup></del-popup>
+        <del-popup ref="childDel" title="删除部门">
+            <template slot="content"> 
+                   <p v-if="delDepartObj.status === 'all'">
+                       <span v-for="(item) in deal_selectDepart" :key="item.id">{{item.bname}}</span>
+                   </p>
+                   <p v-else> {{currentVal.label}} </p>
+            </template>
+            <template slot="del">
+                <button @click="del_Btn" class="del">删除</button>
+            </template>
+        </del-popup>
 
         <!-- //选择人员 -->
         <choose-user ref="selectUser"></choose-user>
@@ -92,7 +104,7 @@
 </template>
 
 <script>
-import { entinfo,componyList,addDepartInter,departDetail,departUpdata , delDepartInter} from '@/api/api';
+import { componyMsg,componyList,addDepartInter,departDetail,departUpdata , delDepartInter} from '@/api/api';
 import addDrawer from "./addDrawer";
 import delPopup from "./del"
 import chooseUser from "./chooseUser"
@@ -103,20 +115,48 @@ export default {
     data() {
         return {
             data: [],
+             props: {
+                label: 'name',
+                children: 'zones',
+                isLeaf: 'leaf'
+            },
             ruleForm: {
                 name: '',
             },
-            companyData:{},
+            companyData:{departments:[]},
             whichPart:'add',//add: 添加 edit: 编辑
-            currentId:'',
+            currentVal:'',
             selectDepart:[],
+            companyId:'',
+            delDepartObj:{
+                id:'',
+                status,
+            }
          }
     },
     created() {
-        entinfo().then(res => {});
-        this.getOutData();
+        componyMsg().then(function(res){
+            return res
+        }).then(val =>{
+            this.$store.commit("entIdFun",val.data.dept_id)
+            this.companyId = val.data.dept_id;
+            this.getOutData();
+        })
     },
     computed:{
+        deal_selectDepart:function(index){
+            let [...arr] = this.selectDepart
+
+            arr.forEach((v,i) =>{
+                if(i !== 0){
+                   v.bname  = `,${v.label}`
+                }else{
+                    v.bname  = `${v.label}`
+                }
+            })
+            console.log(arr,this.selectDepart)
+            return arr;
+        },
         companyMsg:function(){
             let newObj ={role:'',num:''};
             this.companyData.persons && this.companyData.persons.forEach((v,i) =>{
@@ -145,7 +185,7 @@ export default {
     methods: {
         //dom tree 外层部门数据
         getOutData(){
-            componyList({id:2608}).then(res =>{
+            componyList({id:this.companyId}).then(res =>{
                 this.companyData = res.data;   
                 let arr = this.dataHandling(this.companyData.departments)
                 this.data = JSON.parse(JSON.stringify(arr));
@@ -156,15 +196,15 @@ export default {
         dataHandling(list){
            let arr = [];
            list.map((el,i) =>{
+               let leaf;
+               el.dept_count > 0 ? leaf = false : leaf = true;
                 arr.push({
                       id:el.id,
                       label:el.name,
+                      leaf,
                       user_count:el.user_count ,
                       aname:el.aname,
                 })
-                if(el.dept_count>0){
-                  arr[i] = Object.assign({children:[{}]},arr[i])
-                }
            })
            return arr;
         },
@@ -172,12 +212,20 @@ export default {
         allSelectNode(){
             this.selectDepart = this.$refs.tree.getCheckedNodes();
         },
+        //初始化部门添加
+        initDepart(){
+            this.ruleForm.name = '';
+            this.departMsg.name = '';
+            this.departMsg.id = '';
+            this.userMsg.name = '';
+            this.userMsg.id = '';
+        },
         //添加、编辑部门
         addDepart(status,val){
             this.whichPart = status;
             this.$refs.addDrewer.openDrawer();
             if(status === 'edit'){
-                this.currentId = val.id;
+                this.currentVal = val;
                 departDetail({id:val.id}).then(res =>{
                     this.ruleForm.name = res.data.name;
                     this.departMsg.name = res.data.pname;
@@ -192,17 +240,25 @@ export default {
             console.log(this.departMsg)
              if(this.whichPart === "add"){
                 addDepartInter({name:this.ruleForm.name,pid:this.departMsg.id,aid:this.userMsg.id}).then(res =>{
-                    if(res.error_code == 0){
-                        this.$refs.addDrewer.drawer = false;
+                    this.initDepart();
+                    if(res.data.status == 1){
+                        this.$message({message: '添加成功',type: 'success'});
                         this.getOutData();
+                    }else{
+                         this.$message({message: '添加失败',type: 'success'});
                     }
+                    this.$refs.addDrewer.drawer = false;
                 })
              }else{
-                departUpdata({name:this.ruleForm.name,pid:this.departMsg.id,aid:this.userMsg.id,id:this.currentId}).then(res =>{
-                    if(res.error_code == 0){
-                        this.$refs.addDrewer.drawer = false;
+                departUpdata({name:this.ruleForm.name,pid:this.departMsg.id,aid:this.userMsg.id,id:this.currentVal.id}).then(res =>{
+                    this.initDepart();
+                    if(res.data.status == 1){
+                        this.$message({message: '修改成功',type: 'success'});
                         this.getOutData();
+                    }else{
+                         this.$message({message: '修改失败',type: 'success'});
                     }
+                    this.$refs.addDrewer.drawer = false;
                 })
              }
                
@@ -214,17 +270,20 @@ export default {
             if(status === 'all'){
                 this.selectDepart.forEach((v,i) =>{
                     if(v.id){
-                        if(i === 0){
-                            delId += `${v.id}`
-                        }else{
-                            delId += `,${v.id}`
-                        } 
+                        i === 0 ? delId += `${v.id}` : delId += `,${v.id}`
                     }
                 })
             }else{
-                delId = this.currentId;
+                delId = this.currentVal.id;
             }
-            delDepartInter({id:delId}).then(res =>{
+            this.delDepartObj.id = delId; 
+            this.delDepartObj.status = status;
+            this.$refs.childDel.dialogTableVisible = true;
+        },
+        //确认删除部门
+        del_Btn(){
+            delDepartInter({id:this.delDepartObj.id}).then(res =>{
+                this.$refs.childDel.dialogTableVisible = false;
                 if(res.data.status == 1){
                     this.getOutData();
                     this.$message({ message: '删除成功',type: 'success'});
@@ -240,15 +299,17 @@ export default {
         },
         //选择管理员
         chooseUserFc(){
-                this.$refs.selectUser.centerDialogVisible = true;
+            this.$refs.selectUser.centerDialogVisible = true;
+            this.$refs.selectUser.choosePersonInit();
         },
-        //获取子级部门
-        getChildrenNode(data) {
-            componyList({id:data.id}).then(res =>{
+        // Tree懒加载
+        loadNode(node,resolve){
+            if(!node.data.id) return;
+            componyList({id:node.data.id}).then(res =>{
               let arr = this.dataHandling(res.data.departments);
-               this.$set(data, 'children', arr);
+              resolve(arr);
             })
-        },
+        }
     }
 }
 </script>
@@ -384,7 +445,12 @@ export default {
                 .custom-tree-node{
                     flex: 1;
                     display: flex;
+                    align-items: center;
+                    height: 100%;
                     >span{
+                        display: flex;
+                        align-items: center;
+                        height: 100%;
                         font-size: 14px;
                         color: $normal_color;
                         &:first-child{
@@ -396,6 +462,7 @@ export default {
                         &:nth-child(4){
                             width: 120px;
                             color: $light_color;
+                            cursor: pointer;
                         }
                     }
                 }

+ 82 - 36
src/views/ent/components/personal.vue

@@ -23,7 +23,7 @@
                </div>
         </div>
         <div class="ent_personal_table">
-            <el-table :data="tableData" style="width: 100%" @selection-change="allSelectNode">
+            <el-table :data="tableData.list" style="width: 100%" @selection-change="allSelectNode">
                 <el-table-column type="selection" width="55" :selectable="checkSelectable">
                 </el-table-column>
                 <el-table-column prop="name"  label="姓名" width="160" >
@@ -53,11 +53,12 @@
                     </template>
                 </el-table-column>
             </el-table>
-
             <el-pagination
                 background
                 layout="prev, pager, next"
-                :total="30">
+                @current-change="getPageData"
+                :hide-on-single-page="pagebj.isSingle"
+                :total="tableData.mystaff">
             </el-pagination>
         </div>
 
@@ -68,11 +69,17 @@
                 <div class="items">
                     <label class="required">
                         <span><i>*</i> 人员姓名:</span>
-                        <el-input v-model="ruleForm.name" placeholder="请输入人员姓名"></el-input>
+                        <div :class="{test:ruleForm.nameStatus}">
+                             <el-input v-model="ruleForm.name" @input="regName" placeholder="请输入人员姓名"></el-input>
+                             <p>请输入姓名</p>
+                        </div>
                     </label>
                      <label class="required">
                         <span><i>*</i>手机:</span>
-                        <el-input v-model="ruleForm.phone" placeholder="请输入人员手机号" ></el-input>
+                        <div :class="{test:ruleForm.phoneStatus}">
+                            <el-input v-model="ruleForm.phone" type="tel" @input="regPhone" maxlength="11" placeholder="请输入人员手机号" ></el-input>
+                            <p>请输入正确的手机号</p>
+                        </div>
                     </label>
                      <label>
                         <span>邮箱:</span>
@@ -91,16 +98,19 @@
 
         <add-drawer ref="addDrewer" v-if="whichPart === 'edit'">
             <template slot="formItem">
-                 <h2>编辑人员</h2>
+                <h2>编辑人员</h2>
                 <h4>人员信息</h4>
                 <div class="items">
                     <label class="required">
                         <span><i>*</i> 人员姓名:</span>
-                        <el-input v-model="ruleForm.name" readonly placeholder="请输入人员姓名"></el-input>
+                        <div>
+                            <el-input v-model="ruleForm.name" disabled placeholder="请输入人员姓名"></el-input>
+                            <p>姓名不能为空</p>
+                        </div>
                     </label>
                      <label class="required">
                         <span><i>*</i>手机:</span>
-                        <el-input v-model="ruleForm.phone" readonly placeholder="请输入人员手机号" ></el-input>
+                        <el-input v-model="ruleForm.phone" disabled placeholder="请输入人员手机号" ></el-input>
                     </label>
                      <label>
                         <span>邮箱:</span>
@@ -110,6 +120,7 @@
                         <span>部门:</span>
                         <el-input v-model="departMsg.name" placeholder="请选择部门" readonly @focus="chooseDepartFc"></el-input>
                     </label>
+
                 </div>
             </template>
             <template slot="deleteBtn">
@@ -139,10 +150,17 @@ export default {
                 name: '',
                 phone:'',
                 email:'',
-                personId:''
+                personId:'',
+                nameStatus:false,
+                phoneStatus:false
             },
             whichPart:'add',//add: 添加 edit: 编辑
             selectDepart:[],
+            pagebj:{
+                current:1,
+                isSingle:false,
+                pageSize:10
+            }
         }
     },
     created() {
@@ -164,8 +182,8 @@ export default {
         },
     },
     methods: {
+        //选择的人员
         allSelectNode(data){
-            console.log(data)
             this.selectDepart = data;
         },
         debounce (fn, delay) {
@@ -180,31 +198,41 @@ export default {
         },
         //企业管理员禁止选中
         checkSelectable(row){
-            console.log(row,"----row")
             return row.role != "企业管理员";
         },
+        //获取当前点击页数据
+        getPageData(page){
+            this.pagebj.current = page;
+            this.getpersonData();
+        },
         //人员数据
         getpersonData(){
-            console.log(this.depart)
             personInter({
-                nameSort:'',
+                nameSort:true,
                 departmentSort:'',
-                page:1,
-                pageSize:10,
+                page:this.pagebj.current,
+                pageSize:this.pagebj.pageSize,
                 name:this.searchval,
                 department:this.depart
             }).then(res => {
-                this.tableData = res.data.list;
+                this.tableData = res.data;
+                this.pagebj.isSingle = Number(res.data.mystaff) < 10;
            })
         },
+        //添加人员数据初始化
+        initAddPerson(){
+            this.ruleForm.name = '';
+            this.ruleForm.phone = '';
+            this.ruleForm.email = '';
+            this.ruleForm.personId = '';
+            this.departMsg.name = '';
+            this.departMsg.id = '';
+        },
         //添加人员
         addPerson(status,val){
+            this.initAddPerson();
             this.whichPart = status;
             if(status === 'edit'){
-                if(val.role == "企业管理员"){
-                    this.$message({message: '企业管理员禁止删除',type: 'warning'});
-                    return;
-                }
                 personDetailInter({id:val.id}).then(res =>{
                     this.ruleForm.name = val.name;
                     this.ruleForm.phone = val.phone;
@@ -212,10 +240,20 @@ export default {
                     this.ruleForm.personId = val.id;
                     this.departMsg.name = res.data.dept_name;
                     this.departMsg.id = res.data.dept_id;
+                    this.ruleForm.role = val.role;
                 })
             }
             this.$refs.addDrewer.drawer = true;
         },
+        //验证姓名不能为空
+        regName(){
+            this.ruleForm.name == '' ? this.ruleForm.nameStatus = true : this.ruleForm.nameStatus = false;
+        },
+        //验证手机号是否正确
+        regPhone(){
+            let phoneReg = /^[1][3,4,5,6,7,8,9][0-9]{9}$/;
+            phoneReg.test(this.ruleForm.phone) ? this.ruleForm.phoneStatus = false : this.ruleForm.phoneStatus = true;
+        },
         //删除人员
         delDepart(status){
             // status  all:d多选删除  single:编辑单个删除
@@ -223,16 +261,16 @@ export default {
             if(status === 'all'){
                 this.selectDepart.forEach((v,i) =>{
                     if(v.id){
-                        if(i === 0){
-                            delId += `${v.id}`
-                        }else{
-                            delId += `,${v.id}`
-                        } 
+                        i === 0 ? delId += `${v.id}` : delId += `,${v.id}`
                     }
                 })
             }else{
                 delId = this.ruleForm.personId;
             }
+            if(this.ruleForm.role == "企业管理员"){
+                this.$message({message: '企业管理员禁止删除',type: 'warning'});
+                return;
+            }
             personDelInter({id:delId}).then(res =>{
                 if(res.data.status == 1){
                     this.getpersonData();
@@ -249,19 +287,27 @@ export default {
         },
         // 保存、编辑人员信息
         saveDepart(){
-            console.log(this.departMsg)
+            let deparId = '';
+            this.departMsg.id ? deparId = this.departMsg.id : deparId = this.$store.state.entId;
              if(this.whichPart === "add"){
-                personAddInter({name:this.ruleForm.name,phone:this.ruleForm.phone,mail:this.ruleForm.email,id:this.departMsg.id}).then(res =>{
-                    if(res.data.status == 1){
-                        this.$refs.addDrewer.drawer = false;
-                        this.getpersonData();
-                        this.$message({message: '添加成功',type: 'success'});
-                    }else{
-                        this.$message({ message: '添加失败', type: 'warning'});
-                    }
-                })
+                
+                if(this.ruleForm.nameStatus && this.ruleForm.phoneStatus) {
+                    this.regName();
+                    this.regPhone();
+                }else{ 
+                    
+                    personAddInter({name:this.ruleForm.name,phone:this.ruleForm.phone,mail:this.ruleForm.email,id:deparId}).then(res =>{
+                        if(res.data.status == 1){
+                            this.$refs.addDrewer.drawer = false;
+                            this.getpersonData();
+                            this.$message({message: '添加成功',type: 'success'});
+                        }else{
+                            this.$message({ message: '添加失败', type: 'warning'});
+                        }
+                    })
+                }
              }else{
-                personUpdateInter({mail:this.ruleForm.email,did:this.departMsg.id,id:this.ruleForm.personId}).then(res =>{
+                personUpdateInter({mail:this.ruleForm.email,did:deparId,id:this.ruleForm.personId}).then(res =>{
                     if(res.data.status == 1){
                         this.$refs.addDrewer.drawer = false;
                         this.getpersonData();

+ 151 - 22
src/views/ent/components/powerPerson.vue

@@ -15,10 +15,10 @@
                     </el-input>
                   </div>
                   <div class="allList">
-                    <div v-for="item in personList.list" :key="item.id">
-                      <h5><el-checkbox v-model="item.status"></el-checkbox> <span class="noselect"  @click="toggle(item)">{{ item.name }}</span> <i class="el-icon-arrow-down"></i></h5>
+                    <div v-for="(item,i) in deal_personList" :key="item.id">
+                      <h5><i class="seleced" @click="selectGroup(item,i)" :class="item.status"></i> <span class="noselect"  @click="toggle(item,i)">{{ item.name }}</span> <i class="el-icon-arrow-down"></i></h5>
                       <div class="itemList" :class="{toggle:!item.toggle}" >
-                         <div v-for="val in item.users" :key="val.user_id" @click="chooseUser(val)">
+                         <div v-for="val in item.users" :key="val.user_id" @click="chooseUser(val,'single')" :class="{active:val.checked}">
                             <span class="userName">{{ val.username }}</span> <span> {{ val.phone }}</span> 
                          </div>
                       </div>
@@ -45,7 +45,7 @@
 
 
 <script>
-import { user_sjPersonListInter } from "@/api/api";
+import { user_sjPersonListInter,add_sjPersonInter,user_recordpersonListInter,add_recordpersonListInter } from "@/api/api";
 export default {
    data(){
      return{
@@ -56,32 +56,155 @@ export default {
        checked:false
      }
    },
-   created(){
-      this.getData();
+   computed:{
+      deal_personList:function(){
+        console.log("变化")
+         let arr = JSON.parse(JSON.stringify(this.personList));
+          arr.list && arr.list.forEach((items,x) =>{
+              let list = [];
+              items.users.forEach(item =>{
+                this.selectedList.forEach((val,i) =>{
+                  if(item.checked){ return; }
+                  if(item.user_id == val.user_id ){
+                    item.checked = true;
+                  }else{
+                    item.checked = false;
+                  }
+                })
+                console.log(item.checked,"------====",x)
+                if(item.checked){
+                  list.push("1")
+                }
+              }) 
+              console.log("=======x",items.status)
+              if(list.length === items.users.length){
+                items.status = "selectAll";
+              }else if(list.length === 0){
+                items.status = "zero"
+              }else{
+                items.status = "selectHalf";
+              }
+          })
+          console.log(arr.list)
+          return  arr.list;
+      }
    },
    methods:{
+     //获取人员列表
      getData(){
-        user_sjPersonListInter({name:this.searchVal}).then(res =>{
-          console.log(res.data);
+       if(this.$parent.currentIndex == 0){
+          user_sjPersonListInter({name:this.searchVal}).then(res =>{
+            res.data.list.forEach(v =>{
+              v.toggle = true;
+              v.status = false;
+            })
+            this.personList = res.data;
+            this.selectedList = res.data.checkedList;
+          })
+          return;
+       }
+       user_recordpersonListInter({name:this.searchVal}).then(res =>{
           res.data.list.forEach(v =>{
             v.toggle = true;
             v.status = false;
           })
           this.personList = res.data;
           this.selectedList = res.data.checkedList;
-        })
+       })
+     },
+     //判断添加人员是否重复
+     judgeHeavy(val){
+       let arr = [];
+        val.users ? arr = val.users : arr.push(val);
+        let test = arr.reduce((pre,cur) => {
+              if(this.selectedList.every(item=>item.user_id!==cur.user_id)){
+                  pre.push(cur)
+              }
+              return pre;
+        },[]);
+        return test;
      },
      //选择人员
-     chooseUser(val){
-        this.selectedList.push(val)
+     chooseUser(val,status){
+        if(status === 'single'){
+          if(this.selectedList.length >= this.personList.quota){
+            this.$message({ message: '大于购买人数,不可继续添加',type: 'warning'});
+            return;
+          }
+          let newArr = this.selectedList.filter(x => {
+              return val.user_id == x.user_id
+          })
+          if(newArr.length>0){
+            this.$message({ message: '该人员已添加',type: 'warning'});
+            return;
+          }else{
+            this.selectedList.push(val);
+          }
+        }else{
+            this.selectedList = this.selectedList.concat(val);
+        }
+     },
+     selectGroup(val,i){
+       console.log(val.status)
+       if(val.status == "selectAll"){
+          this.$message({ message: '该人员已添加',type: 'warning'});
+          return;
+       }
+        val.status = true;
+        if(this.selectedList.length >= this.personList.quota){
+          this.$message({ message: '大于购买人数,不可继续添加',type: 'warning'});
+          return;
+        }
+        let newVal = this.judgeHeavy(val);
+        let newSelect = this.selectedList.concat(newVal);
+        if(newSelect.length > this.personList.quota){
+          if(newVal.length>1){
+            this.$message({ message: '大于可添加的人数,请单个添加',type: 'warning'});
+          }else{
+            this.$message({ message: '大于购买人数,不可继续添加',type: 'warning'});
+          }
+          return;
+        }
+        this.personList.list.splice(i,1,val)
+        this.chooseUser(newVal)
      },
      //删除人员
      delChooseUser(i){
         this.selectedList.splice(i,1);
      },
-     saveDepart(){},
-     toggle(val){
+     //添加人员
+     saveDepart(){
+       let delId = '';
+       this.selectedList.forEach((v,i) =>{
+          if(v.user_id){
+            i === 0 ? delId += `${v.user_id}` : delId += `,${v.user_id}`
+          }
+       })
+       if(this.$parent.currentIndex == 0){
+          add_sjPersonInter({id:delId}).then(res =>{
+            this.$parent.sj_getDataList();
+            if(res.data.status == 1){
+              this.centerDialogVisible = false;
+              this.$message({ message: '添加成功',type: 'success'});
+            }else{
+              this.$message({ message: '添加失败',type: 'warning'});
+            }
+          })
+          return;
+       }
+       add_recordpersonListInter({id:delId}).then(res =>{
+         this.$parent.record_getDataList();
+         if(res.data.status == 1){
+           this.centerDialogVisible = false;
+           this.$message({ message: '添加成功',type: 'success'});
+         }else{
+           this.$message({ message: '添加失败',type: 'warning'});
+         }
+       })
+     },
+     toggle(val,i){
        val.toggle = !val.toggle;
+      this.personList.list.splice(i,1,val)
 
      }
    }
@@ -148,28 +271,34 @@ export default {
                    box-shadow: inset 0px -1px 0px rgba(0, 0, 0, 0.05);
                 }
                 h5{
-                  margin-top: 10px;
+                  margin-top: 16px;
                   color: $weight_color;
                   display: flex;
+                  align-items: center;
                   >span{
                     flex: 1;
                     margin-left: 10px;
                     cursor: pointer;
                   }
-                  align-items: center;
-                  .el-checkbox__inner,.el-checkbox__input.is-checked .el-checkbox__inner{
+                  .seleced{
                     width: 20px;
                     height: 20px;
                     border-radius: 50%;
-                    font-size: 30px;
+                    border: 1px solid #e0e0e0;
+                    cursor: pointer;
+                    position: relative;
                   }
-                  .el-checkbox__input.is-checked .el-checkbox__inner::after {
-                      transform: rotate(45deg) scaleY(1.4) translate(5px, 0px);
+                  .selectAll{
+                     border:none;
+                     background: url(../../../assets/images/checked.png) no-repeat center center;
+                     background-size: 20px;
                   }
-                  .el-checkbox__input.is-checked + .el-checkbox__label{
-                    color: $weight_color;
+                  .selectHalf{
+                    border:none;
+                     background: url(../../../assets/images/half.png) no-repeat center center;
+                     background-size: 20px;
                   }
-                  i{
+                  .el-icon-arrow-down{
                     font-size: 16px;
                      color: #aaa;
                   }

+ 1 - 0
src/views/ent/myEnt.vue

@@ -29,6 +29,7 @@ export default {
             activeName: 'first'
         }
     },
+    created(){ },
     methods: {
         handleClick(tab, event) {
             this.activeName = tab.name

+ 16 - 6
vue.config.js

@@ -15,18 +15,28 @@ module.exports = {
     hot: true,
     disableHostCheck: true,
     proxy: {
-      "/api": {
+      "/entbase": {
         // target: "https://app2-jytest.jianyu360.cn",
-        target: "http://192.168.20.241:813",
+        // target: "http://192.168.20.241:813",
+        // target: "http://127.0.0.1:812",
+        // target:'http://192.168.20.51:815',
+        target:'http://192.168.20.214:815',
+        changeOrigin: true,
+        ws: true,
+        pathRewrite: {
+          "^/entbase": "/entbase"
+        }
+      },
+      "/entniche": {
+        // target: "https://app2-jytest.jianyu360.cn",
+        // target: "http://192.168.20.241:813",
         // target: "http://127.0.0.1:812",
-
         // target:'http://192.168.20.51:815/entbase',
-        // target:'http://192.168.20.51:813/entdataexport',
-        // target:'http://192.168.20.214:812/entniche',
+        target:'http://192.168.20.214:812',
         changeOrigin: true,
         ws: true,
         pathRewrite: {
-          "^/api": ""
+          "^/entniche": "/entniche"
         }
       },
     }