|
@@ -18,13 +18,13 @@ import com.welampiot.vo.UserVO;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-//import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.validation.Valid;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
@RestController
|
|
|
@CrossOrigin
|
|
@@ -227,4 +227,162 @@ public class UserController {
|
|
|
userVO.setList(list);
|
|
|
return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,userVO);
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改密码
|
|
|
+ * @param request 用户名
|
|
|
+ * @return 更新用户密码
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "changePassword", method = RequestMethod.POST)
|
|
|
+ public BaseResult<?> changePassword(HttpServletRequest request) {
|
|
|
+ Integer version = (Integer) toolUtils.getRequestContent(request,"version",1);
|
|
|
+ String username = (String) toolUtils.getRequestContent(request,"username",2);
|
|
|
+ String oldPwd = (String) toolUtils.getRequestContent(request,"oldPwd",2);
|
|
|
+ String surePwd = (String) toolUtils.getRequestContent(request,"surePwd",2);
|
|
|
+ String newPwd = (String) toolUtils.getRequestContent(request,"newPwd",2);
|
|
|
+ if (username.length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
|
|
|
+ String password = userService.getPasswordByUsername(username);
|
|
|
+ String md5Pwd = MD5Utils.encoderMD5(oldPwd);
|
|
|
+ if (md5Pwd.equals(password)) { // 如果相同允许修改
|
|
|
+ if (newPwd.length() < 8) // 密码长度不小于8位
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PWD_LENGTH_ERROR,version);
|
|
|
+ if (!ToolUtils.checkPassword(newPwd)) // 密码必须包含字母和数字
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PWD_COMBINE_ERROR,version);
|
|
|
+ if (!surePwd.equals(newPwd)) // 确认密码与新密码不一致
|
|
|
+ return toolUtils.response(InterfaceResultEnum.SURE_PASSWORD_ERROR,version);
|
|
|
+ String encoderMD5 = MD5Utils.encoderMD5(newPwd);
|
|
|
+ UserDTO userDTO = new UserDTO();
|
|
|
+ userDTO.setPassword(encoderMD5);
|
|
|
+ userDTO.setUsername(username);
|
|
|
+ userService.updatePassword(userDTO);
|
|
|
+ return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
|
|
|
+ } else { // 密码不正确
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PASSWORD_ERROR,version);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查看区域
|
|
|
+ * @param request 上级区域id
|
|
|
+ * @return 五级区域下拉
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "areaList", method = RequestMethod.POST)
|
|
|
+ public BaseResult<?> areaList(HttpServletRequest request) {
|
|
|
+ int version = (int) toolUtils.getRequestContent(request,"version",1);
|
|
|
+ int pid = (int) toolUtils.getRequestContent(request,"pid",1);
|
|
|
+ List<GlobalLocationDTO> list = new ArrayList<>();
|
|
|
+ if (pid == 0) {
|
|
|
+ GlobalLocationDTO dto = new GlobalLocationDTO();
|
|
|
+ dto.setPid(0);
|
|
|
+ dto.setLevel(1);
|
|
|
+ dto.setVersion(version);
|
|
|
+ List<GlobalLocationDTO> countryList = globalLocationService.getLocationListByDTO(dto);
|
|
|
+ } else {
|
|
|
+ GlobalLocationDTO locationDTO = globalLocationService.getAreaById(pid, version);
|
|
|
+ }
|
|
|
+ GlobalLocationVO globalLocationVO = new GlobalLocationVO();
|
|
|
+ globalLocationVO.setList(list);
|
|
|
+ return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,globalLocationVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 编辑用户信息
|
|
|
+ * @param request 要编辑的用户信息
|
|
|
+ * @return 更新用户信息
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "save", method = RequestMethod.POST)
|
|
|
+ public BaseResult<?> save(HttpServletRequest request) {
|
|
|
+ Integer version = (Integer) toolUtils.getRequestContent(request,"version",1);
|
|
|
+ Integer id = (Integer) toolUtils.getRequestContent(request,"id",1);
|
|
|
+ Integer companyId = (Integer) toolUtils.getRequestContent(request,"companyId",1);
|
|
|
+ Integer sex = (Integer) toolUtils.getRequestContent(request,"sex",1);
|
|
|
+ Integer department = (Integer) toolUtils.getRequestContent(request,"department",1);
|
|
|
+ String avatar = (String) toolUtils.getRequestContent(request,"avatar",2);
|
|
|
+ String name = (String) toolUtils.getRequestContent(request,"name",2);
|
|
|
+ String address = (String) toolUtils.getRequestContent(request,"address",2);
|
|
|
+ String phone = (String) toolUtils.getRequestContent(request,"phone",2);
|
|
|
+ String email = (String) toolUtils.getRequestContent(request,"email",2);
|
|
|
+ String remark = (String) toolUtils.getRequestContent(request,"remark",2);
|
|
|
+ if (id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
|
|
|
+ if (companyId == 0 || department == 0 || name.length() == 0 || phone.length() == 0 || email.length() == 0)
|
|
|
+ return toolUtils.response(InterfaceResultEnum.LACK_NEED_PARAM,version);
|
|
|
+ UserDTO userDTO = new UserDTO();
|
|
|
+ userDTO.setId(id);
|
|
|
+ userDTO.setPhone(phone);
|
|
|
+ if (userService.findUserData(userDTO) > 0)
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PHONE_UNIQUE_ERROR,version);
|
|
|
+ userDTO = new UserDTO();
|
|
|
+ userDTO.setId(id);
|
|
|
+ userDTO.setEmail(email);
|
|
|
+ if (userService.findUserData(userDTO) > 0)
|
|
|
+ return toolUtils.response(InterfaceResultEnum.EMAIL_UNIQUE_ERROR,version);
|
|
|
+ userDTO.setCompanyId(companyId);
|
|
|
+ userDTO.setSex(sex);
|
|
|
+ userDTO.setDepartment(department);
|
|
|
+ userDTO.setAvatar(avatar);
|
|
|
+ userDTO.setName(name);
|
|
|
+ userDTO.setPhone(phone);
|
|
|
+ userDTO.setRemark(remark);
|
|
|
+ userDTO.setAddress(address);
|
|
|
+ userService.updateUserData(userDTO);
|
|
|
+ return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除子账户
|
|
|
+ * @param request 用户id
|
|
|
+ * @return 删除数据
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "del", method = RequestMethod.POST)
|
|
|
+ public BaseResult<?> del(HttpServletRequest request) {
|
|
|
+ Integer version = (Integer) toolUtils.getRequestContent(request,"version",1);
|
|
|
+ String username = (String) toolUtils.getRequestContent(request,"username",2);
|
|
|
+ Integer userid = (Integer) toolUtils.getRequestContent(request,"userid",1);
|
|
|
+ if (userid == 0 || username.length() == 0)
|
|
|
+ return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
|
|
|
+ UserDTO userDTO = userService.queryUserIdByUsername(username);
|
|
|
+ if (userDTO == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
|
|
|
+ if (userDTO.getRole() == 1) { // 超管可以为所欲为
|
|
|
+ userService.deleteUserData(userid);
|
|
|
+ } else { // 其他人得提升一下钞能力
|
|
|
+ Integer parentId = userService.getParentIdById(userid);
|
|
|
+ if (Objects.equals(userDTO.getId(),parentId)) {
|
|
|
+ userService.deleteUserData(userid);
|
|
|
+ } else {
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PERMISSION_DENIED,version);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 停用、启用子账户
|
|
|
+ * @param request 用户id
|
|
|
+ * @return 更新状态
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "changeStatus", method = RequestMethod.POST)
|
|
|
+ public BaseResult<?> changeStatus(HttpServletRequest request) {
|
|
|
+ Integer version = (Integer) toolUtils.getRequestContent(request,"version",1);
|
|
|
+ String username = (String) toolUtils.getRequestContent(request,"username",2);
|
|
|
+ Integer id = (Integer) toolUtils.getRequestContent(request,"id",1);
|
|
|
+ Integer status = (Integer) toolUtils.getRequestContent(request,"status",1);
|
|
|
+ if (id == 0 || username.length() == 0)
|
|
|
+ return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
|
|
|
+ UserDTO userDTO = userService.queryUserIdByUsername(username);
|
|
|
+ if (userDTO == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
|
|
|
+ UserDTO dto = new UserDTO();
|
|
|
+ dto.setId(id);
|
|
|
+ dto.setStatus(status);
|
|
|
+ if (userDTO.getRole() == 1) { // 超管可以为所欲为
|
|
|
+ userService.updateUserStatus(dto);
|
|
|
+ } else { // 其他人得提升一下钞能力
|
|
|
+ Integer parentId = userService.getParentIdById(id);
|
|
|
+ if (Objects.equals(userDTO.getId(),parentId)) {
|
|
|
+ userService.updateUserStatus(dto);
|
|
|
+ } else {
|
|
|
+ return toolUtils.response(InterfaceResultEnum.PERMISSION_DENIED,version);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
|
|
|
+ }
|
|
|
}
|