Commit a0c11b4d by 郑云飞

init

parent 84bc2801
...@@ -120,6 +120,8 @@ public class OrderMain { ...@@ -120,6 +120,8 @@ public class OrderMain {
@JsonInclude(JsonInclude.Include.NON_NULL) @JsonInclude(JsonInclude.Include.NON_NULL)
private Date ddef10; // 自定义项10 private Date ddef10; // 自定义项10
private Long groupOrderId;
@TableField(exist = false) @TableField(exist = false)
private Long areaId; private Long areaId;
......
package com.yunniu.farming.webadmin.service; package com.yunniu.farming.webadmin.service;
import com.yunniu.farming.webadmin.model.GroupOrder;
import com.yunniu.farming.webadmin.model.OrderMain;
/** /**
* @author zyf * @author zyf
* @date 2023/5/16 * @date 2023/5/16
...@@ -7,4 +10,5 @@ package com.yunniu.farming.webadmin.service; ...@@ -7,4 +10,5 @@ package com.yunniu.farming.webadmin.service;
*/ */
public interface GroupOrderService { public interface GroupOrderService {
GroupOrder addGroupOrder(OrderMain item);
} }
package com.yunniu.farming.webadmin.service.impl; package com.yunniu.farming.webadmin.service.impl;
import com.alibaba.fastjson.JSON;
import com.aliyun.oss.ServiceException;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.mysql.cj.xdevapi.Warning;
import com.yunniu.farming.webadmin.dao.GroupAreaDao;
import com.yunniu.farming.webadmin.dao.GroupBuyDao;
import com.yunniu.farming.webadmin.dao.GroupOrderDao;
import com.yunniu.farming.webadmin.model.GroupBuy;
import com.yunniu.farming.webadmin.model.GroupOrder;
import com.yunniu.farming.webadmin.model.OrderMain;
import com.yunniu.farming.webadmin.service.GroupOrderService; import com.yunniu.farming.webadmin.service.GroupOrderService;
import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Objects;
/** /**
* @author zyf * @author zyf
* @date 2023/5/16 * @date 2023/5/16
...@@ -12,4 +29,58 @@ import org.springframework.stereotype.Service; ...@@ -12,4 +29,58 @@ import org.springframework.stereotype.Service;
@Service @Service
@Slf4j @Slf4j
public class GroupOrderServiceImpl implements GroupOrderService { public class GroupOrderServiceImpl implements GroupOrderService {
@Autowired
private GroupOrderDao orderDao;
@Autowired
private GroupBuyDao groupBuyDao;
@Autowired
private GroupAreaDao groupAreaDao;
/**
* 保存团购订单
* @param item
* @return
*/
@Override
public GroupOrder addGroupOrder(OrderMain item) {
if (item.getAreaId() == null){
throw new ServiceException("缺少小区id参数");
}
if (item.getGroupBuyId() == null) {
throw new ServiceException("缺少团购id参数");
}
// 查询此团购活动在此小区是否有待成团的订单
GroupOrder groupOrder = orderDao.selectOne(Wrappers.<GroupOrder>lambdaQuery()
.eq(GroupOrder::getAreaId, item.getAreaId())
.eq(GroupOrder::getGroupBuyId, item.getGroupBuyId())
.eq(GroupOrder::getGroupStatus, 0)
);
// 查询团购活动是否存在
GroupBuy groupBuy = groupBuyDao.selectById(item.getGroupBuyId());
if (ObjectUtils.isEmpty(groupBuy)) {
throw new ServiceException("团购活动不存在");
}
if (ObjectUtils.isEmpty(groupOrder)) {
List<Integer> list = JSON.parseArray(groupBuy.getAreaIds(), Integer.class);
if (!list.contains(item.getAreaId())) {
throw new ServiceException("小区不存在");
}
GroupOrder order = new GroupOrder();
order.setAreaId(item.getAreaId());
order.setGroupBuyId(item.getGroupBuyId());
order.setGroupSize(1);
order.setGroupStatus(0);
order.setCreateTime(new Date());
orderDao.insert(order);
return order;
}else {
groupOrder.setGroupSize(groupOrder.getGroupSize() + 1);
if (Objects.equals(groupOrder.getGroupSize(), groupBuy.getGroupSize())) {
groupOrder.setGroupStatus(1);
groupOrder.setSuccessTime(new Date());
}
return groupOrder;
}
}
} }
...@@ -93,7 +93,8 @@ public class OrderMainServiceImpl { ...@@ -93,7 +93,8 @@ public class OrderMainServiceImpl {
if (item.getId() == null) { if (item.getId() == null) {
if (item.getItype().equals(OrderMain.ITYPE_GROUP)){ if (item.getItype().equals(OrderMain.ITYPE_GROUP)){
// GroupOrder order = orderService. GroupOrder order = orderService.addGroupOrder(item);
item.setGroupOrderId(order.getId());
} }
// 单据日期 // 单据日期
item.setSorderdate(DateTools.getDate("yyyy-MM-dd")); item.setSorderdate(DateTools.getDate("yyyy-MM-dd"));
...@@ -141,6 +142,10 @@ public class OrderMainServiceImpl { ...@@ -141,6 +142,10 @@ public class OrderMainServiceImpl {
return Result.error("创建订单失败"); return Result.error("创建订单失败");
} }
if (item.getItype().equals(OrderMain.ITYPE_GROUP)){
GroupOrder order = orderService.addGroupOrder(item);
item.setGroupOrderId(order.getId());
}
// 单据日期 // 单据日期
item.setSorderdate(DateTools.getDate("yyyy-MM-dd")); item.setSorderdate(DateTools.getDate("yyyy-MM-dd"));
// 提交订单时间 // 提交订单时间
...@@ -153,7 +158,7 @@ public class OrderMainServiceImpl { ...@@ -153,7 +158,7 @@ public class OrderMainServiceImpl {
item.setIpaystatus(OrderMain.PAY_STATUS_NO);// 未支付 item.setIpaystatus(OrderMain.PAY_STATUS_NO);// 未支付
} }
item.setItype(OrderMain.ITYPE_TAKE);//外卖订单 // item.setItype(OrderMain.ITYPE_TAKE);//外卖订单
item.setIstatus(OrderMain.STATUS_NOPAY);//未付款 item.setIstatus(OrderMain.STATUS_NOPAY);//未付款
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment