瀏覽代碼

fixed 收银一些优化

fushengqian 1 年之前
父節點
當前提交
f1dc87c8c0

+ 9 - 0
fuint-application/src/main/java/com/fuint/common/service/CartService.java

@@ -14,6 +14,15 @@ import java.util.Map;
  */
 public interface CartService extends IService<MtCart> {
 
+    /**
+     * 切换购物车给会员
+     *
+     * @param userId
+     * @param cartIds
+     * @return
+     * */
+    Boolean switchCartIds(Integer userId, String cartIds) throws BusinessCheckException;
+
     /**
      * 保存购物车
      *

+ 35 - 2
fuint-application/src/main/java/com/fuint/common/service/impl/CartServiceImpl.java

@@ -15,7 +15,12 @@ import com.fuint.repository.model.MtGoodsSku;
 import com.fuint.utils.StringUtil;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
-import java.util.*;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.Date;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * 购物车业务实现类
@@ -33,6 +38,34 @@ public class CartServiceImpl extends ServiceImpl<MtCartMapper, MtCart> implement
 
     private MtGoodsSkuMapper mtGoodsSkuMapper;
 
+    /**
+     * 切换购物车给会员
+     *
+     * @param userId
+     * @param cartIds
+     * @return
+     * */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean switchCartIds(Integer userId, String cartIds) {
+       if (userId == null || userId < 1 || StringUtil.isEmpty(cartIds)) {
+           return false;
+       }
+       List<String> cartIdList = Arrays.asList(cartIds.split(","));
+       if (cartIdList != null && cartIdList.size() > 0) {
+           for (String cartId : cartIdList) {
+               if (StringUtil.isNotEmpty(cartId)) {
+                   MtCart mtCart = mtCartMapper.selectById(Integer.parseInt(cartId));
+                   if (mtCart != null) {
+                       mtCart.setUserId(userId);
+                       this.updateById(mtCart);
+                   }
+               }
+           }
+       }
+       return true;
+    }
+
     /**
      * 保存购物车
      *
@@ -155,7 +188,7 @@ public class CartServiceImpl extends ServiceImpl<MtCartMapper, MtCart> implement
     /**
      * 删除购物车
      *
-     * @param cartIds
+     * @param  cartIds
      * @throws BusinessCheckException
      */
     @Override

+ 1 - 2
fuint-application/src/main/java/com/fuint/common/service/impl/GoodsServiceImpl.java

@@ -430,9 +430,7 @@ public class GoodsServiceImpl extends ServiceImpl<MtGoodsMapper, MtGoods> implem
             return result;
         }
         Integer merchantId = mtStore.getMerchantId() == null ? 0 : mtStore.getMerchantId();
-
         Page<MtGoods> pageHelper = PageHelper.startPage(page, pageSize);
-
         List<MtGoods> goodsList = new ArrayList<>();
         List<MtGoodsSku> skuList = new ArrayList<>();
         if (StringUtil.isNotEmpty(keyword)) {
@@ -442,6 +440,7 @@ public class GoodsServiceImpl extends ServiceImpl<MtGoodsMapper, MtGoods> implem
             MtGoods goods = mtGoodsMapper.selectById(skuList.get(0).getGoodsId());
             goodsList.add(goods);
         } else {
+            pageHelper = PageHelper.startPage(page, pageSize);
             if (keyword != null && StringUtil.isNotEmpty(keyword)) {
                 goodsList = mtGoodsMapper.searchStoreGoodsList(merchantId, storeId, keyword);
             } else {

+ 10 - 0
fuint-application/src/main/java/com/fuint/module/backendApi/controller/BackendCashierController.java

@@ -179,6 +179,16 @@ public class BackendCashierController extends BaseController {
         TAccount accountInfo = accountService.getAccountInfoById(accountDto.getId());
         Integer storeId = accountInfo.getStoreId();
 
+        if (storeId == null || storeId < 1) {
+            MtMerchant mtMerchant = merchantService.queryMerchantById(accountInfo.getMerchantId());
+            if (mtMerchant != null) {
+                MtStore storeInfo = storeService.getDefaultStore(mtMerchant.getNo());
+                if (storeInfo != null) {
+                    storeId = storeInfo.getId();
+                }
+            }
+        }
+
         Map<String, Object> goodsData = goodsService.getStoreGoodsList(storeId, keyword, 0, 1, 100);
         return getSuccessResult(goodsData.get("goodsList"));
     }

+ 4 - 0
fuint-application/src/main/java/com/fuint/module/clientApi/controller/ClientCartController.java

@@ -217,6 +217,10 @@ public class ClientCartController extends BaseController {
         // 没有会员信息,则查询是否是后台收银员下单
         if (userInfo == null) {
             mtUser = memberService.getCurrentUserInfo(request, userId, token);
+            // 把收银员的购物信息切换给会员
+            if (mtUser != null && StringUtil.isNotEmpty(cartIds)) {
+                cartService.switchCartIds(userId, cartIds);
+            }
         } else {
             mtUser = memberService.queryMemberById(userInfo.getId());
         }