From e423d56d730db1baed24f3f7dbbc4141038776b6 Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Fri, 18 Jun 2021 22:12:03 +0800
Subject: [PATCH] 修复每日业绩bug和优化赠送业绩计算方式
---
zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java | 135 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 119 insertions(+), 16 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java
index 2f035da..c3cc658 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java
@@ -1,16 +1,25 @@
package com.matrix.system.app.action;
+import com.matrix.component.redis.RedisClient;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.DateUtil;
import com.matrix.core.tools.WebUtil;
-import com.matrix.system.app.dto.BeauticianDto;
+import com.matrix.system.app.dto.*;
+import com.matrix.system.app.mapper.SysBeauticianStateMapper;
import com.matrix.system.app.mapper.SysUsersMapper;
+import com.matrix.system.app.mapper.SysWorkBeatuistaffMapper;
import com.matrix.system.app.vo.BeauticianVo;
import com.matrix.system.app.vo.UserAchieveVo;
+import com.matrix.system.app.vo.UserInfoDetailVo;
import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.interceptor.ApiUserLoginInterceptor;
import com.matrix.system.common.service.SysUsersService;
+import com.matrix.system.common.tools.DataAuthUtil;
+import com.matrix.system.common.tools.PasswordUtil;
+import com.matrix.system.hive.action.BaseController;
import com.matrix.system.hive.bean.SysBeauticianState;
+import com.matrix.system.hive.bean.SysWorkBeatuistaff;
import com.matrix.system.hive.service.AchieveNewService;
import com.matrix.system.hive.service.SysWorkBeatuistaffService;
import com.matrix.system.hive.service.SysWorktimeService;
@@ -19,10 +28,14 @@
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.io.UnsupportedEncodingException;
+import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.List;
@@ -33,15 +46,24 @@
@Api(value = "ApiUsersAction", tags = "用户中心接口类")
@RestController
@RequestMapping(value = "/api/user")
-public class ApiUsersAction {
+public class ApiUsersAction extends BaseController {
@Autowired
private AchieveNewService achieveNewService;
- @Resource
+
+ @Autowired
private SysWorktimeService sysWorkTimeService;
- @Resource
+
+ @Autowired
private SysUsersService sysUsersService;
+ @Autowired
+ private SysWorkBeatuistaffService sysWorkBeatuistaffService;
+
+ @Autowired
+ private RedisClient redisClient;
+ @Value("${login_private_key}")
+ private String privateKey;
@ApiOperation(value = "个人中心--获取用户业绩接口 type 1-今日 2-昨天 3-本月 4-上月")
@ApiResponses({
@@ -55,27 +77,108 @@
return ajaxResult;
}
- @ApiOperation(value = "获取美疗师列表")
+ @ApiOperation(value = "获取美疗师列表 - 开始时间结束时间")
@ApiResponses(
@ApiResponse(code = 200, message = "Ok", response = BeauticianVo.class)
)
@PostMapping(value = "/findBeauticianList")
public AjaxResult findBeauticianList(@RequestBody @Validated BeauticianDto beauticianDto) {
- SysBeauticianState sysBeauticianState = new SysBeauticianState();
- sysBeauticianState.setBeginTime(beauticianDto.getStartTime());
- sysBeauticianState.setEndTime(beauticianDto.getEndTime());
+// SysBeauticianState sysBeauticianState = new SysBeauticianState();
+// sysBeauticianState.setBeginTime(beauticianDto.getStartTime());
+// sysBeauticianState.setEndTime(beauticianDto.getEndTime());
+//
+// // 根据时间获取一段排班码
+// String panBanCodes = DateUtil.dateToString(sysBeauticianState.getBeginTime(),DateUtil.DATE_FORMAT_NO_SPLITE_DD);
+// // 获取登陆的用户
+// SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
+// List<SysUsers> staffs=new ArrayList<>();
+// if(sysWorkTimeService.isInWorkTime(user.getShopId(),sysBeauticianState.getBeginTime(),sysBeauticianState.getEndTime())){
+// staffs= sysUsersService.findByCodeBeaStateShop(user.getShopId(),
+// sysBeauticianState, panBanCodes);
+// }
- // 根据时间获取一段排班码
- String panBanCodes = DateUtil.dateToString(sysBeauticianState.getBeginTime(),DateUtil.DATE_FORMAT_NO_SPLITE_DD);
- // 获取登陆的用户
SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
- List<SysUsers> staffs=new ArrayList<>();
- if(sysWorkTimeService.isInWorkTime(user.getShopId(),sysBeauticianState.getBeginTime(),sysBeauticianState.getEndTime())){
- staffs= sysUsersService.findByCodeBeaStateShop(user.getShopId(),
- sysBeauticianState, panBanCodes);
+ String panBanCodes = DateUtil.dateToString(beauticianDto.getStartTime(),DateUtil.DATE_FORMAT_NO_SPLITE_DD);
+ List<SysWorkBeatuistaff> workBeauty = sysWorkBeatuistaffService.findByDateStr(panBanCodes, user.getShopId());
+ return new AjaxResult(AjaxResult.STATUS_SUCCESS, SysWorkBeatuistaffMapper.INSTANCE.workBeautysToBeautyVos(workBeauty), 0);
+ }
+
+ @ApiOperation(value = "退出登陆", notes = "退出登陆")
+ @GetMapping(value = "/loginOut")
+ public AjaxResult loginOut(HttpServletRequest request) {
+ String token=ApiUserLoginInterceptor.resolveToken(request,privateKey);
+ redisClient.removeObject(token);
+ return AjaxResult.buildSuccessInstance("退出成功");
+ }
+
+ @ApiOperation(value = "员工列表", notes = "员工列表")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = BeauticianVo.class)
+ })
+ @PostMapping(value = "/findAllUsers")
+ public AjaxResult findAllUsers(@RequestBody UsersQueryDto usersQueryDto) {
+ SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+
+ SysUsers query = new SysUsers();
+ if (DataAuthUtil.hasAllShopAuth()) {
+ query.setCompanyId(sysUsers.getCompanyId());
+ } else {
+ query.setCompanyId(sysUsers.getCompanyId());
+ query.setShopId(sysUsers.getShopId());
+ }
+ query.setSuUserType("employee");
+ query.setSuName(usersQueryDto.getQueryKey());
+ List<SysUsers> list = sysUsersService.findByModel(query);
+ List<BeauticianVo> dataList = SysUsersMapper.INSTANCE.usersListToBeautyList(list);
+ return AjaxResult.buildSuccessInstance(dataList);
+ }
+
+ @ApiOperation(value = "修改密码", notes = "修改密码")
+ @PostMapping(value = "/modifyPwd")
+ public AjaxResult modifyPwd(@RequestBody @Validated PwdModifyDto pwdModifyDto) throws UnsupportedEncodingException, NoSuchAlgorithmException {
+ SysUsers me = getMe();
+ SysUsers user = sysUsersService.findById(me.getSuId());
+
+ SysUsers pwdUser = new SysUsers();
+ pwdUser.setSuPassword(pwdModifyDto.getOldPwd());
+ pwdUser.setSuRegisterTime(user.getSuRegisterTime());
+ String pwd = PasswordUtil.getEncrypUserPwd(pwdUser);
+ if (!pwd.equals(user.getSuPassword())) {
+ return AjaxResult.buildFailInstance("老密码错误");
}
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, SysUsersMapper.INSTANCE.usersListToBeautyList(staffs), 0);
+ int i = sysUsersService.updateUserPassword(user.getSuId(), pwd);
+ if (i > 0) {
+ return AjaxResult.buildSuccessInstance("修改成功");
+ }
+ return AjaxResult.buildFailInstance("修改失败");
+
+ }
+
+ @ApiOperation(value = "获取当前登陆用户信息", notes = "获取当前登陆用户信息")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = UserInfoDetailVo.class)
+ })
+ @GetMapping(value = "/findUserInfo")
+ public AjaxResult findUserInfo() {
+ SysUsers user = sysUsersService.findById(getMe().getSuId());
+
+ UserInfoDetailVo userInfoDetailVo = SysUsersMapper.INSTANCE.usersToDetailInfoVo(user);
+ AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功");
+ ajaxResult.putInMap("detail", userInfoDetailVo);
+ return ajaxResult;
+ }
+
+ @ApiOperation(value = "编辑当前用户信息", notes = "编辑当前用户信息")
+ @PostMapping(value = "/modifyUserInfo")
+ public AjaxResult modifyUserInfo(@RequestBody @Validated ModifyUserDto modifyUserDto) {
+ SysUsers user = SysUsersMapper.INSTANCE.modifyUserDtoToUsers(modifyUserDto);
+ user.setSuId(getMe().getSuId());
+ int i = sysUsersService.modifyByModel(user);
+ if (i > 0) {
+ return AjaxResult.buildSuccessInstance("修改成功");
+ }
+ return AjaxResult.buildFailInstance("修改失败");
}
}
--
Gitblit v1.9.1