人员更新

This commit is contained in:
Paidax
2025-07-02 18:29:34 +08:00
parent 68cbc89496
commit 725dc7b289
6 changed files with 170 additions and 90 deletions
@@ -176,6 +176,11 @@ public class Sys_user_history extends BaseModel implements Serializable {
@ColDefine(type = ColType.MYSQL_JSON)
private List<JSONObject> families;
@Column
@Comment("博士后进站时间")
@ColDefine(type = ColType.DATE)
private Date postDoctoralJoinDate;
@Column
@Comment("异动时间")
@ColDefine(type = ColType.DATETIME)
@@ -1,5 +1,6 @@
package com.budwk.app.zhgh.dayofficework.evaluation.models;
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.hutool.json.JSONObject;
import com.budwk.app.base.model.BaseModel;
import lombok.Data;
@@ -139,4 +140,28 @@ public class EvaluateApply extends BaseModel {
@Comment("附件")
@ColDefine(type = ColType.MYSQL_JSON)
private List<JSONObject> files;
@Column
@ColDefine(type = ColType.INT)
@Comment("会员人数")
@Excel(name = "会员人数")
private Long memberNumber;
@Column
@ColDefine(type = ColType.INT)
@Comment("工会小组数")
@Excel(name = "工会小组数")
private Long unionGroupNumber;
@Column
@Comment("工会主席")
@Excel(name = "工会主席")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String unionLeader;
@Column
@Excel(name = "申报院级工会")
@ColDefine(type = ColType.VARCHAR, width = 20)
@Comment("申报院级工会")
private String applyUnionName;
}
@@ -414,8 +414,6 @@ public class MemberManageServiceImpl extends BaseServiceImpl<Sys_user> implement
chain.add("member", record.getMember());
chain.add("welfareMember", record.getWelfareMember());
Sys_role memberRole = dao().fetch(Sys_role.class, Cnd.where("`code`", "=", "MEMBER"));
dao().clear(Sys_user_role.class, Cnd.where("userId", "=", user.getId()).and("roleId","=", memberRole.getId()));
if (record.getMember()) {
@@ -1,82 +1,109 @@
const apply_component = {
template: `
template: /*language=HTML*/ `
<el-dialog title="填写申请" :visible.sync="dialogVisible" width="70%" top="50px" class="ele-dialog-form">
<el-form :model="formData" ref="formRef" :rules="formRules" label-width="120px">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="userName" label="姓名">
<el-input :value="formData.userName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="loginName" label="工号">
<el-input :value="formData.loginName" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="birthday" label="出生日期">
<el-date-picker v-model="formData.birthday" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" style="width: 100%"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="sex" label="性别" disabled>
<el-input v-model="formData.sex" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="unitName" label="所属单位">
<el-input :value="formData.unitName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="unionName" label="所属分工会">
<el-input :value="formData.unionName" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="民族" prop="nation">
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation" code="USER_NATION"></dict-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="political" label="政治面貌">
<dict-select
style="width: 100%"
placeholder="请选择政治面貌"
v-model="formData.political"
code="POLITICAL_STATUS"
></dict-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="education" label="学历">
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education" code="USER_EDUCATION"></dict-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="technicalTitle" label="技术职称">
<el-input v-model="formData.technicalTitle" placeholder="填写技术职称" max="50"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="governmentPosition" label="党政职务">
<el-input v-model="formData.governmentPosition" placeholder="填写党政职务" max="50"></el-input>
</el-form-item>
</el-col>
</el-row>
<template v-if="this.formData.honorType == '个人荣誉'">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="userName" label="姓名">
<el-input :value="formData.userName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="loginName" label="工号">
<el-input :value="formData.loginName" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="birthday" label="出生日期">
<el-date-picker v-model="formData.birthday" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" style="width: 100%"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="sex" label="性别" disabled>
<el-input v-model="formData.sex" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="unitName" label="所属单位">
<el-input :value="formData.unitName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="unionName" label="所属分工会">
<el-input :value="formData.unionName" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="民族" prop="nation">
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation" code="USER_NATION"></dict-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="political" label="政治面貌">
<dict-select
style="width: 100%"
placeholder="请选择政治面貌"
v-model="formData.political"
code="POLITICAL_STATUS"
></dict-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="education" label="学历">
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education" code="USER_EDUCATION"></dict-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item prop="technicalTitle" label="技术职称">
<el-input v-model="formData.technicalTitle" placeholder="填写技术职称" max="50"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="governmentPosition" label="党政职务">
<el-input v-model="formData.governmentPosition" placeholder="填写党政职务" max="50"></el-input>
</el-form-item>
</el-col>
</el-row>
</template>
<template v-else>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item prop="unionName" label="申报工会">
<el-input :value="formData.unionName" placeholder="请输入申报工会"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="工会主席" prop="unionLeader">
<el-input placeholder="请填写工会主席" v-model="formData.unionLeader"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="会员人数" prop="memberNumber">
<el-input-number v-model="formData.memberNumber" :min="0"
placeholder="请填写会员人数"
:max="2000" style="width: 100%"></el-input-number>
</el-form-item>
</el-col>
</el-row>
</template>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="曾获何种荣誉称号" prop="historyHonor">
<el-form-item label="曾获何种奖励" prop="historyHonor">
<el-input v-model="formData.historyHonor" type="textarea" rows="8" maxlength="5000"
show-word-limit></el-input>
</el-form-item>
@@ -123,7 +150,9 @@ const apply_component = {
technicalTitle: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
governmentPosition: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
briefDeeds: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
historyHonor: [{ required: true, message: "必填", trigger: ["change", "blur"] }]
historyHonor: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
unionLeader: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
memberNumber: [{ required: true, message: "必填", trigger: ["change", "blur"] }],
}
}
},
@@ -143,10 +172,23 @@ const apply_component = {
this.dialogVisible = true
this.$nextTick(() => {
this.initForm()
debugger
this.$set(this.formData, "evaluateId", activity.id)
this.$set(this.formData, "honorTypeId", activity.honorTypeId)
this.$set(this.formData, "honorType", activity.honorType)
this.$set(this.formData, "honorId", activity.honorId)
if (activity.honorType.includes('集体')) {
this.getCollectiveInfo()
}
})
},
getCollectiveInfo() {
this.$axios.post("/platform/honor/basic/settings/getUnionInfo", { id: this.$store.state.user.union.id }).then((res) => {
if (res.code === 0) {
this.formData.memberNumber = res.data.memberNumber
this.formData.unionLeader = res.data.username
this.formData.unionName = this.$store.state.user.union.name
}
})
},
save() {
@@ -1,22 +1,31 @@
const info = {
template: `
template: /*language=HTML*/ `
<div>
<div>
<div class="process-title">
申请信息
</div>
<el-descriptions border>
<el-descriptions-item label="姓名">{{viewData.userName}}</el-descriptions-item>
<el-descriptions-item label="工号">{{viewData.loginName}}</el-descriptions-item>
<el-descriptions-item label="性别">{{viewData.sex}}</el-descriptions-item>
<el-descriptions-item label="出生年月">{{viewData.birthday}}</el-descriptions-item>
<el-descriptions-item label="民族">{{viewData.nation}}</el-descriptions-item>
<el-descriptions-item label="政治面貌">{{viewData.political}}</el-descriptions-item>
<el-descriptions-item label="学历">{{viewData.education}}</el-descriptions-item>
<el-descriptions-item label="技术职称">{{viewData.technicalTitle}}</el-descriptions-item>
<el-descriptions-item label="党政职务">{{viewData.governmentPosition}}</el-descriptions-item>
<el-descriptions-item label="单位">{{viewData.unitName}}</el-descriptions-item>
<el-descriptions-item label="分工会" :span="2">{{viewData.unionName}}</el-descriptions-item>
<template v-if="!this.viewData.memberNumber">
<el-descriptions-item label="姓名">{{viewData.userName}}</el-descriptions-item>
<el-descriptions-item label="工号">{{viewData.loginName}}</el-descriptions-item>
<el-descriptions-item label="性别">{{viewData.sex}}</el-descriptions-item>
<el-descriptions-item label="出生年月">{{viewData.birthday}}</el-descriptions-item>
<el-descriptions-item label="民族">{{viewData.nation}}</el-descriptions-item>
<el-descriptions-item label="政治面貌">{{viewData.political}}</el-descriptions-item>
<el-descriptions-item label="学历">{{viewData.education}}</el-descriptions-item>
<el-descriptions-item label="技术职称">{{viewData.technicalTitle}}</el-descriptions-item>
<el-descriptions-item label="党政职务">{{viewData.governmentPosition}}</el-descriptions-item>
</template>
<el-descriptions-item label="工会" :span="1.5">{{viewData.unionName}}</el-descriptions-item>
<el-descriptions-item label="单位" :span="1.5">{{viewData.unitName}}</el-descriptions-item>
<template v-if="this.viewData.memberNumber">
<el-descriptions-item label="工会主席" :span="1.5">{{viewData.unionLeader}}</el-descriptions-item>
<el-descriptions-item label="会员人数" :span="1.5">{{viewData.memberNumber}}</el-descriptions-item>
</template>
<el-descriptions-item label="曾获何种荣誉称号" :span="3">{{viewData.historyHonor}}</el-descriptions-item>
<el-descriptions-item label="简要事迹(主要成绩)" :span="3">{{viewData.briefDeeds}}</el-descriptions-item>
<el-descriptions-item label="附件">
@@ -112,6 +112,7 @@ const MEMBER_CHANGE = {
<!-- <span style="color: #ac2925" v-else>否</span>-->
<!-- </el-form-item>-->
<!-- </el-descriptions-item>-->
<el-descriptions-item></el-descriptions-item>
<el-descriptions-item></el-descriptions-item>
<!--<el-descriptions-item label="是否重大疾病爱心互助会会员">
<el-form-item prop="wantJoinLoveMutualAidAssociation">