From f2f07f9c707dc4793c42c90c4039b41a59c3d0f2 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期一, 26 六月 2023 19:51:23 +0800
Subject: [PATCH] 商户端和管理台联调bug

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java |  143 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 140 insertions(+), 3 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
index 11d6138..003aa9c 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
@@ -1,10 +1,25 @@
 package com.ruoyi.order.service.impl.order;
 
-import com.ruoyi.system.domain.pojo.order.ConsumerGoods;
-import com.ruoyi.system.mapper.order.ConsumerGoodsMapper;
-import com.ruoyi.system.service.order.ConsumerGoodsService;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.order.domain.dto.*;
+import com.ruoyi.order.domain.pojo.order.ConsumerGoods;
+import com.ruoyi.order.domain.pojo.order.UserServiceRecord;
+import com.ruoyi.order.domain.vo.AppConsumerPageVo;
+import com.ruoyi.order.domain.vo.MerConsumerGoodsListVo;
+import com.ruoyi.order.domain.vo.MerConsumerGoodsVo;
+import com.ruoyi.order.mapper.order.ConsumerGoodsMapper;
+import com.ruoyi.order.service.order.ConsumerGoodsService;
+import com.ruoyi.order.service.order.UserServiceRecordService;
+import com.ruoyi.system.api.constant.AppErrorConstant;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -17,4 +32,126 @@
 @Service
 public class ConsumerGoodsServiceImpl extends ServiceImpl<ConsumerGoodsMapper, ConsumerGoods> implements ConsumerGoodsService {
 
+    @Resource
+    private ConsumerGoodsMapper consumerGoodsMapper;
+
+    @Resource
+    private UserServiceRecordService userServiceRecordService;
+    /**
+     * 获取用户服务
+     * @param page
+     * @param appConsumerPageDto
+     * @return
+     */
+    @Override
+    public List<AppConsumerPageVo> pageUserConsumerGoods(Page page, AppConsumerPageDto appConsumerPageDto){
+        return consumerGoodsMapper.pageUserConsumerGoods(page, appConsumerPageDto);
+    }
+
+    /**
+     * 获取会员服务商品
+     * @param merConsumerGoodsDto
+     * @return
+     */
+    @Override
+    public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto){
+        MerConsumerGoodsVo merConsumerGoodsVo = new MerConsumerGoodsVo();
+        if(merConsumerGoodsDto.getGoodsType()==1){
+            List<MerConsumerGoodsListVo> noSureList = consumerGoodsMapper.listMerNoSureConsumerGoods(merConsumerGoodsDto);
+            merConsumerGoodsVo.setNoSureList(noSureList);
+        }
+        List<MerConsumerGoodsListVo> sureList = consumerGoodsMapper.listMerConsumerGoods(merConsumerGoodsDto);
+        merConsumerGoodsVo.setSureList(sureList);
+        return merConsumerGoodsVo;
+    }
+
+    /**
+     * 确认商品次数
+     * @param merSureConsumerGoodsDto
+     */
+    @Override
+    public void sureMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){
+        List<MerSureConsumerGoodsListDto> merSureConsumerGoodsListDtoList = merSureConsumerGoodsDto.getMerSureConsumerGoodsListDtoList();
+        if(merSureConsumerGoodsListDtoList!=null && !merSureConsumerGoodsListDtoList.isEmpty()){
+            ConsumerGoods consumerGoods;
+            for(MerSureConsumerGoodsListDto merSureConsumerGoodsListDto : merSureConsumerGoodsListDtoList){
+                consumerGoods = this.getById(merSureConsumerGoodsListDto.getConsumerGoodsId());
+                consumerGoods.setCycleNumFlag(1);
+                consumerGoods.setServiceNum(merSureConsumerGoodsListDto.getServiceNum());
+                this.saveOrUpdate(consumerGoods);
+            }
+        }
+    }
+
+    /**
+     * 确认商品次数
+     * @param merSureConsumerGoodsDto
+     */
+    @Override
+    public void useMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){
+        List<MerSureConsumerGoodsListDto> merSureConsumerGoodsListDtoList = merSureConsumerGoodsDto.getMerSureConsumerGoodsListDtoList();
+        if(merSureConsumerGoodsListDtoList!=null && !merSureConsumerGoodsListDtoList.isEmpty()){
+            ConsumerGoods consumerGoods;
+            Integer serviceNum;
+            Integer usedNum;
+            Integer useNum;
+            Integer surpNum;
+            Long shopId = null;
+            Long userId = null;
+            String consumerGoodsNames = "";
+            String consumerGoodsIds = "";
+            Integer serviceType = 1;
+            for(MerSureConsumerGoodsListDto merSureConsumerGoodsListDto : merSureConsumerGoodsListDtoList){
+                consumerGoods = this.getById(merSureConsumerGoodsListDto.getConsumerGoodsId());
+                serviceNum = consumerGoods.getServiceNum();
+                usedNum = consumerGoods.getUsedNum();
+                surpNum = serviceNum - usedNum;
+                useNum = merSureConsumerGoodsListDto.getServiceNum();
+                if(useNum>surpNum){
+                    throw new ServiceException(AppErrorConstant.BEYOND_SURP_NUM);
+                }
+                consumerGoods.setUsedNum(usedNum+useNum);
+                consumerGoods.setUseTime(new Date());
+                if(consumerGoods.getUsedNum().equals(serviceNum)){
+                    consumerGoods.setServiceStatus(2);
+                    consumerGoods.setCompleteTime(new Date());
+                }
+                this.saveOrUpdate(consumerGoods);
+                shopId = consumerGoods.getShopId();
+                userId= consumerGoods.getUserId();
+                serviceType = consumerGoods.getGoodsType();
+                if(StringUtils.isBlank(consumerGoodsIds)){
+                    consumerGoodsIds = consumerGoods.getConsumerGoodsId();
+                }else{
+                    consumerGoodsIds = consumerGoodsIds + "," + consumerGoods.getConsumerGoodsId();
+                }
+                if(StringUtils.isBlank(consumerGoodsNames)){
+                    consumerGoodsNames = consumerGoods.getGoodsName();
+                }else{
+                    consumerGoodsNames = consumerGoodsNames + "、" + consumerGoods.getGoodsName();
+                }
+            }
+            UserServiceRecord userServiceRecord = new UserServiceRecord();
+            userServiceRecord.setCreateTime(new Date());
+            userServiceRecord.setServiceType(serviceType);
+            userServiceRecord.setDelFlag(0);
+            userServiceRecord.setShopId(shopId);
+            userServiceRecord.setUserId(userId);
+            userServiceRecord.setConsumerGoodsIds(consumerGoodsIds);
+            userServiceRecord.setConsumerGoodsNames(consumerGoodsNames);
+            userServiceRecordService.saveOrUpdate(userServiceRecord);
+        }
+    }
+
+    /**
+     *
+     * @param page
+     * @param merConsumerGoodsPageDto
+     * @return
+     */
+    @Override
+    public List<MerConsumerGoodsListVo> pageMerConsumerGoodsNum(Page page, MerConsumerGoodsPageDto merConsumerGoodsPageDto){
+        List<MerConsumerGoodsListVo> merConsumerGoodsListVos = consumerGoodsMapper.pageMerConsumerGoodsNum(page, merConsumerGoodsPageDto);
+        return merConsumerGoodsListVos;
+    }
 }

--
Gitblit v1.7.1