wangxiaoming 7 gadi atpakaļ
vecāks
revīzija
27ab0fd16e

+ 3 - 4
tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/agentInfo/AgentOrderService.java

@@ -4,12 +4,11 @@ import com.iamberry.wechat.core.entity.agentInfo.AgentOrder;
 import com.iamberry.wechat.core.entity.agentInfo.AgentOrderItem;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 采购&订单
  */
-public interface AgentOrderService {
-
-    AgentOrder addAgentOrder(AgentOrder agentOrder, List<AgentOrderItem> agentOrderItemList);
-    
+public interface AgentPurchaseOrderService {
+    Map<String,Object> addAgentOrder(AgentOrder agentOrder, List<AgentOrderItem> agentOrderItemList);
 }

+ 0 - 37
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/agentInfo/AgentOrderServiceImpl.java

@@ -1,37 +0,0 @@
-package com.iamberry.wechat.service.agentInfo;
-
-import com.iamberry.wechat.core.entity.OrderUtil;
-import com.iamberry.wechat.core.entity.agentInfo.AgentConfig;
-import com.iamberry.wechat.core.entity.agentInfo.AgentOrder;
-import com.iamberry.wechat.core.entity.agentInfo.AgentOrderItem;
-import com.iamberry.wechat.core.entity.agentInfo.AgentTooth;
-import com.iamberry.wechat.face.agentInfo.AgentInfoService;
-import com.iamberry.wechat.face.agentInfo.AgentOrderService;
-import com.iamberry.wechat.service.mapper.AgentInfoMapper;
-import com.iamberry.wechat.service.mapper.AgentPurchaseOrderMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-
-/**
- * Created by liuzhiwei on 2017/10/11.
- */
-@Service
-public class AgentOrderServiceImpl implements AgentOrderService {
-
-    @Autowired
-    private AgentPurchaseOrderMapper agentPurchaseOrderMapper;
-
-
-    @Override
-    public AgentOrder addAgentOrder(AgentOrder agentOrder, List<AgentOrderItem> agentOrderItemList) {
-        agentOrder.setAgentStatus(OrderUtil.ORDERSTAUTS_TOBEPAID);      //设置状态为:未支付
-
-        int amount  = 0;    //订单总金额
-
-
-
-        return null;
-    }
-}

+ 91 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/agentInfo/AgentPurchaseOrderServiceImpl.java

@@ -0,0 +1,91 @@
+package com.iamberry.wechat.service.agentInfo;
+
+import com.iamberry.wechat.core.entity.OrderUtil;
+import com.iamberry.wechat.core.entity.agentInfo.AgentConfig;
+import com.iamberry.wechat.core.entity.agentInfo.AgentOrder;
+import com.iamberry.wechat.core.entity.agentInfo.AgentOrderItem;
+import com.iamberry.wechat.core.entity.product.Product;
+import com.iamberry.wechat.core.entity.product.ProductColor;
+import com.iamberry.wechat.face.agentInfo.AgentPurchaseOrderService;
+import com.iamberry.wechat.service.mapper.AgentInfoMapper;
+import com.iamberry.wechat.service.mapper.AgentPurchaseOrderMapper;
+import com.iamberry.wechat.service.mapper.ProductInfoMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by liuzhiwei on 2017/10/11.
+ */
+@Service
+public class AgentPurchaseOrderServiceImpl implements AgentPurchaseOrderService {
+
+    @Autowired
+    private AgentPurchaseOrderMapper agentPurchaseOrderMapper;
+
+    @Autowired
+    private ProductInfoMapper productInfoMapper;
+
+    @Autowired
+    private AgentInfoMapper agentInfoMapper;
+
+    @Override
+    @Transactional
+    public Map<String,Object> addAgentOrder(AgentOrder agentOrder, List<AgentOrderItem> agentOrderItemList) {
+        Map<String,Object> map = new HashMap<String,Object>();
+        map.put("status","400");
+
+        agentOrder.setAgentStatus(OrderUtil.ORDERSTAUTS_TOBEPAID);      //设置状态为:未支付
+        int amount  = 0;    //订单总金额
+
+        for(AgentOrderItem agentOrderItem : agentOrderItemList){
+            ProductColor productColor = new ProductColor();
+            productColor.setColorId(agentOrderItem.getColorId());
+            productColor.setColorProductId(agentOrderItem.getProductId());
+            productColor = productInfoMapper.getProductColor(productColor);
+            Product product = productInfoMapper.getProductByProductId(agentOrderItem.getProductId(),agentOrderItem.getColorId());
+            if(productColor == null || product == null){
+                map.put("msg","查询产品出错!");
+                return map;
+            }
+            agentOrderItem.setProductId(product.getProductId());            //产品id
+            agentOrderItem.setItemProductName(product.getProductName());    //产品名称
+            agentOrderItem.setColorId(productColor.getColorId());           //颜色id
+            agentOrderItem.setItemColorName(productColor.getColorName());   //颜色名称
+            agentOrderItem.setProductType(product.getProductType().getTypeId());    //产品类型id
+            agentOrderItem.setProductRentType(product.getProductRentType());        //销售类型
+            agentOrderItem.setItemProductPrice(productColor.getColorPrice());       //商品原价
+            agentOrderItem.setItemProductPic(product.getProductIntroduceImg());     //介绍图
+
+            // -------- 计算金额 ---------
+            Integer discount = 0;   //优惠价
+            AgentConfig agentConfig = new AgentConfig();
+            agentConfig.setColorId(productColor.getColorId());
+            agentConfig.setAgentId(agentOrder.getAgentId());
+            agentConfig = agentInfoMapper.getAgentConfig(agentConfig);
+            if(agentConfig != null){
+                discount = agentConfig.getConfigAmount();
+            }else{
+                discount = productColor.getColorDiscount();
+            }
+            agentOrderItem.setItemProductDiscount(discount); //商品优惠价
+
+            Integer itemSummary = 0;
+            if(agentOrderItem.getItemNum() == null || agentOrderItem.getItemNum() < 1){
+                map.put("msg","产品数量不能小于1!");
+                return map;
+            }
+            itemSummary = agentOrderItem.getItemNum() * discount;   //计算订单项小结
+            amount += itemSummary;  //计算订单总金额
+        }
+
+        agentPurchaseOrderMapper.addAgentOrder(agentOrder);
+
+
+        return null;
+    }
+}

+ 9 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/AgentPurchaseOrderMapper.java

@@ -1,8 +1,17 @@
 package com.iamberry.wechat.service.mapper;
 
+import com.iamberry.wechat.core.entity.agentInfo.AgentOrder;
+
 /**
  *  采购订单
  */
 public interface AgentPurchaseOrderMapper {
 
+    /**
+     * 添加订单
+     * @param agentOrder
+     * @return
+     */
+    Integer addAgentOrder(AgentOrder agentOrder);
+
 }

+ 9 - 5
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/agentPurchaseOrderMapper.xml

@@ -1,13 +1,17 @@
 <?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper 
-PUBLIC 
-	"-//mybatis.org//DTD Mapper 3.0//EN" 
-	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<!DOCTYPE mapper
+        PUBLIC
+        "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <!-- 命名,每一个映射对象不一样
 	namespace:必须与对应的接口全类名一致
  -->
 <mapper namespace="com.iamberry.wechat.service.mapper.AgentPurchaseOrderMapper">
 
+    <insert id="insert" parameterType="AgentOrder" useGeneratedKeys="true">
+		insert into tbIamberryAgentOrder (`agent_orderid` ,`agent_id` ,`agent_yet_amount` ,`agent_amount` ,`agent_create_date` ,`agent_post_num` ,`agent_post_firm` ,`agent_status` ,`agent_send_date` ,`agent_address_info` ,`agent_address_postnum` ,`agent_address_tel` ,`agent_address_name` ,`agent_admin_remark` )
+		values (#{agentOrderid},#{agentId},#{agentYetAmount},#{agentAmount},#{agentCreateDate},#{agentPostNum},#{agentPostFirm},#{agentStatus},#{agentSendDate},#{agentAddressInfo},#{agentAddressPostnum},#{agentAddressTel},#{agentAddressName},#{agentAdminRemark})
+	</insert>
+
 
-	
 </mapper>

+ 4 - 26
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/agentInfo/AgentOrderHandler.java

@@ -1,22 +1,16 @@
 package com.iamberry.wechat.handles.agentInfo;
 
-import com.iamberry.wechat.core.entity.OrderUtil;
 import com.iamberry.wechat.core.entity.ResultMsg;
 import com.iamberry.wechat.core.entity.WechatUtils;
 import com.iamberry.wechat.core.entity.agentInfo.AgentConfig;
 import com.iamberry.wechat.core.entity.agentInfo.AgentOrder;
 import com.iamberry.wechat.core.entity.agentInfo.AgentOrderItem;
 import com.iamberry.wechat.core.entity.agentInfo.AgentTooth;
-import com.iamberry.wechat.core.entity.cart.OrderPayDto;
 import com.iamberry.wechat.core.entity.member.Member;
-import com.iamberry.wechat.core.entity.order.Order;
 import com.iamberry.wechat.core.entity.product.Product;
-import com.iamberry.wechat.core.entity.product.ProductColor;
 import com.iamberry.wechat.face.agentInfo.AgentInfoService;
-import com.iamberry.wechat.face.agentInfo.AgentOrderService;
+import com.iamberry.wechat.face.agentInfo.AgentPurchaseOrderService;
 import com.iamberry.wechat.face.cart.ProductInfoService;
-import com.iamberry.wechat.tools.NameUtils;
-import com.iamberry.wechat.tools.ResultInfo;
 import net.sf.json.JSONArray;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -25,7 +19,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -39,7 +32,7 @@ public class AgentOrderHandler {
     @Autowired
     private ProductInfoService productInfoService;
     @Autowired
-    private AgentOrderService agentOrderService;
+    private AgentPurchaseOrderService agentPurchaseOrderService;
 
     /**
      * 获取采购信息
@@ -123,23 +116,8 @@ public class AgentOrderHandler {
             msg.setMessage("未选择产品!");
             return msg;
         }
-        for(AgentOrderItem agentOrderItem : agentOrderItemList){
-            ProductColor productColor = new ProductColor();
-            productColor.setColorId(agentOrderItem.getColorId());
-            productColor.setColorProductId(agentOrderItem.getProductId());
-            productColor = productInfoService.getProductColor(productColor);
-
-            Product product = productInfoService.getProductByProductId(agentOrderItem.getProductId(),agentOrderItem.getColorId());
-            if(productColor == null || product == null){
-                msg.setMessage("查询产品出错!");
-                return msg;
-            }
-            agentOrderItem.setProductId(product.getProductId());    //产品id
-            agentOrderItem.setColorId(productColor.getColorId());   //颜色id
-            agentOrderItem.setProductType(product.getProductType().getTypeId());    //产品类型id
-            agentOrderItem.setProductRentType(product.getProductRentType());
-        }
-        agentOrderService.addAgentOrder(agentOrder,agentOrderItemList);
+
+        agentPurchaseOrderService.addAgentOrder(agentOrder,agentOrderItemList);
         //---------------生成订单 --- end -----------------------