diff --git a/src/main/java/com/yunniu/farming/webadmin/model/OrderMain.java b/src/main/java/com/yunniu/farming/webadmin/model/OrderMain.java
index a46e97e..07f25fc 100644
--- a/src/main/java/com/yunniu/farming/webadmin/model/OrderMain.java
+++ b/src/main/java/com/yunniu/farming/webadmin/model/OrderMain.java
@@ -120,6 +120,8 @@ public class OrderMain {
     @JsonInclude(JsonInclude.Include.NON_NULL)
     private Date ddef10; // 自定义项10
 
+    private Long groupOrderId;
+
     @TableField(exist = false)
     private Long areaId;
 
diff --git a/src/main/java/com/yunniu/farming/webadmin/service/GroupOrderService.java b/src/main/java/com/yunniu/farming/webadmin/service/GroupOrderService.java
index ca8d611..30fa875 100644
--- a/src/main/java/com/yunniu/farming/webadmin/service/GroupOrderService.java
+++ b/src/main/java/com/yunniu/farming/webadmin/service/GroupOrderService.java
@@ -1,5 +1,8 @@
 package com.yunniu.farming.webadmin.service;
 
+import com.yunniu.farming.webadmin.model.GroupOrder;
+import com.yunniu.farming.webadmin.model.OrderMain;
+
 /**
  * @author zyf
  * @date 2023/5/16
@@ -7,4 +10,5 @@ package com.yunniu.farming.webadmin.service;
  */
 public interface GroupOrderService {
 
+    GroupOrder addGroupOrder(OrderMain item);
 }
diff --git a/src/main/java/com/yunniu/farming/webadmin/service/impl/GroupOrderServiceImpl.java b/src/main/java/com/yunniu/farming/webadmin/service/impl/GroupOrderServiceImpl.java
index c9f6c50..d638943 100644
--- a/src/main/java/com/yunniu/farming/webadmin/service/impl/GroupOrderServiceImpl.java
+++ b/src/main/java/com/yunniu/farming/webadmin/service/impl/GroupOrderServiceImpl.java
@@ -1,9 +1,26 @@
 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 lombok.Data;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
 /**
  * @author zyf
  * @date 2023/5/16
@@ -12,4 +29,58 @@ import org.springframework.stereotype.Service;
 @Service
 @Slf4j
 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;
+        }
+    }
 }
diff --git a/src/main/java/com/yunniu/farming/webadmin/service/impl/OrderMainServiceImpl.java b/src/main/java/com/yunniu/farming/webadmin/service/impl/OrderMainServiceImpl.java
index 11fbd9b..2556c69 100644
--- a/src/main/java/com/yunniu/farming/webadmin/service/impl/OrderMainServiceImpl.java
+++ b/src/main/java/com/yunniu/farming/webadmin/service/impl/OrderMainServiceImpl.java
@@ -93,7 +93,8 @@ public class OrderMainServiceImpl {
 		if (item.getId() == null) {
 
 			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"));
@@ -141,6 +142,10 @@ public class OrderMainServiceImpl {
 			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"));
 		// 提交订单时间
@@ -153,7 +158,7 @@ public class OrderMainServiceImpl {
 			item.setIpaystatus(OrderMain.PAY_STATUS_NO);// 未支付
 		}
 
-		item.setItype(OrderMain.ITYPE_TAKE);//外卖订单
+//		item.setItype(OrderMain.ITYPE_TAKE);//外卖订单
 
 		item.setIstatus(OrderMain.STATUS_NOPAY);//未付款