From ad31648c6f7a8bff1f7ccdf84b76006b9ffb78f8 Mon Sep 17 00:00:00 2001 From: jyy <jyy> Date: Sat, 17 Jul 2021 15:59:10 +0800 Subject: [PATCH] 1. 新增套餐中有效和无效的操作 2. 会员修改门店功能 3. 套餐新增编辑次数功能 4. 计算是否为赠送的条件为,全部为赠送金额购买且支付金额大于0 5. 打印小票功能调整间距,和收银人 6. PC端服务单新增划扣金额展示 --- zq-erp/src/main/java/com/matrix/system/hive/action/MoneyCardUseController.java | 172 +++++++++++++++++++++++++-------------------------------- 1 files changed, 76 insertions(+), 96 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/MoneyCardUseController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/MoneyCardUseController.java index 2744c37..c19da86 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/action/MoneyCardUseController.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/action/MoneyCardUseController.java @@ -1,5 +1,6 @@ package com.matrix.system.hive.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; @@ -8,21 +9,22 @@ import com.matrix.core.tools.WebUtil; import com.matrix.system.common.bean.SysUsers; import com.matrix.system.constance.Dictionary; -import com.matrix.system.constance.SystemConstance; import com.matrix.system.hive.bean.*; import com.matrix.system.hive.dao.MoneyCardUseDao; import com.matrix.system.hive.dao.MoneyCardUseFlowDao; -import com.matrix.core.tools.DateUtil; import com.matrix.system.hive.pojo.CzXkVo; import com.matrix.system.hive.service.*; +import com.matrix.system.shopXcx.mqTask.MQTaskRouting; +import com.matrix.system.wechart.templateMsg.UniformMsgParam; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; import java.util.Arrays; import java.util.Date; import java.util.List; @@ -50,34 +52,31 @@ @Resource private SysVipInfoService vipInfoService; - @Autowired + @Resource private MoneyCardUseFlowDao moneyCardUseFlowDao; - @Autowired + + @Resource private MoneyCardUseDao moneyCardUseDao; + + + @Value("${evn}") + private String evn; + + @Autowired + private RabiitMqTemplate rabiitMqTemplate; + + /** * 跳转 充值页面 * * @author jyy */ @RequestMapping(value = "/editFormCz") - public String editFormCz() { - SysVipInfo info = - (SysVipInfo) WebUtil.getSession().getAttribute(SystemConstance.CURRENT_CUSTOMER); - MoneyCardUse cardUseInfo = cardUseService.findByVipId(info.getId()); - + public String editFormCz(Long id) { + MoneyCardUse cardUseInfo = cardUseService.findByVipId(id); if (cardUseInfo == null) { - cardUseInfo = new MoneyCardUse(); - cardUseInfo.setVipId(info.getId()); - cardUseInfo.setCardName("储值卡"); - cardUseInfo.setIsVipCar(Dictionary.FLAG_YES_Y); - cardUseInfo.setRealMoney(0D); - cardUseInfo.setGiftMoney(0D); - cardUseInfo.setSource("-"); - cardUseInfo.setFailTime(DateUtil.stringToDate("2050-01-01 00:00",DateUtil.DATE_FORMAT_MM)); - cardUseInfo.setStatus(Dictionary.MONEYCARD_STATUS_YX); - moneyCardUseDao.insert(cardUseInfo); + cardUseInfo=vipInfoService.addVipDefaultCard(id); } - WebUtil.getRequest().setAttribute("obj", cardUseInfo); return "admin/hive/beautySalon/cz-form"; } @@ -89,9 +88,15 @@ */ @RequestMapping(value = "/cz") public @ResponseBody - AjaxResult cz(CzXkVo czVo) { + AjaxResult cz(@RequestBody CzXkVo czVo) { SysOrder order= orderService.updateAddCardMoney(czVo); AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, "充值成功"); + + //发送微信公众号提醒 + UniformMsgParam uniformMsgParam=new UniformMsgParam(order.getCompanyId(),UniformMsgParam.GZH_CZCG); + uniformMsgParam.put("orderId",order.getId()); + rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,uniformMsgParam.toJSONString()); + result.putInMap("orderId",order.getId()); return result; } @@ -181,23 +186,14 @@ * @author jyy */ @RequestMapping(value = "/toBj") - public String toBj(Long id, HttpServletRequest request) { + public String toBj(Long id) { // 根据id查到对应的订单信息 SysOrder order = orderService.findById(id); - WebUtil.getRequest().setAttribute("order", order); - SysOrderItem item = new SysOrderItem(); item.setOrderId(order.getId()); - item.setStatus(Dictionary.ORDER_STATU_QK); - order.setItems(orderItemService.findByModel(item)); - - - MoneyCardUse moneyCardUse = new MoneyCardUse(); - moneyCardUse.setVipId(order.getVipId()); - moneyCardUse.setStatus(Dictionary.MONEYCARD_STATUS_YX); - List<MoneyCardUse> cards = cardUseService.findByModel(moneyCardUse); - - WebUtil.getRequest().setAttribute("cards", cards); + List<SysOrderItem> items = orderItemService.findByModel(item); + order.setItems(items); + WebUtil.getRequest().setAttribute("order", order); return "admin/hive/beautySalon/bj-form"; } @@ -227,7 +223,7 @@ */ @RequestMapping(value = "/bj") public @ResponseBody - AjaxResult bj(SysOrder order) throws GlobleException { + AjaxResult bj(@RequestBody SysOrder order) throws GlobleException { orderService.updateAfterMoney(order); return new AjaxResult(AjaxResult.STATUS_SUCCESS, "补交成功"); @@ -283,9 +279,9 @@ @RequestMapping(value = "/active") public @ResponseBody AjaxResult active(MoneyCardUse moneyCardUse) { - MoneyCardUse proj = moneyCardUseDao.selectById(moneyCardUse.getId()); - String status = proj.getStatus(); - Date failTime = proj.getFailTime(); + MoneyCardUse cardUse = moneyCardUseDao.selectById(moneyCardUse.getId()); + String status = cardUse.getStatus(); + Date failTime = cardUse.getFailTime(); Date today = new Date(); Date newDate = null; newDate = moneyCardUse.getFailTime(); @@ -304,14 +300,27 @@ //如果是冻结状态则要算出冻结的天数,延长有效期 case Dictionary.TAOCAN_STATUS_DJ: MoneyCardUseFreeze freeze = new MoneyCardUseFreeze(); - freeze = moneyCardUseFreezeService.findByMoneyCardUseId(proj.getId()); - proj.setFailTime(DateUtil.nextNDate(failTime, freeze.getGapDays())); + freeze = moneyCardUseFreezeService.findByMoneyCardUseId(cardUse.getId()); + cardUse.setFailTime(DateUtil.nextNDate(failTime, freeze.getGapDays())); break; default: return new AjaxResult(AjaxResult.STATUS_FAIL, "请选择无效或者冻结的充值卡"); } - proj.setFailTime(moneyCardUse.getFailTime()); - cardUseService.active(proj); + cardUse.setFailTime(moneyCardUse.getFailTime()); + cardUseService.active(cardUse); + + + MoneyCardUseFlow moneyCardUseFlow = new MoneyCardUseFlow(); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + moneyCardUseFlow.setCarUseId(cardUse.getId()); + moneyCardUseFlow.setVipId(cardUse.getVipId()); + moneyCardUseFlow.setType(MoneyCardUseFlow.USE_TYPE_CARD_MODIFY); + moneyCardUseFlow.setCreateTime(new Date()); + moneyCardUseFlow.setOperationId(user.getSuId()); + moneyCardUseFlow.setContent("设置为有效"); + moneyCardUseFlowDao.insert(moneyCardUseFlow); + + return new AjaxResult(AjaxResult.STATUS_SUCCESS, "已设置为有效"); } @@ -324,9 +333,9 @@ @RequestMapping(value = "/invalid") public @ResponseBody AjaxResult invalidTc(MoneyCardUse moneyCardUse) { - MoneyCardUse proj = cardUseService.findById(moneyCardUse.getId()); + MoneyCardUse cardUse = cardUseService.findById(moneyCardUse.getId()); //以及转让或者退款的不能在设置为无效 - String status = proj.getStatus(); + String status = cardUse.getStatus(); switch (status) { case Dictionary.TAOCAN_STATUS_TK: return new AjaxResult(AjaxResult.STATUS_FAIL, "充值卡已退款"); @@ -335,7 +344,16 @@ case Dictionary.TAOCAN_STATUS_DJ: return new AjaxResult(AjaxResult.STATUS_FAIL, "充值卡已冻结"); } - cardUseService.invalid(proj); + cardUseService.invalid(cardUse); + MoneyCardUseFlow moneyCardUseFlow = new MoneyCardUseFlow(); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + moneyCardUseFlow.setCarUseId(cardUse.getId()); + moneyCardUseFlow.setVipId(cardUse.getVipId()); + moneyCardUseFlow.setType(MoneyCardUseFlow.USE_TYPE_CARD_MODIFY); + moneyCardUseFlow.setCreateTime(new Date()); + moneyCardUseFlow.setOperationId(user.getSuId()); + moneyCardUseFlow.setContent("设置为无效"); + moneyCardUseFlowDao.insert(moneyCardUseFlow); return new AjaxResult(AjaxResult.STATUS_SUCCESS, "已设置为无效"); } @@ -366,63 +384,25 @@ public @ResponseBody AjaxResult freeze(MoneyCardUse moneyCardUse) { int i = cardUseService.freeze(moneyCardUse); + cardUseService.invalid(moneyCardUse); + + MoneyCardUse cardUse = cardUseService.findById(moneyCardUse.getId()); + MoneyCardUseFlow moneyCardUseFlow = new MoneyCardUseFlow(); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + moneyCardUseFlow.setCarUseId(cardUse.getId()); + moneyCardUseFlow.setVipId(cardUse.getVipId()); + moneyCardUseFlow.setType(MoneyCardUseFlow.USE_TYPE_CARD_MODIFY); + moneyCardUseFlow.setCreateTime(new Date()); + moneyCardUseFlow.setOperationId(user.getSuId()); + moneyCardUseFlow.setContent("冻结会员卡"); + moneyCardUseFlowDao.insert(moneyCardUseFlow); if (i > 0) { return new AjaxResult(AjaxResult.STATUS_SUCCESS, "冻结成功"); } return new AjaxResult(AjaxResult.STATUS_FAIL, "冻结失败"); } - /** - * 退款 - * - * @return - */ - @RequestMapping(value = "getEffectCard") - public @ResponseBody - AjaxResult getEffectCard(MoneyCardUse moneyCardUse) { - AjaxResult result = AjaxResult.buildSuccessInstance(""); - //要退款的充值卡 - MoneyCardUse srcCardUse = cardUseService.findById(moneyCardUse.getId()); - if (!srcCardUse.getStatus().equals(Dictionary.TAOCAN_STATUS_YX)) { - throw new GlobleException("不是有效充值卡"); - } - //该会员是否有有效会籍卡 - MoneyCardUse targetCardUse = cardUseService.findByVipId(moneyCardUse.getVipId()); - double money = srcCardUse.getRealMoney(); - if (targetCardUse != null) { - targetCardUse.setRealMoney(money); - List<MoneyCardUse> list = Arrays.asList(targetCardUse); - if (targetCardUse.getId().equals(srcCardUse.getId())) { - result.setInfo("会籍卡退款只能退现金"); - result.setRows(list); - - } else { - result.setInfo("有有效会籍卡"); - result.setRows(list); - } - } else { - //无会员卡则new一个,为了把钱传递到前台 - targetCardUse = new MoneyCardUse(); - targetCardUse.setRealMoney(money); - List<MoneyCardUse> list1 = Arrays.asList(targetCardUse); - result.setInfo("无有效会籍卡,退现金"); - result.setRows(list1); - } - return result; - } - - @RequestMapping(value = "/returnMoney") - public @ResponseBody - AjaxResult returnMoney(MoneyCardUse moneyCardUse, Long hjkId, String tcRemark, Long - shopId, Double money - , String tcName) { - int i = cardUseService.returnMoney(moneyCardUse, hjkId); - if (i > 0) { - return new AjaxResult(AjaxResult.STATUS_SUCCESS, "退款成功"); - } - return new AjaxResult(AjaxResult.STATUS_FAIL, "冻结失败"); - } } \ No newline at end of file -- Gitblit v1.9.1