Commit 521a65eb by xiaohai

build for test

parent baab5497
...@@ -192,7 +192,7 @@ ...@@ -192,7 +192,7 @@
} }
} else { } else {
if (group.level == 0) { if (group.level == 0) {
group.disabled = true; group.disabled = !(group.childrens == null || group.childrens.length == 0);
group.hasLoad = true; group.hasLoad = true;
_this.menuData = [group]; _this.menuData = [group];
_this.defaultOpen.push(group.id); _this.defaultOpen.push(group.id);
......
<template> <template>
<div> <div>
<el-table <el-table
@selection-change="selectMember"
ref="clerkViewTable" ref="clerkViewTable"
class="diy-table" class="diy-table"
height="445" height="445"
...@@ -67,6 +68,12 @@ export default { ...@@ -67,6 +68,12 @@ export default {
}; };
}, },
methods: { methods: {
/**
* table选择门店
*/
selectMember(selection) {
this.$emit("selectMember", selection);
},
}, },
mounted() { mounted() {
let list = this.tableData; let list = this.tableData;
......
...@@ -71,11 +71,23 @@ export default { ...@@ -71,11 +71,23 @@ export default {
} }
}, },
mounted() { mounted() {
let arr = []; // let arr = [];
this.employeeList.forEach(clerk => { // console.log( this.employeeList, " this.employeeList");
arr.push(clerk.ext.employeeClerk); // this.employeeList.forEach(clerk => {
}); // arr.push(clerk.ext.employeeClerk);
this.tableData = arr; // });
// this.tableData = arr;
},
watch: {
employeeList(list) {
let arr = [];
console.log( list, " this.list");
list.forEach(clerk => {
clerk.ext.employeeClerk.sharedContactEmployeeStoreId = clerk.sharedContactEmployeeStoreId;
arr.push(clerk.ext.employeeClerk);
});
this.tableData = arr;
}
} }
}; };
</script> </script>
......
<template>
<div class="per-set-div"></div>
</template>
<script>
export default {
name: "permission-set"
}
</script>
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
<template v-else> <template v-else>
<div v-if="item.fieldType == 0 || item.fieldType == 1 || item.fieldType == 6">{{info[item.fieldCode]}}</div> <div v-if="item.fieldType == 0 || item.fieldType == 1 || item.fieldType == 6">{{info[item.fieldCode]}}</div>
<template v-else-if="item.fieldType == 2"> <template v-else-if="item.fieldType == 2">
<div v-if="item.systemFlag == 1">{{item.fieldOperations.fieldContent[(info[item.fieldCode] || 1) * 1 - 1].name}}</div> <div v-if="item.systemFlag == 1">{{!!item.fieldOperations.fieldContent[info[item.fieldCode] * 1 - 1] ? item.fieldOperations.fieldContent[info[item.fieldCode] * 1 - 1].name : ""}}</div>
<div v-else>{{info[item.fieldCode]}}</div> <div v-else>{{info[item.fieldCode]}}</div>
</template> </template>
<div v-else-if="item.fieldType == 3"></div> <div v-else-if="item.fieldType == 3"></div>
......
...@@ -142,7 +142,7 @@ export default { ...@@ -142,7 +142,7 @@ export default {
}, },
resignation: { resignation: {
params: { params: {
fireReason: ths.ruleForm.reason, fireReason: ths.ruleForm.reason * 1 + 1,
remark: ths.ruleForm.remarks, remark: ths.ruleForm.remarks,
recordId: ths.employee.recordId, recordId: ths.employee.recordId,
fireDate: ths.ruleForm.date fireDate: ths.ruleForm.date
...@@ -151,7 +151,7 @@ export default { ...@@ -151,7 +151,7 @@ export default {
}, },
changeFireInfo: { changeFireInfo: {
params: { params: {
fireReason: ths.ruleForm.reason, fireReason: ths.ruleForm.reason * 1 + 1,
remark: ths.ruleForm.remarks, remark: ths.ruleForm.remarks,
recordId: ths.employee.recordId, recordId: ths.employee.recordId,
fireDate: ths.ruleForm.date, fireDate: ths.ruleForm.date,
......
...@@ -75,7 +75,7 @@ export default { ...@@ -75,7 +75,7 @@ export default {
data() { data() {
return { return {
typeLsit: ["全部", "全职", "兼职", "外包", "实习", "无类型"], typeLsit: ["全部", "全职", "兼职", "外包", "实习", "无类型"],
reasons: ["家庭原因", "个人原因", "发展原因", "合同到期不续签", "协议解除", "无法胜任工作", "经济性裁员", "严重违法违纪", "其他"], reasons: ["", "家庭原因", "个人原因", "发展原因", "合同到期不续签", "协议解除", "无法胜任工作", "经济性裁员", "严重违法违纪", "其他"],
propList: { propList: {
headPic: { headPic: {
label: "", label: "",
......
...@@ -122,7 +122,7 @@ export const constantRouterMap = [ ...@@ -122,7 +122,7 @@ export const constantRouterMap = [
}, },
{ {
path: "/employeeRecord", path: "/employeeRecord",
name: '共享通讯录二维码', name: '在职员工',
component: _import('contacts','employeeRecord') component: _import('contacts','employeeRecord')
} }
] ]
......
...@@ -157,7 +157,7 @@ ...@@ -157,7 +157,7 @@
arr.push(li.employeeClerkId); arr.push(li.employeeClerkId);
}); });
let params = { let params = {
ids: arr.push(",") ids: arr.join(",")
} }
getRequest("/haoban-manage-web/emp/del", params) getRequest("/haoban-manage-web/emp/del", params)
.then(res => { .then(res => {
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
</div> </div>
<p class="position">{{his.positionName}}</p> <p class="position">{{his.positionName}}</p>
<p>{{historyStatus[his.historyStatus * 1 - 1]}}<a class="a-href m-l-10 fs-12" @click="editHis(his)" v-if="his.historyStatus == 3">编辑</a></p> <p>{{historyStatus[his.historyStatus * 1 - 1]}}<a class="a-href m-l-10 fs-12" @click="editHis(his)" v-if="his.historyStatus == 3">编辑</a></p>
<p v-if="his.historyStatus == 3">离职理由:{{reasons[his.fireReason]}}</p>
<p>{{!!his.storeName ? his.storeName : his.groupName}}</p> <p>{{!!his.storeName ? his.storeName : his.groupName}}</p>
</div> </div>
</li> </li>
...@@ -89,6 +90,7 @@ export default { ...@@ -89,6 +90,7 @@ export default {
info: {}, info: {},
staticInfo: {}, staticInfo: {},
statusList: ["正式", "试用", "离职"], statusList: ["正式", "试用", "离职"],
reasons: ["", "家庭原因", "个人原因", "发展原因", "合同到期不续签", "协议解除", "无法胜任工作", "经济性裁员", "严重违法违纪", "其他"],
items: [], items: [],
fieldList: [], fieldList: [],
mileStone: [], // 里程碑数据 mileStone: [], // 里程碑数据
......
...@@ -8,57 +8,50 @@ ...@@ -8,57 +8,50 @@
<search-menu @handleSearchKey="handleSearchKey" @handleTreeSelection="handleTreeSelection" :treeData="menuData" :searchResult="searchResult" @handleEmployeeSelection="handleEmployeeSelection"> <search-menu @handleSearchKey="handleSearchKey" @handleTreeSelection="handleTreeSelection" :treeData="menuData" :searchResult="searchResult" @handleEmployeeSelection="handleEmployeeSelection">
</search-menu> </search-menu>
<employee-info v-if="showEmployee == 'employee'" :info="selectedEmployee"></employee-info> <employee-info v-if="showEmployee == 'employee'" :info="selectedEmployee"></employee-info>
<div class="af-right-container" v-loading="loading" v-else-if="groupInfo.isStoreGroup != 1 && groupInfo.level !=0"> <div class="af-right-container" v-loading="loading" v-else-if="groupInfo.isStoreGroup != 1 || (groupInfo.level !=0 && groupInfo.isStoreGroup == 1)">
<div class="af-right-header"> <div class="af-right-header">
<span class="title-span">{{groupInfo.groupName}}{{total}}人)<span class="not-show-app">本企业通讯录APP中不展示</span></span> <span class="title-span">{{groupInfo.groupName}}{{total}}人)<span class="not-show-app">本企业通讯录APP中不展示</span></span>
<template v-if="!!groupInfo.isMine"> <template v-if="!!groupInfo.isMine">
<span class="handle-area" v-if="groupInfo.isStoreGroup == 1"> <span class="handle-area" v-if="groupInfo.isStoreGroup == 1">
<a class="a-href" :href="'#/addGroup?addnew=1&groupId='+groupInfo.departmentId">添加子分组</a> <a class="a-href" @click="dlgTitle = '分组'; dlgShow = true;">添加子分组</a>
<span class="hurdle"></span> <span class="hurdle"></span>
<a class="a-href" :href="'#/addGroup?groupId='+groupInfo.departmentId">编辑</a> <a class="a-href" :href="'#/addGroup?groupId='+groupInfo.departmentId">编辑</a>
</span> </span>
<span class="handle-area" v-else> <span class="handle-area" v-else>
<a :href="'#/addDepartment?addnew=1&departmentId='+groupInfo.departmentId" class="J_add-child a-href">添加子部门</a> <a @click="dlgTitle = '部门'; dlgShow = true;" class="J_add-child a-href">添加子部门</a>
<template v-if="groupInfo.level != 0"> <template v-if="groupInfo.level != 0">
<span class="hurdle"></span> <span class="hurdle"></span>
<a :href="'#/addDepartment?departmentId='+groupInfo.departmentId" class="J_edit a-href">编辑</a> <a :href="'#/addDepartment?type=group&departmentId='+groupInfo.departmentId" class="J_edit a-href">编辑</a>
</template> </template>
</span> </span>
</template> </template>
</div> </div>
<div class="af-right-button-box"> <div class="af-right-button-box">
<template v-if="!!groupInfo.isMine"> <template v-if="!!groupInfo.isMine">
<a href="#/storeInfo" v-if="groupInfo.isStoreGroup == 1"> <el-button v-if="groupInfo.isStoreGroup == 1" type="primary" @click="$refs.storeSelector.treeSet.dialogVisible = true;sldType = 2;">添加门店</el-button>
<el-button type="primary">添加门店</el-button> <el-button v-else type="primary" @click="callEmployeeSelector" :disabled="disabled">添加成员</el-button>
</a>
<a v-else :href="'#/employee?addnew=1&departmentId='+groupInfo.departmentId">
<el-button type="primary">添加成员</el-button>
</a>
<el-button type="danger" plain @click="delMembers" :disabled="disabledDel">批量删除</el-button> <el-button type="danger" plain @click="delMembers" :disabled="disabledDel">批量删除</el-button>
</template> </template>
<el-button class="J_show-children"> <el-button class="J_show-children">
<el-checkbox class="m-r-10" v-model="showChildMember" @change="setChildMemberShow"></el-checkbox><a class="a-href">显示子成员</a> <el-checkbox class="m-r-10" v-model="showChildMember" @change="setChildMemberShow"></el-checkbox><a class="a-href">显示子成员</a>
</el-button> </el-button>
</div> </div>
<clerk-view v-if="groupInfo.isStoreGroup == 1" :tableData="employeeList"></clerk-view> <clerk-view v-if="groupInfo.isStoreGroup == 1" :tableData="employeeList" @selectMember="selectMember"></clerk-view>
<employee-list v-else :employeeList="employeeList" @selectMember="selectMember"></employee-list> <employee-list v-else :employeeList="employeeList" @selectMember="selectMember"></employee-list>
<div class="pagination"> <div class="pagination">
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :page-sizes="[20, 40, 60, 80]" :page-size="pageSize" :current-page="currentPage" layout="total, sizes, prev, pager, next" :total="total"> <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :page-sizes="[20, 40, 60, 80]" :page-size="pageSize" :current-page="currentPage" layout="total, sizes, prev, pager, next" :total="total">
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
<div class="af-right-container" v-else-if="groupInfo.isStoreGroup == 1 && groupInfo.level ==0"> <div class="af-right-container" v-else-if="groupInfo.isStoreGroup == 1 && groupInfo.level == 0 && !!groupInfo.isMine">
<p style="margin: 20px 0;">是否共享门店及成员数据</p> <p style="margin: 20px 0;">是否共享门店及成员数据</p>
<el-checkbox-group v-model="checkList"> <el-checkbox v-model="shareSale">销售数据</el-checkbox>
<el-checkbox label="sale">销售数据</el-checkbox> <el-checkbox v-model="shareMember">会员数据</el-checkbox>
<el-checkbox label="vip">会员数据</el-checkbox>
</el-checkbox-group>
<div style="margin: 20px 0;"> <div style="margin: 20px 0;">
<el-button type="primary" @click="subShareSet">确定</el-button> <el-button type="primary" @click="subShareSet">确定</el-button>
<el-button>取消</el-button>
</div> </div>
</div> </div>
<permission-set v-else-if="groupInfo.isStoreGroup == 1 && groupInfo.level == 0 && !groupInfo.isMine"></permission-set>
</template> </template>
<template v-else> <template v-else>
<guid-div></guid-div> <guid-div></guid-div>
...@@ -66,6 +59,17 @@ ...@@ -66,6 +59,17 @@
</div> </div>
</div> </div>
</div> </div>
<el-dialog :title="'添加子' + dlgTitle" :visible.sync="dlgShow" width="30%">
<div style="padding: 30px;">
<el-input v-model="newGroupName" :placeholder="'请输入'+dlgTitle+'名称'"></el-input>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dlgShow = false">取 消</el-button>
<el-button type="primary" @click="subSonGroupAdd">确 定</el-button>
</span>
</el-dialog>
<vue-select-employee ref="selectEmployee" :onlyPerson="true" @handleSelectedList="handleSelectedList" :treeData="treeData"></vue-select-employee>
<vue-select-store ref="storeSelector" @handleSelectedList="handleSelectedList"></vue-select-store>
</div> </div>
</template> </template>
<script> <script>
...@@ -76,6 +80,9 @@ import employeeList from "components/contacts/share/employeeList"; ...@@ -76,6 +80,9 @@ import employeeList from "components/contacts/share/employeeList";
import clerkView from "components/contacts/share/clerkView"; import clerkView from "components/contacts/share/clerkView";
import guidDiv from "components/contacts/share/guid"; import guidDiv from "components/contacts/share/guid";
import { getRequest, postRequest, postJsonRequest, postJson } from '@/api/api'; import { getRequest, postRequest, postJsonRequest, postJson } from '@/api/api';
import vueSelectEmployee from "components/common/vueSelectEmployee";
import vueSelectStore from "components/common/vueSelectStore";
import permissionSet from "components/contacts/share/permissionSet";
export default { export default {
name: "shareContact", name: "shareContact",
components: { components: {
...@@ -84,7 +91,10 @@ export default { ...@@ -84,7 +91,10 @@ export default {
employeeInfo, employeeInfo,
employeeList, employeeList,
guidDiv, guidDiv,
clerkView clerkView,
vueSelectEmployee,
vueSelectStore,
permissionSet
}, },
data() { data() {
return { return {
...@@ -118,15 +128,128 @@ export default { ...@@ -118,15 +128,128 @@ export default {
searchResult: {}, searchResult: {},
showEmployee: false, showEmployee: false,
selectedEmployee: {}, selectedEmployee: {},
checkList: [] sharedContactRelationId: [],
shareMember: false,
shareSale: false,
disabled: true,
treeData: {},
sldType: 1,
dlgTitle: "",
dlgShow: false,
newGroupName: ""
}; };
}, },
created() {}, created() {},
beforeMount() { beforeMount() {
this.getGroupData(); this.getGroupData();
// this.getEmployee(); this.getSelectorGroupData();
}, },
methods: { methods: {
subSonGroupAdd() {
let ths = this;
let newGroupName = ths.newGroupName;
if (newGroupName == "") {
ths.$message.error({
message: "名称不能为空"
});
} else {
let params = {
parentSharedContactGroupId: ths.groupInfo.id,
name: ths.newGroupName
};
getRequest("/haoban-manage-web/shared-contact/set-shared-group", params)
.then(res => {
if (res.data.errorCode == 1) {
ths.$message.success({
message: res.data.message
});
let obj = res.data.result;
obj.label = obj.name;
obj.id = obj.sharedContactGroupId;
if (!!ths.groupInfo.childrens)
ths.groupInfo.childrens.push(obj);
else
ths.groupInfo.childrens = [obj];
ths.dlgShow = false;
} else {
ths.$message.error({
message: res.data.message
});
}
})
.catch(e => {
ths.$message.error({
message: e.message
});
});
}
},
callEmployeeSelector() {
this.sldType = 1;
this.$refs.selectEmployee.treeSet.dialogVisible = true;
},
handleStoreSelectedList() {},
handleSelectedList(list) {
let ths = this;
let arr = [];
list.forEach(item => {
arr.push({
id: item.id,
type: ths.sldType
});
});
let params = {
overwrite: true,
sharedContactMemberList: [
{
sharedContactGroupId: ths.groupInfo.id,
memberList: arr
}
]
}
postJson("/haoban-manage-web/shared-contact/add-shared-member", params)
.then(res => {
if (res.data.errorCode == 1) {
ths.$message.success({
message: res.data.message
});
ths.getEmployee();
} else {
ths.$message.error({
message: res.data.message
});
}
})
.catch(e => {
ths.$message.error({
message: e.message
});
});
},
getSelectorGroupData() {
let _this = this;
let params = {
isStoreGroup: 0
};
getRequest("/haoban-manage-web/dept/deptListForCompany", params)
.then(res => {
let treeData = [];
let personData = [];
if (res.data.errorCode == 1) {
treeData = res.data.result.departmentList || [];
personData = res.data.result.searchList || []
}
// _this.formatGroupData(treeData, personData);
_this.treeData = {
treeData,
personData
};
_this.disabled = false;
})
.catch(e => {
console.log(e, "error");
});
},
addSon() { addSon() {
location.href = '#/addGroup?addnew=1&groupId=' + this.groupInfo.departmentId; location.href = '#/addGroup?addnew=1&groupId=' + this.groupInfo.departmentId;
}, },
...@@ -141,22 +264,39 @@ export default { ...@@ -141,22 +264,39 @@ export default {
/** /**
* 设置是否共享门店及成员数据 * 设置是否共享门店及成员数据
*/ */
subShareSet() {}, subShareSet() {
let _this = this;
let params = {
visibleData: {
shareMember: _this.shareMember * 1,
shareSale: _this.shareSale * 1,
sharedContactRelationId: _this.sharedContactRelationId.join(",")
}
};
postJson("/haoban-manage-web/shared-contact/set-shared-store-visible-data", params)
.then(res => {
_this.$message.error({
message: res.data.message
});
})
.catch(e => {
_this.$message.error({
message: e.message
});
});
},
/** /**
* 树形菜单搜索 * 树形菜单搜索
*/ */
handleSearchKey(keyWord) { handleSearchKey(keyWord) {
console.log(keyWord, "searchKey");
let params = { let params = {
keyWord keyWord
}; };
getRequest("/haoban-manage-web/emp/searchpage", params) getRequest("/haoban-manage-web/emp/searchpage", params)
.then(res => { .then(res => {
console.log(res, "key word search");
this.searchResult = res.data.result; this.searchResult = res.data.result;
}) })
.catch(e => { .catch(e => {
console.log(e, "error");
}); });
}, },
...@@ -176,7 +316,6 @@ export default { ...@@ -176,7 +316,6 @@ export default {
* 树形搜索结果选人处理 * 树形搜索结果选人处理
*/ */
handleEmployeeSelection(employee, showEmployee) { handleEmployeeSelection(employee, showEmployee) {
console.log(employee);
this.selectedEmployee = employee; this.selectedEmployee = employee;
this.showEmployee = showEmployee; this.showEmployee = showEmployee;
}, },
...@@ -196,22 +335,28 @@ export default { ...@@ -196,22 +335,28 @@ export default {
}).then(() => { }).then(() => {
let arr = []; let arr = [];
_this.selectedList.forEach(li => { _this.selectedList.forEach(li => {
arr.push(li.employeeClerkId); arr.push(li.sharedContactEmployeeStoreId);
}); });
let params = { let params = {
ids: arr.push(",") sharedContactEmployeeStoreIdList: arr
} }
getRequest("/haoban-manage-web/emp/del", params) postJson("/haoban-manage-web/shared-contact/del-shared-member", params)
.then(res => { .then(res => {
console.log(res, "Del result"); if (res.data.errorCode == 1) {
let selected = _this.selectedList; _this.$message.success({
let originList = _this.employeeList; message: res.data.message
let selSet = new Set(selected); });
let originSet = new Set(originList); _this.getEmployee();
_this.employeeList = selected.concat(originList).filter(v => !selSet.has(v) || !originSet.has(v)); // 两数组非交集部分即为剔除后剩下的数据 } else {
_this.$message.error({
message: res.data.message
});
}
}) })
.catch(e => { .catch(e => {
console.log(e, "error"); _this.$message.error({
message: e.message
});
}); });
}) })
}, },
...@@ -220,7 +365,6 @@ export default { ...@@ -220,7 +365,6 @@ export default {
* 设置是否显示子成员 * 设置是否显示子成员
*/ */
setChildMemberShow() { setChildMemberShow() {
console.log(this.showChildMember * 1);
this.getEmployee(); this.getEmployee();
}, },
...@@ -234,12 +378,10 @@ export default { ...@@ -234,12 +378,10 @@ export default {
}; };
getRequest("/haoban-manage-web/shared-contact/find-shared-group", {}) getRequest("/haoban-manage-web/shared-contact/find-shared-group", {})
.then(res => { .then(res => {
console.log(res.data.result, "gongxiang");
res.data.result.forEach(li => { res.data.result.forEach(li => {
li.groupId = li.sharedContactGroupId; li.groupId = li.sharedContactGroupId;
}); });
_this.menuData = res.data.result || []; _this.menuData = res.data.result || [];
console.log(_this.menuData, "menudata");
_this.menuData.some(li => { _this.menuData.some(li => {
if (li.level == 0) { if (li.level == 0) {
_this.groupInfo.departmentId = li.groupId; _this.groupInfo.departmentId = li.groupId;
...@@ -248,12 +390,25 @@ export default { ...@@ -248,12 +390,25 @@ export default {
return li.level == 0; return li.level == 0;
}); });
_this.getEmployee(); _this.getEmployee();
_this.getRelationIds( _this.menuData);
}) })
.catch(e => { .catch(e => {
console.log(e, "error");
}); });
}, },
getRelationIds(data) {
let userInfo = window.localStorage.getItem("userInfo");
let enterpriseId = JSON.parse(userInfo).enterpriseId;
let arr = [];
data.forEach(group => {
if (group.level == 0) {
if (group.enterpriseId != enterpriseId) {
arr.push(group.enterpriseId);
}
}
});
arr = [...new Set(arr)];
this.sharedContactRelationId = arr;
},
/** /**
* 获取员工列表 * 获取员工列表
*/ */
...@@ -265,7 +420,6 @@ export default { ...@@ -265,7 +420,6 @@ export default {
}; };
postJson("/haoban-manage-web/shared-contact/find-shared-member", params) postJson("/haoban-manage-web/shared-contact/find-shared-member", params)
.then(res => { .then(res => {
console.log(res, "menmers");
let list = []; let list = [];
let total = 0; let total = 0;
if (res.data.errorCode == 1) { if (res.data.errorCode == 1) {
...@@ -277,7 +431,6 @@ export default { ...@@ -277,7 +431,6 @@ export default {
_this.loading = false; _this.loading = false;
}) })
.catch(e => { .catch(e => {
console.log(e, "error");
_this.loading = false; _this.loading = false;
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment