From 9506d4e3d189464e2d79b75f1424c58248cbf6ce Mon Sep 17 00:00:00 2001 From: Paidax Date: Thu, 29 Aug 2024 09:51:11 +0800 Subject: [PATCH] commit --- src/main/java/io/v/nutz/base/utils/Roles.java | 9 + .../io/v/nutz/sys/models/SysUnionGroup.java | 37 + .../io/v/nutz/sys/models/Sys_user_role.java | 105 +- .../WakesHomeDeclarationApplyController.java | 5 +- .../WakesHomeDeclarationMineController.java | 2 +- .../WakesHomeDeclarationSchoolController.java | 2 +- .../controller/review/AddZbController.java | 1 + .../review/StatisticsZpController.java | 37 +- .../impl/review/CommentZbServiceImpl.java | 11 +- .../platform/sys/SysUnionMangeCon.java | 310 +++- .../platform/sys/SysUnitMangeController.java | 360 ++++- .../declaration/WakesHomeInfoApply.vue | 4 + .../views/platform/sys/union/unionMange.html | 1272 ++++++++++++----- .../views/platform/sys/unit/unitMange.html | 1065 +++++++++----- .../platform/wakeshome/declaration/apply.html | 4 + .../platform/wakeshome/info/schoolAudit.html | 2 +- .../platform/wakeshome/review/statistics.html | 49 +- 17 files changed, 2448 insertions(+), 827 deletions(-) create mode 100644 src/main/java/io/v/nutz/sys/models/SysUnionGroup.java diff --git a/src/main/java/io/v/nutz/base/utils/Roles.java b/src/main/java/io/v/nutz/base/utils/Roles.java index f32e3fc..2b104e4 100644 --- a/src/main/java/io/v/nutz/base/utils/Roles.java +++ b/src/main/java/io/v/nutz/base/utils/Roles.java @@ -225,4 +225,13 @@ public interface Roles { */ String JDH_DB2 = "05e7a279f4274a1eb3a81adb5f8c2454"; + /** + * 单位书记 + */ + String GH03 = "428969eb99ff4b76883d83f847ee96a5"; + + /** + * 工会组组长 + */ + String ghxzzz = "308dfe9096f44a64a67b4714f67dcd96"; } diff --git a/src/main/java/io/v/nutz/sys/models/SysUnionGroup.java b/src/main/java/io/v/nutz/sys/models/SysUnionGroup.java new file mode 100644 index 0000000..5e81aae --- /dev/null +++ b/src/main/java/io/v/nutz/sys/models/SysUnionGroup.java @@ -0,0 +1,37 @@ +package io.v.nutz.sys.models; + +import lombok.Data; +import org.nutz.dao.entity.annotation.*; + +/** + * TODO + * + * @Author zhf + * @Date 2022/12/25 10:04 + */ +@Data +@Table +public class SysUnionGroup { + + @Column + @Name + @Comment("ID") + @Prev(els = {@EL("uuid()")}) + @ColDefine(type = ColType.VARCHAR, width = 32) + private String id; + + @Column + @Comment("小组名称") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String groupName; + + @Column + @Comment("小组编码") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String groupCode; + + @Column + @Comment("所属工会") + @ColDefine(type = ColType.VARCHAR, width = 32) + private String unionId; +} diff --git a/src/main/java/io/v/nutz/sys/models/Sys_user_role.java b/src/main/java/io/v/nutz/sys/models/Sys_user_role.java index b4bbdfd..fb7905b 100644 --- a/src/main/java/io/v/nutz/sys/models/Sys_user_role.java +++ b/src/main/java/io/v/nutz/sys/models/Sys_user_role.java @@ -1,9 +1,11 @@ package io.v.nutz.sys.models; +import lombok.Data; import org.nutz.dao.entity.annotation.*; import java.io.Serializable; +@Data @Table("sys_user_role") public class Sys_user_role implements Serializable { private static final long serialVersionUID = 1L; @@ -43,6 +45,21 @@ public class Sys_user_role implements Serializable { @Comment("工会id") private String unionid; + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("工会小组id") + private String unionGroupId; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("代表小组id") + private String groupId; + + @Column + @ColDefine(type = ColType.VARCHAR, width = 32) + @Comment("离退办小组id") + private String ltbGroupId; + @Column @ColDefine(type = ColType.VARCHAR, width = 32) @Comment("承办单位id") @@ -62,93 +79,5 @@ public class Sys_user_role implements Serializable { @ColDefine(type = ColType.VARCHAR, width = 32) @Comment("提案教代会机构id") private String jgid; - - public String getGdhid() { - return gdhid; - } - - public void setGdhid(String gdhid) { - this.gdhid = gdhid; - } - - public String getJc() { - return jc; - } - - public void setJc(String jc) { - this.jc = jc; - } - - public String getStid() { - return stid; - } - - public void setStid(String stid) { - this.stid = stid; - } - - public String getCbdwid() { - return cbdwid; - } - - public void setCbdwid(String cbdwid) { - this.cbdwid = cbdwid; - } - - public String getUnionid() { - return unionid; - } - - public void setUnionid(String unionid) { - this.unionid = unionid; - } - - public String getRoleId() { - return roleId; - } - - public void setRoleId(String roleId) { - this.roleId = roleId; - } - - public String getUserId() { - return userId; - } - - public void setUserId(String userId) { - this.userId = userId; - } - - public String getJdhid() { - return jdhid; - } - - public void setJdhid(String jdhid) { - this.jdhid = jdhid; - } - - public String getUnitid() { - return unitid; - } - - public void setUnitid(String unitid) { - this.unitid = unitid; - } - - public String getDbtid() { - return dbtid; - } - - public void setDbtid(String dbtid) { - this.dbtid = dbtid; - } - - public String getJgid() { - return jgid; - } - - public void setJgid(String jgid) { - this.jgid = jgid; - } } diff --git a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationApplyController.java b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationApplyController.java index 7f6bf54..45bcda9 100644 --- a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationApplyController.java +++ b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationApplyController.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil; import io.v.nutz.annontation.ViReturn; import io.v.nutz.wakershome.model.WakesHomeApply; import io.v.nutz.wakershome.service.IWakesHomeApplyService; +import org.apache.shiro.authz.annotation.Logical; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -69,7 +70,9 @@ public class WakesHomeDeclarationApplyController { @At @ViReturn - @RequiresPermissions("wakeshome.declaration.apply") + @RequiresPermissions(value = {"wakeshome.declaration.apply","wakeshome.declaration.mine", + "wakeshome.declaration.organization", "wakeshome.declaration.school", + "wakeshome.declaration.statistics"},logical = Logical.OR) public Object getInfoById(String id){ return wakesHomeApplyService.findById(id); } diff --git a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationMineController.java b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationMineController.java index 7b76ddb..368e00a 100644 --- a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationMineController.java +++ b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationMineController.java @@ -114,7 +114,7 @@ public class WakesHomeDeclarationMineController { .bind("basicInformation", htmlRenderPolicy) .bind("constructionPlan", htmlRenderPolicy).build(); HashMap map = new HashMap<>(); - String fileName = Globals.schoolName + "教工小家”建设计划书"; + String fileName = Globals.schoolName + "“教工小家”建设计划书"; map.put("fileName", fileName); map.put("schoolName", Globals.schoolName); map.put("unionName", nutMap.getString("unionName")); diff --git a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationSchoolController.java b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationSchoolController.java index d864e95..c173c83 100644 --- a/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationSchoolController.java +++ b/src/main/java/io/v/nutz/wakershome/controller/declaration/WakesHomeDeclarationSchoolController.java @@ -92,7 +92,7 @@ public class WakesHomeDeclarationSchoolController { public Object doRollBack(String id){ WakesHomeApply wakesHome = wakesHomeApplyService.fetch(id); wakesHomeApplyService.dao().clear(Audit.class,Cnd.where("id","=",wakesHome.getSchoolAuditId())); - wakesHomeApplyService.update(Chain.make("state",10010).add("schoolAuditId",null),Cnd.where("id","=",id)); + wakesHomeApplyService.update(Chain.make("state",10020).add("schoolAuditId",null),Cnd.where("id","=",id)); return null; } } diff --git a/src/main/java/io/v/nutz/wakershome/controller/review/AddZbController.java b/src/main/java/io/v/nutz/wakershome/controller/review/AddZbController.java index 7d5b13a..4e13442 100644 --- a/src/main/java/io/v/nutz/wakershome/controller/review/AddZbController.java +++ b/src/main/java/io/v/nutz/wakershome/controller/review/AddZbController.java @@ -41,6 +41,7 @@ public class AddZbController { CommentZb zb = commentZbService.insert(commentZb); for (CommentNr nr : commentZb.getNrs()) { nr.setZb_id(zb.getId()); + nr.getBzs().forEach(v->v.setZb_id(zb.getId())); commentZbService.insertWith(nr, "bzs"); } }); diff --git a/src/main/java/io/v/nutz/wakershome/controller/review/StatisticsZpController.java b/src/main/java/io/v/nutz/wakershome/controller/review/StatisticsZpController.java index 9672d0d..1e0f344 100644 --- a/src/main/java/io/v/nutz/wakershome/controller/review/StatisticsZpController.java +++ b/src/main/java/io/v/nutz/wakershome/controller/review/StatisticsZpController.java @@ -6,6 +6,7 @@ import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.config.Configure; import com.deepoove.poi.policy.HackLoopTableRenderPolicy; import io.v.nutz.annontation.ViReturn; +import io.v.nutz.base.result.Result; import io.v.nutz.base.utils.Vi; import io.v.nutz.modules.models.PageForm; import io.v.nutz.sys.models.Sys_file; @@ -201,6 +202,7 @@ public class StatisticsZpController { /** * 分工会下所有测评结果导出(多个)压缩包 + * * @param zbId * @param unionId * @param response @@ -232,8 +234,41 @@ public class StatisticsZpController { } + /** + * 校验是否有附件 + * + * @param peoId 测评结果Id + * @param zbId 指标Id + * @param unionId 分工会Id + * @return + */ + @At + @RequiresPermissions("wakeshome.review.statistics") + public Object validateHasFiles(@Param(value = "peoId", required = false) String peoId, + @Param(value = "zbId", required = false) String zbId, + @Param(value = "unionId", required = false) String unionId) { + Cnd cnd = Cnd.NEW(); + cnd.andEX("id", "=", peoId); + cnd.andEX("zbId", "=", zbId); + cnd.andEX("unionId", "=", unionId); + List peoList = commentPeoService.dao().query(CommentPeo.class, cnd); + List files; + try { + files = peoList.stream().flatMap(v -> v.getFiles().stream()).collect(Collectors.toList()); + } catch (NullPointerException e) { + return Result.error(); + } + if (Lang.isEmpty(files)) { + return Result.error(); + } else { + return Result.success(); + } + } + + /** * 分工会导出附件 + * * @param zbId * @param unionId * @param response @@ -261,7 +296,7 @@ public class StatisticsZpController { if (Lang.isNotEmpty(files)) { for (Sys_file file : files) { - if(Lang.isNotEmpty(file)) { + if (Lang.isNotEmpty(file)) { FileOutputStream outputStream = new FileOutputStream(tDir.getPath() + "/" + file.getFilename()); ftpService.download(file.getFilepath(), outputStream); outputStream.close(); diff --git a/src/main/java/io/v/nutz/wakershome/service/impl/review/CommentZbServiceImpl.java b/src/main/java/io/v/nutz/wakershome/service/impl/review/CommentZbServiceImpl.java index 5e6615e..75bd5df 100644 --- a/src/main/java/io/v/nutz/wakershome/service/impl/review/CommentZbServiceImpl.java +++ b/src/main/java/io/v/nutz/wakershome/service/impl/review/CommentZbServiceImpl.java @@ -30,26 +30,17 @@ public class CommentZbServiceImpl extends ViServiceImpl implements Co private CommentNrService commentNrService; - private void setNrBz(List nrs) { - for (CommentNr nr : nrs) { - nr = commentNrService.fetchLinks(nr, "bzs", Cnd.NEW().asc("location")); - } - } - @Override public CommentZb khzb(String zbid) { if (StrUtil.isBlank(zbid)) { return null; } - CommentZb zb = dao().fetchLinks(fetch(zbid), "nrs"); + CommentZb zb = dao().fetchLinks(fetch(zbid), "nrs", Cnd.NEW().asc("contentNumber")); for (CommentNr nr : zb.getNrs()) { List query = dao().query(CommentBz.class, Cnd.where("zb_id", "=", zbid).and("nr_id", "=", nr.getId()).asc("contentNumber")); nr.setBzs(query); } - -// CommentZb zb = fetchLinks(fetch(zbid), "nrs", Cnd.NEW().asc("contentNumber")); -// setNrBz(zb.getNrs()); return zb; } diff --git a/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnionMangeCon.java b/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnionMangeCon.java index d79735e..00414cf 100644 --- a/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnionMangeCon.java +++ b/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnionMangeCon.java @@ -3,11 +3,13 @@ package io.v.nutz.web.controllers.platform.sys; import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.annotation.Excel; import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.hutool.core.util.StrUtil; import cn.wizzer.framework.base.Result; import io.v.nutz.annontation.ViReturn; +import io.v.nutz.base.page.Pagination; import io.v.nutz.base.utils.PageUtil; import io.v.nutz.base.utils.Roles; -import io.v.nutz.lang.Lang; +import io.v.nutz.modules.models.PageForm; import io.v.nutz.service.ViService; import io.v.nutz.sys.models.*; import io.v.nutz.sys.services.*; @@ -26,14 +28,21 @@ import org.nutz.dao.util.cri.Static; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.json.Json; +import org.nutz.lang.Lang; import org.nutz.lang.Strings; import org.nutz.log.Log; import org.nutz.log.Logs; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; +import org.nutz.trans.Trans; import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * @Author: V @@ -78,7 +87,11 @@ public class SysUnionMangeCon { */ @At @ViReturn - public Object changeSchoolUnionRole(String unionid, String roleId, String roleCode, String userId, int type) { + public Object changeSchoolUnionRole(@Param(value = "unionid", required = false) String unionid, + @Param(value = "roleId", required = false) String roleId, + @Param(value = "roleCode", required = false) String roleCode, + @Param(value = "userId", required = false) String userId, + @Param(value = "type", required = false) int type) { if (type == 1) { Sys_user_role role = new Sys_user_role(); role.setUserId(userId); @@ -109,7 +122,9 @@ public class SysUnionMangeCon { */ @At @ViReturn - public Object schoolUnionRoles(String unionid, String searchName, String searchKeyword) { + public Object schoolUnionRoles(@Param(value = "unionid", required = false) String unionid, + @Param(value = "searchName", required = false) String searchName, + @Param(value = "searchKeyword", required = false) String searchKeyword) { Sql sql = Sqls.create(""" SELECT role.`name` rolename, @@ -136,8 +151,8 @@ public class SysUnionMangeCon { cnd.and(new Static("dict.parentId = ( SELECT id FROM sys_dict WHERE `code` = 'SchoolRoles' LIMIT 1)")); } - if (Lang.notNull(searchName, searchKeyword)) { - cnd.where().andLike(searchName, searchKeyword); + if (StrUtil.isNotBlank(searchName) && StrUtil.isNotBlank(searchKeyword)) { + cnd.and(Cnd.likeEX(searchName, searchKeyword)); } sql.setCondition(cnd); @@ -171,7 +186,10 @@ public class SysUnionMangeCon { @At("/unionPageData") @Ok("json:full") @ViReturn - public Object unionPageData(String searchName, String searchKeyword, int pageNumber, int pageSize, String pageOrderName, String pageOrderBy) { + public Object unionPageData(@Param(value = "searchName", required = false) String searchName, + @Param(value = "searchKeyword", required = false) String searchKeyword, int pageNumber, int pageSize, + @Param(value = "pageOrderName", required = false) String pageOrderName, + @Param(value = "pageOrderBy", required = false) String pageOrderBy) { Cnd cnd = Cnd.NEW(); Sql sql = Sqls.create(""" SELECT @@ -348,7 +366,9 @@ public class SysUnionMangeCon { @At // 会员档案 - public Object hyPageData(String unitid, String unionid, String searchName, String searchKeyword, int pageNumber, int pageSize, String pageOrderName, String pageOrderBy) { + public Object hyPageData(@Param(value = "unitid", required = false) String unitid, + @Param(value = "unionid", required = false) String unionid, + PageForm page) { try { // Sql sql = Sqls.create("SELECT u.id,u.username,u.loginname,u.sex,un.`name` unitname,u.mobile from sys_user u left join sys_unit un on u.unitid = un.id $condition"); @@ -363,16 +383,16 @@ public class SysUnionMangeCon { if (Strings.isNotBlank(unitid)) { cnd.and("u.unitid", "=", unitid); } - if (Strings.isNotBlank(searchName) && Strings.isNotBlank(searchKeyword)) { - cnd.and(searchName, "like", "%" + searchKeyword + "%"); + if (Strings.isNotBlank(page.getSearchName()) && Strings.isNotBlank(page.getSearchKeyword())) { + cnd.where().andLike(page.getSearchName(), page.getSearchKeyword()); } - if (Strings.isNotBlank(pageOrderName) && Strings.isNotBlank(pageOrderBy)) { - cnd.orderBy(pageOrderName, PageUtil.getOrder(pageOrderBy)); + if (StrUtil.isNotBlank(page.getPageOrderName()) && StrUtil.isNotBlank(page.getPageOrderBy())) { + cnd.orderBy(page.getPageOrderName(), page.getPageOrderBy().equalsIgnoreCase("ascending") ? "ASC" : "DESC"); } else { cnd.asc("u.unitid"); } sql.setCondition(cnd); - return Result.success().addData(sysUnionService.listPage(pageNumber, pageSize, sql)); + return Result.success().addData(sysUnionService.listPage(page.getPageNumber(), page.getPageSize(), sql)); } catch (Exception e) { log.error(e); return Result.error(); @@ -418,7 +438,9 @@ public class SysUnionMangeCon { } @At - public Object spyPageData(String qxid, String unionid, String searchName, String searchKeyword, int pageNumber, int pageSize, String pageOrderName, String pageOrderBy) { + public Object spyPageData(@Param(value = "qxid", required = false) String qxid, + @Param(value = "unionid", required = false) String unionid, + PageForm page) { try { Sql sql = Sqls.create("SELECT\n" + "\tsur.roleId,\n" + @@ -445,16 +467,16 @@ public class SysUnionMangeCon { cnd.and("sur.roleId in (SELECT role.id from sys_dict dict left join sys_role role on dict.`code` = role.`code` WHERE parentId = '" + ViCommonCon.DICT_SPYJS_ID + "') and 1", "=", 1); } - if (Strings.isNotBlank(searchName) && Strings.isNotBlank(searchKeyword)) { - cnd.where().andLike(searchName, searchKeyword); + if (Strings.isNotBlank(page.getSearchName()) && Strings.isNotBlank(page.getSearchKeyword())) { + cnd.where().andLike(page.getSearchName(), page.getSearchKeyword()); } - if (Strings.isNotBlank(pageOrderName) && Strings.isNotBlank(pageOrderBy)) { - cnd.orderBy(pageOrderName, PageUtil.getOrder(pageOrderBy)); + if (StrUtil.isNotBlank(page.getPageOrderName()) && StrUtil.isNotBlank(page.getPageOrderBy())) { + cnd.orderBy(page.getPageOrderName(), PageUtil.getOrder(page.getPageOrderBy())); } else { cnd.asc("sur.roleId"); } sql.setCondition(cnd); - return Result.success().addData(sysUnionService.listPage(pageNumber, pageSize, sql)); + return Result.success().addData(sysUnionService.listPage(page.getPageNumber(), page.getPageSize(), sql)); } catch (Exception e) { log.error(e); return Result.error(); @@ -476,6 +498,233 @@ public class SysUnionMangeCon { } + /** + * 根据条件查询可选的三级单位,以及已选择了的单位 + * + * @param unionId + * @param unionGroupId + * @return + */ + @At + @ViReturn + public Object getXzDw(String unionId, @Param(value = "unionGroupId", required = false) String unionGroupId) { + List value = new ArrayList<>(); + Cnd cnd = Cnd.NEW(); + if (Strings.isNotBlank(unionGroupId)) { + //根据工会小组id查出小组下的单位 + value = sysUnitService.query(Cnd.where("unionGroupId", "=", unionGroupId)); + } else { + cnd.and("unionGroupId", "is", null); + } + + //查出这个工会下的二级单位 + List unit2 = sysUnitService.query(Cnd.where("unitlevel", "=", 2).and("unionid", "=", unionId)); + List unit2Id = unit2.stream().map(v -> v.getId()).collect(Collectors.toList()); + //根据二级单位id查出下面的三级单位 + cnd.and("parentId", "in", unit2Id); + List data = sysUnitService.query(cnd); + return Map.of("data", data, "value", value); + } + + /** + * 设置工会小组 + * + * @param sysUnionGroup + * @param xzValue + * @param oldGroupCode + * @param unionId + * @return + */ + @At + public Object doSzXz(@Param("SysUnionGroup") SysUnionGroup sysUnionGroup, + @Param(value = "xzValue", required = false) String[] xzValue, + @Param(value = "oldGroupCode", required = false) String oldGroupCode, String unionId) { + if (oldGroupCode != null && !oldGroupCode.equals(sysUnionGroup.getGroupCode())) { + int groupCode = sysUnitService.dao().count(SysUnionGroup.class, Cnd.where("groupCode", "=", sysUnionGroup.getGroupCode())); + if (groupCode > 0) { + return Result.error("编码重复"); + } + } + sysUnionGroup.setUnionId(unionId); + sysUnitService.insertOrUpdate(sysUnionGroup); + + if (Strings.isNotBlank(sysUnionGroup.getId())) { + sysUnitService.update(Chain.make("unionGroupId", null), Cnd.where("unionGroupId", "=", sysUnionGroup.getId())); + } + + if (Lang.isNotEmpty(xzValue)) { + sysUnitService.update(Chain.make("unionGroupId", sysUnionGroup.getId()), Cnd.where("id", "in", xzValue)); + } + return Result.success("操作成功"); + + } + + /** + * 根据工会查询他下面的工会小组分页 + * + * @param page + * @param unionId + * @return + */ + @At + @ViReturn + public Object xzPageData(PageForm page, String unionId) { + Cnd cnd = Cnd.NEW(); + Sql sql = Sqls.create(""" + SELECT + g.*,( + SELECT + GROUP_CONCAT( us.username, '(', us.loginname, ')' ) + FROM + sys_user_role ro + LEFT JOIN sys_user us ON us.id = ro.userId + WHERE + ro.unionGroupId = g.id + AND ro.roleId = @roleId + ) groupLeader + FROM + `sys_union_group` g + $condition + """).setParam("roleId", Roles.ghxzzz); + if (StrUtil.isNotBlank(page.getSearchName()) && StrUtil.isNotBlank(page.getSearchKeyword())) { + cnd.and(Cnd.likeEX(page.getSearchName(), page.getSearchKeyword())); + } + cnd.and("g.unionId", "=", unionId); + cnd.asc("g.groupCode"); + sql.setCondition(cnd); + return sysUnitService.listPageMap(page.getPageNumber(), page.getPageSize(), sql); + } + + /** + * 查询工会小组下面的组长 + * + * @param id + * @return + */ + @At + @ViReturn + public Object selectSzXzzz(String id) { + return sysUserRoleService.query(Cnd.where("roleId", "=", Roles.ghxzzz).and("unionGroupId", "=", id)); + } + + /** + * 添加工会小组组长 + * + * @param userId + * @param unionId + * @param id + * @return + */ + @At + @ViReturn + public Object doSzXzzz(@Param("userId") String[] userId, String unionId, String id) { + Trans.exec(() -> { + sysUserRoleService.clear(Cnd.where("unionGroupId", "=", id).and("roleId", "=", io.v.nutz.base.utils.Roles.ghxzzz)); + List idList = Arrays.asList(userId); + List roles = new ArrayList<>(); + idList.forEach(v->{ + Sys_user_role user_role = new Sys_user_role(); + user_role.setRoleId(io.v.nutz.base.utils.Roles.ghxzzz); + user_role.setUnionGroupId(id); + user_role.setUserId(v); + user_role.setUnionid(unionId); + roles.add(user_role); + }); + sysUserRoleService.insert(roles); + sysUserService.clearCache(); + }); + + return null; + } + + /** + * 根据工会小组id删除小组以及对应的角色 + * + * @param id + * @return + */ + @At + @ViReturn + public Object doDeleteXz(String id) { + Trans.exec(() -> { + sysUserRoleService.clear(Cnd.where("roleId", "=", Roles.ghxzzz).and("unionGroupId", "=", id)); + sysUnitService.dao().delete(SysUnionGroup.class, id); + sysUnitService.update(Chain.make("unionGroupId", null), Cnd.where("unionGroupId", "=", id)); + sysUserService.clearCache(); + }); + return null; + } + + /** + * 查询工会小组会员 + * + * @param page + * @param id + * @param threeUnitId + * @return + */ + @At + @ViReturn + public Object selectXzcy(PageForm page, String id, @Param(value = "threeUnitId", required = false) String threeUnitId) { + //根据小组id查出这个小组对应的单位 + List sysUnits = sysUnitService.query(Cnd.where("unionGroupId", "=", id)); + //拿到单位id + List unitIds = sysUnits.stream().map(v -> v.getId()).collect(Collectors.toList()); + + Cnd cnd = Cnd.NEW(); + Sql sql = Sqls.create(""" + SELECT + u.id, + u.loginname, + u.username, + u.sex, + un.`name` threeUnitName, + u.mobile + FROM + sys_user u + LEFT JOIN sys_unit un ON u.threeUnitId = un.id + $condition + """); + if (StrUtil.isNotBlank(page.getSearchName()) && StrUtil.isNotBlank(page.getSearchKeyword())) { + cnd.and(Cnd.likeEX(page.getSearchName(), page.getSearchKeyword())); + } + if (Strings.isNotBlank(threeUnitId)) { + cnd.and("threeUnitId", "=", threeUnitId); + } else { + cnd.and("threeUnitId", "in", unitIds); + } + cnd.and("member", "=", 1); + sql.setCondition(cnd); + return sysUnitService.listPageMap(page.getPageNumber(), page.getPageSize(), sql); + } + + /** + * 根据小组id查询小组下面的三级单位 + * + * @param id + * @return + */ + @At + @ViReturn + public Object getThreeOptions(String id) { + return sysUnitService.query(Cnd.where("unionGroupId", "=", id)); + } + + /** + * 删除工会小组组长 + * + * @param id + * @return + */ + @At + @ViReturn + public Object cancelXzzz(String id) { + sysUserRoleService.clear(Cnd.where("roleId", "=", Roles.ghxzzz).and("unionGroupId", "=", id)); + sysUserService.clearCache(); + return null; + + } + /** * 修改工会组成单位 * @@ -511,8 +760,29 @@ public class SysUnionMangeCon { @At public Object getUserByUnionId(String query, String unionid) { try { - return Result.success().addData(sysUserService.listPage(1, 50, Sqls.create("SELECT u.id,u.username,u.loginname,u.sex,u.mobile,u.zw,u.email\n" + - "from sys_user u left join sys_unit un on u.unitid = un.id WHERE un.unionid = @unionid and (u.username LIKE @query or u.loginname like @query)").setParam("unionid", unionid).setParam("query", "%" + query + "%"))); + Sql sql = Sqls.create(""" + SELECT + u.id, + u.username, + u.loginname, + u.sex, + u.mobile, + u.email + from + "user" u + $condition + """); + Cnd cnd = Cnd.NEW(); + cnd.and("u.unionid", "=", unionid); + if (StrUtil.isNotBlank(query)) { + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orLike("u.username", query); + seg.orLike("u.loginname", query); + cnd.and(seg); + } + sql.setCondition(cnd); + Pagination pagination = sysUserService.listPage(1, 10, sql); + return Result.success().addData(pagination); } catch (Exception e) { return Result.error(); } diff --git a/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnitMangeController.java b/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnitMangeController.java index a2e114d..2a75ce6 100644 --- a/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnitMangeController.java +++ b/src/main/java/io/v/nutz/web/controllers/platform/sys/SysUnitMangeController.java @@ -7,30 +7,40 @@ import io.v.nutz.data.constant.SourceData; import io.v.nutz.annontation.ViReturn; import io.v.nutz.dao.CndPlus; import io.v.nutz.modules.models.PageForm; +import io.v.nutz.proposal.models.ProposalConfig; +import io.v.nutz.proposal.models.ProposalUndertake; import io.v.nutz.service.AsyncService; import io.v.nutz.service.ViService; import io.v.nutz.sys.models.Sys_unit; import io.v.nutz.sys.models.Sys_user; +import io.v.nutz.sys.models.Sys_user_role; import io.v.nutz.sys.services.SysDqService; import io.v.nutz.sys.services.SysGxService; import io.v.nutz.sys.services.SysUnitClassService; import io.v.nutz.sys.services.SysUserService; import org.apache.shiro.authz.annotation.RequiresAuthentication; import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Chain; import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; +import org.nutz.dao.util.Daos; +import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Lang; import org.nutz.lang.Strings; import org.nutz.lang.util.NutMap; import org.nutz.log.Log; import org.nutz.log.Logs; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import org.nutz.mvc.annotation.Param; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -43,7 +53,6 @@ import java.util.stream.Collectors; @RequiresAuthentication @Ok("json:full") public class SysUnitMangeController { - private static final Log log = Logs.get(); @Inject("Sys_unit") private ViService sysUnitService; @@ -52,11 +61,10 @@ public class SysUnitMangeController { private SysUnitClassService sysUnitClassService; @Inject - private SysDqService sysDqService; + private SysUserService sysUserService; @Inject - private SysGxService sysGxService; - + private Dao dao; @At("") @Ok("beetl:/platform/sys/unit/unitMange.html") @@ -68,6 +76,7 @@ public class SysUnitMangeController { // 单位数据更新 @At @ViReturn + @RequiresPermissions("sys.manager.unit") public Object dataUpdate() { // 从系统数据库中查询已有的单位 List sys_units = sysUnitService.query(); @@ -75,7 +84,7 @@ public class SysUnitMangeController { // Map map = sys_units.stream().collect(Collectors.toMap(sys_unit -> sys_unit.getId(), sys_unit -> sys_unit.getParentId())); List list = sys_units.stream().map(v -> v.getId()).collect(Collectors.toList()); // 从源数据中心拉取所有的单位 - List units = SourceData.units(); + /* List units = SourceData.units(); for (Sys_unit unit : units) { if (list.contains(unit.getId())) { // 包含就修改 sysUnitService.updateIgnoreNull(unit); @@ -84,7 +93,7 @@ public class SysUnitMangeController { beanMap.remove("child"); sysUnitService.insert("sys_unit", Chain.from(beanMap)); } - } + }*/ List query = sysUnitService.query(); query.forEach(v -> { @@ -98,8 +107,16 @@ public class SysUnitMangeController { } + /** + * 单位页面数据 + * + * @param parentId 父id + * @param pageForm 页面形式 + * @return {@link Object} + */ @At @ViReturn + @RequiresPermissions("sys.manager.unit") public Object pageData(String parentId, PageForm pageForm) { CndPlus cnd = CndPlus.create(); cnd.andExcludeEmpty("parentId", "=", parentId); @@ -108,39 +125,62 @@ public class SysUnitMangeController { @At @ViReturn + @RequiresPermissions("sys.manager.unit") public Object findOne(String id) { return sysUnitService.fetch(id); } @At @ViReturn + @RequiresPermissions("sys.manager.unit") + @Aop(TransAop.READ_COMMITTED) public Object doAdd(Sys_unit sys_unit) { + sys_unit.setId(sys_unit.getUnitcode()); if (sysUnitService.count(Cnd.where("unitcode", "=", sys_unit.getUnitcode())) > 0) { return Result.error("单位代码已存在"); } sysUnitService.update(Chain.make("hasChildren", true), Cnd.where("id", "=", sys_unit.getParentId())); sysUnitService.insert(sys_unit); + + //添加承办单位 + ProposalUndertake proposalUndertake = new ProposalUndertake(); + proposalUndertake.setIsEnable(true); + proposalUndertake.setUnitName(sys_unit.getName()); + proposalUndertake.setUnitCode(sys_unit.getUnitcode()); + dao.insert(proposalUndertake); + return null; } @At @ViReturn + @RequiresPermissions("sys.manager.unit") + @Aop(TransAop.READ_COMMITTED) public Object doEdit(Sys_unit sys_unit) { if (sysUnitService.count(Cnd.where("unitcode", "=", sys_unit.getUnitcode()).and("id", "!=", sys_unit.getId())) > 0) { return Result.error("单位代码已存在"); } + sys_unit.setOpAt(String.valueOf(System.currentTimeMillis())); sysUnitService.update(sys_unit); + + //更新承办单位 + dao.update(ProposalUndertake.class, Chain.make("unitName", sys_unit.getName()), Cnd.where("unitCode", "=", sys_unit.getUnitcode())); return null; } @At @ViReturn + @RequiresPermissions("sys.manager.unit") + @Aop(TransAop.READ_COMMITTED) public Object doDelete(String id) { Sys_unit unit = sysUnitService.fetch(id); int count = sysUnitService.count(Cnd.where("parentId", "=", unit.getParentId()).and("id", "!=", id)); sysUnitService.update(Chain.make("hasChildren", count > 0), Cnd.where("id", "=", unit.getParentId())); delete(id); + + //删除承办单位 + dao.clear(ProposalUndertake.class, Cnd.where("unitCode", "=", unit.getUnitcode())); return null; } @@ -160,11 +200,12 @@ public class SysUnitMangeController { * @return */ @At + @RequiresPermissions("sys.manager.unit") public Object getUnitTreeData() { try { List list = new ArrayList(); - Sys_unit school = sysUnitService.fetch(Cnd.NEW()); + Sys_unit school = sysUnitService.fetch("00000"); school.setChild(child(school.getId())); list.add(school); @@ -182,7 +223,7 @@ public class SysUnitMangeController { private List child(String parentId) { List units = sysUnitService.query(Cnd.where("parentId", "=", parentId)); - asyncService.exe2(units, unit -> { + units.forEach(unit -> { unit.setChild(child(unit.getId())); }); @@ -192,6 +233,7 @@ public class SysUnitMangeController { @At @Ok("json") + @RequiresPermissions("sys.manager.unit") public Object getUnit2() { try { return Result.success().addData(sysUnitService.query(Cnd.where("unitlevel", "=", 2).asc("location"))); @@ -200,43 +242,307 @@ public class SysUnitMangeController { } } - @Inject - private SysUserService sysUserService; - + /** + * 查找单位下的用户 + * + * @param pageForm 页面形式 + * @param unitId 单位id + * @param threeUnitId 三个单元id + * @return {@link Object} + */ @At @ViReturn - public Object findPersonByUnitId(PageForm pageForm, String unitId) { + @RequiresPermissions("sys.manager.unit") + public Object findPersonByUnitId(PageForm pageForm, @Param(value = "unitId", required = false) String unitId, @Param(value = "threeUnitId", required = false) String threeUnitId) { NutMap map = new NutMap(); - CndPlus cndPlus = CndPlus.create(); - cndPlus.andExcludeEmpty("unitid", "=", unitId); + Sql userSql = Sqls.create(""" + select + u.id, + u.username, + u.loginname, + u.sex, + u.mobile, + u.member, + IFNULL( r.NAME, '普通用户' ) AS roleName, + r.code as roleCode + from `user` u + LEFT JOIN sys_user_role sur on sur.userId = u.id and sur.roleId = @roleId + LEFT JOIN sys_role r on r.id = sur.roleId + $condition + """); + userSql.setParam("roleId", Roles.UNIT_MANGER); + + Cnd cnd = Cnd.NEW(); + cnd.groupBy("u.id"); + cnd.andEX("u.unitid", "=", unitId); + cnd.andEX("u.threeUnitId", "=", threeUnitId); + if (Strings.isNotBlank(pageForm.getSearchName()) && Strings.isNotBlank(pageForm.getSearchKeyword())) { - cndPlus.where().andLike(pageForm.getSearchName(), pageForm.getSearchKeyword()); + cnd.where().andLike(pageForm.getSearchName(), pageForm.getSearchKeyword()); } - cndPlus.asc("member"); + cnd.desc("r.code"); + cnd.asc("member"); + userSql.setCondition(cnd); + map.setv("userList", sysUserService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), userSql)); +// Sql sql = Sqls.create(""" +// SELECT +// su.* +// FROM +// sys_user su +// LEFT JOIN sys_user_role sur ON sur.userId = su.id +// $condition +// """); +// +// Cnd cnd2 = Cnd.NEW(); +// cnd2.andEX("sur.roleId", "=", Roles.UNIT_MANGER); +// cnd2.andEX("su.unitid", "=", unitId); +// cnd.andEX("threeUnitId", "=", threeUnitId); +// if (Strings.isNotBlank(pageForm.getSearchName()) && Strings.isNotBlank(pageForm.getSearchKeyword())) { +// cnd2.where().andLike(pageForm.getSearchName(), pageForm.getSearchKeyword()); +// } +// sql.setCondition(cnd2); +// map.setv("principal", sysUserService.listMap(sql)); + return map; + } + /** + * 找到提议人由单位id + * + * @param pageForm 页面形式 + * @param unitId 单位id + * @param type 类型 1.校领导 2.答复人 + * @return {@link Object} + */ + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object findProposalPersonByUnitId(PageForm pageForm, @Param(value = "unitId", required = false) String unitId, Integer type) { Sql sql = Sqls.create(""" SELECT - su.* + u.username, + u.loginname, + u.sex, + u.mobile + FROM + sys_user_role sur + LEFT JOIN proposal_undertake pu ON pu.id = sur.cbdwid + AND sur.roleId = @roleId + left join sys_user u on u.id = sur.userId + where pu.unitCode = @unitId + """); + sql.setParam("roleId", type == 1 ? Roles.IN_CHARGE_LEADER : Roles.CONTRACTOR_PERSON); + sql.setParam("unitId", unitId); + return sysUnitService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + /** + * 查询管理员和公众用户 + * + * @param unitId 单位id + * @param type 类型 1.校领导 2.答复人 + * @return {@link Object} + */ + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object findProposalAdminAndPublicUser(@Param(value = "unitId", required = false) String unitId, Integer type) { + ProposalConfig config = sysUnitService.dao().fetch(ProposalConfig.class); + String schoolLeaderUnitCode = config.getSchoolLeaderUnitCode(); + + Sql publicUserSql = Sqls.create(""" + SELECT + su.id, + CONCAT( su.username, '(', su.loginname, ')', '- ', un.`name` ) `name` + FROM + sys_user su + LEFT JOIN sys_unit un ON un.id = su.unitid + WHERE + su.unitid = @unitId + """).setParam("unitId", type == 1 ? schoolLeaderUnitCode : unitId); + List publicUsers = sysUnitService.listMap(publicUserSql); + + + Sql adminUserSql = Sqls.create(""" + SELECT + su.id, + su.username FROM sys_user su LEFT JOIN sys_user_role sur ON sur.userId = su.id - $condition + LEFT JOIN proposal_undertake pun ON pun.id = sur.cbdwid + $condition """); + Cnd adminCnd = Cnd.NEW(); +// adminCnd.andEX("sur.cbdwid", "=", unitId); + adminCnd.andEX("pun.unitCode", "=", unitId); + adminCnd.andEX("sur.roleId", "=", type == 1 ? Roles.IN_CHARGE_LEADER : Roles.CONTRACTOR_PERSON); + adminUserSql.setCondition(adminCnd); + List adminUsers = sysUnitService.listMap(adminUserSql); - CndPlus cndPlus2 = CndPlus.create(); - cndPlus2.andExcludeEmpty("sur.roleId", "=", Roles.UNIT_MANGER); - cndPlus2.andExcludeEmpty("su.unitid", "=", unitId); - if (Strings.isNotBlank(pageForm.getSearchName()) && Strings.isNotBlank(pageForm.getSearchKeyword())) { - cndPlus2.where().andLike(pageForm.getSearchName(), pageForm.getSearchKeyword()); + return Result.success(Map.of("publicUsers", publicUsers, "adminUsers", adminUsers)); + } + + /** + * 做管理用户设置建议 + * + * @param userIds 用户id + * @param unitId 单位id + * @param type 类型 1.校领导 2.答复人 + * @return {@link Object} + */ + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object doSetProposalAdminUser(@Param(value = "userIds", required = false) String[] userIds, @Param(value = "unitId", required = false) String unitId, Integer type) { + String roleId = type == 1 ? Roles.IN_CHARGE_LEADER : Roles.CONTRACTOR_PERSON; + //清除此单位的角色 + dao.clear(Sys_user_role.class, Cnd.where("roleId", "=", roleId).and("unitId", "=", unitId)); + ProposalUndertake proposalUndertake = dao.fetch(ProposalUndertake.class, Cnd.where("unitCode", "=", unitId)); + if (Lang.isNotEmpty(proposalUndertake)) { + dao.clear(Sys_user_role.class, Cnd.where("cbdwid", "=", proposalUndertake.getId()).and("roleId", "=", roleId)); } - sql.setCondition(cndPlus2); + List insertUserRoles = Arrays.stream(userIds).map(v -> { + Sys_user_role sysUserRole = new Sys_user_role(); + sysUserRole.setUserId(v); + sysUserRole.setRoleId(roleId); + sysUserRole.setCbdwid(proposalUndertake.getId()); + return sysUserRole; + }).collect(Collectors.toList()); + dao.insert(insertUserRoles); - map.setv("userList", sysUserService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), cndPlus)); - map.setv("principal", sysUserService.listMap(sql)); + //增加负责人角色 + if (type == 2) { + List roles = Arrays.stream(userIds).map(v -> { + Sys_user_role sysUserRole = new Sys_user_role(); + sysUserRole.setUserId(v); + sysUserRole.setRoleId(Roles.UNIT_MANGER); + sysUserRole.setUnitid(unitId); + return sysUserRole; + }).collect(Collectors.toList()); + dao.insert(roles); + } - return map; + return null; + } + + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object findChargeUnits(@Param(value = "unitId", required = false) String unitId, String userId) { + List units = dao.query(Sys_unit.class, Cnd.where("unitlevel", "=", 2)); + + Sql chargeUnitSql = Sqls.create(""" + SELECT + n.id + FROM + sys_user_role sur + LEFT JOIN proposal_undertake pu ON pu.id = sur.cbdwid + LEFT JOIN sys_unit n on n.id = pu.unitCode + WHERE + sur.roleId = @roleId + AND sur.userId = @userId + """); + chargeUnitSql.setParam("roleId", Roles.IN_CHARGE_LEADER); + chargeUnitSql.setParam("userId", userId); + String[] chargeUnits = (String[]) Daos.query(dao, chargeUnitSql.toString(), Sqls.callback.strs()); + + return Result.success(Map.of("allUnits", units, "chargeUnits", chargeUnits)); + } + + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + @Aop(TransAop.READ_COMMITTED) + public Object doSetChargeUnit(String userId, @Param("chargeUnits") String[] chargeUnits) { + dao.clear(Sys_user_role.class, Cnd.where("userId", "=", userId).and("roleId", "=", Roles.IN_CHARGE_LEADER)); + + if (Lang.isNotEmpty(chargeUnits)) { + List undertakes = dao.query(ProposalUndertake.class, Cnd.where("unitCode", "in", chargeUnits)); + List userRoles = new ArrayList<>(); + for (ProposalUndertake undertake : undertakes) { + Sys_user_role sysUserRole = new Sys_user_role(); + sysUserRole.setUserId(userId); + sysUserRole.setRoleId(Roles.IN_CHARGE_LEADER); + sysUserRole.setCbdwid(undertake.getId()); + userRoles.add(sysUserRole); + } + dao.insert(userRoles); + } + return null; + } + + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object findOtherRoleUsers(String unitId, String type) { + Sql leftSql = Sqls.create("select id,username,loginname from sys_user where unitId = @unitId"); + leftSql.setParam("unitId", unitId); + List leftUsers = sysUnitService.listMap(leftSql); + + Sql rightSql = Sqls.create(""" + SELECT + u.id + FROM + sys_user_role sur + LEFT JOIN sys_user u ON u.id = sur.userId + WHERE + u.unitId = @unitId + AND sur.roleId = @roleId + """); + rightSql.setParam("unitId", unitId); + rightSql.setParam("roleId", getOtherRoleByType(type)); + String[] rightUsers = (String[]) Daos.query(dao, rightSql.toString(), Sqls.callback.strs()); + return Result.success(Map.of("leftUsers", leftUsers, "rightUsers", rightUsers)); + } + + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object otherRoleUserPageData(PageForm pageForm, String unitId, String type) { + Sql sql = Sqls.create(""" + SELECT + u.username, + u.loginname, + u.sex, + u.mobile + FROM + sys_user_role sur + left join sys_user u on u.id = sur.userId + WHERE + u.unitId = @unitId + AND sur.roleId = @roleId + """); + sql.setParam("roleId", getOtherRoleByType(type)); + sql.setParam("unitId", unitId); + return sysUnitService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + } + + @At + @ViReturn + @RequiresPermissions("sys.manager.unit") + public Object doSetOtherRoleUser(String unitId, @Param(value = "users", required = false) String[] users, String type) { + String roleId = getOtherRoleByType(type); + dao.clear(Sys_user_role.class, Cnd.where("unitId", "=", unitId).and("roleId", "=", roleId)); + + List userRoles = new ArrayList<>(); + for (String user : users) { + Sys_user_role userRole = new Sys_user_role(); + userRole.setUserId(user); + userRole.setUnitid(unitId); + userRole.setRoleId(roleId); + userRoles.add(userRole); + } + dao.insert(userRoles); + return null; + } + + private static String getOtherRoleByType(String type) { + if (type.equals("unitDwsj")) { + return Roles.GH03; + } + return null; } } diff --git a/src/main/resources/static/components/wakeshome/declaration/WakesHomeInfoApply.vue b/src/main/resources/static/components/wakeshome/declaration/WakesHomeInfoApply.vue index 2b23de1..ef9b80e 100644 --- a/src/main/resources/static/components/wakeshome/declaration/WakesHomeInfoApply.vue +++ b/src/main/resources/static/components/wakeshome/declaration/WakesHomeInfoApply.vue @@ -123,6 +123,10 @@ module.exports = { this.viewData = resp.data this.organizationAudit = resp.data.organizationAudit this.schoolAudit = resp.data.schoolAudit + } else { + this.viewData = {} + this.organizationAudit = {} + this.schoolAudit = {} } } } diff --git a/src/main/resources/views/platform/sys/union/unionMange.html b/src/main/resources/views/platform/sys/union/unionMange.html index 8118fb5..343e74b 100644 --- a/src/main/resources/views/platform/sys/union/unionMange.html +++ b/src/main/resources/views/platform/sys/union/unionMange.html @@ -19,7 +19,9 @@ layout("/layouts/platform.html"){ .v-box .el-card__header { padding: 5px 15px; } + + -
+
+ -