From 9f08b3ce3d4d0a1f3837c34ccd4d318da4b64076 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 25 Dec 2020 18:20:51 +0800
Subject: [PATCH] modify

---
 zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java    |   13 +
 zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java |   25 ++++
 zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java           |   43 ++++--
 zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java               |    2 
 zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml         |   28 ++-
 zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java         |  128 +++++++++++++++++++++
 zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java     |  103 +++++++++++++++++
 7 files changed, 309 insertions(+), 33 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java
index 4d11ac1..03a4459 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java
+++ b/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;
+    }
 }
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..95a5374 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
@@ -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);
     }
 
 }
diff --git a/zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java b/zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java
index 362d34f..84cd5f1 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/dto/BeauticianDto.java
+++ b/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;
 
diff --git a/zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java b/zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java
new file mode 100644
index 0000000..9759907
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/app/mapper/SysWorkBeatuistaffMapper.java
@@ -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);
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java b/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java
new file mode 100644
index 0000000..ddccddf
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailItemVo.java
@@ -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;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java b/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java
new file mode 100644
index 0000000..56019c0
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/app/vo/ServiceOrderDetailVo.java
@@ -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;
+    }
+}
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml
index ea19ca7..2434c5f 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysWorkBeatuistaffDao.xml
+++ b/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,
-			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}
+	<select id="selectByDateStr" resultMap="SysWorkBeatuistaffSimpleMap">
+		select
+			  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>
 	
 	<!-- 根据排班编号查询 -->

--
Gitblit v1.9.1