From 5f710b18a1783fbff9edb9da9fa7f440fa083507 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8C=97=E9=A3=8E?= <2452618307@qq.com> Date: Mon, 4 Mar 2024 14:59:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=9C=BA=E6=9E=84,=E8=AF=B7?= =?UTF-8?q?=E5=81=87=E8=AE=B0=E5=BD=95=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AnnouncementController.java | 15 +- .../manager/controller/RoleController.java | 140 +++++- .../manager/controller/UserController.java | 47 +- .../manager/manager/dao/AnnouncementDao.java | 8 +- .../manager/manager/dao/RoleDao.java | 23 +- .../manager/manager/dao/UserDao.java | 17 + .../manager/manager/entity/AskLeaveBean.java | 24 + .../manager/manager/model/LeaderBean.java | 24 + .../manager/manager/model/Role.java | 20 + .../manager/manager/model/RoleBean.java | 2 + .../manager/manager/model/SysUser.java | 11 +- .../manager/service/AnnouncementService.java | 7 +- .../manager/manager/service/RoleService.java | 14 + .../manager/manager/service/UserService.java | 9 + .../service/impl/AnnouncementServiceImpl.java | 10 +- .../manager/service/impl/RoleServiceImpl.java | 66 +++ .../manager/service/impl/UserServiceImpl.java | 52 +- .../announcement/AnnouncementMapper.xml | 55 +- .../resources/mappers/role/RoleMapper.xml | 20 + .../resources/mappers/user/newUserMapper.xml | 427 +++++++++------- .../static/js/layuiModules/xmSelect.js | 8 + src/main/resources/static/js/publicJs.js | 9 +- .../static/js/work/user/UserManagementList.js | 41 +- .../static/js/work/user/leaderSetList.js | 160 ++++++ .../pages/ askLeaveRecord/askLeaveRecord.html | 270 ++++++++++ .../pages/announcement/AnnouncementForm.html | 52 +- .../announcement/AnnouncementPersonView.html | 6 - .../pages/announcement/AnnouncementView.html | 6 - .../pages/announcement/announcementList.html | 7 - .../classificationManagement.html | 7 - .../organizational/organizationalForm.html | 22 +- .../organizational/organizationalList.html | 23 +- .../static/pages/role/addNewRole.html | 469 +++++++++++++++++- .../resources/static/pages/role/addUser.html | 133 +++++ .../static/pages/role/newRoleList.html | 38 +- .../static/pages/user/addUserForm.html | 2 +- .../static/pages/user/leaderSetList.html | 157 ++++++ .../static/pages/user/selectLeader.html | 342 +++++++++++++ .../resources/static/pages/user/userList.html | 5 + 39 files changed, 2365 insertions(+), 383 deletions(-) create mode 100644 src/main/java/com/bonus/leader/performance/manager/manager/entity/AskLeaveBean.java create mode 100644 src/main/java/com/bonus/leader/performance/manager/manager/model/LeaderBean.java create mode 100644 src/main/resources/static/js/layuiModules/xmSelect.js create mode 100644 src/main/resources/static/js/work/user/leaderSetList.js create mode 100644 src/main/resources/static/pages/ askLeaveRecord/askLeaveRecord.html create mode 100644 src/main/resources/static/pages/role/addUser.html create mode 100644 src/main/resources/static/pages/user/leaderSetList.html create mode 100644 src/main/resources/static/pages/user/selectLeader.html diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/controller/AnnouncementController.java b/src/main/java/com/bonus/leader/performance/manager/manager/controller/AnnouncementController.java index f3cbcf9..3229926 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/controller/AnnouncementController.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/controller/AnnouncementController.java @@ -1,10 +1,7 @@ package com.bonus.leader.performance.manager.manager.controller; import com.bonus.leader.performance.manager.manager.annotation.LogAnnotation; -import com.bonus.leader.performance.manager.manager.entity.AnnouncementBean; -import com.bonus.leader.performance.manager.manager.entity.DownloadFileBean; -import com.bonus.leader.performance.manager.manager.entity.FileBean; -import com.bonus.leader.performance.manager.manager.entity.TreeBean; +import com.bonus.leader.performance.manager.manager.entity.*; import com.bonus.leader.performance.manager.manager.service.AnnouncementService; import com.bonus.leader.performance.manager.manager.service.ProgressService; import com.bonus.leader.performance.manager.manager.utils.*; @@ -38,6 +35,7 @@ public class AnnouncementController { List list = service.getAnnouncementList(o); return list.size() > 0 ? R.okTable(list, list.size()):R.failTable("暂无数据"); } + @LogAnnotation @PostMapping("getAnnouncementType") @ApiOperation(value = "系统公告-分类管理列表") @@ -273,4 +271,13 @@ public class AnnouncementController { } return ar; } + + + @LogAnnotation + @PostMapping("getAskLeaveList") + @ApiOperation(value = "请假记录报表-列表查询") + public R getAskLeaveList(AskLeaveBean o){ + List list = service.getAskLeaveList(o); + return list.size() > 0 ? R.okTable(list, list.size()):R.failTable("暂无数据"); + } } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/controller/RoleController.java b/src/main/java/com/bonus/leader/performance/manager/manager/controller/RoleController.java index 8519e89..6d06b35 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/controller/RoleController.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/controller/RoleController.java @@ -1,6 +1,8 @@ package com.bonus.leader.performance.manager.manager.controller; +import java.util.HashMap; import java.util.List; +import java.util.Map; import com.bonus.leader.performance.manager.manager.dao.RoleDao; import com.bonus.leader.performance.manager.manager.entity.RoleDto; @@ -10,16 +12,13 @@ import com.bonus.leader.performance.manager.manager.table.PageTableHandler; import com.bonus.leader.performance.manager.manager.table.PageTableRequest; import com.bonus.leader.performance.manager.manager.table.PageTableResponse; import com.bonus.leader.performance.manager.manager.service.RoleService; +import com.bonus.leader.performance.manager.manager.utils.AjaxRes; +import com.bonus.leader.performance.manager.manager.utils.GlobalConst; import com.bonus.leader.performance.manager.manager.utils.R; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; import com.bonus.leader.performance.manager.manager.annotation.LogAnnotation; import com.google.common.collect.Maps; @@ -103,11 +102,124 @@ public class RoleController { /*----------------------------------------新版角色管理接口------------------------------------------------*/ - @LogAnnotation - @PostMapping("getNewRoleList") - @ApiOperation(value = "角色管理-列表查询") - public R getNewRoleList(RoleBean o){ - List list = roleService.getNewRoleList(o); - return list.size() > 0 ? R.okTable(list, list.size()):R.failTable("暂无数据"); - } + @LogAnnotation + @PostMapping("getNewRoleList") + @ApiOperation(value = "角色管理-列表查询") + public R getNewRoleList(RoleBean o) { + List list = roleService.getNewRoleList(o); + return list.size() > 0 ? R.okTable(list, list.size()) : R.failTable("暂无数据"); + } + + @RequestMapping(value = "addNewRoleData", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-新增") + @Transactional + @PreAuthorize("hasAuthority('sys:role:add')") + public AjaxRes addInfo(@RequestBody RoleDto bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.addInfo(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + Map map = new HashMap<>(); + String id = roleDao.getRoleIdByName(bean.getName()); + map.put("roleId", id); + ar.setSucceed(map, GlobalConst.INIT_SUCCEED); + if (cb == 5) { + ar.setFailMsg("角色已存在"); + } + } + return ar; + } + + @RequestMapping(value = "updateNewRoleData", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-修改") + @PreAuthorize("hasAuthority('sys:role:update')") + @Transactional + public AjaxRes updateInfo(@RequestBody RoleDto bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.updateInfo(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + Map map = new HashMap<>(); + String id = roleDao.getRoleIdByName(bean.getName()); + map.put("roleId", id); + ar.setSucceed(map, GlobalConst.INIT_SUCCEED); + if (cb == 5) { + ar.setFailMsg("角色已存在"); + } + } + return ar; + } + + @LogAnnotation + @PostMapping("delNewById") + @ApiOperation(value = "系统公告-删除公告") + public AjaxRes delNewById(RoleDto bean) { + AjaxRes ar = new AjaxRes(); + int result = roleService.delNewById(bean); + if (result == 1) { + ar.setSucceedMsg(GlobalConst.DATA_SUCCEED); + } else { + ar.setFailMsg(GlobalConst.DATA_FAIL); + } + return ar; + } + + @RequestMapping(value = "uploadPermission", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-新增权限") + @Transactional + @PreAuthorize("hasAuthority('sys:role:add')") + public AjaxRes uploadPermission(@RequestBody RoleDto bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.uploadPermission(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + ar.setFailMsg(GlobalConst.INIT_SUCCEED); + } + return ar; + } + + @RequestMapping(value = "updatePermission", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-修改权限") + @PreAuthorize("hasAuthority('sys:role:update')") + @Transactional + public AjaxRes updatePermission(@RequestBody RoleDto bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.updatePermission(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + ar.setFailMsg(GlobalConst.INIT_SUCCEED); + } + return ar; + } + @RequestMapping(value = "updateRoleLevel", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-修改角色级别") + @Transactional + public AjaxRes updateRoleLevel(@RequestBody RoleDto bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.updateRoleLevel(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + ar.setFailMsg(GlobalConst.INIT_SUCCEED); + } + return ar; + } + + @RequestMapping(value = "insertRolePersonData", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "角色-新增成员") + @Transactional + public AjaxRes insertRolePersonData(@RequestBody RoleBean bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = roleService.insertRolePersonData(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if (cb > 0) { + ar.setFailMsg(GlobalConst.INIT_SUCCEED); + } + return ar; + } } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/controller/UserController.java b/src/main/java/com/bonus/leader/performance/manager/manager/controller/UserController.java index b6092d8..d5af188 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/controller/UserController.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/controller/UserController.java @@ -9,6 +9,7 @@ import com.bonus.leader.performance.manager.manager.dao.UserDao; import com.bonus.leader.performance.manager.manager.entity.MapBean; import com.bonus.leader.performance.manager.manager.entity.UserDto; import com.bonus.leader.performance.manager.manager.entity.ZNode; +import com.bonus.leader.performance.manager.manager.model.LeaderBean; import com.bonus.leader.performance.manager.manager.model.SysUser; import com.bonus.leader.performance.manager.manager.table.PageTableHandler; import com.bonus.leader.performance.manager.manager.table.PageTableRequest; @@ -130,6 +131,13 @@ public class UserController { List list = userService.getMsgList(o); return list.size() > 0 ? R.okTable(list, list.size()):R.failTable("暂无数据"); } + @LogAnnotation + @PostMapping("getLeaderList") + @ApiOperation(value = "公司领导设置-列表") + public R getLeaderList(LeaderBean o){ + List list = userService.getLeaderList(o); + return list.size() > 0 ? R.okTable(list, list.size()):R.failTable("暂无数据"); + } @LogAnnotation @PostMapping("switchListen") @@ -221,9 +229,6 @@ public class UserController { return ar; } - - - @RequestMapping(value = "getListPerson", method = RequestMethod.POST) @ResponseBody @ApiOperation(value = "个人信息-查询") @@ -281,7 +286,6 @@ public class UserController { }else { ar.setFailMsg(GlobalConst.DATA_FAIL); } - return ar; } @@ -298,7 +302,42 @@ public class UserController { } return ar; } + @LogAnnotation + @PostMapping("setSort") + @ApiOperation(value = "公司领导设置-排序设置") + public AjaxRes setSort(LeaderBean bean) { + AjaxRes ar = new AjaxRes(); + int result = userService.setSort(bean); + if(result==1){ + ar.setSucceedMsg(GlobalConst.DATA_SUCCEED); + }else { + ar.setFailMsg(GlobalConst.DATA_FAIL); + } + return ar; + } + @LogAnnotation + @PostMapping("delLeaderById") + @ApiOperation(value = "公司领导设置-删除") + public AjaxRes delLeaderById(LeaderBean bean) throws Exception { + AjaxRes ar = new AjaxRes(); + userService.delLeaderById(bean); + ar.setSucceedMsg(GlobalConst.DATA_SUCCEED); + return ar; + } + + @RequestMapping(value = "insertLeaderData", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "用户管理-选择领导") + public AjaxRes insertLeaderData(@RequestBody SysUser bean) throws Exception { + AjaxRes ar = new AjaxRes(); + int cb = userService.insertLeaderData(bean); + ar.setFailMsg(GlobalConst.DATA_FAIL); + if(cb>0){ + ar.setFailMsg(GlobalConst.INIT_SUCCEED); + } + return ar; + } } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/dao/AnnouncementDao.java b/src/main/java/com/bonus/leader/performance/manager/manager/dao/AnnouncementDao.java index 5ec75cf..37680fd 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/dao/AnnouncementDao.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/dao/AnnouncementDao.java @@ -1,9 +1,6 @@ package com.bonus.leader.performance.manager.manager.dao; -import com.bonus.leader.performance.manager.manager.entity.AnnouncementBean; -import com.bonus.leader.performance.manager.manager.entity.DownloadFileBean; -import com.bonus.leader.performance.manager.manager.entity.FileBean; -import com.bonus.leader.performance.manager.manager.entity.TreeBean; +import com.bonus.leader.performance.manager.manager.entity.*; import org.springframework.stereotype.Repository; import java.util.List; @@ -49,4 +46,7 @@ public interface AnnouncementDao { int updateTreeChild(TreeBean bean); int delTreeChildById(TreeBean bean); + + List getAsLeaveList(AskLeaveBean o); } + diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/dao/RoleDao.java b/src/main/java/com/bonus/leader/performance/manager/manager/dao/RoleDao.java index f0c018b..cff4366 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/dao/RoleDao.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/dao/RoleDao.java @@ -3,6 +3,7 @@ package com.bonus.leader.performance.manager.manager.dao; import java.util.List; import java.util.Map; +import com.bonus.leader.performance.manager.manager.entity.RoleDto; import com.bonus.leader.performance.manager.manager.model.Role; import com.bonus.leader.performance.manager.manager.model.RoleBean; import org.apache.ibatis.annotations.Delete; @@ -17,7 +18,8 @@ import org.apache.ibatis.annotations.Update; public interface RoleDao { @Options(useGeneratedKeys = true, keyProperty = "id") - @Insert("insert into sys_role(name, description, createTime, updateTime) values(#{name}, #{description}, now(),now())") + @Insert("insert into sys_role(name,status, description, create_time, update_time) values(#{name}, " + + "#{status},#{description}, now(),now())") int save(Role role); int count(@Param("params") Map params); @@ -25,13 +27,14 @@ public interface RoleDao { List list(@Param("params") Map params, @Param("offset") Integer offset, @Param("limit") Integer limit); - @Select("select * from sys_role t where t.id = #{id}") + @Select("select id,name,role_level as level,description,status from sys_role t where t.id = #{id}") Role getById(Long id); - @Select("select * from sys_role t where t.name = #{name}") + @Select("select * from sys_role t where t.name = #{name} and is_active = 1") Role getRole(String name); - @Update("update sys_role t set t.name = #{name}, t.description = #{description}, updateTime = now() where t.id = #{id}") + @Update("update sys_role t set t.name = #{name},t.status=#{status}, t.description = #{description}, update_time = " + + "now() where t.id = #{id}") int update(Role role); @Select("select * from sys_role r inner join sys_role_user ru on r.id = ru.roleId where ru.userId = #{userId}") @@ -49,4 +52,16 @@ public interface RoleDao { int deleteRoleUser(Long roleId); List getNewRoleList(RoleBean o); + + int delNewById(RoleDto bean); + + String getRoleIdByName(String name); + + int updateRoleLevel(RoleDto bean); + + int getIsExistRelation(String roleId, String id); + + int updateRolePersonData(String roleId, String id); + + int insertRolePersonData(String roleId, String id); } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/dao/UserDao.java b/src/main/java/com/bonus/leader/performance/manager/manager/dao/UserDao.java index a6d9342..17fba37 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/dao/UserDao.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/dao/UserDao.java @@ -5,6 +5,7 @@ import java.util.Map; import com.bonus.leader.performance.manager.manager.entity.MapBean; import com.bonus.leader.performance.manager.manager.entity.ZNode; +import com.bonus.leader.performance.manager.manager.model.LeaderBean; import com.bonus.leader.performance.manager.manager.model.SysUser; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; @@ -69,4 +70,20 @@ public interface UserDao { int delById(SysUser bean); int insertLoginInfo(SysUser sysuser); + + List getLeaderList(LeaderBean o); + + int setOtherSort(LeaderBean bean); + + int setSort(LeaderBean bean); + + int setOtherSort2(LeaderBean bean); + + int delLeaderById(LeaderBean bean); + + int updateLeaderSortDown(LeaderBean bean); + + int getMaxLeaderSort(); + + int insertLeaderData(SysUser bean); } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/entity/AskLeaveBean.java b/src/main/java/com/bonus/leader/performance/manager/manager/entity/AskLeaveBean.java new file mode 100644 index 0000000..5845514 --- /dev/null +++ b/src/main/java/com/bonus/leader/performance/manager/manager/entity/AskLeaveBean.java @@ -0,0 +1,24 @@ +package com.bonus.leader.performance.manager.manager.entity; + +import lombok.Data; + +/** + * FileName: AskLeaveBean + * + * @author tqzhang + * Date: 2024 2024/3/4 13:50 + * Description:请假记录报表 + */ +@Data +public class AskLeaveBean { + private String id; + private String name; + private String type; + private String startTime; + private String endTime; + private String matter; + private String createTime; + private String leaveDay; + private String timeRange; + private String keyWord; +} diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/model/LeaderBean.java b/src/main/java/com/bonus/leader/performance/manager/manager/model/LeaderBean.java new file mode 100644 index 0000000..dd33a76 --- /dev/null +++ b/src/main/java/com/bonus/leader/performance/manager/manager/model/LeaderBean.java @@ -0,0 +1,24 @@ +package com.bonus.leader.performance.manager.manager.model; + +import lombok.Data; + +/** + * FileName: LeaderBean + * + * @author tqzhang + * Date: 2024 2024/2/29 13:29 + * Description:公司领导 + */ +@Data +public class LeaderBean { + + private String id; + private String username; + private String phone; + private String orgName; + private String roleName; + private String sort; + private String keyWord; + private String userId; + private String oldSort; +} diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/model/Role.java b/src/main/java/com/bonus/leader/performance/manager/manager/model/Role.java index f5c145d..8f5cce8 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/model/Role.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/model/Role.java @@ -8,6 +8,26 @@ public class Role extends BaseEntity { private String description; + private String status; + + private String level; + + public String getLevel() { + return level; + } + + public void setLevel(String level) { + this.level = level; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + public String getName() { return name; } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/model/RoleBean.java b/src/main/java/com/bonus/leader/performance/manager/manager/model/RoleBean.java index bed26e0..37860ea 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/model/RoleBean.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/model/RoleBean.java @@ -12,6 +12,8 @@ import lombok.Data; @Data public class RoleBean { private String id; + private String roleId; + private String userId; private String name; private String description; private String createTime; diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/model/SysUser.java b/src/main/java/com/bonus/leader/performance/manager/manager/model/SysUser.java index 2c359a8..4bfd647 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/model/SysUser.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/model/SysUser.java @@ -30,7 +30,7 @@ public class SysUser extends BaseEntity { private String keyWord; private String orgName; private String roleName; - + private String createTimes; private String level; private String orgId; private String pId; @@ -47,6 +47,15 @@ public class SysUser extends BaseEntity { private String month; private String ip; private String type; + private String sort; + + public String getSort() { + return sort; + } + + public void setSort(String sort) { + this.sort = sort; + } public String getUsername() { return username; diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/AnnouncementService.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/AnnouncementService.java index 46e0a57..ad4a34d 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/AnnouncementService.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/AnnouncementService.java @@ -1,9 +1,6 @@ package com.bonus.leader.performance.manager.manager.service; -import com.bonus.leader.performance.manager.manager.entity.AnnouncementBean; -import com.bonus.leader.performance.manager.manager.entity.DownloadFileBean; -import com.bonus.leader.performance.manager.manager.entity.FileBean; -import com.bonus.leader.performance.manager.manager.entity.TreeBean; +import com.bonus.leader.performance.manager.manager.entity.*; import java.util.List; @@ -41,4 +38,6 @@ public interface AnnouncementService { int updateTreeChild(TreeBean bean); int delTreeChildById(TreeBean bean); + + List getAskLeaveList(AskLeaveBean o); } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/RoleService.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/RoleService.java index 320a2d2..6bcc4c0 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/RoleService.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/RoleService.java @@ -12,4 +12,18 @@ public interface RoleService { void deleteRole(Long id); List getNewRoleList(RoleBean o); + + int addInfo(RoleDto bean); + + int updateInfo(RoleDto bean); + + int delNewById(RoleDto bean); + + int uploadPermission(RoleDto bean); + + int updatePermission(RoleDto bean); + + int updateRoleLevel(RoleDto bean); + + int insertRolePersonData(RoleBean bean); } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/UserService.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/UserService.java index 87cb4b9..f301a76 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/UserService.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/UserService.java @@ -3,6 +3,7 @@ package com.bonus.leader.performance.manager.manager.service; import com.bonus.leader.performance.manager.manager.entity.MapBean; import com.bonus.leader.performance.manager.manager.entity.UserDto; import com.bonus.leader.performance.manager.manager.entity.ZNode; +import com.bonus.leader.performance.manager.manager.model.LeaderBean; import com.bonus.leader.performance.manager.manager.model.SysUser; import java.util.List; @@ -46,4 +47,12 @@ public interface UserService { int resetPassword(SysUser bean); int delById(SysUser bean); + + List getLeaderList(LeaderBean o); + + int setSort(LeaderBean bean); + + int delLeaderById(LeaderBean bean); + + int insertLeaderData(SysUser bean); } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/AnnouncementServiceImpl.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/AnnouncementServiceImpl.java index 02f88c5..3806fe6 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/AnnouncementServiceImpl.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/AnnouncementServiceImpl.java @@ -3,10 +3,7 @@ package com.bonus.leader.performance.manager.manager.service.impl; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.bonus.leader.performance.manager.manager.dao.AnnouncementDao; -import com.bonus.leader.performance.manager.manager.entity.AnnouncementBean; -import com.bonus.leader.performance.manager.manager.entity.DownloadFileBean; -import com.bonus.leader.performance.manager.manager.entity.FileBean; -import com.bonus.leader.performance.manager.manager.entity.TreeBean; +import com.bonus.leader.performance.manager.manager.entity.*; import com.bonus.leader.performance.manager.manager.service.AnnouncementService; import com.bonus.leader.performance.manager.manager.utils.UserUtil; import org.springframework.stereotype.Service; @@ -143,4 +140,9 @@ public class AnnouncementServiceImpl implements AnnouncementService { public int delTreeChildById(TreeBean bean) { return dao.delTreeChildById(bean); } + + @Override + public List getAskLeaveList(AskLeaveBean o) { + return dao.getAsLeaveList(o); + } } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/RoleServiceImpl.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/RoleServiceImpl.java index 9902937..03b8990 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/RoleServiceImpl.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/RoleServiceImpl.java @@ -80,4 +80,70 @@ public class RoleServiceImpl implements RoleService { return roleDao.getNewRoleList(o); } + @Override + public int addInfo(RoleDto role) { + Role r = roleDao.getRole(role.getName()); + if (r != null) { + return 5; + } + return roleDao.save(role); + } + + @Override + public int updateInfo(RoleDto role) { + Role r = roleDao.getRole(role.getName()); + if (r != null && !r.getId().equals(role.getId())) { + return 5; + } + + return roleDao.update(role); + } + + @Override + public int delNewById(RoleDto bean) { + return roleDao.delNewById(bean); + } + + @Override + public int uploadPermission(RoleDto bean) { + roleDao.deleteRolePermission(bean.getId()); + List permissionIds = bean.getPermissionIds(); + permissionIds.remove(0L); + if (!CollectionUtils.isEmpty(permissionIds)) { + return roleDao.saveRolePermission(bean.getId(), permissionIds); + } + return 1; + } + + @Override + public int updatePermission(RoleDto bean) { + roleDao.deleteRolePermission(bean.getId()); + List permissionIds = bean.getPermissionIds(); + permissionIds.remove(0L); + if (!CollectionUtils.isEmpty(permissionIds)) { + return roleDao.saveRolePermission(bean.getId(), permissionIds); + } + return 1; + } + + @Override + public int updateRoleLevel(RoleDto bean) { + return roleDao.updateRoleLevel(bean); + } + + @Override + public int insertRolePersonData(RoleBean bean) { + String userId = bean.getUserId(); + String[] userIdArr = userId.split(","); + int code = 0; + for (String id : userIdArr) { + int num = roleDao.getIsExistRelation(bean.getRoleId(), id); + if (num > 0){ + code = roleDao.updateRolePersonData(bean.getRoleId(), id); + }else { + code = roleDao.insertRolePersonData(bean.getRoleId(), id); + } + } + return code; + } } diff --git a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/UserServiceImpl.java b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/UserServiceImpl.java index cf349bb..3dd5caa 100644 --- a/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/UserServiceImpl.java +++ b/src/main/java/com/bonus/leader/performance/manager/manager/service/impl/UserServiceImpl.java @@ -1,12 +1,5 @@ package com.bonus.leader.performance.manager.manager.service.impl; -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.text.SimpleDateFormat; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.ArrayList; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -15,6 +8,7 @@ import com.bonus.leader.performance.manager.manager.dao.UserDao; import com.bonus.leader.performance.manager.manager.dao.UtilDao; import com.bonus.leader.performance.manager.manager.entity.MapBean; import com.bonus.leader.performance.manager.manager.entity.ZNode; +import com.bonus.leader.performance.manager.manager.model.LeaderBean; import com.bonus.leader.performance.manager.manager.model.SysUser; import com.bonus.leader.performance.manager.manager.utils.UserUtil; import org.slf4j.Logger; @@ -176,6 +170,50 @@ public class UserServiceImpl implements UserService { return userDao.delById(bean); } + @Override + public List getLeaderList(LeaderBean o) { + return userDao.getLeaderList(o); + } + + @Override + public int setSort(LeaderBean bean) { + int code = 0; + if(Integer.parseInt(bean.getOldSort()) > Integer.parseInt(bean.getSort())) { + code = userDao.setOtherSort(bean); + }else { + code = userDao.setOtherSort2(bean); + } + if (code > 0){ + code = userDao.setSort(bean); + } + return code; + } + + @Override + public int delLeaderById(LeaderBean bean) { + int code = userDao.delLeaderById(bean); + if (code > 0){ + code = userDao.updateLeaderSortDown(bean); + } + return code; + } + + @Override + public int insertLeaderData(SysUser bean) { + String userId = bean.getUserId(); + String[] userArr = userId.split(","); + int sort = userDao.getMaxLeaderSort(); + bean.setUsername(UserUtil.getLoginUser().getId().toString()); + int code = 0; + for (String id : userArr) { + sort++; + bean.setUserId(id); + bean.setSort(String.valueOf(sort)); + code = userDao.insertLeaderData(bean); + } + return code; + } + @Override @Transactional diff --git a/src/main/resources/mappers/announcement/AnnouncementMapper.xml b/src/main/resources/mappers/announcement/AnnouncementMapper.xml index a493d03..8af672e 100644 --- a/src/main/resources/mappers/announcement/AnnouncementMapper.xml +++ b/src/main/resources/mappers/announcement/AnnouncementMapper.xml @@ -126,24 +126,17 @@ + \ No newline at end of file diff --git a/src/main/resources/mappers/role/RoleMapper.xml b/src/main/resources/mappers/role/RoleMapper.xml index 4075ee5..872f554 100644 --- a/src/main/resources/mappers/role/RoleMapper.xml +++ b/src/main/resources/mappers/role/RoleMapper.xml @@ -10,6 +10,15 @@ + + update sys_role set role_level = #{level} where id = #{id} + + + update sys_role_user set userId = #{id} where roleId = #{roleId} + + + update sys_role set is_active = '0' where id = #{id} + + + insert into sys_role_permission(roleId, permissionId) values @@ -36,5 +53,8 @@ (#{roleId}, #{permissionId}) + + insert into sys_role_user(roleId, userId) values (#{roleId}, #{id}) + \ No newline at end of file diff --git a/src/main/resources/mappers/user/newUserMapper.xml b/src/main/resources/mappers/user/newUserMapper.xml index e75fb51..098e4cc 100644 --- a/src/main/resources/mappers/user/newUserMapper.xml +++ b/src/main/resources/mappers/user/newUserMapper.xml @@ -3,202 +3,245 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - - - - and t.username like concat('%', #{params.username}, '%') - - - and t.nickname like concat('%', #{params.nickname}, '%') - - - and t.status = #{params.status} - - - - - update sys_user set is_active = '0' where id = #{id} - + + + + and t.username like concat('%', #{params.username}, '%') + + + and t.nickname like concat('%', #{params.nickname}, '%') + + + and t.status = #{params.status} + + + + + update sys_user + set is_active = '0' + where id = #{id} + + + delete from sys_leader where id = #{id} + - + - + select * from sys_user t + + ${params.orderBy} limit #{offset}, #{limit} - - - - - - + + + + + + + + - - insert into sys_role_user(roleId, userId) values - - (#{roleId}, #{userId}) - - - - insert into sys_user(username,password,phone,role_id,org_id,status,is_active) - values (#{username},#{password},#{phone},#{roleId},#{departmentId},'1','1') - - - INSERT INTO sys_role_user(userId, roleId) - SELECT id, #{roleId} - FROM sys_user - WHERE phone = #{phone} and is_active = '1' - - - insert into login_logs - (system_name, ip, address, createTime, month, is_active, userId) - values - (#{systemName}, #{ipAddress}, #{hostName}, now(), #{month}, '1', #{userId}) - + + insert into sys_role_user(roleId, userId) values + + (#{roleId}, #{userId}) + + + + insert into sys_user(username, password, phone, role_id, org_id, status, is_active) + values (#{username}, #{password}, #{phone}, #{roleId}, #{departmentId}, '1', '1') + + + INSERT INTO sys_role_user(userId, roleId) + SELECT id, #{roleId} + FROM sys_user + WHERE phone = #{phone} + and is_active = '1' + + + insert into login_logs + (system_name, ip, address, createTime, month, is_active, userId) + values (#{systemName}, #{ipAddress}, #{hostName}, now(), #{month}, '1', #{userId}) + + + insert into sys_leader(user_id, sort, is_active,operate_id) + values (#{userId}, #{sort}, '1',#{username}) + - - update sys_user t - - - username = #{username}, - - - nickname = #{nickname}, - - - headImgUrl = #{headImgUrl}, - - - phone = #{phone}, - - - telephone = #{telephone}, - - - email = #{email}, - - - birthday = #{birthday}, - - - sex = #{sex}, - - - status = #{status}, - - updateTime = #{updateTime} - - where t.id = #{id} - - - update sys_user set status = #{status} where id = #{id} - - - update sys_user - - - username = #{username}, - - - phone = #{phone}, - - - role_id = #{roleId}, - - - org_id = #{departmentId}, - - - where id = #{id} - - - UPDATE sys_role_user - SET - roleId = #{roleId} - WHERE - userId = #{id}; - - - update sys_user - - - username = #{username}, - - - phone = #{phone}, - - - role_id = #{roleId}, - - - org_id = #{departmentId}, - - - where phone = #{phone} - - - update sys_user set password = #{password} where id = #{id} - + + update sys_user t + + + username = #{username}, + + + nickname = #{nickname}, + + + headImgUrl = #{headImgUrl}, + + + phone = #{phone}, + + + telephone = #{telephone}, + + + email = #{email}, + + + birthday = #{birthday}, + + + sex = #{sex}, + + + status = #{status}, + + updateTime = #{updateTime} + + where t.id = #{id} + + + update sys_user + set status = #{status} + where id = #{id} + + + update sys_user + + + username = #{username}, + + + phone = #{phone}, + + + role_id = #{roleId}, + + + org_id = #{departmentId}, + + + where id = #{id} + + + UPDATE sys_role_user + SET roleId = #{roleId} + WHERE userId = #{id}; + + + update sys_user + + + username = #{username}, + + + phone = #{phone}, + + + role_id = #{roleId}, + + + org_id = #{departmentId}, + + + where phone = #{phone} + + + update sys_user + set password = #{password} + where id = #{id} + + + update sys_leader set sort = sort + 1 where sort >= #{sort} and sort < #{oldSort} and is_active = '1' + + + update sys_leader set sort = #{sort} where id = #{id} + + + update sys_leader set sort = sort - 1 where sort > #{oldSort} and sort <= #{sort} and is_active = '1' + + + update sys_leader set sort = sort - 1 where sort >= #{sort} and is_active = '1' + \ No newline at end of file diff --git a/src/main/resources/static/js/layuiModules/xmSelect.js b/src/main/resources/static/js/layuiModules/xmSelect.js new file mode 100644 index 0000000..c8257a9 --- /dev/null +++ b/src/main/resources/static/js/layuiModules/xmSelect.js @@ -0,0 +1,8 @@ +/*! + * @Title: xm-select + * @Version: 1.1.9 + * @Description:基于layui的多选解决方案 + * @Site: https://gitee.com/maplemei/xm-select + * @Author: maplemei + * @License:Apache License 2.0 + */!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="./",n(n.s=213)}({104:function(e,t){e.exports=function(e){var t="undefined"!=typeof window&&window.location;if(!t)throw new Error("fixUrls requires window.location");if(!e||"string"!=typeof e)return e;var n=t.protocol+"//"+t.host,o=n+t.pathname.replace(/\/[^\/]*$/,"/");return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,(function(e,t){var r,i=t.trim().replace(/^"(.*)"$/,(function(e,t){return t})).replace(/^'(.*)'$/,(function(e,t){return t}));return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(i)?e:(r=0===i.indexOf("//")?i:0===i.indexOf("/")?n+i:o+i.replace(/^\.\//,""),"url("+JSON.stringify(r)+")")}))}},213:function(e,t,n){"use strict";n.r(t),function(e){n(215),n(216),n(218);var t=n(65);window.addEventListener("click",(function(){Object.keys(t.b).forEach((function(e){var n=t.b[e];n&&n.closed&&n.closed()}))})),"object"===("undefined"==typeof exports?"undefined":_typeof(exports))?e.exports=t.c:"function"==typeof define&&n(220)?define(xmSelect):window.layui&&layui.define&&layui.define((function(e){e("xmSelect",t.c)})),window.xmSelect=t.c}.call(this,n(214)(e))},214:function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},215:function(e,t){Array.prototype.map||(Array.prototype.map=function(e,t){var n,o,r,i=Object(this),l=i.length>>>0;for(t&&(n=t),o=new Array(l),r=0;r>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(n=t),o=0;o>>0;if("function"!=typeof e)throw new TypeError;for(var o=[],r=arguments[1],i=0;i>>0,r=arguments[1],i=0;i .xm-tips {\n color: #999999;\n padding: 0 10px;\n position: absolute;\n display: flex;\n height: 100%;\n align-items: center;\n}\nxm-select > .xm-icon {\n display: inline-block;\n overflow: hidden;\n position: absolute;\n width: 0;\n height: 0;\n right: 10px;\n top: 50%;\n margin-top: -3px;\n cursor: pointer;\n border: 6px dashed transparent;\n border-top-color: #C2C2C2;\n border-top-style: solid;\n transition: all 0.3s;\n -webkit-transition: all 0.3s;\n}\nxm-select > .xm-icon-expand {\n margin-top: -9px;\n transform: rotate(180deg);\n}\nxm-select > .xm-label.single-row {\n position: absolute;\n top: 0;\n bottom: 0px;\n left: 0px;\n right: 30px;\n overflow: auto hidden;\n}\nxm-select > .xm-label.single-row .scroll {\n overflow-y: hidden;\n}\nxm-select > .xm-label.single-row .label-content {\n flex-wrap: nowrap;\n}\nxm-select > .xm-label.auto-row .label-content {\n flex-wrap: wrap;\n}\nxm-select > .xm-label.auto-row .xm-label-block > span {\n white-space: unset;\n height: 100%;\n}\nxm-select > .xm-label .scroll .label-content {\n display: flex;\n padding: 3px 30px 3px 10px;\n}\nxm-select > .xm-label .xm-label-block {\n display: flex;\n position: relative;\n padding: 0px 5px;\n margin: 2px 5px 2px 0;\n border-radius: 3px;\n align-items: baseline;\n color: #FFF;\n}\nxm-select > .xm-label .xm-label-block > span {\n display: flex;\n color: #FFF;\n white-space: nowrap;\n}\nxm-select > .xm-label .xm-label-block > i {\n color: #FFF;\n margin-left: 8px;\n font-size: 12px;\n cursor: pointer;\n display: flex;\n}\nxm-select > .xm-label .xm-label-block.disabled {\n background-color: #C2C2C2 !important;\n cursor: no-drop !important;\n}\nxm-select > .xm-label .xm-label-block.disabled > i {\n cursor: no-drop !important;\n}\nxm-select > .xm-body {\n position: absolute;\n left: 0;\n top: 42px;\n padding: 5px 0;\n z-index: 999;\n width: 100%;\n min-width: fit-content;\n border: 1px solid #E6E6E6;\n background-color: #fff;\n border-radius: 2px;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);\n animation-name: xm-upbit;\n animation-duration: 0.3s;\n animation-fill-mode: both;\n}\nxm-select > .xm-body .scroll-body {\n overflow-x: hidden;\n overflow-y: auto;\n}\nxm-select > .xm-body .scroll-body::-webkit-scrollbar {\n width: 8px;\n}\nxm-select > .xm-body .scroll-body::-webkit-scrollbar-track {\n -webkit-border-radius: 2em;\n -moz-border-radius: 2em;\n -ms-border-radius: 2em;\n border-radius: 2em;\n background-color: #FFF;\n}\nxm-select > .xm-body .scroll-body::-webkit-scrollbar-thumb {\n -webkit-border-radius: 2em;\n -moz-border-radius: 2em;\n -ms-border-radius: 2em;\n border-radius: 2em;\n background-color: #C2C2C2;\n}\nxm-select > .xm-body.up {\n top: auto;\n bottom: 42px;\n}\nxm-select > .xm-body.relative {\n position: relative;\n display: block !important;\n top: 0;\n box-shadow: none;\n border: none;\n animation-name: none;\n animation-duration: 0;\n min-width: 100%;\n}\nxm-select > .xm-body .xm-group {\n cursor: default;\n}\nxm-select > .xm-body .xm-group-item {\n display: inline-block;\n cursor: pointer;\n padding: 0 10px;\n color: #999;\n font-size: 12px;\n}\nxm-select > .xm-body .xm-option {\n display: flex;\n align-items: center;\n position: relative;\n padding: 0 10px;\n cursor: pointer;\n}\nxm-select > .xm-body .xm-option-icon {\n color: transparent;\n display: flex;\n border: 1px solid #E6E6E6;\n border-radius: 3px;\n justify-content: center;\n align-items: center;\n}\nxm-select > .xm-body .xm-option-icon.xm-icon-danx {\n border-radius: 100%;\n}\nxm-select > .xm-body .xm-option-content {\n display: flex;\n position: relative;\n padding-left: 15px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n color: #666;\n width: calc(100% - 20px);\n}\nxm-select > .xm-body .xm-option.hide-icon .xm-option-content {\n padding-left: 0;\n}\nxm-select > .xm-body .xm-option.selected.hide-icon .xm-option-content {\n color: #FFF !important;\n}\nxm-select > .xm-body .xm-option .loader {\n width: 0.8em;\n height: 0.8em;\n margin-right: 6px;\n color: #C2C2C2;\n}\nxm-select > .xm-body .xm-select-empty {\n text-align: center;\n color: #999;\n}\nxm-select > .xm-body .disabled {\n cursor: no-drop;\n}\nxm-select > .xm-body .disabled:hover {\n background-color: #FFF;\n}\nxm-select > .xm-body .disabled .xm-option-icon {\n border-color: #C2C2C2 !important;\n}\nxm-select > .xm-body .disabled .xm-option-content {\n color: #C2C2C2 !important;\n}\nxm-select > .xm-body .disabled.selected > .xm-option-icon {\n color: #C2C2C2 !important;\n}\nxm-select > .xm-body .xm-search {\n background-color: #FFF !important;\n position: relative;\n padding: 0 10px;\n margin-bottom: 5px;\n cursor: pointer;\n}\nxm-select > .xm-body .xm-search > i {\n position: absolute;\n color: #666;\n}\nxm-select > .xm-body .xm-search-input {\n border: none;\n border-bottom: 1px solid #E6E6E6;\n padding-left: 27px;\n cursor: text;\n}\nxm-select > .xm-body .xm-paging {\n padding: 0 10px;\n display: flex;\n margin-top: 5px;\n}\nxm-select > .xm-body .xm-paging > span:first-child {\n border-radius: 2px 0 0 2px;\n}\nxm-select > .xm-body .xm-paging > span:last-child {\n border-radius: 0 2px 2px 0;\n}\nxm-select > .xm-body .xm-paging > span {\n display: flex;\n flex: auto;\n justify-content: center;\n vertical-align: middle;\n margin: 0 -1px 0 0;\n background-color: #fff;\n color: #333;\n font-size: 12px;\n border: 1px solid #e2e2e2;\n flex-wrap: nowrap;\n width: 100%;\n overflow: hidden;\n min-width: 50px;\n}\nxm-select > .xm-body .xm-toolbar {\n padding: 0 10px;\n display: flex;\n margin: -3px 0;\n cursor: default;\n}\nxm-select > .xm-body .xm-toolbar .toolbar-tag {\n cursor: pointer;\n display: flex;\n margin-right: 20px;\n color: #666;\n align-items: baseline;\n}\nxm-select > .xm-body .xm-toolbar .toolbar-tag:hover {\n opacity: 0.8;\n}\nxm-select > .xm-body .xm-toolbar .toolbar-tag:active {\n opacity: 1;\n}\nxm-select > .xm-body .xm-toolbar .toolbar-tag > i {\n margin-right: 2px;\n font-size: 14px;\n}\nxm-select > .xm-body .xm-toolbar .toolbar-tag:last-child {\n margin-right: 0;\n}\nxm-select > .xm-body .xm-body-custom {\n line-height: initial;\n cursor: default;\n}\nxm-select > .xm-body .xm-body-custom * {\n box-sizing: initial;\n}\nxm-select > .xm-body .xm-tree {\n position: relative;\n}\nxm-select > .xm-body .xm-tree-icon {\n display: inline-block;\n margin-right: 3px;\n cursor: pointer;\n border: 6px dashed transparent;\n border-left-color: #C2C2C2;\n border-left-style: solid;\n transition: all 0.3s;\n -webkit-transition: all 0.3s;\n z-index: 2;\n visibility: hidden;\n}\nxm-select > .xm-body .xm-tree-icon.expand {\n margin-top: 3px;\n margin-right: 5px;\n margin-left: -2px;\n transform: rotate(90deg);\n}\nxm-select > .xm-body .xm-tree-icon.xm-visible {\n visibility: visible;\n}\nxm-select > .xm-body .xm-tree .left-line {\n position: absolute;\n left: 13px;\n width: 0;\n z-index: 1;\n border-left: 1px dotted #c0c4cc !important;\n}\nxm-select > .xm-body .xm-tree .top-line {\n position: absolute;\n left: 13px;\n height: 0;\n z-index: 1;\n border-top: 1px dotted #c0c4cc !important;\n}\nxm-select > .xm-body .xm-tree .xm-tree-icon + .top-line {\n margin-left: 1px;\n}\nxm-select > .xm-body .scroll-body > .xm-tree > .xm-option > .top-line,\nxm-select > .xm-body .scroll-body > .xm-option > .top-line {\n width: 0 !important;\n}\nxm-select > .xm-body .xm-cascader-box {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n padding: 5px 0;\n border: 1px solid #E6E6E6;\n background-color: #fff;\n border-radius: 2px;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);\n margin: -1px;\n}\nxm-select > .xm-body .xm-cascader-box::before {\n content: ' ';\n position: absolute;\n width: 0;\n height: 0;\n border: 6px solid transparent;\n border-right-color: #E6E6E6;\n top: 10px;\n left: -12px;\n}\nxm-select > .xm-body .xm-cascader-box::after {\n content: ' ';\n position: absolute;\n width: 0;\n height: 0;\n border: 6px solid transparent;\n border-right-color: #fff;\n top: 10px;\n left: -11px;\n}\nxm-select > .xm-body .xm-cascader-scroll {\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n}\nxm-select > .xm-body.cascader {\n width: unset;\n min-width: unset;\n}\nxm-select > .xm-body.cascader .xm-option-content {\n padding-left: 8px;\n}\nxm-select > .xm-body.cascader .disabled .xm-right-arrow {\n color: #C2C2C2 !important;\n}\nxm-select .xm-input {\n cursor: pointer;\n border-radius: 2px;\n border-width: 1px;\n border-style: solid;\n border-color: #E6E6E6;\n display: block;\n width: 100%;\n box-sizing: border-box;\n background-color: #FFF;\n line-height: 1.3;\n padding-left: 10px;\n outline: 0;\n user-select: text;\n -ms-user-select: text;\n -moz-user-select: text;\n -webkit-user-select: text;\n}\nxm-select .dis {\n display: none;\n}\nxm-select .loading {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(255, 255, 255, 0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n}\nxm-select .loader {\n border: 0.2em dotted currentcolor;\n border-radius: 50%;\n -webkit-animation: 1s loader linear infinite;\n animation: 1s loader linear infinite;\n display: inline-block;\n width: 1em;\n height: 1em;\n color: inherit;\n vertical-align: middle;\n pointer-events: none;\n}\nxm-select .xm-select-default {\n position: absolute;\n width: 100%;\n height: 100%;\n border: none;\n visibility: hidden;\n}\nxm-select .xm-select-disabled {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n cursor: no-drop;\n z-index: 2;\n opacity: 0.3;\n background-color: #FFF;\n}\nxm-select .item--divided {\n border-top: 1px solid #ebeef5;\n width: calc(100% - 20px);\n cursor: initial;\n}\nxm-select .xm-right-arrow {\n position: absolute;\n color: #666;\n right: 5px;\n top: -1px;\n font-weight: 700;\n transform: scale(0.6, 1);\n}\nxm-select .xm-right-arrow::after {\n content: '>';\n}\nxm-select[size='large'] {\n min-height: 40px;\n line-height: 40px;\n}\nxm-select[size='large'] .xm-input {\n height: 40px;\n}\nxm-select[size='large'] .xm-label .scroll .label-content {\n line-height: 34px;\n}\nxm-select[size='large'] .xm-label .xm-label-block {\n height: 30px;\n line-height: 30px;\n}\nxm-select[size='large'] .xm-body .xm-option .xm-option-icon {\n height: 20px;\n width: 20px;\n font-size: 20px;\n}\nxm-select[size='large'] .xm-paging > span {\n height: 34px;\n line-height: 34px;\n}\nxm-select[size='large'] .xm-tree .left-line {\n height: 100%;\n bottom: 20px;\n}\nxm-select[size='large'] .xm-tree .left-line-group {\n height: calc(100% - 40px);\n}\nxm-select[size='large'] .xm-tree .xm-tree-icon.xm-hidden + .top-line {\n top: 19px;\n}\nxm-select[size='large'] .item--divided {\n margin: 10px;\n}\nxm-select {\n min-height: 36px;\n line-height: 36px;\n}\nxm-select .xm-input {\n height: 36px;\n}\nxm-select .xm-label .scroll .label-content {\n line-height: 30px;\n}\nxm-select .xm-label .xm-label-block {\n height: 26px;\n line-height: 26px;\n}\nxm-select .xm-body .xm-option .xm-option-icon {\n height: 18px;\n width: 18px;\n font-size: 18px;\n}\nxm-select .xm-paging > span {\n height: 30px;\n line-height: 30px;\n}\nxm-select .xm-tree .left-line {\n height: 100%;\n bottom: 18px;\n}\nxm-select .xm-tree .left-line-group {\n height: calc(100% - 36px);\n}\nxm-select .xm-tree .xm-tree-icon.xm-hidden + .top-line {\n top: 17px;\n}\nxm-select .item--divided {\n margin: 9px;\n}\nxm-select[size='small'] {\n min-height: 32px;\n line-height: 32px;\n}\nxm-select[size='small'] .xm-input {\n height: 32px;\n}\nxm-select[size='small'] .xm-label .scroll .label-content {\n line-height: 26px;\n}\nxm-select[size='small'] .xm-label .xm-label-block {\n height: 22px;\n line-height: 22px;\n}\nxm-select[size='small'] .xm-body .xm-option .xm-option-icon {\n height: 16px;\n width: 16px;\n font-size: 16px;\n}\nxm-select[size='small'] .xm-paging > span {\n height: 26px;\n line-height: 26px;\n}\nxm-select[size='small'] .xm-tree .left-line {\n height: 100%;\n bottom: 16px;\n}\nxm-select[size='small'] .xm-tree .left-line-group {\n height: calc(100% - 32px);\n}\nxm-select[size='small'] .xm-tree .xm-tree-icon.xm-hidden + .top-line {\n top: 15px;\n}\nxm-select[size='small'] .item--divided {\n margin: 8px;\n}\nxm-select[size='mini'] {\n min-height: 28px;\n line-height: 28px;\n}\nxm-select[size='mini'] .xm-input {\n height: 28px;\n}\nxm-select[size='mini'] .xm-label .scroll .label-content {\n line-height: 22px;\n}\nxm-select[size='mini'] .xm-label .xm-label-block {\n height: 18px;\n line-height: 18px;\n}\nxm-select[size='mini'] .xm-body .xm-option .xm-option-icon {\n height: 14px;\n width: 14px;\n font-size: 14px;\n}\nxm-select[size='mini'] .xm-paging > span {\n height: 22px;\n line-height: 22px;\n}\nxm-select[size='mini'] .xm-tree .left-line {\n height: 100%;\n bottom: 14px;\n}\nxm-select[size='mini'] .xm-tree .left-line-group {\n height: calc(100% - 28px);\n}\nxm-select[size='mini'] .xm-tree .xm-tree-icon.xm-hidden + .top-line {\n top: 13px;\n}\nxm-select[size='mini'] .item--divided {\n margin: 7px;\n}\n.layui-form-pane xm-select {\n margin: -1px -1px -1px 0;\n}\n",""])},218:function(e,t,n){var o=n(219);"string"==typeof o&&(o=[[e.i,o,""]]);var r={hmr:!0,transform:void 0,insertInto:void 0};n(27)(o,r);o.locals&&(e.exports=o.locals)},219:function(e,t,n){(e.exports=n(26)(!1)).push([e.i,'@font-face {\n font-family: "xm-iconfont";\n src: url(\'//at.alicdn.com/t/font_792691_ptvyboo0bno.eot?t=1574048839056\');\n /* IE9 */\n src: url(\'//at.alicdn.com/t/font_792691_ptvyboo0bno.eot?t=1574048839056#iefix\') format(\'embedded-opentype\'), /* IE6-IE8 */ url(\'data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAksAAsAAAAAEYAAAAjeAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCEUgqTXI8lATYCJAM0CxwABCAFhG0HgTwbZQ4jEbaCkVIj+4sD3sS6BFAp9ka91ulVG4leTC/+h+3V+zyRYCTyREKkcZ+D5/u137lPdveLGJBMunoiNPOQPBMq0/FQtEKIkMRDZng69d+hOiQumAr7bJdBOEzMTU77s78mhbI58aCg7ebCs4LBTgCk+cD/4ZqWUHebipp7al3tyKOjwCV/hVyw9PdzaktxI7IMQs26/1N8gV4DI0bVut3UhCaflGGgwM3oTXg1IfRMbCsmrEnriJVeYM2eXHII4KdMMzL4OoACHgZBCTasITcReDUBE8kWPLMTCGoQaDV+eKpUPQI49r8vP6BTPIDCaiBSml3oOQX0voNPebv/u2P0AUfP1w0s5EADzYBZsNdByylo2eVq/NtRdgFpovQR5x2CIwmIZeik6/u0T/m/A7RJP00sCmmyksj/kwc+LC5BFBqDEMDDjwPiANDB9MpJTXwHmsO3YyBwWDA4OFwwJLRcRgAOBUYMDg0mHRwGTAYozsV0AgWYruDwwExDHfzwKWf4OurQ9jzQDtoF+wpistfBfluQ5bQiiJa4ZQoKhShLiMayBbyg05AIkYBoIBJEEApQy/FwYv4HchADIUBXl61dW6mpwIgyp7p8PrHddieSjhY9oqTxyPB/FGNYDklpfYh8VtaoqSgb0bKoGB17CuVUp9Ll2nS2UpNGMSw9hyirA7C6+QLyByIQS0sSSmxvArC5odZmYZMxZSiBR5OkQl0uiufxMH5eL8t3u0d4XKyuq6EMdcpNe2+oXA8p9yPa+4T1PM7+A54tc7tpl2vcAHAftnhZj2chy1CyaCRFsyMqQ5nkNnskEt2yxxZinPsOZjFm4+XWvKqLkfCGS1k4MNP82isxSMf7ZsGYvQVCNAeSSVtzWCxRdXGxyZlA2CvCEevuO7y9M2z2NWH8icydzq/qAJSp1lGvDWFp6Nw3xChJowPD+76nU+upQk6Kw9jI0Rgym9Ct8VlxMI3CSIaDCZja5tDYt0/EYra4tn0Kp3v8Rdezk8svcy1mKhoSvNcZz3LKlUe777Gmval0s7bzAc0k13LGk896V9DuvNn34N0ebKgItkQgOomuJtgQPChNI4cwa7CEWCvfk5QjJFlem6i3SfVShWi5LTFRG+JwdCNpSqbpRFwrtb1TbcRkJi/AbJJQOmfCdnswLNGVM7qqSRO1zO0Q0j5Vr3cYQ07HB0MX6KoIZhx+D9Djs2C5bXtVwvbgJHtSCIL7hjFJme4sZDdS5IlJdKUO1Qt8opn0trBafz3AX933kmCRgyMEWGZjMAkRKhwmIHJGR4ruwFCdWKYzrap2R/mvd2UKajzRAZu88pGAD90Y+02kTFCKrBSXwGGJ3wRcPCdIppTxSmHOfESRwIli0S5J/8AYDCxTGh4XZua4xvfvGx320rDK2qA8g5FlS7pWNLx71+BwgA/KZ5I0aeKmNeCNoNPl8qNHu8uHHzqaKc86fHi4vPuRI4ny+I/vjxw+clh4HXVCFvVnVFx07EHZwVhSRliTTMWSEi0h6YuS6DxCRmiin0B3L4ry6cvR0ijYexFdBL3wGQM0YOrUAZCBkLOBBtQ+xdk7omfgUv+u++admyUeXduyxLM+r/+49rPfhgEZor6GymToNYksNsZyC7ntwAH0928UpgMpxpF0ydNlsMMBw7QsxTCmu0Hf3F+/+vb99Yumhb+e9R0LBNm+4O+hu7lQ5bGjI9j5G88qQ5SLFyuEC7cwd25xoYo2j4eA4bhpM7TZhPtmc+uhVEVSMYXLWh0bfjI8dvUpvDUocPZmU4kwwOfc83wB5wPehrpD3waApbwW+fgRrZXcxw+mB/3woZT+8JFMYwRMIy2k/18qhqcKpjYeYSnIACaUoRDu0e3kQFh98R5fiI8oJqwwGZSJDSbehLzZs7zIeWTQ4UGOIs2c4j2/Q/tn7n7j9juO33On6WhURCT/wO6Y3QdmWFY0Ef6JUeGRggO7ZbtaZlh5RYKWXbLPBLc3l/5h4A0mu3ZXTZ+u6t6VHMAzZhxak50T+24NnRuaOmehRkXlqVR5lIpuwezUUDUdCuJysv8Z/0/8uNE1s7jIJIubFWnI/x7g4nAZx79yYpFoAOU3a9iwT1O/GxUxPY0ljVPv9EukI3qNrl/So2YfzasqHCroNjS0+w0tlPlsYfC6v/01ixquizJH1Kd/VK+OS3iS3rTJWmqsMPdU3B3oFyC9RSumWE/0gG36IjTysfH51IJ/5oOgNYu6p4yb5Fdufhr/Kjtu0oSyYP/WJQrz35aNFnMhtFcwb55NlNnH8Wdu1b+XZA9zqlZrhdPo/V3uBhiUlQ66h0LhbAmFYIncdFOpVMh6Fl7peqy5Z2ZdQBITO2x1Asj1dRFjIBMC3hbuUh8Ooc4W03EjAdo8UL/t0oUfyU8630bmMcw/vqDNAsC9BQD4OqCgH+ljy0UhJB8AAJA+8EmArxk5gnRLik90AElf8rBm+IMvBTWnucb3+0o0ARk+r0ZBv8sU01nnSmP45/H8Dp8C8X+iE9e+ZvXymK/sQJ5/DuqhYKebPnKmPqLYuDcIMWS2/Rjxp2s8Do821LVn6A/xMK1RKvBLK5gyDsZ5uQ6bYusmx2yqLFe4lECHDPcFhojmckuAbnCI6Cn308RI6AAJdtCICQLQyBHKhSgX5YowN6BBPIEB8VxuSfNncpAuutzPnCSiDHDEo+DsKQBPoJi4MpRktepIs2zjO5h84IEMM3ffECKSZU1ZHxfewEI4h494MuuUNNOBjuw18QKHAzEXaAcylS3m3baq9MpnKenYmfEUgCdbXTHEtTVKsvruNGv9/DuYfOAhcuKu9TeEiA9nNJTUDOUbbVkn3sv2eDJrEnVrpvcHOjJeqRsOcpYYLuxoBzKVtCOm3ZaKbtJcurw+e/zN6c7Pd6r4gqUo0WLEiiOueOITvwQkKCEJM9nO3F60y5HkqLhdqUyXZtK3lqwReQ+G40O92UhOt0x/KmKM+u7LTPMzoEBOCYtiUPfSjODiuFXjSDm2idzAoc4Tj9bs2eJYDOU7HQA=\') format(\'woff2\'), url(\'//at.alicdn.com/t/font_792691_ptvyboo0bno.woff?t=1574048839056\') format(\'woff\'), url(\'//at.alicdn.com/t/font_792691_ptvyboo0bno.ttf?t=1574048839056\') format(\'truetype\'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ url(\'//at.alicdn.com/t/font_792691_ptvyboo0bno.svg?t=1574048839056#iconfont\') format(\'svg\');\n /* iOS 4.1- */\n}\n.xm-iconfont {\n font-family: "xm-iconfont" !important;\n font-size: 16px;\n font-style: normal;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.xm-icon-quanxuan:before {\n content: "\\e62c";\n}\n.xm-icon-caidan:before {\n content: "\\e610";\n}\n.xm-icon-fanxuan:before {\n content: "\\e837";\n}\n.xm-icon-pifu:before {\n content: "\\e668";\n}\n.xm-icon-qingkong:before {\n content: "\\e63e";\n}\n.xm-icon-sousuo:before {\n content: "\\e600";\n}\n.xm-icon-danx:before {\n content: "\\e62b";\n}\n.xm-icon-duox:before {\n content: "\\e613";\n}\n.xm-icon-close:before {\n content: "\\e601";\n}\n.xm-icon-expand:before {\n content: "\\e641";\n}\n.xm-icon-banxuan:before {\n content: "\\e60d";\n}\n',""])},220:function(e,t){(function(t){e.exports=t}).call(this,{})},26:function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",o=e[3];if(!o)return n;if(t&&"function"==typeof btoa){var r=function(e){var t=btoa(unescape(encodeURIComponent(JSON.stringify(e)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(t);return"/*# ".concat(n," */")}(o),i=o.sources.map((function(e){return"/*# sourceURL=".concat(o.sourceRoot).concat(e," */")}));return[n].concat(i).concat([r]).join("\n")}return[n].join("\n")}(t,e);return t[2]?"@media ".concat(t[2],"{").concat(n,"}"):n})).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var o={},r=0;r=0&&p.splice(t,1)}function x(e){var t=document.createElement("style");if(void 0===e.attrs.type&&(e.attrs.type="text/css"),void 0===e.attrs.nonce){var o=function(){0;return n.nc}();o&&(e.attrs.nonce=o)}return y(t,e.attrs),m(e,t),t}function y(e,t){Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])}))}function v(e,t){var n,o,r,i;if(t.transform&&e.css){if(!(i="function"==typeof t.transform?t.transform(e.css):t.transform.default(e.css)))return function(){};e.css=i}if(t.singleton){var l=u++;n=c||(c=x(t)),o=w.bind(null,n,l,!1),r=w.bind(null,n,l,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",y(t,e.attrs),m(e,t),t}(t),o=C.bind(null,n,t),r=function(){b(n),n.href&&URL.revokeObjectURL(n.href)}):(n=x(t),o=k.bind(null,n),r=function(){b(n)});return o(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;o(e=t)}else r()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=l()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=h(e,t);return f(n,t),function(e){for(var o=[],r=0;r3)for(n=[n],o=3;or?n-r:r,l=this.labelRef.scrollLeft+e.deltaY;l<0&&(l=0),l>i&&(l=i),this.labelRef.scrollLeft=l}}},{key:"componentDidMount",value:function(){this.labelRef.addEventListener&&this.labelRef.addEventListener("DOMMouseScroll",this.scrollFunc.bind(this),!1),this.labelRef.attachEvent&&this.labelRef.attachEvent("onmousewheel",this.scrollFunc.bind(this)),this.labelRef.onmousewheel=this.scrollFunc.bind(this)}},{key:"render",value:function(e){var t=this,n=e.data,o=e.prop,r=e.theme,i=e.model,l=e.sels,a=e.autoRow,s=e.tree,c=o.name,p=o.disabled,d=i.label,h=d.type,m=d[h],b=l;s.show&&s.strict&&s.simple&&f(n,l,b=[],o);var x="",y=!0,v=b.map((function(e){return e[c]})).join(",");if("text"===h)x=b.map((function(e){return"".concat(m.left).concat(e[c]).concat(m.right)})).join(m.separator);else if("block"===h){y=!1;var g=Y(b),_={backgroundColor:r.color},w=m.showCount<=0?g.length:m.showCount;x=g.splice(0,w).map((function(e){var n={width:m.showIcon?"calc(100% - 20px)":"100%"};return O("div",{class:["xm-label-block",e[p]?"disabled":""].join(" "),style:_},m.template&&u(m.template)?O("span",{style:n,dangerouslySetInnerHTML:{__html:m.template(e,g)}}):O("span",{style:n},e[c]),m.showIcon&&O("i",{class:"xm-iconfont xm-icon-close",onClick:t.iconClick.bind(t,e,!0,e[p])}))})),g.length&&x.push(O("div",{class:"xm-label-block",style:_},"+ ",g.length))}else x=b.length&&m&&m.template?m.template(n,b):b.map((function(e){return e[c]})).join(",");return O("div",{class:["xm-label",a?"auto-row":"single-row"].join(" ")},O("div",{class:"scroll",ref:function(e){return t.labelRef=e}},y?O("div",{class:"label-content",dangerouslySetInnerHTML:{__html:x}}):O("div",{class:"label-content",title:v},x)))}}])&&Z(n.prototype,o),r&&Z(n,r),t}(E);function X(e){return(X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function ee(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function te(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:this.size;var e=this.state.pageIndex;e<=1||(this.changePageIndex(e-1),this.props.pageRemote&&this.postData(e-1,!0))}},{key:"pageNextClick",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.size,t=this.state.pageIndex;t>=e||(this.changePageIndex(t+1),this.props.pageRemote&&this.postData(t+1,!0))}},{key:"changePageIndex",value:function(e){this.setState({pageIndex:e})}},{key:"searchInput",value:function(e){var t=this,n=e.target.value;n!==this.__value&&(clearTimeout(this.searchCid),this.inputOver&&(this.__value=n,this.searchCid=setTimeout((function(){t.callback=!0,t.setState({filterValue:t.__value,remote:!0,pageIndex:1})}),this.props.delay)))}},{key:"focus",value:function(){this.searchInputRef&&this.searchInputRef.focus()}},{key:"blur",value:function(){this.searchInputRef&&this.searchInputRef.blur()}},{key:"handleComposition",value:function(e){var t=e.type;"compositionstart"===t?(this.inputOver=!1,clearTimeout(this.searchCid)):"compositionend"===t&&(this.inputOver=!0,this.searchInput(e))}},{key:"postData",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.state.pageIndex,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(this.state.remote||n)&&(this.callback=!1,this.setState({loading:!0,remote:!1}),this.blur(),this.props.remoteMethod(this.state.filterValue,(function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;setTimeout((function(){e.focus(),e.callback=!0,e.setState({loading:!1,totalSize:n}),e.props.onReset(t,"data")}),10)}),this.props.show,t))}},{key:"keydown",value:function(e,t){var n=this,o=t.keyCode;"div"===e&&(27===o||9===o?this.props.onReset(!1,"close"):37===o?this.pagePrevClick():39===o&&this.pageNextClick());var r=this.props.prop,i=r.value,l=r.optgroup,a=r.disabled,s=this.tempData.filter((function(e){return!e[l]&&!e[a]})),c=s.length-1;if(-1!==c){var u=s.findIndex((function(e){return e[i]===n.state.val}));if(38===o){u<=0?u=c:u>0&&(u-=1);var p=s[u][i];this.setState({val:p})}else if(40===o){-1===u||u===c?u=0:uM&&(T=M),M>0&&T<=0&&(T=1),!v){var z=(T-1)*e.pageSize,L=z+e.pageSize;j=j.slice(z,L)}var V={cursor:"no-drop",color:"#d2d2d2"},F={},U={};T<=1&&(F=V),T==M&&(U=V),this.state.pageIndex!==T&&this.changePageIndex(T),this.size=M,D=O("div",{class:"xm-paging"},O("span",{style:F,onClick:this.pagePrevClick.bind(this,M)},"上一页"),O("span",null,this.state.pageIndex," / ",M),O("span",{style:U,onClick:this.pageNextClick.bind(this,M)},"下一页"))}else e.showCount>0&&(j=j.slice(0,e.showCount));var B,N=[],H={__tmp:!0};H[S]=!0,j.forEach((function(e){var t=I[e[w]];B&&!t&&(t=H),t!=B&&(B=t,t&&N.push(B)),N.push(e)})),j=N,t&&(t=y(this.state.filterValue,p([],j)))&&j.splice(0,0,function(e){for(var t=1;t0?l.length>=g?l:d(r.slice(0,g-l.length),l,i):d(r,c,i),n.props.onReset(a,"sels")}}:"CLEAR"===t?{icon:"xm-iconfont xm-icon-qingkong",name:r,method:function(e){n.props.onReset(c.filter((function(e){return e[i.disabled]})),"sels")}}:"REVERSE"===t?{icon:"xm-iconfont xm-icon-fanxuan",name:r,method:function(e){var t=i.optgroup,o=i.disabled,r=e.filter((function(e){return!e[t]})).filter((function(e){return!e[o]})),l=[];c.forEach((function(e){var t=r.findIndex((function(t){return t[w]===e[w]}));-1==t?l.push(e):r.splice(t,1)}));var a=l.filter((function(e){return e[i.disabled]})),u=[];u=s?a.length?a:r.slice(0,1):g>0?a.length>=g?a:d(r.slice(0,g-a.length),a,i):d(r,l,i),n.props.onReset(u,"sels")}}:t;var l=function(e){"mouseenter"===e.type&&(e.target.style.color=a.color),"mouseleave"===e.type&&(e.target.style.color="")};return O("div",{class:"toolbar-tag",style:{},onClick:function(){u(o.method)&&o.method(K),n.focus()},onMouseEnter:l,onMouseLeave:l},e.toolbar.showIcon&&O("i",{class:o.icon}),O("span",null,o.name))})).filter((function(e){return e}))),Y="hidden"!=e.model.icon;return(j=j.map((function(e){return e[S]?e.__tmp?O("div",{class:"item--divided"}):O("div",{class:"xm-group"},O("div",{class:"xm-group-item",onClick:n.groupClick.bind(n,e)},e[_])):function(e){var t=!!c.find((function(t){return t[w]==e[w]})),r=t?{color:a.color,border:"none"}:{borderColor:a.color},i={};e[w]===n.state.val&&(i.backgroundColor=a.hover),!Y&&t&&(i.backgroundColor=a.color,e[k]&&(i.backgroundColor="#C2C2C2"));var u=["xm-option",e[k]?" disabled":"",t?" selected":"",Y?"show-icon":"hide-icon"].join(" "),p=["xm-option-icon xm-iconfont",s?"xm-icon-danx":"xm-icon-duox"].join(" "),d=function(t){"mouseenter"===t.type&&(e[k]||n.setState({val:e[w]}))};return O("div",{class:u,style:i,value:e[w],onClick:n.optionClick.bind(n,e,t,e[k]),onMouseEnter:d,onMouseLeave:d},Y&&O("i",{class:p,style:r}),O("div",{class:"xm-option-content",dangerouslySetInnerHTML:{__html:l({data:o,item:e,arr:c,name:e[_],value:e[w]})}}))}(e)}))).length||(!e.pageEmptyShow&&(D=""),j.push(O("div",{class:"xm-select-empty"},f))),O("div",{onClick:this.blockClick,tabindex:"1",style:"outline: none;"},O("div",null,e.toolbar.show&&q,P,O("div",{class:"scroll-body",style:{maxHeight:e.height}},j),e.paging&&D),this.state.loading&&O("div",{class:"loading"},O("span",{class:"loader"})))}},{key:"componentDidMount",value:function(){var e=this.base.querySelector(".xm-search-input");e&&(e.addEventListener("compositionstart",this.handleComposition.bind(this)),e.addEventListener("compositionupdate",this.handleComposition.bind(this)),e.addEventListener("compositionend",this.handleComposition.bind(this)),e.addEventListener("input",this.searchInput.bind(this)),this.searchInputRef=e),this.base.addEventListener("keydown",this.keydown.bind(this,"div"))}},{key:"componentDidUpdate",value:function(){if(this.callback){this.callback=!1;var e=this.props.filterDone;u(e)&&e(this.state.filterValue,this.tempData||[])}}}])&&te(n.prototype,o),r&&te(n,r),t}(E);function ae(e){return(ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function se(e,t){for(var n=0;n0||f.lazy&&!1!==e.__node.loading)?"xm-visible":"xm-hidden"].join(" "),k=[];f.showFolderIcon&&(k.push(O("i",{class:_})),f.showLine&&(o&&k.push(O("i",{class:"left-line",style:{left:t-f.indent+3+"px"}})),k.push(O("i",{class:"top-line",style:{left:t-f.indent+3+"px",width:f.indent+(0===o?10:-2)+"px"}}))));var C=function(t){"mouseenter"===t.type&&(e[v]||n.setState({val:e[y]}))};return O("div",{class:m,style:h,value:e[y],onClick:n.optionClick.bind(n,e,r,e[v],"line"),onMouseEnter:C,onMouseLeave:C},k,e.__node.loading&&O("span",{class:"loader"}),w&&O("i",{class:b,style:d,onClick:n.optionClick.bind(n,e,r,e[v],"checkbox")}),O("div",{class:"xm-option-content",dangerouslySetInnerHTML:{__html:s({data:c,item:e,arr:i,name:e[x],value:e[y]})}}))};h&&(m?this.postData():this.filterData(c,this.state.filterValue));var C=p([],c),S=p([],i);this.tempData=C;var j=c.map((function(e){return function e(t,o){if(!t.__node.hidn){var r=t[g];if(o+=f.indent,r){var i=-1!==n.state.expandedKeys.findIndex((function(e){return t[y]===e}));return 0===r.length&&(i=!1),O("div",{class:"xm-tree"},f.showFolderIcon&&f.showLine&&i&&r.length>0&&O("i",{class:"left-line left-line-group",style:{left:o+3+"px"}}),k(t,o,0===r.length&&(!f.lazy||f.lazy&&!1===t.__node.loading)?0:i),i&&O("div",{class:"xm-tree-box"},r.map((function(t){return e(t,o)}))))}return k(t,o,0)}}(e,10-f.indent)})).filter((function(e){return e}));function E(e,t){t.forEach((function(t){return t[_]?(!f.strict&&e.push(t),E(e,t[g])):e.push(t)}))}var A=O("div",{class:"xm-toolbar"},e.toolbar.list.map((function(t){var r,s=e.languageProp.toolbar[t];r="ALL"===t?{icon:"xm-iconfont xm-icon-quanxuan",name:s,method:function(e){var t=[];E(t,e),t=t.filter((function(e){return!e[v]})),n.props.onReset(a?t.slice(0,1):d(t,i,o),"treeData")}}:"CLEAR"===t?{icon:"xm-iconfont xm-icon-qingkong",name:s,method:function(e){n.props.onReset(i.filter((function(e){return e[o.disabled]})),"treeData")}}:"REVERSE"===t?{icon:"xm-iconfont xm-icon-fanxuan",name:s,method:function(e){var t=[];E(t,e),t=t.filter((function(e){return!e[v]}));var r=[];i.forEach((function(e){var n=t.findIndex((function(t){return t[y]===e[y]}));-1==n?r.push(e):t.splice(n,1)})),n.props.onReset(a?r.slice(0,1):d(t,r,o),"treeData")}}:t;var c=function(e){"mouseenter"===e.type&&(e.target.style.color=l.color),"mouseleave"===e.type&&(e.target.style.color="")};return O("div",{class:"toolbar-tag",onClick:function(){u(r.method)&&r.method(C,S)},onMouseEnter:c,onMouseLeave:c},e.toolbar.showIcon&&O("i",{class:r.icon}),O("span",null,r.name))})).filter((function(e){return e}))),R=O("div",{class:h?"xm-search":"xm-search dis"},O("i",{class:"xm-iconfont xm-icon-sousuo"}),O("input",{class:"xm-input xm-search-input",placeholder:b}));return j.length||j.push(O("div",{class:"xm-select-empty"},r)),O("div",{onClick:this.blockClick,class:"xm-body-tree"},e.toolbar.show&&A,R,O("div",{class:"scroll-body",style:{maxHeight:e.height}},j),this.state.loading&&O("div",{class:"loading"},O("span",{class:"loader"})))}},{key:"componentDidMount",value:function(){var e=this.base.querySelector(".xm-search-input");e&&(e.addEventListener("compositionstart",this.handleComposition.bind(this)),e.addEventListener("compositionupdate",this.handleComposition.bind(this)),e.addEventListener("compositionend",this.handleComposition.bind(this)),e.addEventListener("input",this.searchInput.bind(this)),this.searchInputRef=e)}},{key:"componentDidUpdate",value:function(){if(this.callback){this.callback=!1;var e=this.props.filterDone;u(e)&&e(this.state.filterValue,this.tempData||[])}}}])&&he(n.prototype,o),r&&he(n,r),t}(E);function ge(e){return(ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _e(e,t){for(var n=0;n1&&(n=n.slice(0,1)),this.setState({sels:n,dataObj:a,flatData:s})}return this.setState({data:o}),n}},{key:"exchangeValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state.dataObj,o=e.map((function(e){return"object"===Re(e)?Ee({},e,{__node:{}}):n[e]})).filter((function(e){return e})),r=!0,i=this.props.tree;return i.show&&!1===i.strict&&(r=!1),r&&(o=o.filter((function(e){return!0!==e[t.props.prop.optgroup]}))),o}},{key:"value",value:function(e,t,n){!1!==t&&!0!==t&&(t=this.state.show);var o=this.props,r=o.prop,i=o.tree,l=this.exchangeValue(e);if(i.show&&i.strict){var a=this.state.data;this.clearAndReset(a,l),l=this.init({data:a,prop:r},!0)}this.resetSelectValue(l,l,!0,n),this.setState({show:t})}},{key:"clearAndReset",value:function(e,t){var n=this,o=this.props.prop,r=o.selected,i=o.children,l=o.value;e.forEach((function(e){e[r]=-1!=t.findIndex((function(t){return t[l]===e[l]}));var o=e[i];o&&c(o)&&n.clearAndReset(o,t)}))}},{key:"load",value:function(e,t,n,o){var r=this,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,l=this.props,a=l.prop,s=l.tree,u=a.children,p=a.optgroup,d=a.value,f=a.selected,h=a.disabled;e.forEach((function(e){e.__node={parent:o,level:i,loading:e.__node&&e.__node.loading},t[e[d]]=e,n.push(e);var l=e[u];if(l&&c(l)){var a=l.length;if(a>0){r.load(l,t,n,e,i+1),e[p]=!0,s.strict&&(!0===e[f]&&(delete e[f],l.forEach((function(e){return e[f]=!0}))),!0===e[h]&&(delete e[h],l.forEach((function(e){return e[h]=!0}))));var m=l.filter((function(e){return!0===e[f]||!0===e.__node.selected})).length;e.__node.selected=m===a,e.__node.half=m>0&&m0,e.__node.disabled=l.filter((function(e){return!0===e[h]||!0===e.__node.disabled})).length===a}}}))}},{key:"resetSelectValue",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=this.props.on;if(u(r)&&this.prepare&&o){var i=r({arr:e,change:t,isAdd:n});if(c(i))return this.value(i,null,!1)}this.setState({sels:e})}},{key:"updateBorderColor",value:function(e){this.setState({tmpColor:e})}},{key:"treeHandler",value:function(e,t,n,o){var r=this,i=this.props.prop,l=i.value,a=(i.selected,i.disabled),s=i.children,c=i.optgroup,u=t[s];u.filter((function(e){return!(e[a]||e.__node.disabled)})).forEach((function(t){if(t[c])r.treeHandler(e,t,n,o);else{var i=e.findIndex((function(e){return e[l]==t[l]}));"del"===o?-1!=i&&(e.splice(i,1),n.push(t)):"half"!==o&&"add"!==o||-1==i&&(e.push(t),n.push(t))}}));var p=u.length,d=u.filter((function(t){return-1!==e.findIndex((function(e){return e[l]===t[l]}))||!0===t.__node.selected})).length;t.__node.selected=d===p,t.__node.half=d>0&&d0&&h.length>=g)return this.updateBorderColor(i.maxColor),void(d&&u(d)&&d(h,e));h=a?[e]:[].concat(Se(h),[e]),this.resetSelectValue(h,[e],!t)}else{var _=h.findIndex((function(t){return t[m]==e[m]}));-1!=_&&(h.splice(_,1),this.resetSelectValue(h,[e],!t))}var w,k=e.__node.parent;if(k){for(;k;){var C=k[b],O=C.length,S=C.filter((function(e){return-1!==h.findIndex((function(t){return t[m]===e[m]}))||!0===e.__node.selected})).length;k.__node.selected=S===O,k.__node.half=S>0&&S0,k=k.__node.parent}this.setState({data:this.state.data})}c&&!o&&this.onClick()}}},{key:"onClick",value:function(e){var t=this;if("relative"!==this.props.model.type)if(this.props.disabled)!1!==this.state.show&&this.setState({show:!1});else{var n=!this.state.show;if(n){if(this.props.show&&0==this.props.show())return;Object.keys(He).filter((function(e){return e!=t.props.el})).forEach((function(e){return He[e].closed()}))}else{if(this.props.hide&&0==this.props.hide())return;this.bodyView.scroll&&this.bodyView.scroll(0,0)}this.setState({show:n}),e&&e.stopPropagation()}}},{key:"onReset",value:function(e,t){var n=this;if("data"===t){var o=e.filter((function(e){return!0===e[n.props.prop.selected]}));this.resetSelectValue(d(o,this.state.sels,this.props.prop),o,!0);var r=[];this.load(e,{},r),this.setState({data:e,flatData:r})}else"sels"===t?this.resetSelectValue(e,e,!0):"append"===t?this.append(e):"delete"===t?this.del(e):"auto"===t?this.auto(e):"treeData"===t?this.value(e,null,!0):"close"===t?this.onClick():"class"===t&&this.setState({bodyClass:e})}},{key:"append",value:function(e){var t=this.exchangeValue(e);this.resetSelectValue(d(t,this.state.sels,this.props.prop),t,!0)}},{key:"del",value:function(e){var t=this.props.prop.value,n=this.state.sels;(e=this.exchangeValue(e)).forEach((function(e){var o=n.findIndex((function(n){return n[t]===e[t]}));-1!=o&&n.splice(o,1)})),this.resetSelectValue(n,e,!1)}},{key:"auto",value:function(e){var t=this,n=this.props.prop.value;e.filter((function(e){return-1!=t.state.sels.findIndex((function(t){return t[n]===e[n]}))})).length==e.length?this.del(e):this.append(e)}},{key:"componentWillReceiveProps",value:function(e){this.init(e,e.updateData)}},{key:"componentWillMount",value:function(){this.init(this.props,!0)}},{key:"render",value:function(e,t){var n=this,o=e.theme,r=e.prop,i=(e.radio,e.repeat,e.clickClose,e.on,e.max,e.maxMethod,e.content),l=e.disabled,a=e.tree,s={borderColor:o.color},c=t.data,u=t.dataObj,p=t.flatData,d=t.sels,f=t.show,h=t.tmpColor,m=t.bodyClass;l&&(f=!1);var b={style:Ee({},e.style,{},f?s:{}),onClick:this.onClick.bind(this),ua:-1!=navigator.userAgent.indexOf("Mac OS")?"mac":"win",size:e.size,tabindex:1};h&&(b.style.borderColor=h,setTimeout((function(){b.style.borderColor="",n.updateBorderColor("")}),300)),r.value;var x=Ee({},e,{data:c,sels:d,ck:this.itemClick.bind(this),title:d.map((function(e){return e[r.name]})).join(",")}),y=Ee({},e,{data:c,dataObj:u,flatData:p,sels:d,ck:this.itemClick.bind(this),show:f,onReset:this.onReset.bind(this)}),v=i?O(de,y):a.show?O(ve,y):e.cascader.show?O(Oe,y):O(le,y);return O("xm-select",b,O("input",{class:"xm-select-default","lay-verify":e.layVerify,"lay-verType":e.layVerType,name:e.name,value:d.map((function(e){return e[r.value]})).join(",")}),O("i",{class:f?"xm-icon xm-icon-expand":"xm-icon"}),0===d.length&&O("div",{class:"xm-tips"},e.tips),O(G,x),O("div",{class:["xm-body",m,e.model.type,f?"":"dis"].join(" "),ref:function(e){return n.bodyView=e}},v),l&&O("div",{class:"xm-select-disabled"}))}},{key:"componentDidMount",value:function(){var e=this;this.prepare=!0,this.base.addEventListener("keydown",(function(t){13===t.keyCode&&e.onClick()})),this.input=this.base.querySelector(".xm-select-default");var t=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;t&&new t((function(t){t.forEach((function(t){"attributes"==t.type&&"class"===t.attributeName&&-1!==e.input.className.indexOf("layui-form-danger")&&(e.input.className="xm-select-default",e.base.style.borderColor=e.props.theme.maxColor)}))})).observe(this.input,{attributes:!0});for(var n=this.base;n;){if("FORM"===n.tagName){var o=n.querySelector('button[type="reset"]');o&&o.addEventListener("click",(function(t){e.init(e.props,!0)}));break}n=n.parentElement}}},{key:"componentDidUpdate",value:function(){var e=this.props,t=e.direction;if("relative"!==e.model.type){var n=this.base.getBoundingClientRect();if("auto"===t){this.bodyView.style.display="block",this.bodyView.style.visibility="hidden";var o=this.bodyView.getBoundingClientRect().height;this.bodyView.style.display="",this.bodyView.style.visibility="";var r=n.y||n.top||0,i=document.documentElement.clientHeight-r-n.height-20;t=i>o||r0&&void 0!==arguments[0]?arguments[0]:"zn",t=Le[e]||ze;return{language:e,languageProp:t,data:[],content:"",name:"select",layVerify:"",layVerType:"",size:"medium",disabled:!1,initValue:null,create:null,tips:t.tips,empty:t.empty,delay:500,searchTips:t.searchTips,filterable:!1,filterMethod:function(e,t,n,o){return!e||-1!=t[o.name].indexOf(e)},remoteSearch:!1,remoteMethod:function(e,t){t([])},direction:"auto",style:{},height:"200px",autoRow:!1,paging:!1,pageSize:10,pageEmptyShow:!0,pageRemote:!1,radio:!1,repeat:!1,clickClose:!1,max:0,maxMethod:function(e,t){},showCount:0,toolbar:{show:!1,showIcon:!0,list:["ALL","CLEAR"]},tree:{show:!1,showFolderIcon:!0,showLine:!0,indent:20,expandedKeys:[],strict:!0,lazy:!1,load:null,simple:!1},cascader:{show:!1,indent:100,strict:!0},prop:{name:"name",value:"value",selected:"selected",disabled:"disabled",children:"children",optgroup:"optgroup",click:"click"},theme:{color:"#009688",maxColor:"#e54d42",hover:"#f2f2f2"},model:{label:{type:"block",text:{left:"",right:"",separator:", "},block:{showCount:0,showIcon:!0,template:null},count:{template:function(e,t){return"已选中 ".concat(t.length," 项, 共 ").concat(e.length," 项")}}},icon:"show",type:"absolute"},show:function(){},hide:function(){},template:function(e){e.item,e.sels;var t=e.name;return e.value,t},on:function(e){e.arr,e.item,e.selected}}}(e.language),this.update(e)}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=!!e.data;this.options=p(this.options,e);var n=this.options.dom;if(n){var o=this.options.data||[];if("function"==typeof o&&(o=o(),this.options.data=o),c(o))return K(O(Te,Ve({},this.options,{updateData:t})),n),this;s("data数据必须为数组类型, 不能是".concat("undefined"==typeof data?"undefined":Fe(data),"类型"))}else s("没有找到渲染对象: ".concat(e.el,", 请检查"))}},{key:"reset",value:function(){var e=this.options.el;return this.init(Ke[e]),qe[e].init(this.options,!0),this}},{key:"opened",value:function(){var e=qe[this.options.el];return!e.state.show&&e.onClick(),this}},{key:"closed",value:function(){var e=qe[this.options.el];return e.state.show&&e.onClick(),this}},{key:"getValue",value:function(e){var t=this,n=this.options,o=n.tree,r=n.prop,i=n.data,l=qe[this.options.el].state.sels,a=l;o.show&&o.strict&&o.simple&&f(i,l,a=[],r);var s=h(a,r.children,["__node"]);return"name"===e?s.map((function(e){return e[t.options.prop.name]})):"nameStr"===e?s.map((function(e){return e[t.options.prop.name]})).join(","):"value"===e?s.map((function(e){return e[t.options.prop.value]})):"valueStr"===e?s.map((function(e){return e[t.options.prop.value]})).join(","):s}},{key:"setValue",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(c(e))return qe[this.options.el].value(this.options.radio?e.slice(0,1):e,t,n),this;s("请传入数组结构...")}},{key:"append",value:function(e){if(c(e))return qe[this.options.el].append(e),this;s("请传入数组结构...")}},{key:"delete",value:function(e){if(c(e))return qe[this.options.el].del(e),this;s("请传入数组结构...")}},{key:"warning",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e||this.options.theme.maxColor;return!0===t?qe[this.options.el].base.style.borderColor=n:qe[this.options.el].updateBorderColor(n),this}}])&&Ue(t.prototype,n),o&&Ue(t,o),e}();function Ne(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t + + + + 请假记录报表 + + + + +
+
+ +
+
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+
+ +
+
+ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/pages/announcement/AnnouncementForm.html b/src/main/resources/static/pages/announcement/AnnouncementForm.html index 360e35b..116581d 100644 --- a/src/main/resources/static/pages/announcement/AnnouncementForm.html +++ b/src/main/resources/static/pages/announcement/AnnouncementForm.html @@ -196,13 +196,6 @@ \ No newline at end of file diff --git a/src/main/resources/static/pages/announcement/AnnouncementPersonView.html b/src/main/resources/static/pages/announcement/AnnouncementPersonView.html index ef7a939..889c0bb 100644 --- a/src/main/resources/static/pages/announcement/AnnouncementPersonView.html +++ b/src/main/resources/static/pages/announcement/AnnouncementPersonView.html @@ -84,12 +84,6 @@ - \ No newline at end of file + + + + \ No newline at end of file diff --git a/src/main/resources/static/pages/role/addUser.html b/src/main/resources/static/pages/role/addUser.html new file mode 100644 index 0000000..f1db3c7 --- /dev/null +++ b/src/main/resources/static/pages/role/addUser.html @@ -0,0 +1,133 @@ + + + + + 新增角色---添加人员 + + + +
+
+
+ + +
+
+
+
+ +
+
+
+ +
+ + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/pages/role/newRoleList.html b/src/main/resources/static/pages/role/newRoleList.html index e0ddee5..8e5d77a 100644 --- a/src/main/resources/static/pages/role/newRoleList.html +++ b/src/main/resources/static/pages/role/newRoleList.html @@ -79,7 +79,15 @@ , cols: [[ //表头 {field: 'number', title: '序号', align: 'center', type: 'numbers'} , {field: 'name', align: 'center', title: '角色名称'} - , {field: 'status', align: 'center', title: '状态'} + , { + field: 'status', align: 'center', title: '状态', template: function () { + if (d.status === 1) { + return '启用'; + } else { + return '禁用'; + } + } + } , {field: 'membersNum', align: 'center', title: '成员数量'} , {field: 'dataPermissions', align: 'center', title: '数据权限'} , {field: 'description', align: 'center', title: '角色描述'} @@ -169,6 +177,9 @@ content: "./addNewRole.html", area: ['90%', '95%'], maxmin: false, + end:function () { + tableIns.reload(); + } }); } @@ -179,11 +190,32 @@ var index = layer.confirm('确定要删除吗?', { btn : [ '确定', '取消' ] }, function() { - ajaxCommonMethods(url,{'id': id},"删除成功","删除失败","删除",index); + ajaxCommonMethod(url,{'id': id},"删除成功","删除失败","删除",index); // 重新加载table - table.reload('menuTable'); + layer.close(index); }); } + function ajaxCommonMethod(url, data, success, error, type) { + $.ajax({ + type: 'POST', + async: false, // 默认异步true,false表示同步 + url: ctxPath + url,// 请求地址 + contentType: "application/x-www-form-urlencoded", + dataType: 'json', // 服务器返回数据类型 + data: data, //获取提交的表单字段 + success: function (data) { + var resMsg = data.resMsg; + if ("数据获取成功" == resMsg) { + thisTip(type, success, 'success'); + setTimeout(function () { + tableIns.reload(); + }, 2000); + } else { + thisTip(type, error, "error"); + } + } + }); + } \ No newline at end of file diff --git a/src/main/resources/static/pages/user/addUserForm.html b/src/main/resources/static/pages/user/addUserForm.html index 81cf50a..cf78d8d 100644 --- a/src/main/resources/static/pages/user/addUserForm.html +++ b/src/main/resources/static/pages/user/addUserForm.html @@ -86,7 +86,7 @@ width: 69%; } .layui-form-select dl { - left: 16%; + left: 19%; min-width: 69%; } diff --git a/src/main/resources/static/pages/user/leaderSetList.html b/src/main/resources/static/pages/user/leaderSetList.html new file mode 100644 index 0000000..c8466f4 --- /dev/null +++ b/src/main/resources/static/pages/user/leaderSetList.html @@ -0,0 +1,157 @@ + + + + + 用户查询--公司领导设置 + + + + + + +
+
+ +
+
+ +
+ +
+
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/pages/user/selectLeader.html b/src/main/resources/static/pages/user/selectLeader.html new file mode 100644 index 0000000..993f5fd --- /dev/null +++ b/src/main/resources/static/pages/user/selectLeader.html @@ -0,0 +1,342 @@ + + + + + 选择领导 + + + + +
+
+
+
+ +
+
+
+
+ 已选择人员 + 升序 + 降序 + 清空 +
+
+
+
+
+ +
+ + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/pages/user/userList.html b/src/main/resources/static/pages/user/userList.html index 9a47fad..6d926bf 100644 --- a/src/main/resources/static/pages/user/userList.html +++ b/src/main/resources/static/pages/user/userList.html @@ -166,6 +166,11 @@
+
+ +
\ No newline at end of file