Changes
This commit is contained in:
+3
@@ -393,6 +393,7 @@ public class MemberStatisticsServiceImpl extends BaseServiceImpl<Sys_user> imple
|
|||||||
*/
|
*/
|
||||||
private String getAnalysisPersonFilterSql(MemberStatisticsPageForm pageForm, String alias) {
|
private String getAnalysisPersonFilterSql(MemberStatisticsPageForm pageForm, String alias) {
|
||||||
StringBuilder sqlBuilder = new StringBuilder();
|
StringBuilder sqlBuilder = new StringBuilder();
|
||||||
|
sqlBuilder.append(getAnalysisInSql(alias, "personType", pageForm.getPersonTypes()));
|
||||||
sqlBuilder.append(getAnalysisInSql(alias, "aidFundMemberUserType", pageForm.getAidFundMemberUserTypes()));
|
sqlBuilder.append(getAnalysisInSql(alias, "aidFundMemberUserType", pageForm.getAidFundMemberUserTypes()));
|
||||||
sqlBuilder.append(getAnalysisInSql(alias, "userAttribute", pageForm.getUserAttributes()));
|
sqlBuilder.append(getAnalysisInSql(alias, "userAttribute", pageForm.getUserAttributes()));
|
||||||
return sqlBuilder.toString();
|
return sqlBuilder.toString();
|
||||||
@@ -498,6 +499,7 @@ public class MemberStatisticsServiceImpl extends BaseServiceImpl<Sys_user> imple
|
|||||||
sql.setVar("yearCnd", new Static(" AND u.`year` = %d".formatted(currentYear)));
|
sql.setVar("yearCnd", new Static(" AND u.`year` = %d".formatted(currentYear)));
|
||||||
// sql.setVar("abbr", new Static("his"));
|
// sql.setVar("abbr", new Static("his"));
|
||||||
}
|
}
|
||||||
|
cnd.andEX("u.personType", "in", pageForm.getPersonTypes());
|
||||||
cnd.andEX("u.userAttribute", "in", pageForm.getUserAttributes());
|
cnd.andEX("u.userAttribute", "in", pageForm.getUserAttributes());
|
||||||
cnd.andEX("u.aidFundMemberUserType", "in", pageForm.getAidFundMemberUserTypes());
|
cnd.andEX("u.aidFundMemberUserType", "in", pageForm.getAidFundMemberUserTypes());
|
||||||
cnd.groupBy("un.id", "un.unionCode", "un.name");
|
cnd.groupBy("un.id", "un.unionCode", "un.name");
|
||||||
@@ -539,6 +541,7 @@ public class MemberStatisticsServiceImpl extends BaseServiceImpl<Sys_user> imple
|
|||||||
sql.setVar("table", new Static("member_history"));
|
sql.setVar("table", new Static("member_history"));
|
||||||
sql.setVar("yearCnd", new Static(" AND u.`year` = %d".formatted(currentYear)));
|
sql.setVar("yearCnd", new Static(" AND u.`year` = %d".formatted(currentYear)));
|
||||||
}
|
}
|
||||||
|
cnd.andEX("u.personType", "in", pageForm.getPersonTypes());
|
||||||
cnd.andEX("u.userAttribute", "in", pageForm.getUserAttributes());
|
cnd.andEX("u.userAttribute", "in", pageForm.getUserAttributes());
|
||||||
cnd.andEX("u.aidFundMemberUserType", "in", pageForm.getAidFundMemberUserTypes());
|
cnd.andEX("u.aidFundMemberUserType", "in", pageForm.getAidFundMemberUserTypes());
|
||||||
cnd.and("un.unitLevel", "=", 2);
|
cnd.and("un.unitLevel", "=", 2);
|
||||||
|
|||||||
@@ -35,6 +35,8 @@
|
|||||||
<el-table-column label="姓名" prop="userName" show-overflow-tooltip sortable></el-table-column>
|
<el-table-column label="姓名" prop="userName" show-overflow-tooltip sortable></el-table-column>
|
||||||
<el-table-column label="性别" prop="sex" show-overflow-tooltip sortable></el-table-column>
|
<el-table-column label="性别" prop="sex" show-overflow-tooltip sortable></el-table-column>
|
||||||
<el-table-column label="电话" prop="mobile" show-overflow-tooltip></el-table-column>
|
<el-table-column label="电话" prop="mobile" show-overflow-tooltip></el-table-column>
|
||||||
|
<el-table-column label="人员类型" prop="personType" show-overflow-tooltip sortable></el-table-column>
|
||||||
|
<el-table-column label="在职状态" prop="userState" show-overflow-tooltip sortable></el-table-column>
|
||||||
<el-table-column label="所属单位" prop="unitName" sortable show-overflow-tooltip></el-table-column>
|
<el-table-column label="所属单位" prop="unitName" sortable show-overflow-tooltip></el-table-column>
|
||||||
<el-table-column label="身份" prop="roleName" show-overflow-tooltip></el-table-column>
|
<el-table-column label="身份" prop="roleName" show-overflow-tooltip></el-table-column>
|
||||||
<el-table-column label="入会时间" prop="joinTime" show-overflow-tooltip sortable></el-table-column>
|
<el-table-column label="入会时间" prop="joinTime" show-overflow-tooltip sortable></el-table-column>
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@
|
|||||||
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
||||||
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
||||||
<!-- </search-item>-->
|
<!-- </search-item>-->
|
||||||
<search-item label="人员分类">
|
<search-item label="人员分类" v-if="false">
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" code="AIDFUND_MEMBER_USER_TYPE"
|
<dict-select v-model="pageForm.aidFundMemberUserType" code="AIDFUND_MEMBER_USER_TYPE"
|
||||||
style="width: 100%"></dict-select>
|
style="width: 100%"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
|
|||||||
@@ -63,12 +63,7 @@
|
|||||||
|
|
||||||
<el-descriptions-item label="工作单位">
|
<el-descriptions-item label="工作单位">
|
||||||
<el-form-item prop="unitId">
|
<el-form-item prop="unitId">
|
||||||
<el-select clearable filterable placeholder="请选择工作单位" style="width: 100%"
|
<el-input v-model="formData.unitName" disabled placeholder="暂无工作单位"></el-input>
|
||||||
disabled @change="getUnionName(formData.unitId)"
|
|
||||||
v-model="formData.unitId">
|
|
||||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
|
||||||
v-for="item in units"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="所属工会">
|
<el-descriptions-item label="所属工会">
|
||||||
@@ -278,6 +273,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
normalizeUnitField() {
|
||||||
|
if (!this.formData || !this.formData.unitId) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const unitId = String(this.formData.unitId)
|
||||||
|
this.$set(this.formData, "unitId", unitId)
|
||||||
|
const unit = this.units.find(v => String(v.id) === unitId)
|
||||||
|
if (unit) {
|
||||||
|
this.$set(this.formData, "unitName", unit.name)
|
||||||
|
this.$set(this.formData, "unionName", unit.unionName || unit.unionname || this.formData.unionName || "")
|
||||||
|
}
|
||||||
|
},
|
||||||
// 提交
|
// 提交
|
||||||
handleTaskAction(val) {
|
handleTaskAction(val) {
|
||||||
this.$refs.formRef.validate((valid) => {
|
this.$refs.formRef.validate((valid) => {
|
||||||
@@ -446,7 +453,7 @@
|
|||||||
this.$set(this.formData, "userState", userState)
|
this.$set(this.formData, "userState", userState)
|
||||||
this.$set(this.formData, "personType", personType)
|
this.$set(this.formData, "personType", personType)
|
||||||
this.$set(this.formData, "unitName", unit ? unit.name : unitName)
|
this.$set(this.formData, "unitName", unit ? unit.name : unitName)
|
||||||
this.$set(this.formData, "unitId", unit ? unit.id : unitId)
|
this.$set(this.formData, "unitId", unit ? String(unit.id) : unitId)
|
||||||
this.$set(this.formData, "unionName", union ? union.name : unionName)
|
this.$set(this.formData, "unionName", union ? union.name : unionName)
|
||||||
this.$set(this.formData, "unionId", union ? union.id : unionId)
|
this.$set(this.formData, "unionId", union ? union.id : unionId)
|
||||||
|
|
||||||
@@ -458,8 +465,9 @@
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
async created() {
|
async created() {
|
||||||
this.init()
|
await this.init()
|
||||||
this.units = await this.$businessTool.listUnit()
|
this.units = await this.$businessTool.listUnit()
|
||||||
|
this.normalizeUnitField()
|
||||||
await this.validateApply()
|
await this.validateApply()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -69,12 +69,7 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
<el-descriptions-item label="工作单位">
|
<el-descriptions-item label="工作单位">
|
||||||
<el-form-item prop="unitId">
|
<el-form-item prop="unitId">
|
||||||
<el-select clearable filterable placeholder="请选择工作单位" style="width: 100%"
|
<el-input v-model="formData.unitName" disabled placeholder="暂无工作单位"></el-input>
|
||||||
disabled @change="getUnionName(formData.unitId)"
|
|
||||||
v-model="formData.unitId">
|
|
||||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
|
||||||
v-for="item in units"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="所属工会">
|
<el-descriptions-item label="所属工会">
|
||||||
@@ -326,6 +321,18 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
normalizeUnitField() {
|
||||||
|
if (!this.formData || !this.formData.unitId) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const unitId = String(this.formData.unitId)
|
||||||
|
this.$set(this.formData, "unitId", unitId)
|
||||||
|
const unit = this.units.find(v => String(v.id) === unitId)
|
||||||
|
if (unit) {
|
||||||
|
this.$set(this.formData, "unitName", unit.name)
|
||||||
|
this.$set(this.formData, "unionName", unit.unionName || unit.unionname || this.formData.unionName || "")
|
||||||
|
}
|
||||||
|
},
|
||||||
onSave() {
|
onSave() {
|
||||||
this.$confirm("您确定保存吗?", "提示", {
|
this.$confirm("您确定保存吗?", "提示", {
|
||||||
confirmButtonText: "确定",
|
confirmButtonText: "确定",
|
||||||
@@ -453,7 +460,7 @@ layout("/layouts/platform.html"){
|
|||||||
this.$set(this.formData, "personType", personType)
|
this.$set(this.formData, "personType", personType)
|
||||||
this.$set(this.formData, "preparedBy", preparedBy)
|
this.$set(this.formData, "preparedBy", preparedBy)
|
||||||
this.$set(this.formData, "unitName", unit ? unit.name : unitName)
|
this.$set(this.formData, "unitName", unit ? unit.name : unitName)
|
||||||
this.$set(this.formData, "unitId", unit ? unit.id : unitId)
|
this.$set(this.formData, "unitId", unit ? String(unit.id) : unitId)
|
||||||
this.$set(this.formData, "unionName", union ? union.name : unionName)
|
this.$set(this.formData, "unionName", union ? union.name : unionName)
|
||||||
this.$set(this.formData, "unionId", union ? union.id : unionId)
|
this.$set(this.formData, "unionId", union ? union.id : unionId)
|
||||||
|
|
||||||
@@ -465,11 +472,10 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
async created() {
|
||||||
this.init()
|
await this.init()
|
||||||
this.$businessTool.listUnit().then((data) => {
|
this.units = await this.$businessTool.listUnit()
|
||||||
this.units = data
|
this.normalizeUnitField()
|
||||||
})
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
+1
-1
@@ -30,7 +30,7 @@
|
|||||||
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
||||||
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
||||||
<!-- </search-item>-->
|
<!-- </search-item>-->
|
||||||
<search-item label="人员分类">
|
<search-item label="人员分类" v-if="false">
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"
|
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"
|
||||||
code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
|
|||||||
+33
-16
@@ -92,12 +92,7 @@ const MEMBER_CHANGE = {
|
|||||||
<template>
|
<template>
|
||||||
<el-descriptions-item label="工作单位">
|
<el-descriptions-item label="工作单位">
|
||||||
<el-form-item prop="unitId">
|
<el-form-item prop="unitId">
|
||||||
<el-select clearable filterable placeholder="请选择工作单位" style="width: 100%"
|
<el-input v-model="formData.unitName" disabled placeholder="暂无工作单位"></el-input>
|
||||||
:disabled="allowFields('unitId')" @change="getUnionName"
|
|
||||||
v-model="formData.unitId">
|
|
||||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
|
||||||
v-for="item in units"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="所属工会">
|
<el-descriptions-item label="所属工会">
|
||||||
@@ -194,9 +189,10 @@ const MEMBER_CHANGE = {
|
|||||||
|
|
||||||
<el-descriptions-item label="福利会员状态">
|
<el-descriptions-item label="福利会员状态">
|
||||||
<el-form-item prop="welfareMember">
|
<el-form-item prop="welfareMember">
|
||||||
<el-radio-group v-model="formData.welfareMember" size="small">
|
<el-radio-group v-model="formData.welfareMember" size="small" class="welfare-member-radio-group"
|
||||||
<el-radio border :label="true">福利会员</el-radio>
|
style="display: flex; align-items: center; flex-wrap: nowrap; white-space: nowrap;">
|
||||||
<el-radio border :label="false">非福利会员</el-radio>
|
<el-radio border :label="true" style="flex-shrink: 0;">福利会员</el-radio>
|
||||||
|
<el-radio border :label="false" style="flex-shrink: 0;">非福利会员</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
@@ -366,9 +362,21 @@ const MEMBER_CHANGE = {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getUnionName(val){
|
getUnionName(val){
|
||||||
debugger
|
const data = this.units.find(v => String(v.id) === String(val))
|
||||||
const data = this.units.find(v => v.id === val)
|
this.$set(this.formData, 'unitName', data ? data.name : '')
|
||||||
this.$set(this.formData, 'unionName', data ? data.unionName : '')
|
this.$set(this.formData, 'unionName', data ? (data.unionName || data.unionname || '') : '')
|
||||||
|
},
|
||||||
|
normalizeUnitField() {
|
||||||
|
if (!this.formData || !this.formData.unitId) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const unitId = String(this.formData.unitId)
|
||||||
|
this.$set(this.formData, "unitId", unitId)
|
||||||
|
let unit = this.units.find(v => String(v.id) === unitId)
|
||||||
|
if (unit) {
|
||||||
|
this.$set(this.formData, "unitName", unit.name)
|
||||||
|
this.$set(this.formData, "unionName", unit.unionName || unit.unionname || this.formData.unionName || "")
|
||||||
|
}
|
||||||
},
|
},
|
||||||
allowFields(prop) {
|
allowFields(prop) {
|
||||||
return !this.allowChangeFields.map(v => v.code).includes(prop)
|
return !this.allowChangeFields.map(v => v.code).includes(prop)
|
||||||
@@ -407,14 +415,15 @@ const MEMBER_CHANGE = {
|
|||||||
this.isShow = true
|
this.isShow = true
|
||||||
this.user = this.$store.state.user
|
this.user = this.$store.state.user
|
||||||
}
|
}
|
||||||
this.getFormDataValue(this.id)
|
await this.getFormDataValue(this.id)
|
||||||
this.allowChangeFields = await this.$businessTool.getDictOptions("ALLOW_CHANGE_FIELDS")
|
this.allowChangeFields = await this.$businessTool.getDictOptions("ALLOW_CHANGE_FIELDS")
|
||||||
if (this.$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_MEMBER_ADMIN, SCHOOL_UNION_ADMIN')) {
|
if (this.$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_MEMBER_ADMIN, SCHOOL_UNION_ADMIN')) {
|
||||||
this.units = await this.$businessTool.listUnit()
|
this.units = await this.$businessTool.listUnit()
|
||||||
this.unions = await this.$businessTool.listUnion()
|
this.unions = await this.$businessTool.listUnion()
|
||||||
} else {
|
} else {
|
||||||
this.units = await this.$businessTool.listUnit(this.user.union.id)
|
this.units = await this.$businessTool.listUnit()
|
||||||
}
|
}
|
||||||
|
this.normalizeUnitField()
|
||||||
},
|
},
|
||||||
async getUserById(userId){
|
async getUserById(userId){
|
||||||
const resp = await $.post("/platform/member/change/apply/getUserByIdForMemberChange", { userId })
|
const resp = await $.post("/platform/member/change/apply/getUserByIdForMemberChange", { userId })
|
||||||
@@ -424,7 +433,7 @@ const MEMBER_CHANGE = {
|
|||||||
},
|
},
|
||||||
getFormDataValue(id){
|
getFormDataValue(id){
|
||||||
if (id) {
|
if (id) {
|
||||||
$.post("/platform/member/change/apply/findChangeById", { id }).then((res) => {
|
return $.post("/platform/member/change/apply/findChangeById", { id }).then((res) => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.formData = res.data
|
this.formData = res.data
|
||||||
this.formData.unionid = this.user.unionid
|
this.formData.unionid = this.user.unionid
|
||||||
@@ -485,7 +494,7 @@ const MEMBER_CHANGE = {
|
|||||||
this.$set(this.formData, "userAttribute", userAttribute)
|
this.$set(this.formData, "userAttribute", userAttribute)
|
||||||
this.$set(this.formData, "aidFundMemberUserType", aidFundMemberUserType)
|
this.$set(this.formData, "aidFundMemberUserType", aidFundMemberUserType)
|
||||||
this.$set(this.formData, "unitName", unit ? unit.name : null)
|
this.$set(this.formData, "unitName", unit ? unit.name : null)
|
||||||
this.$set(this.formData, "unitId", unit ? unit.id : null)
|
this.$set(this.formData, "unitId", unit ? String(unit.id) : null)
|
||||||
this.$set(this.formData, "unionName", union ? union.name : null)
|
this.$set(this.formData, "unionName", union ? union.name : null)
|
||||||
this.$set(this.formData, "unionId", union ? union.id : null)
|
this.$set(this.formData, "unionId", union ? union.id : null)
|
||||||
|
|
||||||
@@ -504,6 +513,14 @@ const MEMBER_CHANGE = {
|
|||||||
.el-descriptions-item__label {
|
.el-descriptions-item__label {
|
||||||
width: 15% !important;
|
width: 15% !important;
|
||||||
}
|
}
|
||||||
|
.welfare-member-radio-group {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
.welfare-member-radio-group .el-radio {
|
||||||
|
margin-right: 12px;
|
||||||
|
}
|
||||||
`
|
`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -38,10 +38,11 @@ layout("/layouts/platform.html"){
|
|||||||
<!-- <dict-select v-model="pageForm.preparedBy" placeholder="请选择编制类别" @change="doSearch"-->
|
<!-- <dict-select v-model="pageForm.preparedBy" placeholder="请选择编制类别" @change="doSearch"-->
|
||||||
<!-- code="USER_PREPARED_BY_TYPE"></dict-select>-->
|
<!-- code="USER_PREPARED_BY_TYPE"></dict-select>-->
|
||||||
<!-- </search-item>-->
|
<!-- </search-item>-->
|
||||||
<search-item label="人员分类">
|
<!-- 临时屏蔽“人员分类”查询字段,不删除配置,后续需要可恢复。-->
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"
|
<!-- <search-item label="人员分类">-->
|
||||||
code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
<!-- <dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"-->
|
||||||
</search-item>
|
<!-- code="AIDFUND_MEMBER_USER_TYPE"></dict-select>-->
|
||||||
|
<!-- </search-item>-->
|
||||||
<search-item label="人员属性">
|
<search-item label="人员属性">
|
||||||
<dict-select v-model="pageForm.userAttribute" placeholder="请选择人员属性" @change="doSearch"
|
<dict-select v-model="pageForm.userAttribute" placeholder="请选择人员属性" @change="doSearch"
|
||||||
code="USER_ATTRIBUTE"></dict-select>
|
code="USER_ATTRIBUTE"></dict-select>
|
||||||
@@ -544,16 +545,21 @@ layout("/layouts/platform.html"){
|
|||||||
{ prop: "sex", label: "性别", width: 120},
|
{ prop: "sex", label: "性别", width: 120},
|
||||||
{ prop: "birthday", label: "出生年月", width: 120, sortable: true },
|
{ prop: "birthday", label: "出生年月", width: 120, sortable: true },
|
||||||
{ prop: "nationality", label: "国籍", width: 120, sortable: true, checked: 0 },
|
{ prop: "nationality", label: "国籍", width: 120, sortable: true, checked: 0 },
|
||||||
{ prop: "nation", label: "民族", width: 120, sortable: true},
|
// 临时屏蔽“民族”列表字段,不删除配置,后续需要可恢复。
|
||||||
|
// { prop: "nation", label: "民族", width: 120, sortable: true},
|
||||||
{ prop: "mobile", label: "联系电话", width: 120 },
|
{ prop: "mobile", label: "联系电话", width: 120 },
|
||||||
{ prop: "political", label: "政治面貌", width: 120, sortable: true},
|
// 临时屏蔽“政治面貌”列表字段,不删除配置,后续需要可恢复。
|
||||||
|
// { prop: "political", label: "政治面貌", width: 120, sortable: true},
|
||||||
{ prop: "userState", label: "在职状态", width: 120, sortable: true },
|
{ prop: "userState", label: "在职状态", width: 120, sortable: true },
|
||||||
{ prop: "personType", label: "人员类型", width: 120, sortable: true, checked: 0 },
|
// 临时隐藏原人员类型位置,人员类型显示到原“人员分类”位置。
|
||||||
|
// { prop: "personType", label: "人员类型", width: 120, sortable: true, checked: 0 },
|
||||||
// { prop: "preparedBy", label: "编制类别", width: 120, sortable: true },
|
// { prop: "preparedBy", label: "编制类别", width: 120, sortable: true },
|
||||||
{ prop: "postDoctoralJoinDate", label: "进站时间", sortable: true, checked: 0 },
|
{ prop: "postDoctoralJoinDate", label: "进站时间", sortable: true, checked: 0 },
|
||||||
{ prop: "unionName", label: "所属工会", width: 120, sortable: true },
|
{ prop: "unionName", label: "所属工会", width: 120, sortable: true },
|
||||||
{ prop: "unitName", label: "所属单位", width: 120, sortable: true },
|
{ prop: "unitName", label: "所属单位", width: 120, sortable: true },
|
||||||
{ prop: "aidFundMemberUserType", label: "人员分类", width: 120, sortable: true },
|
{ prop: "personType", label: "人员类型", width: 120, sortable: true },
|
||||||
|
// 临时屏蔽“人员分类”列表字段,不删除配置,后续需要可恢复。
|
||||||
|
// { prop: "aidFundMemberUserType", label: "人员分类", width: 120, sortable: true },
|
||||||
{ prop: "userAttribute", label: "人员属性", width: 120, sortable: true },
|
{ prop: "userAttribute", label: "人员属性", width: 120, sortable: true },
|
||||||
{ prop: "idCardType", label: "证件类型", width: 120, sortable: true, checked: 0 },
|
{ prop: "idCardType", label: "证件类型", width: 120, sortable: true, checked: 0 },
|
||||||
{ prop: "idCard", label: "证件号码", width: 120, sortable: true, checked: 0 },
|
{ prop: "idCard", label: "证件号码", width: 120, sortable: true, checked: 0 },
|
||||||
|
|||||||
@@ -73,17 +73,17 @@ const MEMBER_INFO = {
|
|||||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||||
|
|
||||||
<!-- 第 4 行 -->
|
<!-- 第 4 行 -->
|
||||||
|
<el-descriptions-item label="人员属性">{{ viewData.userAttribute }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="职称">{{ viewData.professionalTitle }}</el-descriptions-item>
|
<el-descriptions-item label="职称">{{ viewData.professionalTitle }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="职级">{{ viewData.professionalLevel }}</el-descriptions-item>
|
<el-descriptions-item label="职级">{{ viewData.professionalLevel }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="岗位系列">{{ viewData.positionSeries }}</el-descriptions-item>
|
|
||||||
|
|
||||||
<!-- 第 5 行 -->
|
<!-- 第 5 行 -->
|
||||||
|
<el-descriptions-item label="岗位系列">{{ viewData.positionSeries }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="行政级别(管理岗位)">{{ viewData.administrativeLevel }}</el-descriptions-item>
|
<el-descriptions-item label="行政级别(管理岗位)">{{ viewData.administrativeLevel }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="岗级">{{ viewData.positionLevel }}</el-descriptions-item>
|
<el-descriptions-item label="岗级">{{ viewData.positionLevel }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="行政岗级">{{ viewData.administrativePositionLevel }}</el-descriptions-item>
|
|
||||||
|
|
||||||
<el-descriptions-item label="人员分类">{{ viewData.aidFundMemberUserType }}</el-descriptions-item>
|
<el-descriptions-item label="行政岗级">{{ viewData.administrativePositionLevel }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="人员属性">{{ viewData.userAttribute }}</el-descriptions-item>
|
<el-descriptions-item label="人员分类" v-if="false">{{ viewData.aidFundMemberUserType }}</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
`,
|
`,
|
||||||
|
|||||||
+1
-1
@@ -45,7 +45,7 @@
|
|||||||
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
<!-- <dict-select v-model="pageForm.preparedBys" placeholder="请选择编制类别" @change="doSearch"-->
|
||||||
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
<!-- code="USER_PREPARED_BY_TYPE" multiple collapse-tags></dict-select>-->
|
||||||
<!-- </search-item>-->
|
<!-- </search-item>-->
|
||||||
<search-item label="人员分类">
|
<search-item label="人员分类" v-if="false">
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"
|
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch"
|
||||||
code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ layout("/layouts/platform.html"){
|
|||||||
<search-item label="人员类型">
|
<search-item label="人员类型">
|
||||||
<dict-select v-model="pageForm.personType" placeholder="请选择人员类型" @change="doSearch" code="USER_PERSON_TYPE"></dict-select>
|
<dict-select v-model="pageForm.personType" placeholder="请选择人员类型" @change="doSearch" code="USER_PERSON_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="人员分类">
|
<search-item label="人员分类" v-if="false">
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch" code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch" code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="人员属性">
|
<search-item label="人员属性">
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ layout("/layouts/platform.html"){
|
|||||||
<search-item label="人员类型">
|
<search-item label="人员类型">
|
||||||
<dict-select v-model="pageForm.personType" placeholder="请选择人员类型" @change="doSearch" code="USER_PERSON_TYPE"></dict-select>
|
<dict-select v-model="pageForm.personType" placeholder="请选择人员类型" @change="doSearch" code="USER_PERSON_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="人员分类">
|
<search-item label="人员分类" v-if="false">
|
||||||
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch" code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
<dict-select v-model="pageForm.aidFundMemberUserType" placeholder="请选择人员分类" @change="doSearch" code="AIDFUND_MEMBER_USER_TYPE"></dict-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="人员属性">
|
<search-item label="人员属性">
|
||||||
|
|||||||
+37
@@ -82,6 +82,30 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
<el-row type="flex" align="middle" class="query-row query-row-tag">
|
<el-row type="flex" align="middle" class="query-row query-row-tag">
|
||||||
|
<el-col class="query-row-title">人员类型:</el-col>
|
||||||
|
<el-col class="query-row-content query-row-content-tag">
|
||||||
|
<el-tag
|
||||||
|
class="query-tag-item"
|
||||||
|
v-for="item in personTypeOptions"
|
||||||
|
:key="item.code"
|
||||||
|
:effect="pageForm.personTypes.includes(item.name)?'dark':'plain'"
|
||||||
|
@click="tagClick('personTypes',item.name)">
|
||||||
|
{{ item.name }}
|
||||||
|
</el-tag>
|
||||||
|
<span class="query-tag-actions">
|
||||||
|
<el-link type="danger"
|
||||||
|
v-if="personTypeOptions.length&&pageForm.personTypes.length"
|
||||||
|
:underline="false"
|
||||||
|
@click="pageForm.personTypes=[];doSearch()">清空
|
||||||
|
</el-link>
|
||||||
|
<el-link :underline="false"
|
||||||
|
@click="pageForm.personTypes=personTypeOptions.map(p=>p.code);doSearch()"
|
||||||
|
type="success">全部
|
||||||
|
</el-link>
|
||||||
|
</span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle" class="query-row query-row-tag" v-if="false">
|
||||||
<el-col class="query-row-title">人员分类:</el-col>
|
<el-col class="query-row-title">人员分类:</el-col>
|
||||||
<el-col class="query-row-content query-row-content-tag">
|
<el-col class="query-row-content query-row-content-tag">
|
||||||
<el-tag
|
<el-tag
|
||||||
@@ -211,11 +235,13 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
unions: [],
|
unions: [],
|
||||||
units: [],
|
units: [],
|
||||||
|
personTypeOptions: [],
|
||||||
aidFundMemberUserTypeOptions: [],
|
aidFundMemberUserTypeOptions: [],
|
||||||
userAttributeOptions: [],
|
userAttributeOptions: [],
|
||||||
pageForm: {
|
pageForm: {
|
||||||
currentYear: moment().format("YYYY"),
|
currentYear: moment().format("YYYY"),
|
||||||
queryType: "fgh",
|
queryType: "fgh",
|
||||||
|
personTypes: [],
|
||||||
userAttributes: [],
|
userAttributes: [],
|
||||||
aidFundMemberUserTypes: []
|
aidFundMemberUserTypes: []
|
||||||
},
|
},
|
||||||
@@ -239,6 +265,9 @@ layout("/layouts/platform.html"){
|
|||||||
this.units = data
|
this.units = data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
this.$businessTool.getDictOptions("USER_PERSON_TYPE").then((data) => {
|
||||||
|
this.personTypeOptions = data
|
||||||
|
})
|
||||||
this.$businessTool.getDictOptions("AIDFUND_MEMBER_USER_TYPE").then((data) => {
|
this.$businessTool.getDictOptions("AIDFUND_MEMBER_USER_TYPE").then((data) => {
|
||||||
this.aidFundMemberUserTypeOptions = data
|
this.aidFundMemberUserTypeOptions = data
|
||||||
})
|
})
|
||||||
@@ -249,6 +278,7 @@ layout("/layouts/platform.html"){
|
|||||||
pageData() {
|
pageData() {
|
||||||
// 统计接口按 JSON 字符串接收多选条件,这里统一在提交前做转换,保证人员分类和人员属性都能正确过滤。
|
// 统计接口按 JSON 字符串接收多选条件,这里统一在提交前做转换,保证人员分类和人员属性都能正确过滤。
|
||||||
const pageForm = clone(this.pageForm)
|
const pageForm = clone(this.pageForm)
|
||||||
|
pageForm.personTypes = JSON.stringify(this.pageForm.personTypes)
|
||||||
pageForm.aidFundMemberUserTypes = JSON.stringify(this.pageForm.aidFundMemberUserTypes)
|
pageForm.aidFundMemberUserTypes = JSON.stringify(this.pageForm.aidFundMemberUserTypes)
|
||||||
pageForm.userAttributes = JSON.stringify(this.pageForm.userAttributes)
|
pageForm.userAttributes = JSON.stringify(this.pageForm.userAttributes)
|
||||||
this.$axios.post(loc() + "/pageData", pageForm).then((res) => {
|
this.$axios.post(loc() + "/pageData", pageForm).then((res) => {
|
||||||
@@ -259,6 +289,13 @@ layout("/layouts/platform.html"){
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
tagClick(key,code) {
|
tagClick(key,code) {
|
||||||
|
if (key === "personTypes") {
|
||||||
|
if (this.pageForm.personTypes.includes(code)) {
|
||||||
|
this.pageForm.personTypes.splice(this.pageForm.personTypes.indexOf(code), 1)
|
||||||
|
} else {
|
||||||
|
this.pageForm.personTypes.push(code)
|
||||||
|
}
|
||||||
|
}
|
||||||
if (key === "userAttributes") {
|
if (key === "userAttributes") {
|
||||||
if (this.pageForm.userAttributes.includes(code)) {
|
if (this.pageForm.userAttributes.includes(code)) {
|
||||||
this.pageForm.userAttributes.splice(this.pageForm.userAttributes.indexOf(code), 1)
|
this.pageForm.userAttributes.splice(this.pageForm.userAttributes.indexOf(code), 1)
|
||||||
|
|||||||
+2
-1
@@ -163,7 +163,8 @@ layout("/layouts/platform.html"){
|
|||||||
{ prop: "postDoctoralJoinDate", label: "进站时间", sortable: true, checked: 0 },
|
{ prop: "postDoctoralJoinDate", label: "进站时间", sortable: true, checked: 0 },
|
||||||
{ prop: "unionName", label: "所属工会", width: 120, sortable: true },
|
{ prop: "unionName", label: "所属工会", width: 120, sortable: true },
|
||||||
{ prop: "unitName", label: "所属单位", width: 120, sortable: true },
|
{ prop: "unitName", label: "所属单位", width: 120, sortable: true },
|
||||||
{ prop: "aidFundMemberUserType", label: "人员分类", width: 120, sortable: true },
|
// 临时屏蔽“人员分类”列表字段,不删除配置,后续需要可恢复。
|
||||||
|
// { prop: "aidFundMemberUserType", label: "人员分类", width: 120, sortable: true },
|
||||||
{ prop: "userAttribute", label: "人员属性", width: 120, sortable: true },
|
{ prop: "userAttribute", label: "人员属性", width: 120, sortable: true },
|
||||||
{ prop: "idCardType", label: "证件类型", width: 120, sortable: true, checked: 0 },
|
{ prop: "idCardType", label: "证件类型", width: 120, sortable: true, checked: 0 },
|
||||||
{ prop: "idCard", label: "证件号码", width: 120, sortable: true, checked: 0 },
|
{ prop: "idCard", label: "证件号码", width: 120, sortable: true, checked: 0 },
|
||||||
|
|||||||
+1
-1
@@ -88,7 +88,7 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
|||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
<el-row type="flex" align="middle" class="query-row query-row-tag">
|
<el-row type="flex" align="middle" class="query-row query-row-tag" v-if="false">
|
||||||
<el-col class="query-row-title">人员分类:</el-col>
|
<el-col class="query-row-title">人员分类:</el-col>
|
||||||
<el-col class="query-row-content query-row-content-tag">
|
<el-col class="query-row-content query-row-content-tag">
|
||||||
<el-tag
|
<el-tag
|
||||||
|
|||||||
+37
@@ -82,6 +82,30 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
<el-card shadow="never" class="mt10">
|
<el-card shadow="never" class="mt10">
|
||||||
<el-row type="flex" align="middle" class="query-row query-row-tag">
|
<el-row type="flex" align="middle" class="query-row query-row-tag">
|
||||||
|
<el-col class="query-row-title">人员类型:</el-col>
|
||||||
|
<el-col class="query-row-content query-row-content-tag">
|
||||||
|
<el-tag
|
||||||
|
class="query-tag-item"
|
||||||
|
v-for="item in personTypeOptions"
|
||||||
|
:key="item.code"
|
||||||
|
:effect="pageForm.personTypes.includes(item.name)?'dark':'plain'"
|
||||||
|
@click="tagClick('personTypes',item.name)">
|
||||||
|
{{ item.name }}
|
||||||
|
</el-tag>
|
||||||
|
<span class="query-tag-actions">
|
||||||
|
<el-link type="danger"
|
||||||
|
v-if="personTypeOptions.length&&pageForm.personTypes.length"
|
||||||
|
:underline="false"
|
||||||
|
@click="pageForm.personTypes=[];doSearch()">清空
|
||||||
|
</el-link>
|
||||||
|
<el-link :underline="false"
|
||||||
|
@click="pageForm.personTypes=personTypeOptions.map(p=>p.code);doSearch()"
|
||||||
|
type="success">全部
|
||||||
|
</el-link>
|
||||||
|
</span>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle" class="query-row query-row-tag" v-if="false">
|
||||||
<el-col class="query-row-title">人员分类:</el-col>
|
<el-col class="query-row-title">人员分类:</el-col>
|
||||||
<el-col class="query-row-content query-row-content-tag">
|
<el-col class="query-row-content query-row-content-tag">
|
||||||
<el-tag
|
<el-tag
|
||||||
@@ -173,10 +197,12 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
unions: [],
|
unions: [],
|
||||||
units: [],
|
units: [],
|
||||||
|
personTypeOptions: [],
|
||||||
userAttributeOptions: [],
|
userAttributeOptions: [],
|
||||||
pageForm: {
|
pageForm: {
|
||||||
currentYear: moment().format("YYYY"),
|
currentYear: moment().format("YYYY"),
|
||||||
queryType: "fgh",
|
queryType: "fgh",
|
||||||
|
personTypes: [],
|
||||||
userAttributes: [],
|
userAttributes: [],
|
||||||
aidFundMemberUserTypes: []
|
aidFundMemberUserTypes: []
|
||||||
},
|
},
|
||||||
@@ -200,6 +226,9 @@ layout("/layouts/platform.html"){
|
|||||||
this.units = data
|
this.units = data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
this.$businessTool.getDictOptions("USER_PERSON_TYPE").then((data) => {
|
||||||
|
this.personTypeOptions = data
|
||||||
|
})
|
||||||
this.$businessTool.getDictOptions("AIDFUND_MEMBER_USER_TYPE").then((data) => {
|
this.$businessTool.getDictOptions("AIDFUND_MEMBER_USER_TYPE").then((data) => {
|
||||||
this.aidFundMemberUserTypeOptions = data
|
this.aidFundMemberUserTypeOptions = data
|
||||||
})
|
})
|
||||||
@@ -208,6 +237,13 @@ layout("/layouts/platform.html"){
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
tagClick(key,code) {
|
tagClick(key,code) {
|
||||||
|
if (key === "personTypes") {
|
||||||
|
if (this.pageForm.personTypes.includes(code)) {
|
||||||
|
this.pageForm.personTypes.splice(this.pageForm.personTypes.indexOf(code), 1)
|
||||||
|
} else {
|
||||||
|
this.pageForm.personTypes.push(code)
|
||||||
|
}
|
||||||
|
}
|
||||||
if (key === "userAttributes") {
|
if (key === "userAttributes") {
|
||||||
if (this.pageForm.userAttributes.includes(code)) {
|
if (this.pageForm.userAttributes.includes(code)) {
|
||||||
this.pageForm.userAttributes.splice(this.pageForm.userAttributes.indexOf(code), 1)
|
this.pageForm.userAttributes.splice(this.pageForm.userAttributes.indexOf(code), 1)
|
||||||
@@ -227,6 +263,7 @@ layout("/layouts/platform.html"){
|
|||||||
pageData() {
|
pageData() {
|
||||||
const pageForm = clone(this.pageForm)
|
const pageForm = clone(this.pageForm)
|
||||||
// 统计接口按 JSON 字符串接收多选条件,这里把人员分类和人员属性统一成同一提交口径。
|
// 统计接口按 JSON 字符串接收多选条件,这里把人员分类和人员属性统一成同一提交口径。
|
||||||
|
pageForm.personTypes = JSON.stringify(this.pageForm.personTypes)
|
||||||
pageForm.aidFundMemberUserTypes = JSON.stringify(this.pageForm.aidFundMemberUserTypes)
|
pageForm.aidFundMemberUserTypes = JSON.stringify(this.pageForm.aidFundMemberUserTypes)
|
||||||
pageForm.userAttributes = JSON.stringify(this.pageForm.userAttributes)
|
pageForm.userAttributes = JSON.stringify(this.pageForm.userAttributes)
|
||||||
this.$axios.post(loc() + "/pageData", pageForm).then((res) => {
|
this.$axios.post(loc() + "/pageData", pageForm).then((res) => {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ const welfareOption = {
|
|||||||
<div class="welfare-option">
|
<div class="welfare-option">
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
<el-table :data="welfareList" border style="width: 100%; margin-top: 20px;">
|
<el-table :data="welfareList" border style="width: 100%; margin-top: 20px;">
|
||||||
<el-table-column align="center" header-align="center" label="福利名称">
|
<el-table-column align="center" header-align="center" label="福利名称" min-width="520">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="row.optionName"
|
v-model="row.optionName"
|
||||||
@@ -12,6 +12,16 @@ const welfareOption = {
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column align="center" header-align="center" label="系统默认选择" width="140">
|
||||||
|
<template slot-scope="{$index}">
|
||||||
|
<el-radio
|
||||||
|
v-model="systemDefaultPlaceholderIndex"
|
||||||
|
:label="$index">
|
||||||
|
|
||||||
|
</el-radio>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" header-align="center" label="图片" width="200">
|
<el-table-column align="center" header-align="center" label="图片" width="200">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<file-upload :upload_number="1" :value.sync="row.imgUrl"
|
<file-upload :upload_number="1" :value.sync="row.imgUrl"
|
||||||
@@ -22,22 +32,22 @@ const welfareOption = {
|
|||||||
upload_result_category="interval"></file-upload>
|
upload_result_category="interval"></file-upload>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" header-align="center" label="说明" width="120">
|
<el-table-column align="center" header-align="center" label="说明" width="120">
|
||||||
<template slot-scope="{row, $index}">
|
<template slot-scope="{row, $index}">
|
||||||
<el-button
|
<el-button
|
||||||
type="text"
|
type="text"
|
||||||
@click="openDescription(row, $index)">
|
@click="openDescription(row, $index)">
|
||||||
{{ row.description ? '编辑说明' : '添加说明' }}
|
{{ row.description ? '编辑说明' : '添加说明' }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" header-align="center" label="操作" width="100">
|
<el-table-column align="center" header-align="center" label="操作" width="100">
|
||||||
<template slot-scope="{$index}">
|
<template slot-scope="{$index}">
|
||||||
<el-button
|
<el-button
|
||||||
type="danger"
|
type="danger"
|
||||||
icon="el-icon-delete"
|
icon="el-icon-delete"
|
||||||
circle
|
circle
|
||||||
size="mini"
|
size="mini"
|
||||||
@click="deleteOption($index)">
|
@click="deleteOption($index)">
|
||||||
@@ -48,7 +58,6 @@ const welfareOption = {
|
|||||||
<el-button type="primary" size="small" @click="addOption">添加福利选项</el-button>
|
<el-button type="primary" size="small" @click="addOption">添加福利选项</el-button>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 说明编辑对话框 -->
|
|
||||||
<el-dialog
|
<el-dialog
|
||||||
title="编辑福利说明"
|
title="编辑福利说明"
|
||||||
:visible.sync="descriptionDialog.visible"
|
:visible.sync="descriptionDialog.visible"
|
||||||
@@ -57,8 +66,8 @@ const welfareOption = {
|
|||||||
:close-on-click-modal="false">
|
:close-on-click-modal="false">
|
||||||
<text-editor v-model="descriptionDialog.content"></text-editor>
|
<text-editor v-model="descriptionDialog.content"></text-editor>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button @click="descriptionDialog.visible = false">取 消</el-button>
|
<el-button @click="descriptionDialog.visible = false">取消</el-button>
|
||||||
<el-button type="primary" @click="saveDescription">确 定</el-button>
|
<el-button type="primary" @click="saveDescription">确定</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
@@ -74,6 +83,7 @@ const welfareOption = {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
welfareList: [],
|
welfareList: [],
|
||||||
|
systemDefaultPlaceholderIndex: null,
|
||||||
descriptionDialog: {
|
descriptionDialog: {
|
||||||
visible: false,
|
visible: false,
|
||||||
content: '',
|
content: '',
|
||||||
@@ -111,6 +121,11 @@ const welfareOption = {
|
|||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.welfareList.splice(index, 1);
|
this.welfareList.splice(index, 1);
|
||||||
|
if (this.systemDefaultPlaceholderIndex === index) {
|
||||||
|
this.systemDefaultPlaceholderIndex = null;
|
||||||
|
} else if (this.systemDefaultPlaceholderIndex > index) {
|
||||||
|
this.systemDefaultPlaceholderIndex--;
|
||||||
|
}
|
||||||
this.updateSortNumbers();
|
this.updateSortNumbers();
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@@ -158,7 +173,7 @@ const welfareOption = {
|
|||||||
|
|
||||||
style: /*language=CSS*/ `
|
style: /*language=CSS*/ `
|
||||||
/deep/ .welfare-option {
|
/deep/ .welfare-option {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ .welfare-option .el-card__body{
|
/deep/ .welfare-option .el-card__body{
|
||||||
@@ -182,6 +197,10 @@ const welfareOption = {
|
|||||||
transform: translate(-50%, -50%);
|
transform: translate(-50%, -50%);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/deep/ .welfare-option .el-radio__label {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
/deep/ .preview-image {
|
/deep/ .preview-image {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|||||||
@@ -34,6 +34,9 @@ layout("/layouts/platform.html"){
|
|||||||
<el-card class="mt10" shadow="never" v-loading="tableLoading">
|
<el-card class="mt10" shadow="never" v-loading="tableLoading">
|
||||||
<table-tool label="工会列表">
|
<table-tool label="工会列表">
|
||||||
<el-button @click="exportByWelfareOptions" icon="el-icon-printer" size="small" type="primary">按福利选项导出</el-button>
|
<el-button @click="exportByWelfareOptions" icon="el-icon-printer" size="small" type="primary">按福利选项导出</el-button>
|
||||||
|
<el-button :disabled="!pageForm.projectId" @click="remindUnSelectedPlaceholder" icon="el-icon-bell" size="small" type="primary">
|
||||||
|
提醒未选择人员
|
||||||
|
</el-button>
|
||||||
<template v-if="$auth.hasRoleOr(['SYSADMIN','SCHOOL_UNION_ADMIN','SCHOOL_UNION_WELFARE_ADMIN'])">
|
<template v-if="$auth.hasRoleOr(['SYSADMIN','SCHOOL_UNION_ADMIN','SCHOOL_UNION_WELFARE_ADMIN'])">
|
||||||
<el-button :disabled="!pageForm.projectId" @click="exportSummary" icon="el-icon-printer" size="small" type="primary">
|
<el-button :disabled="!pageForm.projectId" @click="exportSummary" icon="el-icon-printer" size="small" type="primary">
|
||||||
导出汇总表
|
导出汇总表
|
||||||
@@ -107,6 +110,9 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
remindUnSelectedPlaceholder() {
|
||||||
|
this.$message.info("提醒未选择人员功能待开发")
|
||||||
|
},
|
||||||
// 导出汇总表
|
// 导出汇总表
|
||||||
exportSummary() {
|
exportSummary() {
|
||||||
this.$downLoad("/platform/welfare/statistics/exportSummary", {
|
this.$downLoad("/platform/welfare/statistics/exportSummary", {
|
||||||
|
|||||||
Reference in New Issue
Block a user