|
@@ -10,6 +10,8 @@ import com.ruoyi.common.core.redis.RedisCache;
|
|
|
import com.ruoyi.common.enums.BusinessType;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.system.domain.KaoqinRecord;
|
|
|
+import com.ruoyi.system.service.IKaoqinRecordService;
|
|
|
import com.ruoyi.system.service.ISysUserService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
@@ -18,6 +20,11 @@ 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 java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
import static com.ruoyi.common.utils.SecurityUtils.checkStrongPwd;
|
|
|
|
|
|
/**
|
|
@@ -34,42 +41,40 @@ public class IndexController extends BaseController {
|
|
|
@Autowired
|
|
|
private RedisCache redisCache;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IKaoqinRecordService kaoqinRecordService;
|
|
|
+
|
|
|
/**
|
|
|
- * 新增用户
|
|
|
+ * app新增用户
|
|
|
*/
|
|
|
@PostMapping
|
|
|
- public AjaxResult add(@Validated @RequestBody SysUser user)
|
|
|
- {
|
|
|
- if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user)))
|
|
|
- {
|
|
|
+ public AjaxResult add(@Validated @RequestBody SysUser user) {
|
|
|
+ if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {
|
|
|
return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
|
|
|
- }
|
|
|
- else if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
|
|
- {
|
|
|
+ } else if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
- }
|
|
|
- else if ("1".equals(checkStrongPwd(user.getPassword()))) {
|
|
|
+ } else if ("1".equals(checkStrongPwd(user.getPassword()))) {
|
|
|
return AjaxResult.error("密码必须包含数字、大小写字母、特殊符号且大于8位");
|
|
|
}
|
|
|
user.setCreateBy("APP");
|
|
|
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
|
return toAjax(userService.insertUserApp(user));
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* 重置密码app
|
|
|
*/
|
|
|
@PostMapping("/resetPwdAPP")
|
|
|
- public AjaxResult resetPwdAPP(@RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public AjaxResult resetPwdAPP(@RequestBody SysUser user) {
|
|
|
String verifyKey = CacheConstants.SMS_CODE_KEY + user.getPhonenumber();
|
|
|
|
|
|
String codeApp = redisCache.getCacheObject(verifyKey);
|
|
|
- if (StringUtils.isBlank(codeApp)){
|
|
|
+ if (StringUtils.isBlank(codeApp)) {
|
|
|
return AjaxResult.error("短信验证码已过期");
|
|
|
}
|
|
|
String code = user.getCode();
|
|
|
- if (!codeApp.equals(code)){
|
|
|
+ if (!codeApp.equals(code)) {
|
|
|
return AjaxResult.error("验证码不正确");
|
|
|
}
|
|
|
if ("1".equals(checkStrongPwd(user.getPassword()))) {
|
|
@@ -78,19 +83,47 @@ public class IndexController extends BaseController {
|
|
|
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
|
return toAjax(userService.resetPwdAPP(user));
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
- * 修改用户手机号
|
|
|
+ * app修改用户手机号
|
|
|
*/
|
|
|
@PostMapping("/updatePhone")
|
|
|
- public AjaxResult updatePhone(@RequestBody SysUser user)
|
|
|
- {
|
|
|
+ public AjaxResult updatePhone(@RequestBody SysUser user) {
|
|
|
|
|
|
if (StringUtils.isNotEmpty(user.getPhonenumber())
|
|
|
- && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
|
|
- {
|
|
|
+ && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
|
|
|
return error("修改用户'" + user.getUserName() + "'失败,手机号码已存在");
|
|
|
}
|
|
|
user.setUpdateBy(getUsername());
|
|
|
return toAjax(userService.updateUser(user));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 后台管理首页统计
|
|
|
+ *
|
|
|
+ * @param kaoQinRecord
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("/backstage")
|
|
|
+ public AjaxResult backstage(@RequestBody KaoqinRecord kaoQinRecord) {
|
|
|
+ //查询该部门所有人员
|
|
|
+ Integer total = userService.selectUserCount(kaoQinRecord);
|
|
|
+ //查询打卡人员
|
|
|
+ List<KaoqinRecord> kaoqinRecords = kaoqinRecordService.selectKaoqinRecordList(kaoQinRecord);
|
|
|
+ int daKaNum = 0;
|
|
|
+ if (kaoqinRecords != null) {
|
|
|
+ daKaNum = kaoqinRecords.size();
|
|
|
+ }
|
|
|
+ int weidaka = 0;
|
|
|
+ if (total > 0) {
|
|
|
+ weidaka = total - daKaNum;
|
|
|
+ }
|
|
|
+ if (weidaka < 0) {
|
|
|
+ weidaka = 0;
|
|
|
+ }
|
|
|
+ Map map = new HashMap(2);
|
|
|
+ map.put("weidaka", weidaka);
|
|
|
+ map.put("yidaka", daKaNum);
|
|
|
+ return AjaxResult.success(map);
|
|
|
+ }
|
|
|
}
|