chb 7 năm trước cách đây
mục cha
commit
3ac24abd85

+ 5 - 1
saicLogistics/src/main/java/com/fuzamei/mapper/UserMapper.xml

@@ -78,7 +78,11 @@
 	
 	<!--根据用户id修改角色,账号,密码,名称  -->
 	<update id="updateAccountByUserId" parameterType="com.fuzamei.entity.User">
-		update users set  username=#{username} , password=#{password} , person_name=#{personName},update_time=#{updateTime} where user_id=#{userIdb}
+		update users set  
+		<if test="username!=null">
+			username=#{username},
+		</if>
+		password=#{password} , person_name=#{personName},update_time=#{updateTime} where user_id=#{userIdb}
 	</update>
 	  
 	<!--参数类型为1001,1002,1003等, 批量删除 -->

+ 6 - 5
saicLogistics/src/main/java/com/fuzamei/service/serviceImpl/PlannerServiceImpl.java

@@ -47,11 +47,12 @@ public class PlannerServiceImpl implements  PlannerService{
 	@Override
 	@Transactional(rollbackFor=Exception.class)
 	public void insertAgainSupplier(User  pp) {//得到前端传来所有得供应商ID 做插入操作
-		deleteBeforeSupplierByUserId(Integer.parseInt(pp.getPlannerId()));//删除计划员下面的所有供应商
-		
 		//下面是【循环添加供应商得id】
-		pp.setSupplierIds(pp.getSupplierId().split(","));
-		plannerMapper.insertAgainSupplier(pp);
+		String[] str=pp.getSupplierId().split(",");
+		for (int i = 0; i < str.length; i++) {
+			pp.setSupplierId(str[i]);
+			plannerMapper.insertAgainSupplier(pp);
+		}
 		
 		
 		//下面往【操作记录】表插入数据
@@ -62,7 +63,7 @@ public class PlannerServiceImpl implements  PlannerService{
 		String hash = (String) map.get("sid");
 		pp.setUserId(pp.getUserId());//操作人(管理员)
 		pp.setOperationTypeId(OperationType.ADD);//操作类型 (编辑配置后在添加)
-		pp.setUserIdb(pp.getUserIdb());//这里是被操作人账号 
+		pp.setUserIdb(Integer.parseInt(pp.getPlannerId()));//这里是被操作人账号 
 		pp.setOperationTime(currentTime);//操作时间
 		pp.setHash(hash);//操作hash
 		userMapper.insertOperationHistory(pp);//插入到操作记录表去

+ 7 - 1
saicLogistics/src/main/java/com/fuzamei/web/UserAction.java

@@ -19,6 +19,7 @@ import com.fuzamei.constant.RegexConstant;
 import com.fuzamei.constant.Roles;
 import com.fuzamei.entity.Role;
 import com.fuzamei.entity.User;
+import com.fuzamei.entity.UserDetail;
 import com.fuzamei.service.UserAuthoricationService;
 import com.fuzamei.service.UserService;
 import com.fuzamei.util.JSONUtil;
@@ -128,13 +129,18 @@ public class UserAction {
 		try {
 			 Integer user_id = ValidationUtil.checkAndAssignInt(req.getHeader("Authorization").split("&")[1]);
 			 user.setUserId(user_id);
-			 userAuthoricationService.queryUserAuthority(user_id, Roles.ADMIN);
+			 UserDetail userDetail = userAuthoricationService.queryUserAuthority(user_id, Roles.ADMIN);
 			 Integer userIdb = ValidationUtil.checkAndAssignInt(user.getUserIdb());
 			 userAuthoricationService.queryUserAuthority(userIdb, Roles.PLANNER,Roles.SUPPLIER,Roles.CARRIER,Roles.STOCKER);
 			 ValidationUtil.checkBlankAndAssignString(user.getUsername());//校验账号
 			 ValidationUtil.checkBlankAndAssignString(user.getPassword(),RegexConstant.PWD_REGEX);//校验密码
 			 ValidationUtil.checkBlankAndAssignString(user.getPersonName());//校验名称
 			 ValidationUtil.checkBlankAndAssignString(user.getSign());//校验签名
+			 if(userDetail.getUsername().equals(user.getUsername())) {
+				 user.setUsername(null);
+				 userService.updateAccountByUserId(user);
+				 return JSONUtil.getJsonMap(200, true, HintMSG.OPERATION_SUCCESS, null);
+			 }
 			 int num = userService.findUserByuserIdandusername(user);
 			 if(num!=0) throw new RuntimeException("该账号名已存在");
 			 userService.updateAccountByUserId(user);