server_commit
This commit is contained in:
@@ -108,22 +108,27 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
public void updateSysUser(String pullTime, String sourceType, String[] columnNames, String isUpSet, String partGroupId, boolean isInvert) {
|
||||
try {
|
||||
List<UserSource> sources = new ArrayList<>();
|
||||
// List<UserSource> sources = new ArrayList<>();
|
||||
Map<String, String> userPartMap = new HashMap<>();
|
||||
if (Strings.isNotBlank(partGroupId)) {
|
||||
//如果为true,更新组别之外人员
|
||||
Sql sql = Sqls.create("select u.loginname from user_part up left join `user` u on u.id=up.userId where up.groupId = @groupId").setParam("groupId", partGroupId);
|
||||
List<String> loginNameList = userPatUpService.listMap(sql).stream().map(o -> o.getString("loginname")).collect(Collectors.toList());
|
||||
if (isInvert) {
|
||||
sources = query(Cnd.where("pullTime", "=", pullTime).and("loginname", "not in", loginNameList).groupBy("loginname"));
|
||||
userPartMap = sources.stream().collect(Collectors.toMap(Sys_user::getLoginname, Sys_user::getLoginname));
|
||||
} else {
|
||||
userPartMap = userPatUpService.query(Cnd.where("groupId", "=", partGroupId)).stream().collect(Collectors.toMap(UserPartUp::getLoginname, UserPartUp::getLoginname));
|
||||
sources = query(Cnd.where("pullTime", "=", pullTime).and("loginname", "in", loginNameList).groupBy("loginname"));
|
||||
}
|
||||
} else {
|
||||
sources = query(Cnd.where("pullTime", "=", pullTime).groupBy("loginname"));
|
||||
}
|
||||
// if (Strings.isNotBlank(partGroupId)) {
|
||||
// //如果为true,更新组别之外人员
|
||||
// Sql sql = Sqls.create("select u.loginname from user_part up left join `user` u on u.id=up.userId where up.groupId = @groupId").setParam("groupId", partGroupId);
|
||||
// List<String> loginNameList = userPatUpService.listMap(sql).stream().map(o -> o.getString("loginname")).collect(Collectors.toList());
|
||||
// if (isInvert) {
|
||||
// sources = query(Cnd.where("pullTime", "=", pullTime).and("loginname", "not in", loginNameList).groupBy("loginname"));
|
||||
// userPartMap = sources.stream().collect(Collectors.toMap(Sys_user::getLoginname, Sys_user::getLoginname));
|
||||
// } else {
|
||||
// userPartMap = userPatUpService.query(Cnd.where("groupId", "=", partGroupId)).stream().collect(Collectors.toMap(UserPartUp::getLoginname, UserPartUp::getLoginname));
|
||||
// sources = query(Cnd.where("pullTime", "=", pullTime).and("loginname", "in", loginNameList).groupBy("loginname"));
|
||||
// }
|
||||
// } else {
|
||||
// sources = query(Cnd.where("pullTime", "=", pullTime).groupBy("loginname"));
|
||||
// }
|
||||
|
||||
Sql sql = Sqls.create("select * from user_source where loginname not in (select loginname from sys_user) and pullTime = @pullTime group by loginname").setParam("pullTime", pullTime);
|
||||
List<NutMap> list = listMap(sql);
|
||||
List<UserSource> sources = BeanUtil.copyToList(list, UserSource.class);
|
||||
|
||||
|
||||
// 查询所有用户,判断是否需要更新
|
||||
List<Sys_user> users = sysUserService.query(Cnd.where("loginname", "is not", null));
|
||||
@@ -184,7 +189,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
||||
//不更新会员和福利会员字段
|
||||
source.setMember(null);
|
||||
source.setWelfareMember(null);
|
||||
Sys_user user = userMap.get(source.getLoginname().toLowerCase());
|
||||
Sys_user user = userMap.get(source.getLoginname());
|
||||
|
||||
if (isAuto) {
|
||||
checkMemberOrWelfareMember(changeConfig, source, user, addMemberUserIds, deleteMemberUserIds,
|
||||
@@ -256,9 +261,17 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
||||
//如果有新用户,增加到用户表同时增加角色
|
||||
if (Lang.isNotEmpty(needInitUserList)) {
|
||||
sysUserService.fastInsert(needInitUserList);
|
||||
List<String> userIdList = userRoles.stream().map(Sys_user_role::getUserId).collect(Collectors.toList());
|
||||
sysUserRoleService.dao().clear(Sys_user_role.class, Cnd.where("userId", "in", userIdList));
|
||||
sysUserRoleService.insert(userRoles);
|
||||
|
||||
String roleId = Roles.PUBLIC;
|
||||
|
||||
List<Sys_user_role> roleList = needInitUserList.stream().map(v -> {
|
||||
Sys_user_role role = new Sys_user_role();
|
||||
role.setUserId(v.getId());
|
||||
role.setRoleId(roleId);
|
||||
return role;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
sysUserRoleService.insert(roleList);
|
||||
}
|
||||
|
||||
// 添加会员
|
||||
@@ -567,7 +580,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
||||
return null;
|
||||
}
|
||||
String changeInfos = changeList.stream().map(v -> {
|
||||
return v.getString("fieldName") + ":" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue")) + "->" + HtmlUtil.cleanHtmlTag(v.getString("newValue"));
|
||||
return v.getString("fieldName") + ":" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue", "")) + "->" + HtmlUtil.cleanHtmlTag(v.getString("newValue", ""));
|
||||
}).collect(Collectors.joining(";"));
|
||||
// 比较变更数据
|
||||
commonCompareChange(source, user, changeTypes);
|
||||
@@ -596,13 +609,13 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
||||
}
|
||||
}
|
||||
|
||||
if (!ObjectUtil.equals(user.getMember(), source.getMember())){
|
||||
if (source.getMember() == 1) {
|
||||
changeTypes.add(MemberChangeType.RESTORE.getType());
|
||||
} else {
|
||||
changeTypes.add(MemberChangeType.WITHDRAWAL.getType());
|
||||
}
|
||||
}
|
||||
// if (!ObjectUtil.equals(user.getMember(), source.getMember())){
|
||||
// if (source.getMember() != null && source.getMember() == 1) {
|
||||
// changeTypes.add(MemberChangeType.RESTORE.getType());
|
||||
// } else {
|
||||
// changeTypes.add(MemberChangeType.WITHDRAWAL.getType());
|
||||
// }
|
||||
// }
|
||||
|
||||
if (!ObjectUtil.equals(user.getUnitid(), source.getUnitid())) {
|
||||
changeTypes.add(MemberChangeType.UNIT_CHANGE.getType());
|
||||
|
||||
+30
-25
@@ -27,6 +27,7 @@ import org.nutz.json.Json;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.Strings;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
@@ -172,32 +173,36 @@ public class ProposalExportServiceImpl extends BaseServiceImpl implements Propos
|
||||
});
|
||||
}
|
||||
|
||||
List<NutMap> oneAuditRecordList = new ArrayList<>();
|
||||
if (StrUtil.isNotBlank(nutMap.getString("caseAuditId"))) {
|
||||
|
||||
Sql oneAuditRecordSql = Sqls.create("""
|
||||
SELECT
|
||||
pa.*,
|
||||
sign.`data` auditSign
|
||||
FROM
|
||||
proposal_audit pa
|
||||
LEFT JOIN sys_signature sign ON sign.id = pa.signId
|
||||
where pa.id in (@id)
|
||||
""").setParam("id", Json.fromJsonAsList(String.class, nutMap.getString("caseAuditId")));
|
||||
List<NutMap> oneAuditRecordList = proposalInfoService.listMap(oneAuditRecordSql);
|
||||
if (Lang.isNotEmpty(oneAuditRecordList)) {
|
||||
oneAuditRecordList.forEach(v -> {
|
||||
try {
|
||||
v.setv("auditSign", StrUtil.isNotBlank(v.getString("auditSign")) ? getImg(v.getString("auditSign")) : null);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
if (nutMap.getString("resultCode").equals("determine")) {
|
||||
v.setv("resultAudit", "经提案工作委员会研究,符合提案立案条件,予以立案,此提案建议由%s办理,%s协办。".formatted(nutMap.getString("under1Unit"), (Strings.isNotBlank(nutMap.getString("under2Unit")) ? nutMap.getString("under2Unit") : "暂无")));
|
||||
} else if (nutMap.getString("resultCode").equals("opinion")) {
|
||||
v.setv("resultAudit", "作为意见建议转送参考");
|
||||
} else {
|
||||
v.setv("resultAudit", "该提案不予立项,不予立案原因属于以下提案内容");
|
||||
}
|
||||
});
|
||||
|
||||
Sql oneAuditRecordSql = Sqls.create("""
|
||||
SELECT
|
||||
pa.*,
|
||||
sign.`data` auditSign
|
||||
FROM
|
||||
proposal_audit pa
|
||||
LEFT JOIN sys_signature sign ON sign.id = pa.signId
|
||||
where pa.id in (@id)
|
||||
""").setParam("id", Json.fromJsonAsList(String.class, nutMap.getString("caseAuditId")));
|
||||
oneAuditRecordList = proposalInfoService.listMap(oneAuditRecordSql);
|
||||
if (Lang.isNotEmpty(oneAuditRecordList)) {
|
||||
oneAuditRecordList.forEach(v -> {
|
||||
try {
|
||||
v.setv("auditSign", StrUtil.isNotBlank(v.getString("auditSign")) ? getImg(v.getString("auditSign")) : null);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
if (nutMap.getString("resultCode").equals("determine")) {
|
||||
v.setv("resultAudit", "经提案工作委员会研究,符合提案立案条件,予以立案,此提案建议由%s办理,%s协办。".formatted(nutMap.getString("under1Unit"), (Strings.isNotBlank(nutMap.getString("under2Unit")) ? nutMap.getString("under2Unit") : "暂无")));
|
||||
} else if (nutMap.getString("resultCode").equals("opinion")) {
|
||||
v.setv("resultAudit", "作为意见建议转送参考");
|
||||
} else {
|
||||
v.setv("resultAudit", "该提案不予立项,不予立案原因属于以下提案内容");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Sql branchCaseSql = Sqls.create("select auditId from proposal_branch_leader_audit where proposalId = @proposalId AND isMaster=true").setParam("proposalId", proposalId);
|
||||
|
||||
+4
@@ -5,6 +5,7 @@ import cn.wizzer.framework.base.Result;
|
||||
import cn.wizzer.framework.page.Pagination;
|
||||
import io.v.nutz.base.annontation.ViReturn;
|
||||
import io.v.nutz.base.model.Audit;
|
||||
import io.v.nutz.base.utils.Vi;
|
||||
import io.v.nutz.sys.services.SysLocalProcessService;
|
||||
import io.v.nutz.web.commons.slog.annotation.SLog;
|
||||
import io.v.nutz.web.commons.utils.ShiroUtil;
|
||||
@@ -79,6 +80,9 @@ public class MemberChangeBranchUnionAuditController {
|
||||
} else {
|
||||
cnd.and("record.applyStateId", "=", 10020);
|
||||
}
|
||||
if (!ShiroUtil.hasAnyRoles("sysadmin")){
|
||||
cnd.andEX("unionId", "=", Vi.getUnionId());
|
||||
}
|
||||
cnd.desc("record.applyDateTime");
|
||||
sql.setCondition(cnd);
|
||||
Pagination pagination = memberCommonService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
|
||||
+1
@@ -100,6 +100,7 @@ public class MemberGroupInfoController {
|
||||
birthday,
|
||||
mobile,
|
||||
idcard,
|
||||
cardNum,
|
||||
personType,
|
||||
userState,
|
||||
unionid,
|
||||
|
||||
+7
-3
@@ -6,6 +6,8 @@ import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.http.HtmlUtil;
|
||||
import cn.wizzer.framework.page.Pagination;
|
||||
import com.alibaba.druid.util.StringUtils;
|
||||
import freemarker.template.utility.StringUtil;
|
||||
import io.v.nutz.base.dao.CndPlus;
|
||||
import io.v.nutz.base.query.PageForm;
|
||||
import io.v.nutz.base.service.impl.ViServiceImpl;
|
||||
@@ -361,9 +363,11 @@ public class MemberCommonServiceImpl extends ViServiceImpl<Sys_user> implements
|
||||
|
||||
// 如果有工会关系变更,也需要记录变更了什么工会
|
||||
history.setChangeInfos(changeList);
|
||||
String changeInfos = changeList.stream().map(v -> {
|
||||
return v.getString("fieldName") + ":" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue")) + "->" + HtmlUtil.cleanHtmlTag(v.getString("newValue"));
|
||||
}).collect(Collectors.joining(";"));
|
||||
String changeInfos = changeList.stream().map(v ->
|
||||
v.getString("fieldName") + ":"
|
||||
+ HtmlUtil.cleanHtmlTag(Optional.of(v.getString("sourceValue")).orElse(""))
|
||||
+ "->" + HtmlUtil.cleanHtmlTag(Optional.of(v.getString("newValue")).orElse(""))
|
||||
).collect(Collectors.joining(";"));
|
||||
history.setChangeInfosStr(changeInfos);
|
||||
dao().updateIgnoreNull(info);
|
||||
dao().insert(history);
|
||||
|
||||
@@ -105,13 +105,13 @@ layout("/layouts/platform.html"){
|
||||
<el-descriptions-item label="在职状态">
|
||||
<el-form-item prop="userState">
|
||||
<dict-select v-model="formData.userState" code="USER_STATE"
|
||||
disabled style="width: 100%"></dict-select>
|
||||
style="width: 100%"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="人员类型">
|
||||
<el-form-item prop="personType">
|
||||
<dict-select v-model="formData.personType" code="PERSON_TYPE"
|
||||
disabled style="width: 100%"></dict-select>
|
||||
style="width: 100%"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
@@ -291,6 +291,7 @@ const MEMBER_CHANGE = {
|
||||
getUnionName(val){
|
||||
const data = this.units.find(v => v.id === val)
|
||||
this.$set(this.formData, 'unionName', data ? data.unionname : '')
|
||||
this.$set(this.formData, 'unionId', data ? data.unionid : '')
|
||||
},
|
||||
allowFields(prop) {
|
||||
return !this.allowChangeFields.map(v => v.code).includes(prop)
|
||||
|
||||
@@ -957,8 +957,10 @@ layout("/layouts/platform.html"){
|
||||
this.unions = await getUnionList()
|
||||
this.units = await getUnits()
|
||||
} else {
|
||||
debugger
|
||||
const user = JSON.parse(window.sessionStorage.getItem('user'))
|
||||
this.unions = await getUnionList()
|
||||
this.$set(this.pageForm, 'unionId', this.unions ? this.unions[0].id : null)
|
||||
this.$set(this.pageForm, "unionId", user.union ? user.union.id : null)
|
||||
this.flushUnits()
|
||||
}
|
||||
this.unitMoveUnions = clone(this.unions)
|
||||
|
||||
@@ -293,6 +293,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'birthday', label: '出生年月', sortable: true},
|
||||
{prop: 'mobile', label: '联系电话'},
|
||||
{prop: 'idcard', label: '身份证号', width: 170},
|
||||
{prop: 'cardNum', label: '会员服务卡号', width: 170},
|
||||
{prop: 'position', label: '职务', sortable: true, checked: 0},
|
||||
{prop: 'jobTitle', label: '职称', sortable: true, checked: 0},
|
||||
{prop: 'personType', label: '人员类型', sortable: true},
|
||||
|
||||
@@ -629,6 +629,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'birthday', label: '出生年月', sortable: true},
|
||||
{prop: 'mobile', label: '联系电话'},
|
||||
{prop: 'idcard', label: '身份证号', width: 170},
|
||||
{prop: 'cardNum', label: '会员服务卡号', width: 170},
|
||||
{prop: 'position', label: '职务', sortable: true, checked: 0},
|
||||
{prop: 'jobTitle', label: '职称', sortable: true, checked: 0},
|
||||
{prop: 'userState', label: '在职状态', sortable: true},
|
||||
|
||||
@@ -327,7 +327,7 @@ layout("/layouts/platform.html"){
|
||||
<el-input type="text" maxlength="19"
|
||||
placeholder="请输入会员服务卡卡号"
|
||||
oninput="value = value.replace(/\s/g, '')"
|
||||
v-model.trim="editUserData.cardNum"></el-input>
|
||||
v-model.trim="editUserData.cardNum" show-word-limit></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
|
||||
Reference in New Issue
Block a user