Helius
2020-12-25 6560aa50be0d7108c95261c39324f1e0663285f8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
package com.matrix.system.app.action;
 
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.mapper.SysUsersMapper;
import com.matrix.system.app.vo.BeauticianVo;
import com.matrix.system.app.vo.UserAchieveVo;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.service.SysUsersService;
import com.matrix.system.hive.bean.SysBeauticianState;
import com.matrix.system.hive.service.AchieveNewService;
import com.matrix.system.hive.service.SysWorkBeatuistaffService;
import com.matrix.system.hive.service.SysWorktimeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
 
/**
 * @author wzy
 * @date 2020-12-21
 **/
@Api(value = "ApiUsersAction", tags = "用户中心接口类")
@RestController
@RequestMapping(value = "/api/user")
public class ApiUsersAction {
 
    @Autowired
    private AchieveNewService achieveNewService;
    @Resource
    private SysWorktimeService sysWorkTimeService;
    @Resource
    private SysUsersService sysUsersService;
 
 
    @ApiOperation(value = "个人中心--获取用户业绩接口 type 1-今日 2-昨天 3-本月 4-上月")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = UserAchieveVo.class)
    })
    @GetMapping(value = "/findUserAchieve/{type}")
    public AjaxResult findUserAchieve(@PathVariable("type") Integer type) {
        UserAchieveVo achieveVo = achieveNewService.findUserAchieveByTime(type);
        AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功");
        ajaxResult.putInMap("achieve", achieveVo);
        return ajaxResult;
    }
 
    @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());
 
        // 根据时间获取一段排班码
        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);
        }
 
        return new AjaxResult(AjaxResult.STATUS_SUCCESS, SysUsersMapper.INSTANCE.usersListToBeautyList(staffs), 0);
    }
 
}