Эх сурвалжийг харах

新增接口:查询企业物料数据和最近上传物料时间

hejq 7 жил өмнө
parent
commit
b788e3b192

+ 13 - 4
src/main/java/com/uas/ps/product/controller/ProductGetController.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.uas.ps.core.page.PageInfo;
 import com.uas.ps.entity.Product;
 import com.uas.ps.entity.ProductUsers;
+import com.uas.ps.product.entity.InviteProdInfo;
 import com.uas.ps.product.entity.ProductPrivateView;
 import com.uas.ps.product.search.model.PageParams;
 import com.uas.ps.product.service.ProductService;
@@ -14,10 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Sort;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
@@ -238,4 +236,15 @@ public class ProductGetController {
         return productService.countByEnUU(enUU);
     }
 
+    /**
+     * 根据传入的企业UU信息获取物料数量和最近一次上传时间
+     *
+     * @param json 企业UU信息
+     * @return InviteProdInfo List
+     */
+    @RequestMapping(value = "/getCountAndTime", method = RequestMethod.GET)
+    public List<InviteProdInfo> findByEnUUList(@RequestParam("enUUList") String json) {
+        List<Long> enUUList = JSON.parseArray(json, Long.class);
+        return productService.getCountAndTime(enUUList);
+    }
 }

+ 53 - 0
src/main/java/com/uas/ps/product/entity/InviteProdInfo.java

@@ -0,0 +1,53 @@
+package com.uas.ps.product.entity;
+
+import java.util.Date;
+
+/**
+ * 邀请注册信息获取到的企业物料数据
+ * <pre>
+ *   关于物料信息相关查询统一移到物料服务
+ * </pre>
+ * @author hejq
+ * @date 2018-08-20 14:48
+ */
+public class InviteProdInfo {
+
+    /**
+     * 企业UU号
+     */
+    private Long enUU;
+
+    /**
+     * 企业上传物料数
+     */
+    private Long count;
+
+    /**
+     * 最近一次上传时间
+     */
+    private Date lastDate;
+
+    public Long getEnUU() {
+        return enUU;
+    }
+
+    public void setEnUU(Long enUU) {
+        this.enUU = enUU;
+    }
+
+    public Long getCount() {
+        return count;
+    }
+
+    public void setCount(Long count) {
+        this.count = count;
+    }
+
+    public Date getLastDate() {
+        return lastDate;
+    }
+
+    public void setLastDate(Date lastDate) {
+        this.lastDate = lastDate;
+    }
+}

+ 9 - 4
src/main/java/com/uas/ps/product/service/ProductService.java

@@ -2,10 +2,7 @@ package com.uas.ps.product.service;
 
 import com.uas.ps.core.page.PageInfo;
 import com.uas.ps.entity.Product;
-import com.uas.ps.product.entity.Prod;
-import com.uas.ps.product.entity.ProductInfo;
-import com.uas.ps.product.entity.ProductPrivateView;
-import com.uas.ps.product.entity.ProductSaler;
+import com.uas.ps.product.entity.*;
 import com.uas.ps.support.ResultMap;
 import org.springframework.data.domain.Page;
 import org.springframework.transaction.annotation.Transactional;
@@ -388,4 +385,12 @@ public interface ProductService {
      * @return
      */
     Map<String,Object> checkImportProductList(List<ProductInfo> products);
+
+    /**
+     * 根据传入的企业UU信息获取物料数量和最近一次上传时间
+     *
+     * @param enUUList 企业UU信息
+     * @return InviteProdInfo List
+     */
+    List<InviteProdInfo> getCountAndTime(List<Long> enUUList);
 }

+ 23 - 0
src/main/java/com/uas/ps/product/service/impl/ProductServiceImpl.java

@@ -1268,4 +1268,27 @@ public class ProductServiceImpl implements ProductService {
         map.put("success", success);
         return map;
     }
+
+    /**
+     * 根据传入的企业UU信息获取物料数量和最近一次上传时间
+     *
+     * @param enUUList 企业UU信息
+     * @return InviteProdInfo List
+     */
+    @Override
+    public List<InviteProdInfo> getCountAndTime(List<Long> enUUList) {
+        List<InviteProdInfo> infoList = new ArrayList<>();
+        for (Long enUU : enUUList) {
+            InviteProdInfo info = new InviteProdInfo();
+            info.setEnUU(enUU);
+            Long count = countByEnUU(enUU);
+            info.setCount(count);
+            if (count > 0) {
+                Date date = jdbcTemplate.queryForObject("select max(pr_erpdate) from products where pr_enuu = " + enUU, Date.class);
+                info.setLastDate(date);
+            }
+            infoList.add(info);
+        }
+        return infoList;
+    }
 }