From c0dc765ad93846078718bb15976905c34db7584c Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Sat, 16 Jan 2021 14:57:23 +0800
Subject: [PATCH] 小程序端服务单评论

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailItemVo.java      |   63 +++
 zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java                     |    6 
 zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml                        |   52 ++
 zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml                 |  138 ++++++-
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceOrderListDto.java   |   50 ++
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java           |   73 +-
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxErpOrderAction.java      |  134 +++++++
 zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java              |   19 +
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailFlowVo.java      |   37 +
 zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderItemDao.java                 |    3 
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListVo.java     |  147 +++++++
 zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderItemDao.xml                    |   12 
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListProjVo.java |   45 ++
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailVo.java          |  158 ++++++++
 zq-erp/src/main/java/com/matrix/system/app/dto/ServiceOrderListDto.java              |    9 
 zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjServices.java                |   26 +
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceCommentDto.java     |   41 ++
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpOrderListDto.java          |   78 ++++
 18 files changed, 1,027 insertions(+), 64 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/app/dto/ServiceOrderListDto.java b/zq-erp/src/main/java/com/matrix/system/app/dto/ServiceOrderListDto.java
index 5b2679d..1c0a500 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/dto/ServiceOrderListDto.java
+++ b/zq-erp/src/main/java/com/matrix/system/app/dto/ServiceOrderListDto.java
@@ -16,8 +16,6 @@
     @ApiModelProperty(value = "状态 0/全部 1/待确认 2/待排班 3/待配料 4/待服务 5/服务中 6/已完成 ")
     private String status;
 
-    @ApiModelProperty(value = "客户视角状态 0/全部 1/待确认 2进行中(待排班/待配料/待服务/服务中) 3/待评价(已完成/服务结束) 4/已评价 5/已取消 ")
-    private String vipStatus;
 
     @ApiModelProperty(hidden = true)
     private Long shopId;
@@ -28,13 +26,6 @@
     @ApiModelProperty(value = "客户ID")
     private Long vipId;
 
-    public String getVipStatus() {
-        return vipStatus;
-    }
-
-    public void setVipStatus(String vipStatus) {
-        this.vipStatus = vipStatus;
-    }
 
     public Long getVipId() {
         return vipId;
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjServices.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjServices.java
index 70cd5a4..dd76b14 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjServices.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysProjServices.java
@@ -232,6 +232,14 @@
      * 床位名称
      */
     private String bedName;
+     /**
+     * 评价
+     */
+    private String comment;
+     /**
+     * 评价回复
+     */
+    private String reply;
     /**
      * 商机
      */
@@ -241,6 +249,8 @@
      * 服务预计时长
      */
     private Integer totalTime;
+
+
 
 
 
@@ -256,6 +266,22 @@
      */
     private SysShopInfo shopInfo;
 
+    public String getComment() {
+        return comment;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
+
+    public String getReply() {
+        return reply;
+    }
+
+    public void setReply(String reply) {
+        this.reply = reply;
+    }
+
     @Extend
     private String shopName;
 
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java
index b0c55ff..8be75a3 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java
@@ -5,6 +5,8 @@
 import com.matrix.system.app.vo.OrderDetailVo;
 import com.matrix.system.app.vo.RankingVo;
 import com.matrix.system.hive.bean.SysOrder;
+import com.matrix.system.shopXcx.api.dto.ErpOrderListDto;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.Date;
@@ -48,4 +50,8 @@
 	List<RankingVo> selectShopAchieveRanking(@Param("record") SysOrder sysOrder);
 
 	List<RankingVo> selectStaffSaleAchieveRanking(@Param("record") SysOrder sysOrder);
+
+	List<ErpOrderDetailVo> selectErpOrderList(ErpOrderListDto erpOrderListDto);
+
+	ErpOrderDetailVo findUserOrderById(Long orderId);
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderItemDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderItemDao.java
index 2ff8371..5446b22 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderItemDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderItemDao.java
@@ -3,6 +3,7 @@
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.system.app.vo.OrderDetailItemVo;
 import com.matrix.system.hive.bean.SysOrderItem;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailItemVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.Date;
@@ -61,4 +62,6 @@
 	public int   deleteByOrderId(Long id);
 
 	List<OrderDetailItemVo> selectApiOrderDetailItemsByOrderId(@Param("orderId") Long orderId);
+
+    List<ErpOrderDetailItemVo> selectErpOrderItemByOrderId(String orderId);
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java
index 825d86e..845b2e5 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysProjServicesDao.java
@@ -3,6 +3,9 @@
 import com.matrix.system.app.dto.ServiceOrderListDto;
 import com.matrix.system.app.vo.ServiceOrderListVo;
 import com.matrix.system.hive.bean.SysProjServices;
+import com.matrix.system.shopXcx.api.dto.ErpServiceOrderListDto;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailItemVo;
+import com.matrix.system.shopXcx.api.vo.ErpServiceOrderListVo;
 import org.apache.ibatis.annotations.Param;
 
 import com.matrix.core.pojo.PaginationVO;
@@ -41,4 +44,20 @@
 	List<ServiceOrderListVo> selectApiServiceOrderListInPage(@Param("record") ServiceOrderListDto serviceOrderListDto, @Param("pageVo") PaginationVO pageVo);
 
 	int selectApiServiceOrderListTotal(@Param("record") ServiceOrderListDto serviceOrderListDto);
+
+	/**
+	 * 小程序端查询客户预约单
+	 * @param orderListDto
+	 * @return
+	 */
+    List<ErpServiceOrderListVo> findWxServiceOrderList(ErpServiceOrderListDto orderListDto);
+
+	/**
+	 * 小程序端查询客户预约单详情
+	 * @param id
+	 * @return
+	 */
+	ErpServiceOrderListVo findWxServiceOrderById(Long id);
+
+
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxErpOrderAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxErpOrderAction.java
new file mode 100644
index 0000000..5f06f91
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxErpOrderAction.java
@@ -0,0 +1,134 @@
+package com.matrix.system.shopXcx.api.action;
+
+import com.alibaba.fastjson.JSONObject;
+import com.matrix.biz.bean.BizUser;
+import com.matrix.component.redis.RedisClient;
+import com.matrix.component.redis.RedisUserLoginUtils;
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.tools.LogUtil;
+import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.UUIDUtil;
+import com.matrix.system.app.authority.AppAuthorityManager;
+import com.matrix.system.app.dto.LoginDto;
+import com.matrix.system.app.dto.PwdResetDto;
+import com.matrix.system.app.dto.SmsCodeDto;
+import com.matrix.system.app.dto.UploadPhotoDto;
+import com.matrix.system.app.vo.UserInfoVo;
+import com.matrix.system.common.authority.strategy.AccountPasswordLogin;
+import com.matrix.system.common.authority.strategy.LoginStrategy;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.service.SysUsersService;
+import com.matrix.system.common.tools.PasswordUtil;
+import com.matrix.system.hive.bean.AppVersion;
+import com.matrix.system.hive.bean.SysOrderFlow;
+import com.matrix.system.hive.bean.SysShopInfo;
+import com.matrix.system.hive.bean.SysVipInfo;
+import com.matrix.system.hive.dao.SysOrderDao;
+import com.matrix.system.hive.dao.SysOrderFlowDao;
+import com.matrix.system.hive.dao.SysOrderItemDao;
+import com.matrix.system.hive.dao.SysVipInfoDao;
+import com.matrix.system.hive.plugin.util.CollectionUtils;
+import com.matrix.system.hive.plugin.util.ImageUtil;
+import com.matrix.system.hive.service.SysShopInfoService;
+import com.matrix.system.shopXcx.api.dto.ErpOrderListDto;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailFlowVo;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailItemVo;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.beans.BeanUtils;
+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 java.io.File;
+import java.io.UnsupportedEncodingException;
+import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author wzy
+ * @date 2020-12-21
+ **/
+@Api(value = "WxErpOrderAction", tags = "小程序端Erp订单查询接口")
+@RestController
+@RequestMapping(value = "/wxapi/erpOrder")
+public class WxErpOrderAction {
+
+    @Autowired
+    private SysUsersService sysUsersService;
+
+    @Autowired
+    private SysShopInfoService sysShopInfoService;
+
+    @Autowired
+    private AppAuthorityManager authorityManager;
+
+    @Autowired
+    private RedisClient redisClient;
+
+    @Autowired
+    private SysVipInfoDao vipInfoDao;
+
+    @Autowired
+    RedisUserLoginUtils redisUserLoginUtils;
+
+    @Autowired
+    private SysOrderDao sysOrderDao;
+
+    @Autowired
+    private SysOrderItemDao orderItemDao;
+
+    @Autowired
+    private SysOrderFlowDao orderFlowDao;
+
+    @Value("${file_storage_path}")
+    private String fileStoragePath;
+    @Value("${static_resource_url}")
+    private String nginxUrl;
+
+    @ApiOperation(value = "查询用户所有在ERP中产生的订单" )
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "OK",  response = ErpOrderListDto.class)
+    })
+    @PostMapping(value = "/findUserOrderList")
+    public AjaxResult findUserOrderList(@RequestBody @Validated ErpOrderListDto erpOrderListDto) {
+        BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+        SysVipInfo vipInfo = vipInfoDao.selectByPhone(bizUser.getPhoneNumber());
+        erpOrderListDto.setVipId(vipInfo.getId());
+        List<ErpOrderDetailVo> rows=sysOrderDao.selectErpOrderList(erpOrderListDto);
+        rows.forEach(item->{
+            item.setItems(orderItemDao.selectErpOrderItemByOrderId(item.getOrderId()));
+        });
+        return  AjaxResult.buildSuccessInstance(rows,"查询成功");
+    }
+
+    @ApiOperation(value = "查询用户在ERP中的订单详情" )
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "OK",  response = ErpOrderListDto.class)
+    })
+    @GetMapping(value = "/findUserOrderById/{orderId}")
+    public AjaxResult findUserOrderList(@PathVariable Long orderId) {
+        ErpOrderDetailVo order=sysOrderDao.findUserOrderById(orderId);
+        order.setItems(orderItemDao.selectErpOrderItemByOrderId(order.getOrderId()));
+        List<SysOrderFlow> sysOrderFlows = orderFlowDao.selectPayMethodsAmountByOrderId(orderId);
+        List<ErpOrderDetailFlowVo> flowVos=new ArrayList<>();
+        sysOrderFlows.forEach(item->{
+            ErpOrderDetailFlowVo erpOrderDetailFlowVo = new ErpOrderDetailFlowVo();
+            BeanUtils.copyProperties(item,erpOrderDetailFlowVo);
+            flowVos.add(erpOrderDetailFlowVo);
+        });
+        order.setFlow(flowVos);
+        AjaxResult result = AjaxResult.buildSuccessInstance("查询成功");
+        result.putInMap("order",order);
+        return  result;
+    }
+
+
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java
index ec285b8..1c07d32 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java
@@ -10,6 +10,7 @@
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.core.pojo.VerifyResult;
 import com.matrix.core.tools.DateUtil;
+import com.matrix.core.tools.LogUtil;
 import com.matrix.core.tools.StringUtils;
 import com.matrix.core.tools.WebUtil;
 import com.matrix.system.app.dto.ServiceOrderListDto;
@@ -27,12 +28,17 @@
 import com.matrix.system.hive.dao.*;
 import com.matrix.system.hive.plugin.util.CollectionUtils;
 import com.matrix.system.hive.service.*;
+import com.matrix.system.shopXcx.api.dto.ErpServiceCommentDto;
+import com.matrix.system.shopXcx.api.dto.ErpServiceOrderListDto;
+import com.matrix.system.shopXcx.api.vo.ErpOrderDetailItemVo;
+import com.matrix.system.shopXcx.api.vo.ErpServiceOrderListVo;
 import com.matrix.system.shopXcx.bean.ShopProduct;
 import com.matrix.system.shopXcx.dao.ShopProductDao;
 import com.matrix.system.shopXcx.dao.ShopSkuDao;
 import com.matrix.system.shopXcx.dto.YYDayOfWeek;
 import com.matrix.system.shopXcx.dto.YYmonth;
 import com.matrix.system.shopXcx.mqTask.DTO.UserProjInfo;
+import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
@@ -266,17 +272,13 @@
     public @ResponseBody
     AjaxResult createServiceOrder(@RequestBody Onlinebooking onlinebooking) {
         BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
-        bizUser = bizUserDao.findByOpenId(bizUser.getOpenId());
         SysVipInfo vipInfo = vipInfoDao.selectByPhone(bizUser.getPhoneNumber());
-
-
         SysProjUse sysProjUse = projUseDao.selectById(Long.parseLong(onlinebooking.getProductId() + ""));
         Date yyTime = DateUtil.stringToDate(onlinebooking.getTimeStr(), DateUtil.DATE_FORMAT_MM);
         SysProjServices sysProjServices = new SysProjServices();
         sysProjServices.setCompanyId(vipInfo.getCompanyId());
         sysProjServices.setShopId(onlinebooking.getShopId());
         sysProjServices.setVipId(vipInfo.getId());
-
         sysProjServices.setYyTime(yyTime);
         sysProjServices.setRemark(onlinebooking.getRemark());
 
@@ -325,6 +327,10 @@
      * @param id
      * @return
      */
+    @ApiOperation(value = " 根据id查询预约订单的详情", notes = " 根据id查询预约订单的详情")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "ok", response = ErpServiceOrderListVo.class)
+    })
     @RequestMapping(value = "/getServiceOrderById/{id}")
     public @ResponseBody
     AjaxResult getServiceOrderById(@PathVariable("id") Long id) {
@@ -332,13 +338,9 @@
         if (projServices == null) {
             return AjaxResult.buildFailInstance("服务单不存在");
         }
-        ServiceOrderDetailVo detailVo = SysProjServiceMapper.INSTANCE.projServiceToDetailVo(projServices);
-        List<SysBeauticianState> beauticianStates = sysBeauticianStateService.findBySerId(projServices.getId());
-        List<ServiceOrderDetailItemVo> items = SysBeauticianStateMapper.INSTANCE.entitiesToDetailItemsVo(beauticianStates);
-        detailVo.setItems(items);
+        ErpServiceOrderListVo serviceOrder = projServicesDao.findWxServiceOrderById(id);
         AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("获取成功");
-        ajaxResult.putInMap("detail", detailVo);
-        ajaxResult.putInMap("shopInfo", shopInfoDao.selectById(projServices.getShopId()));
+        ajaxResult.putInMap("detail", serviceOrder);
         return ajaxResult;
     }
 
@@ -349,20 +351,18 @@
      * @param orderListDto
      * @return
      */
+    @ApiOperation(value = "查询服务单列表", notes = "查询服务单列表")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "ok", response = ErpServiceOrderListVo.class)
+    })
     @PostMapping(value = "/getServiceOrderList")
     @ResponseBody
-    public AjaxResult findServiceOrderList(@RequestBody @Validated ServiceOrderListDto orderListDto) {
+    public AjaxResult findServiceOrderList(@RequestBody @Validated ErpServiceOrderListDto orderListDto) {
         BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
         SysVipInfo vipInfo= vipInfoDao.selectByPhone(bizUser.getPhoneNumber());
-
-        PaginationVO pageVo = new PaginationVO();
-        int offset = (orderListDto.getPageNum() - 1) * orderListDto.getPageSize();
-        int limit = orderListDto.getPageSize();
-        pageVo.setOffset(offset);
-        pageVo.setLimit(limit);
         orderListDto.setVipId(vipInfo.getId());
-        List<ServiceOrderListVo> apiServiceOrderListInPage = projServicesService.findApiServiceOrderListInPage(orderListDto, pageVo);
-        return AjaxResult.buildSuccessInstance(apiServiceOrderListInPage, projServicesService.findApiServiceOrderListTotal(orderListDto));
+        List<ErpServiceOrderListVo> apiServiceOrderListInPage = projServicesDao.findWxServiceOrderList(orderListDto);
+        return AjaxResult.buildSuccessInstance(apiServiceOrderListInPage,"查询成功");
     }
 
     /**
@@ -371,10 +371,10 @@
      * @param
      * @return
      */
-    @RequestMapping(value = "/cancelOrderById/{id}")
+    @ApiOperation(value = "取消预约", notes = "取消预约")
+    @GetMapping(value = "/cancelOrderById/{id}")
     public @ResponseBody
-    AjaxResult cancelOrderById(@PathVariable("id") Long id) {
-
+    AjaxResult cancelOrderById(@PathVariable Long id) {
         SysProjServices services = new SysProjServices();
         services.setId(id);
         int i = projServicesService.modifyCancelProjServices(services);
@@ -383,25 +383,26 @@
         } else {
             return new AjaxResult(AjaxResult.STATUS_FAIL, "取消预约失败");
         }
+    }
 
+
+    @ApiOperation(value = "服务单评论", notes = "服务单评论")
+    @PostMapping(value = "/commentService")
+    public @ResponseBody
+    AjaxResult commentService(@RequestBody @Validated ErpServiceCommentDto commentDto) {
+        SysProjServices services = new SysProjServices();
+        services.setId(commentDto.getId());
+        services.setComment(commentDto.getComment());
+        int i = projServicesDao.update(services);
+        if (i > 0) {
+            return new AjaxResult(AjaxResult.STATUS_SUCCESS, "评论成功");
+        } else {
+            return new AjaxResult(AjaxResult.STATUS_FAIL, "评论失败");
+        }
     }
 
 
 
-
-    private UserProjInfo coversion(SysProjUse pUse) {
-        UserProjInfo projInfo = new UserProjInfo();
-        projInfo.setId(pUse.getId());
-        projInfo.setName(shoppingGoodsDao.selectById(pUse.getProjId()).getName());
-        projInfo.setSurplusCount(pUse.getSurplusCount() + "");
-        projInfo.setType(pUse.getType());
-        return projInfo;
-    }
-
-
-    private int dateToCodeInt(Date date) {
-        return Integer.parseInt(DateUtil.dateToString(date, DateUtil.HHmm));
-    }
 
 
 }
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpOrderListDto.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpOrderListDto.java
new file mode 100644
index 0000000..a3dea39
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpOrderListDto.java
@@ -0,0 +1,78 @@
+package com.matrix.system.shopXcx.api.dto;
+
+import com.matrix.core.pojo.PaginationDto;
+import com.matrix.system.app.dto.BasePageDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @author jyy
+ * @date 2020-12-23
+ **/
+@ApiModel(value = "ErpOrderListDto", description = "订单列表接收参数类")
+public class ErpOrderListDto extends PaginationDto {
+
+    @ApiModelProperty(value = "订单状态 0-全部 1-待付款 2-已付款 3-欠款  4-已取消 全部默认传空字符串", example = "1")
+    private Integer orderStatus;
+
+    @ApiModelProperty(hidden = true)
+    private String status;
+
+    @ApiModelProperty(value = "查询字段")
+    private String queryKey;
+
+    @ApiModelProperty(hidden = true)
+    private Long vipId;
+
+    public Long getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(Long vipId) {
+        this.vipId = vipId;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getQueryKey() {
+        return queryKey;
+    }
+
+    public void setQueryKey(String queryKey) {
+        this.queryKey = queryKey;
+    }
+
+    public Integer getOrderStatus() {
+        return orderStatus;
+    }
+
+    public void setOrderStatus(Integer orderStatus) {
+        this.orderStatus = orderStatus;
+        switch (orderStatus) {
+            case 0 :
+                this.status = "";
+                break;
+            case 1:
+                this.status = "待付款";
+                break;
+            case 2:
+                this.status = "已付款";
+                break;
+            case 3:
+                this.status = "欠款";
+                break;
+            case 4:
+                this.status = "已取消";
+                break;
+            default:
+                this.status = "";
+                break;
+        }
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceCommentDto.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceCommentDto.java
new file mode 100644
index 0000000..25dbf57
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceCommentDto.java
@@ -0,0 +1,41 @@
+package com.matrix.system.shopXcx.api.dto;
+
+import com.matrix.core.pojo.PaginationDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author jyy
+ * @date 2020-12-23
+ **/
+@ApiModel(value = "ErpServiceCommentDto", description = "服务评价")
+public class ErpServiceCommentDto   {
+
+
+    @NotNull(message = "评论内容不能为空")
+    @ApiModelProperty(value = "评论内容")
+    private String comment;
+
+    @NotNull(message = "服务单id不能为空")
+    @ApiModelProperty(value = "服务单id")
+    private Long id;
+
+
+    public String getComment() {
+        return comment;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceOrderListDto.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceOrderListDto.java
new file mode 100644
index 0000000..ceba6b0
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ErpServiceOrderListDto.java
@@ -0,0 +1,50 @@
+package com.matrix.system.shopXcx.api.dto;
+
+import com.matrix.core.pojo.PaginationDto;
+import com.matrix.system.app.dto.BasePageDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @author jyy
+ * @date 2020-12-24
+ **/
+@ApiModel(value = "ErpServiceOrderListDto", description = "服务单列表参数接收类")
+public class ErpServiceOrderListDto extends PaginationDto {
+
+    @ApiModelProperty(value = "查询参数")
+    private String queryKey;
+
+    @ApiModelProperty(value = "客户视角状态 0/全部 1/待确认 2进行中(待排班/待配料/待服务/服务中) 3/待评价(已完成/服务结束) 4/已评价 5/已取消 ")
+    private String vipStatus;
+
+    @ApiModelProperty(value = "客户ID")
+    private Long vipId;
+
+    public String getVipStatus() {
+        return vipStatus;
+    }
+
+    public void setVipStatus(String vipStatus) {
+        this.vipStatus = vipStatus;
+    }
+
+    public Long getVipId() {
+        return vipId;
+    }
+
+    public void setVipId(Long vipId) {
+        this.vipId = vipId;
+    }
+
+    public String getQueryKey() {
+        return queryKey;
+    }
+
+    public void setQueryKey(String queryKey) {
+        this.queryKey = queryKey;
+    }
+
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailFlowVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailFlowVo.java
new file mode 100644
index 0000000..c2787f7
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailFlowVo.java
@@ -0,0 +1,37 @@
+package com.matrix.system.shopXcx.api.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+
+/**
+ * @author jyy
+ * @date 2020-12-23
+ **/
+@ApiModel(value = "ErpOrderDetailFlowVo", description = "订单支付方式")
+public class ErpOrderDetailFlowVo {
+
+
+    @ApiModelProperty(value = "支付方式")
+    private String payMethod;
+
+    @ApiModelProperty(value = "支付金额")
+    private BigDecimal amount;
+
+    public String getPayMethod() {
+        return payMethod;
+    }
+
+    public void setPayMethod(String payMethod) {
+        this.payMethod = payMethod;
+    }
+
+    public BigDecimal getAmount() {
+        return amount;
+    }
+
+    public void setAmount(BigDecimal amount) {
+        this.amount = amount;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailItemVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailItemVo.java
new file mode 100644
index 0000000..a9980f3
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailItemVo.java
@@ -0,0 +1,63 @@
+package com.matrix.system.shopXcx.api.vo;
+
+import com.matrix.system.app.vo.OrderDetailAchieveItemVo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @author jyy
+ * @date 2020-12-23
+ **/
+@ApiModel(value = "ErpOrderDetailItemVo", description = "订单详情明细表")
+public class ErpOrderDetailItemVo {
+
+
+    @ApiModelProperty(value = "商品名称")
+    private String goodsName;
+
+    @ApiModelProperty(value = "数量")
+    private String count;
+
+
+    @ApiModelProperty(value = "原价")
+    private BigDecimal price;
+
+    @ApiModelProperty(value = "折扣价格")
+    private BigDecimal zkPrice;
+
+
+    public String getGoodsName() {
+        return goodsName;
+    }
+
+    public void setGoodsName(String goodsName) {
+        this.goodsName = goodsName;
+    }
+
+    public String getCount() {
+        return count;
+    }
+
+    public void setCount(String count) {
+        this.count = count;
+    }
+
+    public BigDecimal getPrice() {
+        return price;
+    }
+
+    public void setPrice(BigDecimal price) {
+        this.price = price;
+    }
+
+    public BigDecimal getZkPrice() {
+        return zkPrice;
+    }
+
+    public void setZkPrice(BigDecimal zkPrice) {
+        this.zkPrice = zkPrice;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailVo.java
new file mode 100644
index 0000000..05189d6
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpOrderDetailVo.java
@@ -0,0 +1,158 @@
+package com.matrix.system.shopXcx.api.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.matrix.core.tools.DateUtil;
+import com.matrix.system.app.vo.OrderDetailItemVo;
+import com.matrix.system.hive.bean.SysOrderFlow;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author jyy
+ * @date 2020-12-23
+ **/
+@ApiModel(value = "ErpOrderDetailVo", description = "订单详情返回参数类")
+public class ErpOrderDetailVo {
+
+    @ApiModelProperty(value = "订单ID")
+    private String orderId;
+
+    @ApiModelProperty(value = "门店名称")
+    private String shopName;
+
+    @ApiModelProperty(value = "订单号")
+    private String orderNo;
+
+    @ApiModelProperty(value = "顾问姓名")
+    private String staffName;
+
+
+    @ApiModelProperty(value = "应付金额")
+    private BigDecimal needPay;
+
+    @ApiModelProperty(value = "实付金额")
+    private BigDecimal realPay;
+
+    @ApiModelProperty(value = "优惠金额")
+    private BigDecimal discount;
+
+    @ApiModelProperty(value = "订单明细")
+    private List<ErpOrderDetailItemVo> items;
+
+    @ApiModelProperty(value = "支付流水")
+    private List<ErpOrderDetailFlowVo> flow;
+
+    @ApiModelProperty(value = "订单状态")
+    private String orderStatus;
+
+    @ApiModelProperty(value = "欠款")
+    private BigDecimal arrears;
+
+
+    @JsonFormat(pattern = DateUtil.DATE_FORMAT_SS, timezone = "GMT+8")
+    @ApiModelProperty(value = "下单时间")
+    private Date orderTime;
+
+
+    public List<ErpOrderDetailFlowVo> getFlow() {
+        return flow;
+    }
+
+    public void setFlow(List<ErpOrderDetailFlowVo> flow) {
+        this.flow = flow;
+    }
+
+    public String getShopName() {
+        return shopName;
+    }
+
+    public void setShopName(String shopName) {
+        this.shopName = shopName;
+    }
+
+    public String getOrderId() {
+        return orderId;
+    }
+
+    public void setOrderId(String orderId) {
+        this.orderId = orderId;
+    }
+
+    public String getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+
+    public String getStaffName() {
+        return staffName;
+    }
+
+    public void setStaffName(String staffName) {
+        this.staffName = staffName;
+    }
+
+    public BigDecimal getNeedPay() {
+        return needPay;
+    }
+
+    public void setNeedPay(BigDecimal needPay) {
+        this.needPay = needPay;
+    }
+
+    public BigDecimal getRealPay() {
+        return realPay;
+    }
+
+    public void setRealPay(BigDecimal realPay) {
+        this.realPay = realPay;
+    }
+
+    public BigDecimal getDiscount() {
+        return discount;
+    }
+
+    public void setDiscount(BigDecimal discount) {
+        this.discount = discount;
+    }
+
+    public List<ErpOrderDetailItemVo> getItems() {
+        return items;
+    }
+
+    public void setItems(List<ErpOrderDetailItemVo> items) {
+        this.items = items;
+    }
+
+    public String getOrderStatus() {
+        return orderStatus;
+    }
+
+    public void setOrderStatus(String orderStatus) {
+        this.orderStatus = orderStatus;
+    }
+
+    public BigDecimal getArrears() {
+        return arrears;
+    }
+
+    public void setArrears(BigDecimal arrears) {
+        this.arrears = arrears;
+    }
+
+    public Date getOrderTime() {
+        return orderTime;
+    }
+
+    public void setOrderTime(Date orderTime) {
+        this.orderTime = orderTime;
+    }
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListProjVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListProjVo.java
new file mode 100644
index 0000000..dc2ddd9
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListProjVo.java
@@ -0,0 +1,45 @@
+package com.matrix.system.shopXcx.api.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+@ApiModel(value = "ErpServiceOrderListProjVo", description = "服务单列表项目返回参数类")
+public class  ErpServiceOrderListProjVo {
+
+
+        @ApiModelProperty(value = "项目名称")
+        private String projName;
+
+        @ApiModelProperty(value = "项目图片")
+        private String imgMobile;
+
+        @ApiModelProperty(value = "美疗师")
+        private String beautyName="";
+
+        public String getImgMobile() {
+            return imgMobile;
+        }
+
+        public void setImgMobile(String imgMobile) {
+            this.imgMobile = imgMobile;
+        }
+
+        public String getProjName() {
+            return projName;
+        }
+
+        public void setProjName(String projName) {
+            this.projName = projName;
+        }
+
+        public String getBeautyName() {
+            return beautyName;
+        }
+
+        public void setBeautyName(String beautyName) {
+            this.beautyName = beautyName;
+        }
+    }
+
+
+
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListVo.java
new file mode 100644
index 0000000..b33ca23
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ErpServiceOrderListVo.java
@@ -0,0 +1,147 @@
+package com.matrix.system.shopXcx.api.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.matrix.core.tools.DateUtil;
+import com.matrix.system.app.vo.ServiceOrderListProjVo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author wzy
+ * @date 2020-12-24
+ **/
+@ApiModel(value = "ServiceOrderListVo", description = "服务单列表返回参数类")
+public class ErpServiceOrderListVo {
+
+    @ApiModelProperty(value = "服务单Id")
+    private Long id;
+
+    @ApiModelProperty(value = "服务单编号")
+    private String serviceNo;
+
+    @JsonFormat(pattern = DateUtil.DATE_FORMAT_MM, timezone = "GMT+8")
+    @ApiModelProperty(value = "预约时间")
+    private Date time;
+
+    @ApiModelProperty(value = "服务时长")
+    private Integer timeLength;
+
+    @ApiModelProperty(value = "状态 待预约  待派单  待配料  待服务  服务中  服务完成  服务单结束")
+    private String status;
+
+    @ApiModelProperty(value = "门店名称")
+    private String shopName;
+
+    @ApiModelProperty(value = "门店地址")
+    private String shopAddr;
+
+
+
+    @ApiModelProperty(value = "床位")
+    private String bed;
+
+    @ApiModelProperty(value = "客户评论")
+    private String comment="";
+
+    @ApiModelProperty(value = "员工回复")
+    private String reply;
+
+
+
+    @ApiModelProperty(value = "服务项目信息")
+    private List<ErpServiceOrderListProjVo> projs;
+
+
+    public String getComment() {
+        return comment;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
+
+    public String getReply() {
+        return reply;
+    }
+
+    public void setReply(String reply) {
+        this.reply = reply;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getServiceNo() {
+        return serviceNo;
+    }
+
+    public void setServiceNo(String serviceNo) {
+        this.serviceNo = serviceNo;
+    }
+
+    public Date getTime() {
+        return time;
+    }
+
+    public void setTime(Date time) {
+        this.time = time;
+    }
+
+    public String getShopName() {
+        return shopName;
+    }
+
+    public void setShopName(String shopName) {
+        this.shopName = shopName;
+    }
+
+    public String getShopAddr() {
+        return shopAddr;
+    }
+
+    public void setShopAddr(String shopAddr) {
+        this.shopAddr = shopAddr;
+    }
+
+    public Integer getTimeLength() {
+        return timeLength;
+    }
+
+    public void setTimeLength(Integer timeLength) {
+        this.timeLength = timeLength;
+    }
+
+    public String getBed() {
+        return bed;
+    }
+
+    public void setBed(String bed) {
+        this.bed = bed;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public List<ErpServiceOrderListProjVo> getProjs() {
+        return projs;
+    }
+
+    public void setProjs(List<ErpServiceOrderListProjVo> projs) {
+        this.projs = projs;
+    }
+
+
+}
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
index c7c1561..bd84983 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
@@ -611,4 +611,56 @@
         group by b.su_id
         order by amount desc, b.su_id
     </select>
+
+
+    <select id="selectErpOrderList" resultType="com.matrix.system.shopXcx.api.vo.ErpOrderDetailVo">
+            select
+            a.id orderId,
+            a.ORDER_NO orderNo,
+            a.ORDER_TIME orderTime,
+            a.STATU orderStatus,
+            a.ZK_TOTAL needPay,
+            a.TOTAL - a.ZK_TOTAL discount,
+            (a.card_Pay + a.cash_Pay) realPay,
+            a.arrears arrears,
+            b.su_name staffName,
+            d.shop_name as shopName
+            from sys_order a
+            left join sys_users b on a.STAFF_ID = b.su_id
+            left join sys_vip_info c on c.id = a.VIP_ID
+            left join sys_shop_info d on d.id=a.shop_id
+            <where>
+                <if test="queryKey != null and queryKey != ''">
+                    and instr(a.order_no, #{queryKey})
+                </if>
+                <if test="status != null and status != ''">
+                    and a.statu = #{status}
+                </if>
+                <if test="vipId != null">
+                    and a.vip_id=#{vipId}
+                </if>
+            </where>
+            order by a.order_time desc
+            limit #{offset},#{limit}
+    </select>
+    <select id="findUserOrderById" resultType="com.matrix.system.shopXcx.api.vo.ErpOrderDetailVo">
+         select
+            a.id orderId,
+            a.ORDER_NO orderNo,
+            a.ORDER_TIME orderTime,
+            a.STATU orderStatus,
+            a.ZK_TOTAL needPay,
+            a.TOTAL - a.ZK_TOTAL discount,
+            (a.card_Pay + a.cash_Pay) realPay,
+            a.arrears arrears,
+            b.su_name staffName,
+            d.shop_name as shopName
+            from sys_order a
+            left join sys_users b on a.STAFF_ID = b.su_id
+            left join sys_vip_info c on c.id = a.VIP_ID
+            left join sys_shop_info d on d.id=a.shop_id
+            where a.id=#{orderId}
+    </select>
+
+
 </mapper>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderItemDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderItemDao.xml
index f532adf..6be411c 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderItemDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderItemDao.xml
@@ -535,4 +535,16 @@
         where a.ORDER_ID=#{orderId};
     </select>
 
+    <select id="selectErpOrderItemByOrderId"
+            resultType="com.matrix.system.shopXcx.api.vo.ErpOrderDetailItemVo">
+            select
+               b.name goodsName,
+               a.COUNT count,
+               a.PRICE price,
+               a.ZK_PRICE zkPrice
+        from sys_order_item a
+        inner join shopping_goods b on a.goods_id=b.id
+        where a.ORDER_ID=#{orderId}
+    </select>
+
 </mapper>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml
index 8092043..f5b7550 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjServicesDao.xml
@@ -38,6 +38,8 @@
 			<result property="oldShopId" column="OLD_SHOP_ID"/>
 			<result property="consumeTime" column="consume_time"/>
 			<result property="companyId" column="company_id"/>
+			<result property="comment" column="comment"/>
+			<result property="reply" column="reply"/>
 
 			
 			<result property="beautiName" column="beautiName"/>
@@ -87,7 +89,9 @@
 			CHANGE_ID,
 			OLD_SHOP_ID,
 			consume_time,
-			company_id
+			company_id,
+			comment,
+			reply
 		)
 	VALUES (
 			#{id},
@@ -122,7 +126,9 @@
 			#{changeId},
 			#{oldShopId},
 			#{consumeTime},
-			#{companyId}
+			#{companyId},
+			#{comment},
+			#{reply}
 	)
 		
 	</insert>
@@ -228,8 +234,18 @@
 				<if test="consumeTime != null  ">
 					consume_time = #{consumeTime}
 				</if>
+
+				<if test="reply != null  ">
+					reply = #{reply}
+				</if>
+				<if test="comment != null  ">
+					comment = #{comment}
+				</if>
 		</set>
 		WHERE id=#{id} 
+	</update>
+	<update id="comment">
+
 	</update>
 
 	<!-- 批量删除 -->
@@ -516,23 +532,7 @@
 			<if test="record.userId!=null">
 				and (a.create_staff_id=#{record.userId} or b.staff_id=#{record.userId})
 			</if>
-			<if test="record.vipStatus != null and record.vipStatus != '' and record.vipStatus!=0 ">
-				<if test="record.vipStatus == 1">
-					and a.state = '待确认'
-				</if>
-				<if test="record.vipStatus == 2">
-					and a.state in ( '预约成功待处理' ,'需配料','配料完成','服务中')
-				</if>
-				<if test="record.vipStatus == 3">
-					and ( a.state in ( '服务完成' ,'服务单结束') and a.comment is  null)
-				</if>
-				<if test="record.vipStatus == 4">
-					and a.comment is not null
-				</if>
-				<if test="record.vipStatus == 5">
-					and a.state = '预约取消'
-				</if>
-			</if>
+
 		</where>
 		<if test="pageVo !=null"><!-- 判断pageVo对象是否为空 -->
 			order by a.yy_time desc
@@ -567,4 +567,104 @@
 			</if>
 		</where>
 	</select>
+
+
+
+
+	<resultMap id="ErpServiceOrderListVoMap" type="com.matrix.system.shopXcx.api.vo.ErpServiceOrderListVo">
+		<id column="id" property="id" />
+		<result column="serviceNo" property="serviceNo"/>
+		<result property="time" column="time"/>
+		<result property="bed" column="bed" />
+		<result property="timeLength" column="timeLength" />
+		<result property="status" column="status" />
+		<result property="shopName" column="shopName" />
+		<result property="shopAddr" column="shopAddr" />
+		<result property="comment" column="comment" />
+		<result property="reply" column="reply" />
+		<collection property="projs" ofType="com.matrix.system.shopXcx.api.vo.ErpServiceOrderListProjVo">
+			<result property="projName" column="projName" />
+			<result property="beautyName" column="beautyName" />
+			<result property="imgMobile" column="imgMobile" />
+		</collection>
+	</resultMap>
+    <select id="findWxServiceOrderList" resultMap="ErpServiceOrderListVoMap">
+		select
+		a.id id,
+		a.SERVICE_NO serviceNo,
+		a.YY_TIME time,
+		a.TOTAL_TIME timeLength,
+		a.state status,
+		d.BED_NAME bed,
+		f.su_name beautyName,
+		g.proj_name projName,
+		h.shop_short_name as shopName,
+		h.shop_addr as shopAddr,
+		m.img as imgMobile
+		from sys_proj_services a
+		left join sys_beautician_state b on a.ID=b.SERVICES_ID
+		left join sys_bed_state c on a.ID = c.SERVICE_ID
+		left join sys_bed_info d on c.BED_ID=d.ID
+		left join sys_vip_info e on a.VIP_ID=e.ID
+		left join sys_users f on f.su_id=b.STAFF_ID
+		left join sys_proj_use g on b.puse_id=g.ID
+		left join sys_shop_info h on a.SHOP_ID=h.ID
+		left join shopping_goods m on g.proj_id=m.id
+		<where>
+			<if test="queryKey != null and queryKey != ''">
+				and instr(a.SERVICE_NO, #{queryKey})
+			</if>
+			<if test="vipId != null and vipId != ''">
+				and a.vip_id = #{vipId}
+			</if>
+			<if test="vipStatus != null and vipStatus != '' and vipStatus!=0 ">
+				<if test="vipStatus == 1">
+					and a.state = '待确认'
+				</if>
+				<if test="vipStatus == 2">
+					and a.state in ( '预约成功待处理' ,'需配料','配料完成','服务中')
+				</if>
+				<if test="vipStatus == 3">
+					and ( a.state in ( '服务完成' ,'服务单结束') and a.comment is  null)
+				</if>
+				<if test="vipStatus == 4">
+					and a.comment is not null
+				</if>
+				<if test="vipStatus == 5">
+					and a.state = '预约取消'
+				</if>
+			</if>
+		</where>
+			order by a.yy_time desc
+			limit #{offset}, #{limit}
+	</select>
+	<select id="findWxServiceOrderById" resultMap="ErpServiceOrderListVoMap">
+		select
+		a.id id,
+		a.SERVICE_NO serviceNo,
+		a.YY_TIME time,
+		a.TOTAL_TIME timeLength,
+		a.state status,
+		a.comment,
+		a.reply,
+		d.BED_NAME bed,
+		f.su_name beautyName,
+		g.proj_name projName,
+		h.shop_short_name as shopName,
+		h.shop_addr as shopAddr,
+		m.img as imgMobile
+		from sys_proj_services a
+		left join sys_beautician_state b on a.ID=b.SERVICES_ID
+		left join sys_bed_state c on a.ID = c.SERVICE_ID
+		left join sys_bed_info d on c.BED_ID=d.ID
+		left join sys_vip_info e on a.VIP_ID=e.ID
+		left join sys_users f on f.su_id=b.STAFF_ID
+		left join sys_proj_use g on b.puse_id=g.ID
+		left join sys_shop_info h on a.SHOP_ID=h.ID
+		left join shopping_goods m on g.proj_id=m.id
+		where a.id=#{id}
+	</select>
+
+
+
 </mapper>

--
Gitblit v1.9.1