Pārlūkot izejas kodu

8.2 一级市场购物流程,包括订单查看相关

Mechrevo 1 gadu atpakaļ
vecāks
revīzija
b2952781ee

+ 6 - 1
sp-service/level-one-server/src/main/java/com/pj/tb_goods_cart/TbGoodsCartService.java

@@ -8,11 +8,14 @@ import com.pj.common.core.exception.ServiceException;
 import com.pj.current.dto.APPLoginUserInfo;
 import com.pj.current.satoken.StpAPPUserUtil;
 import com.pj.enummj.DeleteStatus;
+import com.pj.enummj.IsLock;
 import com.pj.tb_goods_cart.dto.GoodsCartInfoDto;
 import com.pj.tb_goods_transit.TbGoodsTransit;
 import com.pj.tb_goods_transit.TbGoodsTransitMapper;
 import com.pj.tb_group.TbGroup;
 import com.pj.tb_group.TbGroupMapper;
+import com.pj.tb_people.TbPeople;
+import com.pj.tb_people.TbPeopleMapper;
 import com.pj.utils.so.SoMap;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -39,6 +42,8 @@ public class TbGoodsCartService extends ServiceImpl<TbGoodsCartMapper, TbGoodsCa
 	/** 已过审的商品 */
 	@Autowired
 	private TbGoodsTransitMapper tbGoodsTransitMapper;
+	@Autowired
+	private TbPeopleMapper tbPeopleMapper;
 	/** 增 */
 	void add(TbGoodsCart t){
 		save(t);
@@ -71,7 +76,7 @@ public class TbGoodsCartService extends ServiceImpl<TbGoodsCartMapper, TbGoodsCa
 		APPLoginUserInfo appUser = StpAPPUserUtil.getAPPLoginInfo();
 		if(appUser == null || appUser.getLoginId() == null)return AjaxJson.getError("购买者账号异常");
 		//判断当前用户是否为一级市场边民组长
-		int leader = tbGroupMapper.selectList(new LambdaQueryWrapper<TbGroup>().eq(TbGroup::getLeaderId, appUser.getLoginId())).size();
+		int leader = tbPeopleMapper.selectList(new LambdaQueryWrapper<TbPeople>().eq(TbPeople::getId, appUser.getFk()).eq(TbPeople::getIsLock, IsLock.IS_LOCK_ON.getCode()).eq(TbPeople::getDeleteStatus, DeleteStatus.DELETE_STATUS_ON.getCode())).size();
 		if(leader == 0)throw new ServiceException("您当前的身份不是互市组组长,无法添加购物车!");
 		//购物车查重
 		int size = tbGoodsCartMapper.selectList(new LambdaQueryWrapper<TbGoodsCart>()

+ 6 - 1
sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/GoodsTransitAppController.java

@@ -70,7 +70,12 @@ public class GoodsTransitAppController {
 
 
 
-    /** app端 商户确认订单*/
+    /**
+     * 采购一级市场的商品,
+     * 包括加入购物车、购买、支付(暂时不做),
+     * 下单后会向组内边民发送短信,
+     * 通知其登录APP进行交易确认。
+     */
     @RequestMapping("purchaseLevelOntGoodsTransit")
 //    @SaCheckPermission(TbGoodsTransit.PERMISSION_CODE_ADD)
     public AjaxJson purchaseLevelOntGoodsTransit(@Validated @RequestBody PurchaseLevelOneGoodsTransitParam purchaseLevelOneGoodsTransitParam) throws Exception {

+ 8 - 2
sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/MethodGoodsTransitService.java

@@ -7,6 +7,7 @@ import com.pj.tb_goods_transit.retry.SmsRetryService;
 import com.pj.tb_order.TbOrder;
 import com.pj.tb_order.TbOrderMapper;
 import com.pj.tb_people.TbPeople;
+import com.pj.tb_people.TbPeopleMapper;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFRow;
 import org.apache.poi.hssf.usermodel.HSSFSheet;
@@ -40,6 +41,8 @@ public class MethodGoodsTransitService {
     private SmsRetryService smsRetryService;
     @Autowired
     private TbOrderMapper tbOrderMapper;
+    @Autowired
+    private TbPeopleMapper tbPeopleMapper;
     //todo:
 
 
@@ -98,13 +101,16 @@ public class MethodGoodsTransitService {
     public TbOrder setTbOrderProperties(TbGoodsTransit tbGoodsTransit, APPLoginUserInfo appLoginInfo){
         //执行采购,创建一级市场订单表
         TbOrder tbOrder = new TbOrder();
+        List<TbPeople> tbPeopleList = tbPeopleMapper.selectList(new LambdaQueryWrapper<TbPeople>().eq(TbPeople::getId, appLoginInfo.getFk()).eq(TbPeople::getIsLock,IsLock.IS_LOCK_ON.getCode()).eq(TbPeople::getDeleteStatus,DeleteStatus.DELETE_STATUS_ON.getCode()));
+        if(tbPeopleList.size() != 1)throw new RuntimeException("当前用户信息有误!");
         //设置属性
+        tbOrder.setGroupId(tbPeopleList.get(0).getGroupId());
         tbOrder.setTradeAreaId(tbGoodsTransit.getTradeAreaId());
         tbOrder.setTradeAreaName(tbGoodsTransit.getTradeAreaName());
         tbOrder.setGoodsId(tbGoodsTransit.getId());
         tbOrder.setSaleMainId(Long.valueOf(tbGoodsTransit.getMerchantId()));
-//		tbOrder.setTradeNo();  // 建议编号
-        tbOrder.setBuyUserId(appLoginInfo.getLoginId());
+//		tbOrder.setTradeNo();  // 交易编号
+        tbOrder.setBuyUserId(tbPeopleList.get(0).getId());
         tbOrder.setBuyUserType(2 + "");
         tbOrder.setBuyUserName(appLoginInfo.getLoginName());
         tbOrder.setEnterpriseId(Long.valueOf(tbGoodsTransit.getMerchantId()));

+ 5 - 7
sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/TbGoodsTransitService.java

@@ -228,10 +228,10 @@ public class TbGoodsTransitService extends ServiceImpl<TbGoodsTransitMapper, TbG
 		if(appLoginInfo == null || appLoginInfo.getLoginId() == null)
 			throw new RuntimeException("当前登陆用户信息已失效!");
 		//判断当前登陆人是否为互市组组长
-		List<TbGroup> list = tbGroupMapper.selectList
-				(new LambdaQueryWrapper<TbGroup>().eq(TbGroup::getLeaderId, appLoginInfo.getLoginId())
-						.eq(TbGroup::getIsLock, IsLock.IS_LOCK_ON.getCode())
-						.eq(TbGroup::getDeleteStatus, DeleteStatus.DELETE_STATUS_ON.getCode()));
+		List<TbPeople> list = tbPeopleMapper.selectList
+				(new LambdaQueryWrapper<TbPeople>().eq(TbPeople::getId,appLoginInfo.getFk()).eq(TbPeople::getRole, 2)
+						.eq(TbPeople::getIsLock, IsLock.IS_LOCK_ON.getCode())
+						.eq(TbPeople::getDeleteStatus, DeleteStatus.DELETE_STATUS_ON.getCode()));
 		if(list.size() != 1)throw new RuntimeException("您当前不属于互市组组长~");
 		//获取商品ID
 		String goodsTransitId = purchaseLevelOntGoodsTransitParam.getGoodsTransitId();
@@ -245,8 +245,6 @@ public class TbGoodsTransitService extends ServiceImpl<TbGoodsTransitMapper, TbG
 		if(tbGoods == null)throw new RuntimeException("当前商品已海关不允许销售!");
 		//执行采购,创建一级市场订单表 , 该方法只是设置tbOrder的属性
 		TbOrder tbOrder = methodGoodsTransitService.setTbOrderProperties(tbGoodsTransit, appLoginInfo);
-
-
 		//执行保存 创建订单
 		int insert = tbOrderMapper.insert(tbOrder);
 		if(insert == 1){
@@ -254,7 +252,7 @@ public class TbGoodsTransitService extends ServiceImpl<TbGoodsTransitMapper, TbG
 			// todo: 发送短信给边民组通知其确认
 
 			//获取互市组ID
-			Long groupId = list.get(0).getId();
+			Long groupId = list.get(0).getGroupId();
 			if(groupId == null)throw new RuntimeException("订单异常,原因是没有关联的边民!");
 			//通过互市组ID查询所属边民的ID集合
 			List<TbPeople> tbPeopleList = tbPeopleMapper.selectList

+ 8 - 5
sp-service/level-one-server/src/main/java/com/pj/tb_order/MethodOrderService.java

@@ -32,24 +32,27 @@ public class MethodOrderService {
     public List<TbOrder> checkType(Integer userType, Long fk, SoMap so){
         if(userType == null)return null;
         if(fk == null)return null;
+        LambdaQueryWrapper<TbOrder> queryWrapper = new LambdaQueryWrapper<>();
         switch (userType){
             case 1: //边民
                 TbPeople tbPeople = tbPeopleMapper.selectById(fk);
                 if(tbPeople == null)throw new ServiceException("当前用户未认证边民!");
                 //根据组进行匹配订单
-                so.set("group_id",tbPeople.getGroupId());
+                queryWrapper.eq(TbOrder::getGroupId,tbPeople.getGroupId());
                 break;
             case 2: //互市组组长
-                so.set("buy_user_id",fk);
+                queryWrapper.eq(TbOrder::getBuyUserId,fk);
                 break;
             case 3: // 一级市场商家
-                so.set("enterprise_id",fk);
+                queryWrapper.eq(TbOrder::getEnterpriseId,fk);
                 break;
             default:
                 throw new RuntimeException("服务器繁忙~");
         }
-        so.set("delete_status", DeleteStatus.DELETE_STATUS_ON.getCode());
-        return tbOrderMapper.getList(so);
+        queryWrapper.eq(TbOrder::getDeleteStatus, DeleteStatus.DELETE_STATUS_ON.getCode());
+        queryWrapper.orderByDesc(TbOrder::getCreateTime);
+        List<TbOrder> tbOrderList = tbOrderMapper.selectList(queryWrapper);
+        return tbOrderList;
 
     }
 

+ 4 - 0
sp-service/level-one-server/src/main/java/com/pj/tb_order/TbOrder.java

@@ -70,6 +70,10 @@ public class TbOrder extends Model<TbOrder> implements Serializable {
 	 *
 	 */
 	private Long saleMainId;
+	/**
+	 *
+	 */
+	private Long groupId;
 
 	/**
 	 *  商品ID

+ 1 - 0
sp-service/level-one-server/src/main/java/com/pj/tb_order/TbOrderAppController.java

@@ -35,6 +35,7 @@ public class TbOrderAppController {
 	public AjaxJson getList() {
 		SoMap so = SoMap.getRequestSoMap();
 		List<TbOrder> list = tbOrderService.getAPPList(so.startPage());
+		if(list.size() == 0)return AjaxJson.getSuccess("暂无更多的订单消息!");
 		return AjaxJson.getPageData(so.getDataCount(), list);
 	}