Helius
2020-12-25 9f08b3ce3d4d0a1f3837c34ccd4d318da4b64076
modify
3 files added
4 files modified
340 ■■■■■ changed files
zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java 13 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java 43 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java 25 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java 103 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java 128 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml 26 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java
@@ -11,10 +11,7 @@
import com.matrix.system.app.dto.ServiceOrderListDto;
import com.matrix.system.app.mapper.SysBeauticianStateMapper;
import com.matrix.system.app.mapper.SysProjUseMapper;
import com.matrix.system.app.vo.ServiceOrderListVo;
import com.matrix.system.app.vo.ServiceProductListVo;
import com.matrix.system.app.vo.ServiceProjVo;
import com.matrix.system.app.vo.ServiceTcVo;
import com.matrix.system.app.vo.*;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.constance.Dictionary;
import com.matrix.system.hive.bean.SysBeauticianState;
@@ -156,4 +153,12 @@
        return AjaxResult.buildSuccessInstance(projServicesService.findApiServiceOrderListInPage(orderListDto, pageVo), projServicesService.findApiServiceOrderListTotal(orderListDto));
    }
    @ApiOperation(value = "获取服务单详情", notes = "获取服务单详情")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = ServiceOrderDetailVo.class)
    })
    @GetMapping(value = "/findServiceOrderDetail/{id}")
    public AjaxResult findServiceOrderDetail(@PathVariable("id") Long id) {
        return null;
    }
}
zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java
@@ -5,12 +5,15 @@
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.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.common.bean.SysUsers;
import com.matrix.system.common.service.SysUsersService;
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;
@@ -37,10 +40,15 @@
    @Autowired
    private AchieveNewService achieveNewService;
    @Resource
    @Autowired
    private SysWorktimeService sysWorkTimeService;
    @Resource
    @Autowired
    private SysUsersService sysUsersService;
    @Autowired
    private SysWorkBeatuistaffService sysWorkBeatuistaffService;
    @ApiOperation(value = "个人中心--获取用户业绩接口 type 1-今日 2-昨天 3-本月 4-上月")
@@ -55,27 +63,30 @@
        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);
        }
        return new AjaxResult(AjaxResult.STATUS_SUCCESS, SysUsersMapper.INSTANCE.usersListToBeautyList(staffs), 0);
        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);
    }
}
zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java
@@ -16,12 +16,10 @@
public class BeauticianDto {
    @JsonFormat(pattern = DateUtil.DATE_FORMAT_MM, timezone = "GMT+8")
    @NotNull(message = "开始时间不能为空")
    @ApiModelProperty(value = "开始时间")
    private Date startTime;
    @JsonFormat(pattern = DateUtil.DATE_FORMAT_MM, timezone = "GMT+8")
    @NotNull(message = "结束时间不能为空")
    @ApiModelProperty(value = "结束时间")
    private Date endTime;
zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java
New file
@@ -0,0 +1,25 @@
package com.matrix.system.app.mapper;
import com.matrix.system.app.vo.BeauticianVo;
import com.matrix.system.hive.bean.SysWorkBeatuistaff;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
 * @author wzy
 * @date 2020-12-25
 **/
@Mapper
public abstract class SysWorkBeatuistaffMapper {
    public static final SysWorkBeatuistaffMapper INSTANCE = Mappers.getMapper(SysWorkBeatuistaffMapper.class);
    @Mapping(source = "staffId", target = "id")
    @Mapping(source = "workStaffName", target = "name")
    public abstract BeauticianVo workBeautyToBeautyVo(SysWorkBeatuistaff sysWorkBeatuistaff);
    public abstract List<BeauticianVo> workBeautysToBeautyVos(List<SysWorkBeatuistaff> sysWorkBeatuistaff);
}
zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java
New file
@@ -0,0 +1,103 @@
package com.matrix.system.app.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @author wzy
 * @date 2020-12-25
 **/
@ApiModel(value = "ServiceOrderDetailItemVo", description = "服务单详情接口参数返回类")
public class ServiceOrderDetailItemVo {
    @ApiModelProperty(value = "名称")
    private String name;
    @ApiModelProperty(value = "数量")
    private Integer count;
    @ApiModelProperty(value = "价格")
    private BigDecimal price;
    @ApiModelProperty(value = "服务开始时间")
    private Date startTime;
    @ApiModelProperty(value = "服务结束时间")
    private Date endTime;
    @ApiModelProperty(value = "时长")
    private Integer timeLength;
    @ApiModelProperty(value = "美疗师")
    private String beautyName;
    @ApiModelProperty(value = "提成")
    private BigDecimal commission;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public BigDecimal getPrice() {
        return price;
    }
    public void setPrice(BigDecimal price) {
        this.price = price;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public Integer getTimeLength() {
        return timeLength;
    }
    public void setTimeLength(Integer timeLength) {
        this.timeLength = timeLength;
    }
    public String getBeautyName() {
        return beautyName;
    }
    public void setBeautyName(String beautyName) {
        this.beautyName = beautyName;
    }
    public BigDecimal getCommission() {
        return commission;
    }
    public void setCommission(BigDecimal commission) {
        this.commission = commission;
    }
}
zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java
New file
@@ -0,0 +1,128 @@
package com.matrix.system.app.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.matrix.core.tools.DateUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import java.util.List;
/**
 * @author wzy
 * @date 2020-12-25
 **/
@ApiModel(value = "ServiceOrderDetailVo", description = "服务单详情返回参数类")
public class ServiceOrderDetailVo {
    @ApiModelProperty(value = "服务单号")
    private String serviceNo;
    @ApiModelProperty(value = "会员姓名")
    private String vipName;
    @ApiModelProperty(value = "手机号")
    private String phone;
    @JsonFormat(pattern = DateUtil.DATE_FORMAT_MM, timezone = "GMT+8")
    @ApiModelProperty(value = "预约时间")
    private Date yyTime;
    @ApiModelProperty(value = "床位")
    private String bedName;
    @ApiModelProperty(value = "配料师傅")
    private String plsName;
    @ApiModelProperty(value = "服务总时长")
    private Integer totalTime;
    @ApiModelProperty(value = "下单顾问")
    private String staffName;
    @ApiModelProperty(value = "服务单状态")
    private String status;
    @ApiModelProperty(value = "服务明细")
    private List<ServiceOrderDetailItemVo> items;
    public String getServiceNo() {
        return serviceNo;
    }
    public void setServiceNo(String serviceNo) {
        this.serviceNo = serviceNo;
    }
    public String getVipName() {
        return vipName;
    }
    public void setVipName(String vipName) {
        this.vipName = vipName;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }
    public Date getYyTime() {
        return yyTime;
    }
    public void setYyTime(Date yyTime) {
        this.yyTime = yyTime;
    }
    public String getBedName() {
        return bedName;
    }
    public void setBedName(String bedName) {
        this.bedName = bedName;
    }
    public String getPlsName() {
        return plsName;
    }
    public void setPlsName(String plsName) {
        this.plsName = plsName;
    }
    public Integer getTotalTime() {
        return totalTime;
    }
    public void setTotalTime(Integer totalTime) {
        this.totalTime = totalTime;
    }
    public String getStaffName() {
        return staffName;
    }
    public void setStaffName(String staffName) {
        this.staffName = staffName;
    }
    public String getStatus() {
        return status;
    }
    public void setStatus(String status) {
        this.status = status;
    }
    public List<ServiceOrderDetailItemVo> getItems() {
        return items;
    }
    public void setItems(List<ServiceOrderDetailItemVo> items) {
        this.items = items;
    }
}
zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml
@@ -16,6 +16,16 @@
            <association property="sysWorktime" column="id=WORK_ID" select="com.matrix.system.hive.dao.SysWorktimeDao.selectById" ></association>
            
    </resultMap>
    <resultMap type="SysWorkBeatuistaff" id="SysWorkBeatuistaffSimpleMap">
        <id property="id" column="ID" />
        <result property="staffId" column="STAFF_ID" />
        <result property="paibanCode" column="PAIBAN_CODE" />
        <result property="workId" column="WORK_ID" />
        <result property="signOrder" column="signOrder" />
        <result property="workStaffName" column="WORK_STAFF_NAME" />
    </resultMap>
    <!--  插入方法   -->
    <insert id="insert" parameterType="SysWorkBeatuistaff"
        useGeneratedKeys="true" keyProperty="id">
@@ -82,17 +92,13 @@
    
    
    <!-- 根据时间查询当天上班的人 -->
    <select id="selectByDateStr" resultMap="SysWorkBeatuistaffMap">
    <select id="selectByDateStr" resultMap="SysWorkBeatuistaffSimpleMap">
        select 
        ID,
            STAFF_ID,
            PAIBAN_CODE,
            SHOP_ID,
            WORK_ID,
            (select su_name FROM sys_users t where t.su_id=STAFF_ID) AS WORK_STAFF_NAME
        from sys_work_beatuistaff
        where PAIBAN_CODE = #{timeStr}
        and SHOP_ID=#{shopId}
              distinct a.STAFF_ID, PAIBAN_CODE, a.SHOP_ID, b.su_name as WORK_STAFF_NAME
        from sys_work_beatuistaff a
        left join sys_users b on b.su_id=a.STAFF_ID
        where a.PAIBAN_CODE = #{timeStr}
        and a.SHOP_ID=#{shopId}
    </select>
    
    <!-- 根据排班编号查询 -->