Commit 235b6ec87ffbfdbb3cbd571ad1764755fd604229

Authored by 周峰
2 parents d1d4c5d3 3802a546

Merge branch 'develop' of http://172.16.29.40:8010/wms/wms2 into develop

src/main/java/com/huaheng/common/utils/StringUtils.java
@@ -23,6 +23,12 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -23,6 +23,12 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
23 */ 23 */
24 private static final char SEPARATOR = '_'; 24 private static final char SEPARATOR = '_';
25 25
  26 + /**objet NULL判断非empty*/
  27 + public static boolean isNullNew(Object object)
  28 + {
  29 + return object == null;
  30 + }
  31 +
26 /** 32 /**
27 * 获取参数不为空值 33 * 获取参数不为空值
28 * 34 *
@@ -40,7 +46,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -40,7 +46,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
40 * @return true:为空 false:非空 46 * @return true:为空 false:非空
41 */ 47 */
42 public static boolean isEmpty(Collection<?> coll) { 48 public static boolean isEmpty(Collection<?> coll) {
43 - return isNull(coll) || coll.isEmpty(); 49 + return isNullNew(coll) || coll.isEmpty();
44 } 50 }
45 51
46 /** 52 /**
@@ -60,7 +66,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -60,7 +66,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
60 * * @return true:为空 false:非空 66 * * @return true:为空 false:非空
61 */ 67 */
62 public static boolean isEmpty(Object[] objects) { 68 public static boolean isEmpty(Object[] objects) {
63 - return isNull(objects) || (objects.length == 0); 69 + return isNullNew(objects) || (objects.length == 0);
64 } 70 }
65 71
66 /** 72 /**
@@ -80,7 +86,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -80,7 +86,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
80 * @return true:为空 false:非空 86 * @return true:为空 false:非空
81 */ 87 */
82 public static boolean isEmpty(Map<?, ?> map) { 88 public static boolean isEmpty(Map<?, ?> map) {
83 - return isNull(map) || map.isEmpty(); 89 + return isNullNew(map) || map.isEmpty();
84 } 90 }
85 91
86 /** 92 /**
@@ -100,7 +106,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -100,7 +106,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
100 * @return true:为空 false:非空 106 * @return true:为空 false:非空
101 */ 107 */
102 public static boolean isEmpty(String str) { 108 public static boolean isEmpty(String str) {
103 - return isNull(str) || NULLSTR.equals(str.trim()); 109 + return isNullNew(str) || NULLSTR.equals(str.trim());
104 } 110 }
105 111
106 /** 112 /**
@@ -173,7 +179,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { @@ -173,7 +179,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils {
173 * @return true:是数组 false:不是数组 179 * @return true:是数组 false:不是数组
174 */ 180 */
175 public static boolean isArray(Object object) { 181 public static boolean isArray(Object object) {
176 - return isNotNull(object) && object.getClass().isArray(); 182 + return !isNullNew(object) && object.getClass().isArray();
177 } 183 }
178 184
179 /** 185 /**
src/main/java/com/huaheng/pc/system/user/controller/UserController.java
@@ -138,8 +138,8 @@ public class UserController extends BaseController @@ -138,8 +138,8 @@ public class UserController extends BaseController
138 { 138 {
139 mmap.put("user", userService.selectUserById(id)); 139 mmap.put("user", userService.selectUserById(id));
140 mmap.put("roles", roleService.selectRolesByUserId(id)); 140 mmap.put("roles", roleService.selectRolesByUserId(id));
141 - mmap.put("companys", companyService.selectCompanyByUserId(id));  
142 - mmap.put("warehouses", warehouseService.selectWarehouseByUserId(id)); 141 + mmap.put("companyList", companyService.selectCompanyByUserId(id));
  142 + mmap.put("warehouseList", warehouseService.selectWarehouseByUserId(id));
143 return prefix + "/edit"; 143 return prefix + "/edit";
144 } 144 }
145 145
src/main/java/com/huaheng/pc/system/user/domain/UserCompany.java
@@ -39,6 +39,47 @@ public class UserCompany{ @@ -39,6 +39,47 @@ public class UserCompany{
39 @TableField(value = "companyCode") 39 @TableField(value = "companyCode")
40 private String companyCode; 40 private String companyCode;
41 41
  42 + private String name;
  43 +
  44 + public Integer getId() {
  45 + return id;
  46 + }
  47 +
  48 + public void setId(Integer id) {
  49 + this.id = id;
  50 + }
  51 +
  52 + public Integer getUserId() {
  53 + return userId;
  54 + }
  55 +
  56 + public void setUserId(Integer userId) {
  57 + this.userId = userId;
  58 + }
  59 +
  60 + public Integer getCompanyId() {
  61 + return companyId;
  62 + }
  63 +
  64 + public void setCompanyId(Integer companyId) {
  65 + this.companyId = companyId;
  66 + }
  67 +
  68 + public String getCompanyCode() {
  69 + return companyCode;
  70 + }
  71 +
  72 + public void setCompanyCode(String companyCode) {
  73 + this.companyCode = companyCode;
  74 + }
  75 +
  76 + public String getName() {
  77 + return name;
  78 + }
  79 +
  80 + public void setName(String name) {
  81 + this.name = name;
  82 + }
42 } 83 }
43 84
44 85
src/main/java/com/huaheng/pc/system/user/service/UserServiceImpl.java
@@ -7,6 +7,7 @@ import java.util.Map; @@ -7,6 +7,7 @@ import java.util.Map;
7 import java.util.stream.Collectors; 7 import java.util.stream.Collectors;
8 8
9 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 9 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  10 +import com.huaheng.common.exception.service.ServiceException;
10 import com.huaheng.framework.web.domain.AjaxResult; 11 import com.huaheng.framework.web.domain.AjaxResult;
11 import com.huaheng.pc.config.company.domain.Company; 12 import com.huaheng.pc.config.company.domain.Company;
12 import com.huaheng.pc.config.company.mapper.CompanyMapper; 13 import com.huaheng.pc.config.company.mapper.CompanyMapper;
@@ -258,14 +259,29 @@ public class UserServiceImpl implements IUserService @@ -258,14 +259,29 @@ public class UserServiceImpl implements IUserService
258 user.randomSalt(); 259 user.randomSalt();
259 user.setPassword(passwordService.encryptPassword(user.getLoginName(), user.getPassword(), user.getSalt())); 260 user.setPassword(passwordService.encryptPassword(user.getLoginName(), user.getPassword(), user.getSalt()));
260 user.setCreateBy(ShiroUtils.getLoginName()); 261 user.setCreateBy(ShiroUtils.getLoginName());
261 - // 新增用户信息  
262 - int rows = userMapper.insertUser(user);  
263 - // 新增用户货主关联  
264 - insertUserCompany(user);  
265 - // 新增用户与角色管理  
266 - insertUserRole(user);  
267 - // 新增用户与仓库管理  
268 - insertUserWarehouse(user); 262 + //新建用户名不能重复/
  263 + User u = userMapper.selectUserByLoginName(user.getLoginName());
  264 + int rows = 0;
  265 + if(!StringUtils.isNull(u)){
  266 + //新增用户时,如果已经有逻辑删除的则是修改
  267 + if(u.getDeleted()){
  268 + user.setId(u.getId());
  269 + user.setDeleted(false);
  270 + //修改用户
  271 + rows = this.updateUser(user);
  272 + }else{
  273 + throw new ServiceException("用户名重复!");
  274 + }
  275 + }else{
  276 + // 新增用户信息
  277 + rows = userMapper.insertUser(user);
  278 + // 新增用户货主关联
  279 + this.insertUserCompany(user);
  280 + // 新增用户与角色
  281 + this.insertUserRole(user);
  282 + // 新增用户与仓库
  283 + this.insertUserWarehouse(user);
  284 + }
269 return rows; 285 return rows;
270 } 286 }
271 287
src/main/resources/mybatis/config/CompanyMapper.xml
@@ -53,8 +53,11 @@ @@ -53,8 +53,11 @@
53 INNER JOIN company c ON suc.companyId = c.id AND suc.userId = #{userId} 53 INNER JOIN company c ON suc.companyId = c.id AND suc.userId = #{userId}
54 INNER JOIN warehouse_company wc ON wc.companyId=c.id AND wc.warehouseCode = #{warehouseCode} 54 INNER JOIN warehouse_company wc ON wc.companyId=c.id AND wc.warehouseCode = #{warehouseCode}
55 </select> 55 </select>
56 - <select id="selectByWarehouseCode" resultType="com.huaheng.pc.config.company.domain.Company">  
57 - select c.id, c.name ,c.code from company c INNER JOIN warehouse_company w ON c.id = w.companyId 56 +
  57 + <select id="selectByWarehouseCode" resultType="com.huaheng.pc.config.company.domain.Company">
  58 + select c.id , c.code, c.name, c.warehouseCode, c.deleted
  59 + from company c
  60 + INNER JOIN warehouse_company wc ON c.id = wc.companyId
58 where c.warehouseCode = #{warehouseCode} 61 where c.warehouseCode = #{warehouseCode}
59 </select> 62 </select>
60 63
src/main/resources/mybatis/config/WarehouseMapper.xml
@@ -35,21 +35,25 @@ @@ -35,21 +35,25 @@
35 <result column="deleted" jdbcType="BIT" property="deleted" /> 35 <result column="deleted" jdbcType="BIT" property="deleted" />
36 </resultMap> 36 </resultMap>
37 <select id="wareHouseAll" resultType="com.huaheng.pc.system.user.domain.SysUserWarehouse"> 37 <select id="wareHouseAll" resultType="com.huaheng.pc.system.user.domain.SysUserWarehouse">
38 - select * from warehouse 38 + select code, address1, address2, city, `state`, district, country, postalCode, attentionTo,
  39 + phoneNum, faxNum, email, hostCode, `name`, `enable`, orgCode, created, createdBy,
  40 + lastUpdated, lastUpdatedBy, version, userDef1, userDef2, userDef3, userDef4, userDef5,
  41 + userDef6, userDef7, userDef8, deleted from warehouse
39 </select> 42 </select>
40 43
41 - <select id="selectWarehouseByUserId"  
42 - resultType="com.huaheng.pc.config.warehouse.domain.Warehouse">  
43 - SELECT r.`name`, r.code  
44 - FROM sys_user u  
45 - LEFT JOIN sys_user_warehouse ur ON u.id = ur.userId  
46 - LEFT JOIN warehouse r ON ur.warehouseCode = r.code 44 + <select id="selectWarehouseByUserId" resultType="com.huaheng.pc.config.warehouse.domain.Warehouse">
  45 + SELECT r.`name`, r.code ,r.enable
  46 + FROM sys_user_warehouse ur
  47 + LEFT JOIN warehouse r ON r.code = ur.warehouseCode
47 WHERE ur.userId =#{userId} 48 WHERE ur.userId =#{userId}
48 </select> 49 </select>
49 50
50 - <select id="selectWarehouseAll"  
51 - resultType="com.huaheng.pc.config.warehouse.domain.Warehouse">  
52 - select * from warehouse where deleted =false 51 + <select id="selectWarehouseAll" resultType="com.huaheng.pc.config.warehouse.domain.Warehouse">
  52 + select code, address1, address2, city, `state`, district, country, postalCode, attentionTo,
  53 + phoneNum, faxNum, email, hostCode, `name`, `enable`, orgCode, created, createdBy,
  54 + lastUpdated, lastUpdatedBy, version, userDef1, userDef2, userDef3, userDef4, userDef5,
  55 + userDef6, userDef7, userDef8, deleted
  56 + from warehouse where deleted =false
53 </select> 57 </select>
54 58
55 59
src/main/resources/mybatis/system/UserCompanyMapper.xml
@@ -3,22 +3,23 @@ @@ -3,22 +3,23 @@
3 <mapper namespace="com.huaheng.pc.system.user.mapper.UserCompanyMapper"> 3 <mapper namespace="com.huaheng.pc.system.user.mapper.UserCompanyMapper">
4 4
5 <select id="selectListEntityByEqual" resultType="com.huaheng.pc.system.user.domain.UserCompany"> 5 <select id="selectListEntityByEqual" resultType="com.huaheng.pc.system.user.domain.UserCompany">
6 - SELECT id, userId, companyId, companyCode  
7 - FROM sys_user_company  
8 - <where>  
9 - <if test="id != null">  
10 - AND id = #{id}  
11 - </if>  
12 - <if test="userId != null">  
13 - AND userId = #{userId}  
14 - </if>  
15 - <if test="companyId != null">  
16 - AND companyId = #{companyId}  
17 - </if>  
18 - <if test="companyCode != null">  
19 - AND companyCode = #{companyCode}  
20 - </if>  
21 - </where> 6 + SELECT sc.id, sc.userId, sc.companyId, sc.companyCode, c.name
  7 + FROM sys_user_company sc
  8 + inner join company c on c.id = sc.companyId
  9 + <where>
  10 + <if test="id != null">
  11 + AND sc.id = #{id}
  12 + </if>
  13 + <if test="userId != null">
  14 + AND sc.userId = #{userId}
  15 + </if>
  16 + <if test="companyId != null">
  17 + AND sc.companyId = #{companyId}
  18 + </if>
  19 + <if test="companyCode != null">
  20 + AND sc.companyCode = #{companyCode}
  21 + </if>
  22 + </where>
22 </select> 23 </select>
23 24
24 <select id="countUserCompanyById" resultType="java.lang.Integer"> 25 <select id="countUserCompanyById" resultType="java.lang.Integer">
src/main/resources/mybatis/system/UserMapper.xml
@@ -42,7 +42,8 @@ @@ -42,7 +42,8 @@
42 </sql> 42 </sql>
43 43
44 <select id="selectUserList" resultMap="UserResult"> 44 <select id="selectUserList" resultMap="UserResult">
45 - select u.id, u.deptId, u.loginName, u.userName, u.email, u.phoneNumber, u.password, u.sex, u.avatar, u.salt, u.enable, u.deleted, u.loginIp, u.loginDate, u.createBy, u.createTime, u.remark, d.deptName 45 + select u.id, u.deptId, u.loginName, u.userName, u.email, u.phoneNumber, u.password, u.sex, u.avatar, u.salt, u.enable, u.deleted,
  46 + u.loginIp, u.loginDate, u.createBy, u.createTime, u.updateTime, u.updateBy, u.remark, d.deptName
46 from sys_user u 47 from sys_user u
47 left join sys_dept d on u.deptId = d.id 48 left join sys_dept d on u.deptId = d.id
48 WHERE u.deleted = false 49 WHERE u.deleted = false
@@ -103,7 +104,8 @@ @@ -103,7 +104,8 @@
103 </select> 104 </select>
104 105
105 <select id="selectmen" resultType="com.huaheng.pc.system.user.domain.User"> 106 <select id="selectmen" resultType="com.huaheng.pc.system.user.domain.User">
106 - select * from sys_user where loginName = #{loginName} 107 + select id, deptId, loginName, userName, email, phoneNumber, password, sex, avatar, salt, enable, deleted,
  108 + loginIp, loginDate, createBy, createTime, updateTime, updateBy, remark from sys_user where loginName = #{loginName}
107 </select> 109 </select>
108 110
109 <delete id="deleteUserById"> 111 <delete id="deleteUserById">
src/main/resources/static/css/style.css
@@ -3341,9 +3341,10 @@ nav.page-tabs .page-tabs-content { @@ -3341,9 +3341,10 @@ nav.page-tabs .page-tabs-content {
3341 color: #999; 3341 color: #999;
3342 display: block; 3342 display: block;
3343 } 3343 }
3344 -.xx_box a:hover{ 3344 +.xx_box a.xx:hover{
3345 background: #f2f2f2; 3345 background: #f2f2f2;
3346 } 3346 }
  3347 +
3347 .xx sup{ 3348 .xx sup{
3348 /*line-height: 12px; 3349 /*line-height: 12px;
3349 padding: 2px 5px;*/ 3350 padding: 2px 5px;*/
src/main/resources/templates/system/user/add.html
@@ -85,7 +85,7 @@ @@ -85,7 +85,7 @@
85 <label class="col-sm-3 control-label">角色:</label> 85 <label class="col-sm-3 control-label">角色:</label>
86 <div class="col-sm-8"> 86 <div class="col-sm-8">
87 <label th:each="role:${roles}" class="checkbox-inline i-checks"> 87 <label th:each="role:${roles}" class="checkbox-inline i-checks">
88 - <input name="role" type="checkbox" th:value="${role.id}" th:text="${role.roleName}" th:disabled="${role.enable == false}"> 88 + <input name="role" type="radio" th:value="${role.id}" th:text="${role.roleName}" th:disabled="${role.enable == false}">
89 </label> 89 </label>
90 </div> 90 </div>
91 </div> 91 </div>
@@ -200,7 +200,7 @@ @@ -200,7 +200,7 @@
200 var phoneNumber = $("input[name='phoneNumber']").val(); 200 var phoneNumber = $("input[name='phoneNumber']").val();
201 var sex = $("#sex option:selected").val(); 201 var sex = $("#sex option:selected").val();
202 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0; 202 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0;
203 - var roleIds = $.form.selectCheckeds("role"); 203 + var roleIds = $("input[name='role']").is(':checked') == true ? 1 : 0;
204 var warehouseCodeList = $.form.selectCheckeds("warehouseCode"); 204 var warehouseCodeList = $.form.selectCheckeds("warehouseCode");
205 var companyIdList = $.form.selectCheckeds("company"); 205 var companyIdList = $.form.selectCheckeds("company");
206 $.ajax({ 206 $.ajax({
src/main/resources/templates/system/user/edit.html
@@ -61,18 +61,18 @@ @@ -61,18 +61,18 @@
61 <div class="form-group"> 61 <div class="form-group">
62 <label class="col-sm-3 control-label">货主:</label> 62 <label class="col-sm-3 control-label">货主:</label>
63 <div class="col-sm-8"> 63 <div class="col-sm-8">
64 - <label th:each="company:${companys}" class="checkbox-inline i-checks">  
65 - <input name="company" type="checkbox" th:value="${company.id}" th:text=" ${company.name}" th:checked="${company.flag}" >  
66 - </label> 64 + <label th:each="company:${companyList}" class="checkbox-inline i-checks">
  65 + <input name="company" id ="company" type="checkbox" th:value="${company.id}" th:text=" ${company.name}" th:checked="${company.flag}" th:disabled="${company.deleted == true}">
  66 + </label>
67 </div> 67 </div>
68 </div> 68 </div>
69 69
70 <div class="form-group"> 70 <div class="form-group">
71 <label class="col-sm-3 control-label">仓库:</label> 71 <label class="col-sm-3 control-label">仓库:</label>
72 <div class="col-sm-8"> 72 <div class="col-sm-8">
73 - <label th:each="warehouse:${warehouses}" class="checkbox-inline i-checks">  
74 - <input name="warehouse" type="checkbox" th:value="${warehouse.code}" th:text="${warehouse.name}" th:checked="${warehouse.flag}" th:disabled="${warehouse.enable == false}">  
75 - </label> 73 + <label th:each="warehouse:${warehouseList}" class="checkbox-inline i-checks">
  74 + <input name="warehouse" id ="warehouse" type="checkbox" th:value="${warehouse.code}" th:text="${warehouse.name}" th:checked="${warehouse.flag}" th:disabled="${warehouse.enable == true}">
  75 + </label>
76 </div> 76 </div>
77 </div> 77 </div>
78 78
@@ -80,7 +80,7 @@ @@ -80,7 +80,7 @@
80 <label class="col-sm-3 control-label">角色:</label> 80 <label class="col-sm-3 control-label">角色:</label>
81 <div class="col-sm-8"> 81 <div class="col-sm-8">
82 <label th:each="role:${roles}" class="checkbox-inline i-checks"> 82 <label th:each="role:${roles}" class="checkbox-inline i-checks">
83 - <input name="role" type="checkbox" th:value="${role.id}" th:text="${role.roleName}" th:checked="${role.flag}" th:disabled="${role.enable == false}"> 83 + <input name="role" type="radio" th:value="${role.id}" th:text="${role.roleName}" th:checked="${role.flag}" th:disabled="${role.enable == false}">
84 </label> 84 </label>
85 </div> 85 </div>
86 </div> 86 </div>
@@ -169,7 +169,7 @@ @@ -169,7 +169,7 @@
169 var phoneNumber = $("input[name='phoneNumber']").val(); 169 var phoneNumber = $("input[name='phoneNumber']").val();
170 var sex = $("#sex option:selected").val(); 170 var sex = $("#sex option:selected").val();
171 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0; 171 var enable = $("input[name='enable']").is(':checked') == true ? 1 : 0;
172 - var roleIds = $.form.selectCheckeds("role"); 172 + var roleIds = $("input[name='role']").is(':checked') == true ? 1 : 0;
173 var warehouseCodeList = $.form.selectCheckeds("warehouse"); 173 var warehouseCodeList = $.form.selectCheckeds("warehouse");
174 var companyIdList = $.form.selectCheckeds("company"); 174 var companyIdList = $.form.selectCheckeds("company");
175 $.ajax({ 175 $.ajax({
src/main/resources/templates/system/user/user.html
@@ -150,6 +150,16 @@ @@ -150,6 +150,16 @@
150 title: '创建时间', 150 title: '创建时间',
151 sortable: true 151 sortable: true
152 }, 152 },
  153 + {
  154 + field: 'createBy',
  155 + title: '创建人',
  156 + visible: false,
  157 + },
  158 + {
  159 + field: 'updateTime',
  160 + title: '修改时间',
  161 + sortable: true
  162 + },
153 { 163 {
154 title: '操作', 164 title: '操作',
155 align: 'center', 165 align: 'center',