From a672e4e8c05be9c763943a06cfe5220ef217934c Mon Sep 17 00:00:00 2001 From: wzy <wzy19931122ai@163.com> Date: Sat, 23 Jan 2021 20:07:44 +0800 Subject: [PATCH] modify --- zq-erp/src/main/java/com/matrix/system/app/action/ApiServiceOrderAction.java | 131 +++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 124 insertions(+), 7 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 15a03bd..47aae8a 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 @@ -1,19 +1,24 @@ package com.matrix.system.app.action; +import com.matrix.component.rabbitmq.RabiitMqTemplate; import com.matrix.core.constance.MatrixConstance; import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.pojo.PaginationVO; import com.matrix.core.pojo.VerifyResult; import com.matrix.core.tools.DateUtil; +import com.matrix.core.tools.StringUtils; import com.matrix.core.tools.WebUtil; import com.matrix.system.app.dto.CreateServiceOrderDto; +import com.matrix.system.app.dto.IdSubmitDto; import com.matrix.system.app.dto.ServiceOrderListDto; +import com.matrix.system.app.dto.ServiceVipProjDto; import com.matrix.system.app.mapper.SysBeauticianStateMapper; import com.matrix.system.app.mapper.SysProjServiceMapper; import com.matrix.system.app.mapper.SysProjUseMapper; import com.matrix.system.app.vo.*; import com.matrix.system.common.bean.SysUsers; +import com.matrix.system.common.tools.DataAuthUtil; import com.matrix.system.constance.Dictionary; import com.matrix.system.hive.bean.SysBeauticianState; import com.matrix.system.hive.bean.SysProjServices; @@ -24,16 +29,20 @@ import com.matrix.system.hive.service.SysProjServicesService; import com.matrix.system.hive.service.SysProjUseService; import com.matrix.system.hive.service.SysVipInfoService; +import com.matrix.system.shopXcx.mqTask.MQTaskRouting; +import com.matrix.system.wechart.templateMsg.UniformMsgParam; 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.beans.factory.annotation.Value; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -57,13 +66,19 @@ @Autowired private SysBeauticianStateService sysBeauticianStateService; + @Autowired + private RabiitMqTemplate rabiitMqTemplate; + + @Value("${evn}") + private String evn; + @ApiOperation(value ="获取用户项目/套餐列表", notes = "获取用户项目/套餐列表") @ApiResponses({ @ApiResponse(code = 200, message = "ok", response = ServiceProductListVo.class) }) - @GetMapping(value = "/findVipProject/{vipId}") - public AjaxResult findVipProject(@PathVariable("vipId") Long vipId) { - SysVipInfo vipInfo = sysVipInfoService.findById(vipId); + @PostMapping(value = "/findVipProject") + public AjaxResult findVipProject(@RequestBody @Validated ServiceVipProjDto serviceVipProjDto) { + SysVipInfo vipInfo = sysVipInfoService.findById(serviceVipProjDto.getVipId()); if (vipInfo == null) { throw new GlobleException("会员不存在"); @@ -71,14 +86,40 @@ ServiceProductListVo productListVo = new ServiceProductListVo(); productListVo.setName(vipInfo.getVipName()); - productListVo.setVipId(vipId); + productListVo.setVipId(serviceVipProjDto.getVipId()); SysProjUse queryUse = new SysProjUse(); - queryUse.setVipId(vipId); + queryUse.setVipId(serviceVipProjDto.getVipId()); queryUse.setType(Dictionary.SHOPPING_GOODS_TYPE_XM); queryUse.setTaocanId(-1L); - queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX); - queryUse.setIsOver(Dictionary.FLAG_NO_N); + if (serviceVipProjDto.getType() != null) { + switch (serviceVipProjDto.getType()) { + case "0": + break; + case "1": + queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX); + queryUse.setIsOver(Dictionary.FLAG_NO_N); + break; + case "2": + queryUse.setTargetFailTime(DateUtil.getDateAfterMonth(new Date(), 1)); + queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX); + queryUse.setIsOver(Dictionary.FLAG_NO_N); + break; + case "3": + queryUse.setStatus(Dictionary.TAOCAN_STATUS_WX); + queryUse.setIsOver(Dictionary.FLAG_YES_Y); + break; + default: + queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX); + queryUse.setIsOver(Dictionary.FLAG_NO_N); + break; + } + } else { + queryUse.setStatus(Dictionary.TAOCAN_STATUS_YX); + queryUse.setIsOver(Dictionary.FLAG_NO_N); + } + + queryUse.setQueryKey(serviceVipProjDto.getQueryKey()); List<SysProjUse> projList = projUseService.findInPage(queryUse, null); List<ServiceProjVo> serviceProjVos = SysProjUseMapper.INSTANCE.entityListToProjVoList(projList); @@ -108,6 +149,16 @@ if (CollectionUtils.isEmpty(serviceOrderDto.getProjItems())) { throw new GlobleException("请选择服务"); } + SysVipInfo vipInfo = sysVipInfoService.findById(serviceOrderDto.getVipId()); +// if (StringUtils.isBlank(vipInfo.getPassWord())) { +// return AjaxResult.buildFailInstance("未设置资金密码"); +// } + + if (StringUtils.isNotBlank(vipInfo.getPassWord())) { + if (!vipInfo.getPassWord().equals(serviceOrderDto.getPassword())) { + return AjaxResult.buildFailInstance("资金密码错误"); + } + } SysProjServices sysProjServices = new SysProjServices(); sysProjServices.setVipId(serviceOrderDto.getVipId()); @@ -136,6 +187,9 @@ if (balanceverifyResult.isError()) { return new AjaxResult(AjaxResult.STATUS_FAIL, balanceverifyResult.getMsg()); } + + // 设置状态为待预约 + sysProjServices.setState(Dictionary.SERVICE_STATU_DYY); SysProjServices newSysProjServices = projServicesService.addSysProjServices(sysProjServices); if (newSysProjServices != null) { return AjaxResult.buildSuccessInstance("下单成功"); @@ -155,6 +209,12 @@ int limit = orderListDto.getPageSize(); pageVo.setOffset(offset); pageVo.setLimit(limit); + + if (!DataAuthUtil.hasAllShopAuth()) { + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + orderListDto.setShopId(user.getShopId()); + orderListDto.setUserId(user.getSuId()); + } return AjaxResult.buildSuccessInstance(projServicesService.findApiServiceOrderListInPage(orderListDto, pageVo), projServicesService.findApiServiceOrderListTotal(orderListDto)); } @@ -179,4 +239,61 @@ ajaxResult.putInMap("detail", detailVo); return ajaxResult; } + + @ApiOperation(value = "开始服务", notes = "开始服务") + @GetMapping(value = "/startService/{id}") + public AjaxResult startService(@PathVariable("id") Long id) { + SysProjServices sysProjServices = new SysProjServices(); + sysProjServices.setId(id); + int i = projServicesService.modifyFWKSProjServices(sysProjServices); + if (i > 0) { + return AjaxResult.buildSuccessInstance("开始服务成功"); + } + return AjaxResult.buildFailInstance("开始服务失败"); + } + + @ApiOperation(value = "结束服务", notes = "结束服务") + @GetMapping(value = "/stopService/{id}") + public AjaxResult stopService(@PathVariable("id") Long id) { + SysProjServices projServvices = new SysProjServices(); + projServvices.setId(id); + int result = projServicesService.modifyFWJSrojServices(projServvices); + if (result > 0) { + return new AjaxResult(AjaxResult.STATUS_SUCCESS, "结束服务成功"); + } else { + return new AjaxResult(AjaxResult.STATUS_FAIL, "结束服务失败"); + } + } + + @ApiOperation(value = "取消服务", notes = "取消服务") + @GetMapping(value = "/cancelService/{id}") + public AjaxResult cancelService(@PathVariable("id") Long id) { + SysProjServices services = new SysProjServices(); + services.setId(id); + int i = projServicesService.modifyCancelProjServices(services); + if (i > 0) { + return new AjaxResult(AjaxResult.STATUS_SUCCESS, "取消预约成功"); + } else { + return new AjaxResult(AjaxResult.STATUS_FAIL, "取消预约失败"); + } + } + + @ApiOperation(value = "确认服务", notes = "确认服务") + @PostMapping(value = "/confirmServiceOrder") + public AjaxResult confirmServiceOrder(@RequestBody @Validated IdSubmitDto idSubmitDto) { + SysProjServices services = new SysProjServices(); + services.setId(idSubmitDto.getId()); + services.setState(Dictionary.BEATUI_STATE_DYY); + int i = projServicesService.modify(services); + if (i > 0) { + //发送微信公众号提醒 + services=projServicesService.findById(services.getId()); + UniformMsgParam uniformMsgParam=new UniformMsgParam(services.getCompanyId(),UniformMsgParam.GZH_YYCG); + uniformMsgParam.put("serviceId",services.getId()); + rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,uniformMsgParam.toJSONString()); + + return AjaxResult.buildSuccessInstance("确认成功"); + } + return AjaxResult.buildFailInstance("确认失败"); + } } -- Gitblit v1.9.1