From 5f29f86819e170faaf0159f730d83ad19c8bd2a7 Mon Sep 17 00:00:00 2001 From: jyy <jyy> Date: Fri, 20 Aug 2021 14:27:37 +0800 Subject: [PATCH] 新增门店是否只能取消待付款订单,服务单 --- zq-erp/src/main/resources/templates/views/admin/hive-erp/order/projService-list.html | 2 zq-erp/src/main/resources/templates/views/admin/hive-erp/order/sysOrder-list.html | 2 zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java | 8 ++ zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java | 94 +++++++++++++++++++------------ zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java | 24 +++++++ zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java | 5 + zq-erp/src/main/resources/mybatis/mapper/hive/SysProjUseDao.xml | 2 7 files changed, 96 insertions(+), 41 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java index ff36166..5fecc8b 100644 --- a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java +++ b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java @@ -579,6 +579,11 @@ public static final String SHOP_MANAGE_JJCPAS_CONSUME = "shopManageJjcpasConsume"; /** + * 门店是否只能取消待付款订单,服务单 + */ + public static final String SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER = "shopManageAbleCancelDfkOrder"; + + /** * 赠送金额购买产品算赠送购买 */ public static final String SHOP_MANAGE_GIFTISFREE = "shopManageGiftisfree"; diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java index f99ea96..2d1d759 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java @@ -12,7 +12,10 @@ import com.matrix.core.tools.excl.ExcelSheetPO; import com.matrix.core.tools.excl.ExcelUtil; import com.matrix.core.tools.excl.ExcelVersion; +import com.matrix.system.common.bean.BusParameterSettings; import com.matrix.system.common.bean.SysUsers; +import com.matrix.system.common.constance.AppConstance; +import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.common.dao.SysCompanyDao; import com.matrix.system.common.tools.DataAuthUtil; import com.matrix.system.common.tools.ResponseHeadUtil; @@ -96,6 +99,9 @@ RabiitMqTemplate rabiitMqTemplate; @Autowired + private BusParameterSettingsDao busParameterSettingsDao; + + @Autowired private SysProjServicesDao sysProjServicesDao; @Value("${evn}") @@ -118,7 +124,7 @@ total = total.add(new BigDecimal(item.getPrice() * item.getCount())); } SysOrder sysOrderResult = new SysOrder(); - sysOrderResult.setZkTotal(zkTotal.setScale(2,BigDecimal.ROUND_DOWN).doubleValue()); + sysOrderResult.setZkTotal(zkTotal.setScale(2, BigDecimal.ROUND_DOWN).doubleValue()); sysOrderResult.setTotal(total.doubleValue()); return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrderResult)); @@ -141,9 +147,9 @@ orderService.updateReceiptMoney(sysOrder); //发送微信公众号提醒 - UniformMsgParam uniformMsgParam=new UniformMsgParam(user.getCompanyId(),UniformMsgParam.GZH_GMCG); - uniformMsgParam.put("orderId",sysOrder.getId()); - rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,uniformMsgParam.toJSONString()); + UniformMsgParam uniformMsgParam = new UniformMsgParam(user.getCompanyId(), UniformMsgParam.GZH_GMCG); + uniformMsgParam.put("orderId", sysOrder.getId()); + rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn, uniformMsgParam.toJSONString()); //处理用户购买的产品 @@ -161,10 +167,10 @@ @ResponseBody public AjaxResult refundOrder(@RequestBody SysOrder sysOrder) { //储值卡订单不能通过退款渠道退款 - if(CollectionUtils.isNotEmpty(sysOrder.getItems())){ + if (CollectionUtils.isNotEmpty(sysOrder.getItems())) { List<SysOrderItem> orderItem = orderItemService.findByOrderId(sysOrder.getItems().get(0).getOrderId()); - if(orderItem.size()==1){ - if(orderItem.get(0).getShoppingGoods().getCode().equals("vipCzk")){ + if (orderItem.size() == 1) { + if (orderItem.get(0).getShoppingGoods().getCode().equals("vipCzk")) { return AjaxResult.buildFailInstance("充值订单请直接冲负数金额退款!"); } } @@ -189,7 +195,6 @@ //处理用户购买的产品 return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单保存成功"); } - /** @@ -232,12 +237,12 @@ public @ResponseBody ModelAndView printOrder(SysOrder order) throws GlobleException { ModelAndView mv = new ModelAndView("admin/hive/beautySalon/print-order"); - SysUsers user=(SysUsers)WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); - String comRegisterCode = companyDao.selectById(user.getCompanyId()).getComRegisterCode(); - if(StringUtils.isNotBlank(comRegisterCode)){ - mv.addObject("page",comRegisterCode); - }else { - mv.addObject("page","taiyan"); + SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); + String comRegisterCode = companyDao.selectById(user.getCompanyId()).getComRegisterCode(); + if (StringUtils.isNotBlank(comRegisterCode)) { + mv.addObject("page", comRegisterCode); + } else { + mv.addObject("page", "taiyan"); } return mv; } @@ -269,7 +274,7 @@ achieveNew.setDatatime(sysOrder.getPayTime()); achieveNewService.modifyAchieveTime(achieveNew); //更新收款流水时间 - sysOrderFlowDao.updateTimeByOrderId(sysOrder.getId(),sysOrder.getPayTime()); + sysOrderFlowDao.updateTimeByOrderId(sysOrder.getId(), sysOrder.getPayTime()); return new AjaxResult(AjaxResult.STATUS_SUCCESS, "修改成功"); @@ -288,7 +293,7 @@ MoneyCardUse cardUseInfo = cardUseService.findByVipId(order.getVipId()); if (cardUseInfo == null) { - cardUseInfo=sysVipInfoService.addVipDefaultCard(order.getVipId()); + cardUseInfo = sysVipInfoService.addVipDefaultCard(order.getVipId()); } //打印需求加入门店信息 @@ -298,7 +303,6 @@ //查询会有所有有效的会员卡 result.putInMap("totalMoney", moneyCardUseDao.selectVipCardTotalMoney(order.getVipId())); - return result; @@ -378,13 +382,13 @@ @ResponseBody public AjaxResult findOrderDetailByIdOrNo(SysOrder orderVo) { // 根据id查到对应的订单信息 - SysOrder order=null; - if(orderVo.getId()!=null){ - order = orderService.findById(orderVo.getId()); - }else if(StringUtils.isNotBlank(orderVo.getOrderNo())){ + SysOrder order = null; + if (orderVo.getId() != null) { + order = orderService.findById(orderVo.getId()); + } else if (StringUtils.isNotBlank(orderVo.getOrderNo())) { List<SysOrder> byModel = orderService.findByModel(orderVo); - if(byModel.size()==1){ - order=orderService.findById(byModel.get(0).getId()); + if (byModel.size() == 1) { + order = orderService.findById(byModel.get(0).getId()); } } List<SysOrderItem> sysOrderItems = orderItemDao.selectByOrderId(order.getId()); @@ -424,10 +428,10 @@ @RequestMapping(value = "/orderItem") public String orderItem(SysOrder orderVo) { - if(orderVo.getId()!=null){ + if (orderVo.getId() != null) { WebUtil.getRequest().setAttribute("orderParam", orderVo.getId()); WebUtil.getRequest().setAttribute("orderId", orderVo.getId()); - }else if(StringUtils.isNotBlank(orderVo.getOrderNo())){ + } else if (StringUtils.isNotBlank(orderVo.getOrderNo())) { WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo()); WebUtil.getRequest().setAttribute("orderNo", orderVo.getOrderNo()); } @@ -444,14 +448,14 @@ } //=======================================页面转发END================================== - /** + * 2021-08-20 新增:erp系统取消订单接口,不做订单状态校验 * 取消订单 */ @Transactional(rollbackFor = Exception.class) - @RequestMapping(value = "/cancelOrder") + @RequestMapping(value = "/erpCancelOrder") public @ResponseBody - AjaxResult cancelOrder(Long id, Integer del) { + AjaxResult erpCancelOrder(Long id) { AjaxResult result = new AjaxResult(); SysOrder order = orderService.findById(id); @@ -468,15 +472,32 @@ } orderService.cancelOrder(id); -// if (del > 0) { -// orderService.removeById(id); -// result.setInfo("删除成功!"); -// } else { - result.setInfo("取消成功!"); -// } + + result.setInfo("取消成功!"); + result.setStatus(AjaxResult.STATUS_SUCCESS); return result; + } + + + /** + * 取消订单 + */ + @Transactional(rollbackFor = Exception.class) + @RequestMapping(value = "/cancelOrder") + public @ResponseBody + AjaxResult cancelOrder(Long id, Integer del) { + + SysOrder order = orderService.findById(id); + BusParameterSettings shopManageAbleCancelDfkOrder = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER, order.getCompanyId()); + if (StringUtils.isNotBlank(shopManageAbleCancelDfkOrder.getParamValue()) + && shopManageAbleCancelDfkOrder.getParamValue().equals(Dictionary.FLAG_YES)) { + if (!Dictionary.ORDER_STATU_DFK.equals(order.getStatu())) { + return new AjaxResult(AjaxResult.STATUS_FAIL, "您只能取消待付款订单"); + } + } + return erpCancelOrder(id); } @RequestMapping(value = "/exportExcel") @@ -494,17 +515,16 @@ */ @RequestMapping(value = "/erpExportExcel") public void erpExportExcel(ModelMap model, HttpServletRequest request, HttpServletResponse response, - SysOrder sysOrder) throws Exception { + SysOrder sysOrder) throws Exception { doExportOrder(response, sysOrder); return; } - - /** * 执行订单导出,总部和门店共用,但是搜索条件不一样 + * * @param response * @param sysOrder * @throws IOException diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java index 20ffba2..8c82ce0 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/action/ProjServiceController.java @@ -14,7 +14,10 @@ import com.matrix.core.tools.excl.ExcelSheetPO; import com.matrix.core.tools.excl.ExcelUtil; import com.matrix.core.tools.excl.ExcelVersion; +import com.matrix.system.common.bean.BusParameterSettings; import com.matrix.system.common.bean.SysUsers; +import com.matrix.system.common.constance.AppConstance; +import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.common.dao.SysCompanyDao; import com.matrix.system.common.service.SysUsersService; import com.matrix.system.common.tools.DataAuthUtil; @@ -478,6 +481,8 @@ } } + @Autowired + BusParameterSettingsDao busParameterSettingsDao; /** * 根据id取消预约 @@ -485,6 +490,24 @@ @RequestMapping(value = "/cancelOrder") public @ResponseBody AjaxResult cancelOrder(SysProjServices services) { + + SysProjServices checkProjServices = sysProjServicesDao.selectById(services.getId()); + BusParameterSettings shopManageAbleCancelDfkOrder = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER, checkProjServices.getCompanyId()); + if (StringUtils.isNotBlank(shopManageAbleCancelDfkOrder.getParamValue()) + && shopManageAbleCancelDfkOrder.getParamValue().equals(Dictionary.FLAG_YES)) { + if (!checkProjServices.getState().equals(Dictionary.SERVICE_STATU_DYY) + && !checkProjServices.getState().equals(Dictionary.SERVICE_STATU_DQR)) { + return new AjaxResult(AjaxResult.STATUS_FAIL, "您只能取消待预约订单"); + } + } + return erpCancelOrder(services); + } + /** + * 根据id取消预约 + */ + @RequestMapping(value = "/erpCancelOrder") + public @ResponseBody + AjaxResult erpCancelOrder(SysProjServices services) { int i = sysProjServicesService.modifyCancelProjServices(services); if (i > 0) { return new AjaxResult(AjaxResult.STATUS_SUCCESS, "取消预约成功"); @@ -492,7 +515,6 @@ return new AjaxResult(AjaxResult.STATUS_FAIL, "取消预约失败"); } } - /** * 设置服务单划扣成功 diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjUseDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjUseDao.xml index 2a1b757..957d259 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjUseDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysProjUseDao.xml @@ -924,7 +924,7 @@ left join shopping_goods f on e.proj_id=f.id where 1=1 and a.type='套餐' and a.TAOCAN_ID IS NULL <if test="record.queryKey != null and record.queryKey !='' "> - and (instr(b.name, #{record.queryKey}) or instr(b.zjm, #{record.queryKey}) or instr(goods_no, #{record.queryKey})) + and (instr(b.name, #{record.queryKey}) or instr(b.zjm, #{record.queryKey}) or instr(b.goods_no, #{record.queryKey})) </if> <if test="record.isOver != null and record.isOver !='' "> and a.IS_OVER = #{record.isOver} diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/projService-list.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/projService-list.html index 3126f80..c1f81ad 100644 --- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/projService-list.html +++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/projService-list.html @@ -138,7 +138,7 @@ layer.confirm('确定取消此订单?', { btn: ['确认', '取消'] //可以无限个按钮 }, function(index, layero){ - $.post(basePath+'/admin/projService/cancelOrder?id='+id, {}, function(data){ + $.post(basePath+'/admin/projService/erpCancelOrder?id='+id, {}, function(data){ parent.layer.msg(data.info,{icon: 1}); layer.closeAll(); myGrid.serchData(); diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/sysOrder-list.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/sysOrder-list.html index bef684f..eb8abf4 100644 --- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/sysOrder-list.html +++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/sysOrder-list.html @@ -150,7 +150,7 @@ layer.confirm('确定取消此订单?', { btn: ['确认', '取消'] //可以无限个按钮 }, function(index, layero){ - $.post(basePath+'/admin/order/cancelOrder?id='+id+'&del=0', {}, function(data){ + $.post(basePath+'/admin/order/erpCancelOrder?id='+id+'&del=0', {}, function(data){ if (data.status == '200') { parent.layer.msg(data.info,{icon: 1}); } else { diff --git a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java index 762da8b..a3fab25 100644 --- a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java +++ b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java @@ -98,6 +98,14 @@ newSettings.add(newSetting7); + ParameterSettings newSetting8=new ParameterSettings(); + newSetting8.setCode(AppConstance.SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER); + newSetting8.setName("门店是否只能取消待付款订单,服务单"); + newSetting8.setType(1); + newSetting8.setCategory("店务配置"); + newSettings.add(newSetting8); + + for (ParameterSettings newSetting : newSettings) { List<ParameterSettings> parameterSettings = parameterSettingsDao.selectByModel(newSetting); if(CollectionUtil.isEmpty(parameterSettings)){ -- Gitblit v1.9.1