Browse Source

物料申请接口

wangyc 8 years ago
parent
commit
16558f645a

+ 9 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java

@@ -1,13 +1,15 @@
 package com.uas.platform.b2c.prod.commodity.controller;
 
+import com.alibaba.fastjson.JSONObject;
+import com.uas.platform.b2c.core.constant.SplitChar;
+import com.uas.platform.b2c.core.support.view.JxlsExcelView;
 import com.uas.platform.b2c.prod.commodity.facade.ProductFacade;
 import com.uas.platform.b2c.prod.commodity.model.Goods;
 import com.uas.platform.b2c.prod.commodity.model.Product;
 import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
 import com.uas.platform.b2c.prod.commodity.service.ProductService;
-import com.uas.platform.b2c.core.constant.SplitChar;
-import com.uas.platform.b2c.core.support.view.JxlsExcelView;
 import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
+import com.uas.platform.b2c.prod.product.component.modal.Component;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
@@ -223,4 +225,9 @@ public class ProductController {
 	private ProductDetail getbyProductId(@PathVariable("id") Long id) {
 		return productService.findByProductId(id);
 	}
+
+	@RequestMapping(value = "/validition", method = RequestMethod.POST)
+	private  Component validitionStandard(@RequestBody JSONObject jsonObject) {
+		return productService.validitonStandard(jsonObject);
+	}
 }

+ 8 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java

@@ -1,8 +1,10 @@
 package com.uas.platform.b2c.prod.commodity.service;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.prod.commodity.model.Product;
 import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
 import com.uas.platform.b2c.prod.commodity.model.ProductStandardPutOnInfo;
+import com.uas.platform.b2c.prod.product.component.modal.Component;
 import com.uas.platform.b2c.trade.order.model.Purchase;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
@@ -124,4 +126,10 @@ public interface ProductService {
      * @return
      */
     ProductDetail findByProductId(Long id);
+
+    /**
+     * 验证物料申请是否为标准物料
+     * @return
+     */
+    Component validitonStandard(JSONObject jsonObject);
 }

+ 40 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java

@@ -15,7 +15,10 @@ import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 import com.uas.platform.b2c.prod.product.brand.dao.BrandDao;
 import com.uas.platform.b2c.prod.product.brand.modal.Brand;
 import com.uas.platform.b2c.prod.product.component.dao.ComponentDao;
+import com.uas.platform.b2c.prod.product.component.dao.ComponentSubmitDao;
 import com.uas.platform.b2c.prod.product.component.modal.Component;
+import com.uas.platform.b2c.prod.product.component.modal.ComponentSubmit;
+import com.uas.platform.b2c.prod.product.kind.model.Kind;
 import com.uas.platform.b2c.trade.order.dao.OrderDetailDao;
 import com.uas.platform.b2c.trade.order.model.Order;
 import com.uas.platform.b2c.trade.order.model.Purchase;
@@ -118,6 +121,9 @@ public class ProductServiceImpl implements ProductService {
     @Autowired
     private OrderDetailDao orderDetailDao;
 
+    @Autowired
+    private ComponentSubmitDao componentSubmitDao;
+
     private ConcurrentHashMap<String, Field> sortFields = new ConcurrentHashMap<String, Field>();
 
     @Override
@@ -624,5 +630,39 @@ public class ProductServiceImpl implements ProductService {
 
         return productDetail;
     }
+
+    @Override
+    public Component validitonStandard(JSONObject jsonObject) {
+        Component component = (Component)jsonObject.get("component");
+        if (component == null || component.getCode() == null)
+            throw new IllegalOperatorException("请填写器件原厂型号");
+        Brand brand = (Brand)jsonObject.get("brand");
+        if (brand == null || brand.getNameEn() == null)
+            throw new IllegalOperatorException("请填写品牌英文名");
+        List<Brand> brands = brandDao.findByNameEn(brand.getNameEn());
+        if (CollectionUtils.isEmpty(brands))
+            throw new IllegalOperatorException(("商城不存在:" + brand.getNameEn() + " 品牌,请选择商城品牌或申请该品牌"));
+        List<Component> componentMatched = componentDao.findByCodeAndBrandid(component.getCode(), brands.get(0).getId());
+        if (CollectionUtils.isEmpty(componentMatched)) {// 提交申请为非标准器件则转成器件申请
+            Kind kind = (Kind)jsonObject.get("kind");
+            if (kind == null || kind.getId() == null)
+                throw new IllegalOperatorException("请选择商城类目");
+            String attach = jsonObject.getString("attach");
+            if (attach == null)
+                throw new IllegalOperatorException("请上传规格书");
+            ComponentSubmit submit = new ComponentSubmit();
+            submit.setAttach(attach);
+            submit.setBrandid(brands.get(0).getId());
+            submit.setCode(component.getCode());
+            submit.setDefineentuu(SystemSession.getUser().getEnterprise().getUu());
+            submit.setDefineuu(SystemSession.getUser().getUserUU());
+            submit.setDefinetime(new Date());
+            submit.setIsUpdate(0);
+            submit.setKindid(kind.getId());
+
+            componentSubmitDao.save(submit);
+        }
+        return null;
+    }
 }