This commit is contained in:
Paidax
2024-12-31 16:31:42 +08:00
parent fdc7a6c53b
commit d6d077186f
6 changed files with 407 additions and 375 deletions
@@ -22,7 +22,7 @@ public enum UserChangeType {
RESIGN(3, "离校"), RESIGN(3, "离校"),
DIE(4, "去世"), DIE(4, "去世"),
RETIREMENT(5, "离退休"), RETIREMENT(5, "离退休"),
// EXPELLED(6, "开除"), EXPELLED(6, "开除"),
RESTORE(7, "入会"), RESTORE(7, "入会"),
WITHDRAWAL(8, "退会"), WITHDRAWAL(8, "退会"),
// NONE(9, "不变"), // NONE(9, "不变"),
@@ -221,7 +221,7 @@ public class MemberCommonController {
} }
String userState = StrUtil.blankToDefault(changeRecord.getChangeUserState(), ""); String userState = StrUtil.blankToDefault(changeRecord.getChangeUserState(), "");
if (!userState.equals(sysUserMap.getString("userState", ""))) { if (StrUtil.isNotBlank(userState) && !userState.equals(sysUserMap.getString("userState", ""))) {
compareData.add(NutMap.NEW() compareData.add(NutMap.NEW()
.addv("columnName", "在职状态") .addv("columnName", "在职状态")
.addv("newValue", userState) .addv("newValue", userState)
@@ -229,6 +229,15 @@ public class MemberCommonController {
); );
} }
String personType = StrUtil.blankToDefault(changeRecord.getChangePersonType(), "");
if (StrUtil.isNotBlank(personType) && !personType.equals(sysUserMap.getString("personType", ""))) {
compareData.add(NutMap.NEW()
.addv("columnName", "人员类型")
.addv("newValue", personType)
.addv("oldValue", sysUserMap.getString("personType"))
);
}
//在职,退休,离职可能会发生会员和福利会员的变化 //在职,退休,离职可能会发生会员和福利会员的变化
if(changeRecord.getUpdateMember()!=null && changeRecord.getUpdateMember()){ if(changeRecord.getUpdateMember()!=null && changeRecord.getUpdateMember()){
//说明要改变会员状态 //说明要改变会员状态
@@ -311,7 +311,11 @@ public class MemberChangeManageController {
memberChangeRecord = MemberChangeAuditHandle.CREATE.next(memberChangeRecord, null); memberChangeRecord = MemberChangeAuditHandle.CREATE.next(memberChangeRecord, null);
MemberChangeAuditHandle.SCHOOL.next(memberChangeRecord, audit); MemberChangeAuditHandle.SCHOOL.next(memberChangeRecord, audit);
} else { } else {
if (ShiroUtil.hasAnyRoles("gh01, H04")) {
memberChangeRecord.setApplyOrigin(MemberChangeOrigin.UNION.getCode()); memberChangeRecord.setApplyOrigin(MemberChangeOrigin.UNION.getCode());
} else if (ShiroUtil.hasRole("ghxzzz")){
memberChangeRecord.setApplyOrigin(MemberChangeOrigin.UNION_GROUP.getCode());
}
memberChangeRecord = MemberChangeAuditHandle.CREATE.next(memberChangeRecord, null); memberChangeRecord = MemberChangeAuditHandle.CREATE.next(memberChangeRecord, null);
MemberChangeAuditHandle.UNION.next(memberChangeRecord, audit); MemberChangeAuditHandle.UNION.next(memberChangeRecord, audit);
} }
@@ -546,6 +550,9 @@ public class MemberChangeManageController {
public Object units() { public Object units() {
Cnd cnd = Cnd.NEW(); Cnd cnd = Cnd.NEW();
cnd.and("unitlevel", "=", 2); cnd.and("unitlevel", "=", 2);
if (!ShiroUtil.hasAnyRoles("sysadmin,SchoolUnionAdmin")) {
cnd.and("id", "!=", "DZJF000");
}
return sysUnitService.dao().query("unit_union", cnd); return sysUnitService.dao().query("unit_union", cnd);
} }
@@ -181,9 +181,10 @@ public class WelfareSingleServiceImpl extends ViServiceImpl<WelfareProject> impl
wpus.receiveAddress, wpus.receiveAddress,
wpus.welfareId, wpus.welfareId,
wpus.selectUserId, wpus.selectUserId,
wl.welfareUnitId as unionId IF(staff.unionRelationUnionId is not null, staff.unionRelationUnionId, wl.welfareUnitId) AS unionId
FROM FROM
`welfare_project_user_selection` wpus `welfare_project_user_selection` wpus
LEFT JOIN special_staff staff ON staff.userId = wpus.selectUserId
LEFT JOIN welfare_list wl on wl.userId = wpus.selectUserId AND wpus.welfareId = wl.projectId LEFT JOIN welfare_list wl on wl.userId = wpus.selectUserId AND wpus.welfareId = wl.projectId
$condition $condition
"""); """);
@@ -39,14 +39,18 @@
<el-form-item prop="type" label="变更类型"> <el-form-item prop="type" label="变更类型">
<!-- <dict-select v-model="formData.type" style="width: 100%" clearable placeholder="变更类型"--> <!-- <dict-select v-model="formData.type" style="width: 100%" clearable placeholder="变更类型"-->
<!-- code="MemberChangeType" @change="typeChange"></dict-select>--> <!-- code="MemberChangeType" @change="typeChange"></dict-select>-->
<el-select v-model="formData.type" style="width: 100%" clearable placeholder="变更类型" @change="typeChange"> <el-select v-model="formData.type" style="width: 100%" clearable placeholder="变更类型"
<el-option v-for="item in userChangeTypeList" :label="item.name" :value="item.code" :key="item.id"></el-option> @change="typeChange">
<el-option v-for="item in userChangeTypeList" :label="item.name" :value="item.code"
:key="item.id"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!--异动--> <!--异动-->
<div v-if="formData.type==='1'"> <div v-if="formData.type==='1'">
<el-form-item prop="type" label="新&ensp;单&ensp;位"> <el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="type" label="新单位">
<el-select v-model="formData.currentUnitId" style="width: 100%" filterable clearable <el-select v-model="formData.currentUnitId" style="width: 100%" filterable clearable
@change="unitChange" @change="unitChange"
placeholder="请选择单位"> placeholder="请选择单位">
@@ -57,10 +61,14 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
<el-form-item prop="type" label="新&ensp;工&ensp;会"> <el-col :span="12">
<el-input :value="formData.currentUnionName" disabled placeholder=""></el-input> <el-form-item prop="type" label="新工会">
<el-input :value="formData.currentUnionName" readonly placeholder="选择单位后自动填充"></el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" v-if="isThreeUnit"> <el-row :gutter="20" v-if="isThreeUnit">
<el-col :span="12"> <el-col :span="12">
@@ -80,7 +88,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="工会小组"> <el-form-item label="工会小组">
<el-input :value="formData.currentUnionGroupName" disabled></el-input> <el-input :value="formData.currentUnionGroupName" readonly placeholder="选择科室后自动填充"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -144,7 +152,8 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="updateUserState" label="是否改变在职状态" style="width: 100%"> <el-form-item prop="updateUserState" label="是否改变在职状态" style="width: 100%">
<dict-select v-model="formData.changeUserState" style="width: 100%" clearable placeholder="是否改变在职状态" <dict-select v-model="formData.changeUserState" style="width: 100%" clearable
placeholder="是否改变在职状态"
code="userState"></dict-select> code="userState"></dict-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -190,7 +199,8 @@
<el-input v-model="formData.oldEducation" readonly type="text"></el-input> <el-input v-model="formData.oldEducation" readonly type="text"></el-input>
</el-form-item> </el-form-item>
<el-form-item prop="education" label="新的学历" style="width: 100%"> <el-form-item prop="education" label="新的学历" style="width: 100%">
<dict-select v-model="formData.changeEducation" style="width: 100%" clearable placeholder="请选择新的学历" <dict-select v-model="formData.changeEducation" style="width: 100%" clearable
placeholder="请选择新的学历"
code="Education"></dict-select> code="Education"></dict-select>
</el-form-item> </el-form-item>
</div> </div>
@@ -263,11 +273,15 @@ module.exports = {
}, },
methods: { methods: {
typeChange(val) { typeChange(val) {
console.log(val) if (val == '1') {
this.formData.updateWelfareMember = null
this.formData.updateMember = null
} else {
this.$set(this.formData, "updateWelfareMember", ['2', '7'].includes(this.formData.type)) this.$set(this.formData, "updateWelfareMember", ['2', '7'].includes(this.formData.type))
this.$set(this.formData, "updateWelfareMember", !['3', '4', '5', '6', '8'].includes(this.formData.type)) this.$set(this.formData, "updateWelfareMember", !['3', '4', '5', '6', '8'].includes(this.formData.type))
this.$set(this.formData, "updateMember", ['2'].includes(this.formData.type)) this.$set(this.formData, "updateMember", ['2'].includes(this.formData.type))
this.$set(this.formData, "updateMember", !['3', '4', '5', '6', '8'].includes(this.formData.type)) this.$set(this.formData, "updateMember", !['3', '4', '5', '6', '8'].includes(this.formData.type))
}
}, },
async doSubmit() { async doSubmit() {
this.$refs["form"].validate((valid) => { this.$refs["form"].validate((valid) => {
@@ -290,7 +304,6 @@ module.exports = {
// this.formData.currentUnionId = '' // this.formData.currentUnionId = ''
// this.formData.currentUnionName = '' // this.formData.currentUnionName = ''
// } // }
this.$set(this.formData, 'currentThreeUnitId', null) this.$set(this.formData, 'currentThreeUnitId', null)
this.$set(this.formData, 'currentUnionGroupName', null) this.$set(this.formData, 'currentUnionGroupName', null)
this.threeUnits = [] this.threeUnits = []
@@ -298,6 +311,7 @@ module.exports = {
this.getThreeUnits(v) this.getThreeUnits(v)
} }
const unit = this.unitOptions.find(x => x.id === v) const unit = this.unitOptions.find(x => x.id === v)
this.isThreeUnit = unit.unionname.includes("机关");
if (unit) { if (unit) {
this.$set(this.formData, 'currentUnionId', unit.unionid) this.$set(this.formData, 'currentUnionId', unit.unionid)
this.$set(this.formData, 'currentUnionName', unit.unionname) this.$set(this.formData, 'currentUnionName', unit.unionname)
@@ -376,7 +390,8 @@ module.exports = {
}, },
}, },
async created() { async created() {
this.isThreeUnit = await getConfigKey('isThreeUnit') === 'true' // this.isThreeUnit = await getConfigKey('isThreeUnit') === 'true'
// this.isThreeUnit = await getConfigKey('isThreeUnit') === 'true'
await this.getUnits() await this.getUnits()
await this.flush() await this.flush()
await this.getUserChangeType() await this.getUserChangeType()
@@ -159,7 +159,7 @@ layout("/layouts/platform.html"){
</template> </template>
<template #func> <template #func>
<el-radio-group v-model="pageForm.myUnionGroupUser" @change="doSearch" class="mr5" <el-radio-group v-model="pageForm.myUnionGroupUser" @change="doSearch" class="mr5"
v-if="isThreeUnit" size="small"> v-if="isThreeUnit === true" size="small">
<el-radio-button label="">全部</el-radio-button> <el-radio-button label="">全部</el-radio-button>
<el-radio-button :label="1">本小组会员</el-radio-button> <el-radio-button :label="1">本小组会员</el-radio-button>
<el-radio-button :label="0">非本小组会员</el-radio-button> <el-radio-button :label="0">非本小组会员</el-radio-button>
@@ -304,7 +304,8 @@ layout("/layouts/platform.html"){
查看 查看
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item <el-dropdown-item
v-if="${@shiro.hasRole('sysadmin')||@shiro.hasRole('SchoolUnionAdmin')||@shiro.hasRole('SchoolUnionMemberAdmin')||@shiro.hasRole('H03')||@shiro.hasRole('H04')}" v-if="${@shiro.hasRole('sysadmin')||@shiro.hasRole('SchoolUnionAdmin')||@shiro.hasRole('ghxzzz')
||@shiro.hasRole('SchoolUnionMemberAdmin')||@shiro.hasRole('H03')||@shiro.hasRole('H04')}"
:disabled="!(row.apply||row.reApply)" :disabled="!(row.apply||row.reApply)"
:command="{type:'change',data:row}"> :command="{type:'change',data:row}">
变更 变更
@@ -911,9 +912,8 @@ layout("/layouts/platform.html"){
}, },
async created() { async created() {
// this.isThreeUnit = await getConfigKey('isThreeUnit') === 'true' // this.isThreeUnit = await getConfigKey('isThreeUnit') === 'true'
this.isThreeUnit = '${@shiro.getPrincipalProperty("union").getUnionname()}'.includes('机关') && "${@shiro.hasRole('ghxzzz')}" if (${@shiro.hasRole('ghxzzz')}) {
console.log(this.isThreeUnit) this.isThreeUnit = true
if (this.isThreeUnit) {
this.pageForm.myUnionGroupUser = 1 this.pageForm.myUnionGroupUser = 1
this.tableColumns.forEach(v => { this.tableColumns.forEach(v => {
if (["threeUnitName", "unionGroupName"].includes(v.prop)) { if (["threeUnitName", "unionGroupName"].includes(v.prop)) {