Browse Source

企业商机接口对接

chenw 7 years ago
parent
commit
52223aaf37

+ 93 - 0
applications/sale/sale-dto/src/main/java/com/usoftchina/saas/sale/dto/EnremindReqDTO.java

@@ -0,0 +1,93 @@
+package com.usoftchina.saas.sale.dto;
+
+import java.io.Serializable;
+
+/**
+ * @Description 公司商机请求参数对象
+ * @Author chenwei
+ * @Date 2019/01/07
+ */
+public class EnremindReqDTO implements Serializable {
+    /**
+     * 页码
+     */
+    private int pageNumber;
+    /**
+     * 每页条数
+     */
+    private int pageSize;
+    /**
+     * 可报价为1  不可报价为0
+     */
+    private int enableOffer;
+    /**
+     * 搜索关键字
+     */
+    private String keyword;
+    /**
+     * 筛选开始时间
+     */
+    private String fromDate;
+    /**
+     * 筛选截止时间
+     */
+    private String endDate;
+
+    private Integer quoted;
+
+    public int getPageNumber() {
+        return pageNumber;
+    }
+
+    public void setPageNumber(int pageNumber) {
+        this.pageNumber = pageNumber;
+    }
+
+    public int getPageSize() {
+        return pageSize;
+    }
+
+    public void setPageSize(int pageSize) {
+        this.pageSize = pageSize;
+    }
+
+    public int getEnableOffer() {
+        return enableOffer;
+    }
+
+    public void setEnableOffer(int enableOffer) {
+        this.enableOffer = enableOffer;
+    }
+
+    public String getKeyword() {
+        return keyword;
+    }
+
+    public void setKeyword(String keyword) {
+        this.keyword = keyword;
+    }
+
+    public String getFromDate() {
+        return fromDate;
+    }
+
+    public void setFromDate(String fromDate) {
+        this.fromDate = fromDate;
+    }
+
+    public String getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(String endDate) {
+        this.endDate = endDate;
+    }
+
+    public Integer getQuoted() {
+        return quoted;
+    }
+
+    public void setQuoted(Integer quoted) {
+        this.quoted = quoted;
+    }
+}

+ 121 - 0
applications/sale/sale-dto/src/main/java/com/usoftchina/saas/sale/dto/EnremindRspDTO.java

@@ -0,0 +1,121 @@
+package com.usoftchina.saas.sale.dto;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description 公司商机返回 实体对象
+ * @Author chenwei
+ * @Date 2019/01/07
+ */
+public class EnremindRspDTO implements Serializable {
+
+    /**
+     * 客户名称
+     */
+    private String custName;
+    /**
+     * 物料品牌
+     */
+    private String prodBrand;
+    /**
+     * 物料名称
+     */
+    private String prodName;
+    /**
+     * 物料型号
+     */
+    private String prodOrispeccode;
+    /**
+     * 物料规格
+     */
+    private String prodSpec;
+    /**
+     * 物料单位
+     */
+    private String prodUnit;
+    /**
+     * 采购数量
+     */
+    private Double needQty;
+    /**
+     * 发布日期
+     */
+    private Date startDate;
+    /**
+     * 截止日期
+     */
+    private Date endDate;
+
+    public String getCustName() {
+        return custName;
+    }
+
+    public void setCustName(String custName) {
+        this.custName = custName;
+    }
+
+    public String getProdBrand() {
+        return prodBrand;
+    }
+
+    public void setProdBrand(String prodBrand) {
+        this.prodBrand = prodBrand;
+    }
+
+    public String getProdName() {
+        return prodName;
+    }
+
+    public void setProdName(String prodName) {
+        this.prodName = prodName;
+    }
+
+    public String getProdOrispeccode() {
+        return prodOrispeccode;
+    }
+
+    public void setProdOrispeccode(String prodOrispeccode) {
+        this.prodOrispeccode = prodOrispeccode;
+    }
+
+    public String getProdSpec() {
+        return prodSpec;
+    }
+
+    public void setProdSpec(String prodSpec) {
+        this.prodSpec = prodSpec;
+    }
+
+    public String getProdUnit() {
+        return prodUnit;
+    }
+
+    public void setProdUnit(String prodUnit) {
+        this.prodUnit = prodUnit;
+    }
+
+    public Double getNeedQty() {
+        return needQty;
+    }
+
+    public void setNeedQty(Double needQty) {
+        this.needQty = needQty;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+}

+ 5 - 0
applications/sale/sale-server/pom.xml

@@ -40,6 +40,11 @@
             <groupId>com.usoftchina.saas</groupId>
             <groupId>com.usoftchina.saas</groupId>
             <artifactId>server-starter</artifactId>
             <artifactId>server-starter</artifactId>
         </dependency>
         </dependency>
+        <dependency>
+          <groupId>com.usoftchina.saas</groupId>
+          <artifactId>mall-api</artifactId>
+          <version>1.0.0-SNAPSHOT</version>
+        </dependency>
 
 
         <!--test-->
         <!--test-->
         <dependency>
         <dependency>

+ 2 - 1
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/SaleApplication.java

@@ -17,7 +17,8 @@ import org.springframework.context.annotation.ComponentScan;
 @SpringBootApplication
 @SpringBootApplication
 @MapperScan("com.usoftchina.saas.sale.mapper")
 @MapperScan("com.usoftchina.saas.sale.mapper")
 @EnableEurekaClient
 @EnableEurekaClient
-@EnableFeignClients("com.usoftchina.saas")
+@EnableFeignClients({"com.usoftchina.saas",
+                    "com.usoftchina.inquiry"})
 @EnableAuthClient
 @EnableAuthClient
 @EnableDynamicDataSource
 @EnableDynamicDataSource
 @ComponentScan(basePackages = {"com.usoftchina.saas"})
 @ComponentScan(basePackages = {"com.usoftchina.saas"})

+ 14 - 3
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/controller/SaleController.java

@@ -6,12 +6,16 @@ import com.usoftchina.saas.commons.dto.BatchDealBaseDTO;
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.page.PageRequest;
 import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.sale.dto.EnremindReqDTO;
+import com.usoftchina.saas.sale.dto.EnremindRspDTO;
 import com.usoftchina.saas.sale.dto.SaleFormDTO;
 import com.usoftchina.saas.sale.dto.SaleFormDTO;
 import com.usoftchina.saas.sale.po.SaleList;
 import com.usoftchina.saas.sale.po.SaleList;
 import com.usoftchina.saas.sale.service.SaleService;
 import com.usoftchina.saas.sale.service.SaleService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
+import java.util.List;
+
 /**
 /**
  * @author: guq
  * @author: guq
  * @create: 2018-10-22 11:28
  * @create: 2018-10-22 11:28
@@ -192,8 +196,15 @@ public class SaleController {
         return Result.success(baseDTO);
         return Result.success(baseDTO);
     }
     }
 
 
-  @GetMapping("/test")
-    public String test() {
-        return "配置构建success-1";
+    @GetMapping("/enterprise/businessChance")
+    public Result getEnremind(EnremindReqDTO enremindReqDTO){
+        List<EnremindRspDTO> enremindRspDTOList =  saleService.getEnremind(enremindReqDTO);
+        return Result.success(enremindRspDTOList);
+    }
+
+    @GetMapping("/personal/businessChance")
+    public Result getPersonalBusinessChance(){
+
+        return Result.success();
     }
     }
 }
 }

+ 6 - 0
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/SaleService.java

@@ -6,9 +6,13 @@ import com.usoftchina.saas.commons.dto.BatchDealBaseDTO;
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.page.PageRequest;
 import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.sale.dto.EnremindReqDTO;
+import com.usoftchina.saas.sale.dto.EnremindRspDTO;
 import com.usoftchina.saas.sale.dto.SaleFormDTO;
 import com.usoftchina.saas.sale.dto.SaleFormDTO;
 import com.usoftchina.saas.sale.po.SaleList;
 import com.usoftchina.saas.sale.po.SaleList;
 
 
+import java.util.List;
+
 /**
 /**
  * @author: guq
  * @author: guq
  * @create: 2018-10-22 11:28
  * @create: 2018-10-22 11:28
@@ -46,4 +50,6 @@ public interface SaleService {
     void batchOpen(BatchDealBaseDTO baseDTOs);
     void batchOpen(BatchDealBaseDTO baseDTOs);
 
 
     DocBaseDTO saleTurnPurchase(Long id);
     DocBaseDTO saleTurnPurchase(Long id);
+
+    List<EnremindRspDTO> getEnremind(EnremindReqDTO enremindReqDTO);
 }
 }

+ 60 - 0
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java

@@ -2,6 +2,11 @@ package com.usoftchina.saas.sale.service.impl;
 
 
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.github.pagehelper.PageInfo;
+import com.usoftchina.inquiry.api.InquiryApi;
+import com.usoftchina.inquiry.po.IPage;
+import com.usoftchina.inquiry.po.InquiryEnRemind;
+import com.usoftchina.saas.account.api.AccountApi;
+import com.usoftchina.saas.account.api.CompanyApi;
 import com.usoftchina.saas.base.Result;
 import com.usoftchina.saas.base.Result;
 import com.usoftchina.saas.commons.api.CommonService;
 import com.usoftchina.saas.commons.api.CommonService;
 import com.usoftchina.saas.commons.api.MaxnumberService;
 import com.usoftchina.saas.commons.api.MaxnumberService;
@@ -28,6 +33,7 @@ import com.usoftchina.saas.sale.service.SaleService;
 import com.usoftchina.saas.storage.po.ProdIODetail;
 import com.usoftchina.saas.storage.po.ProdIODetail;
 import com.usoftchina.saas.storage.po.ProdInOut;
 import com.usoftchina.saas.storage.po.ProdInOut;
 import com.usoftchina.saas.utils.BeanMapper;
 import com.usoftchina.saas.utils.BeanMapper;
+import com.usoftchina.saas.utils.CollectionUtils;
 import com.usoftchina.saas.utils.DateUtils;
 import com.usoftchina.saas.utils.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
@@ -63,6 +69,12 @@ public class SaleServiceImpl implements SaleService{
     private CommonService commonService;
     private CommonService commonService;
     @Autowired
     @Autowired
     private PurchaseService purchaseService;
     private PurchaseService purchaseService;
+    @Autowired
+    private InquiryApi inquiryApi;
+    @Autowired
+    private AccountApi accountApi;
+    @Autowired
+    private CompanyApi companyApi;
 
 
     @Override
     @Override
     public PageInfo<SaleList> getListData(@PageDefault(size = 10) PageRequest page, ListReqDTO req) {
     public PageInfo<SaleList> getListData(@PageDefault(size = 10) PageRequest page, ListReqDTO req) {
@@ -650,6 +662,54 @@ public class SaleServiceImpl implements SaleService{
         return baseDTO;
         return baseDTO;
     }
     }
 
 
+    /**
+     * 获取企业商机
+     * @param enremindReqDTO
+     * @return
+     */
+    @Override
+    public List<EnremindRspDTO> getEnremind(EnremindReqDTO enremindReqDTO) {
+        /*Long userUU = accountApi.getAccountById(BaseContextHolder.getUserId()).getData().getUu();
+        if (userUU == null){
+            userUU = 0L;
+        }
+        Long enUU = companyApi.getCompanyById(BaseContextHolder.getCompanyId()).getData().getUu();
+        */
+        Long userUU = 1000002503L, enUU = 10041559L;
+        IPage<InquiryEnRemind> inquiryEnRemindIPage = inquiryApi.findEnRemind(userUU, enUU, enremindReqDTO.getPageNumber(),
+                enremindReqDTO.getPageSize(), enremindReqDTO.getEnableOffer(), enremindReqDTO.getKeyword(), enremindReqDTO.getQuoted());
+        List<InquiryEnRemind> inquiryEnRemindList = inquiryEnRemindIPage.getContent();
+        if (CollectionUtils.isEmpty(inquiryEnRemindList)){
+            return null;
+        }
+        List<EnremindRspDTO> enremindRspDTOList = convertToEnremindRspDTO(inquiryEnRemindList);
+        return enremindRspDTOList;
+    }
+
+    /**
+     * 将平台返回的结果集转成SAAS的传输对象
+     * @param inquiryEnRemindList
+     * @return
+     */
+    private List<EnremindRspDTO> convertToEnremindRspDTO(List<InquiryEnRemind> inquiryEnRemindList) {
+        List<EnremindRspDTO> enremindRspDTOList = new ArrayList<EnremindRspDTO>();
+        EnremindRspDTO enremindRspDTO = null;
+        for (InquiryEnRemind inquiryEnRemind : inquiryEnRemindList){
+            enremindRspDTO = new EnremindRspDTO();
+            enremindRspDTO.setCustName(inquiryEnRemind.getEnName());
+            enremindRspDTO.setProdBrand(inquiryEnRemind.getInbrand());
+            enremindRspDTO.setProdName(inquiryEnRemind.getProdTitle());
+            enremindRspDTO.setProdOrispeccode(inquiryEnRemind.getCmpCode());
+            enremindRspDTO.setProdSpec(inquiryEnRemind.getSpec());
+            //enremindRspDTO.setProdUnit(inquiryEnRemind.get);
+            enremindRspDTO.setNeedQty(inquiryEnRemind.getNeedQty());
+            enremindRspDTO.setStartDate(inquiryEnRemind.getReDate());
+            enremindRspDTO.setEndDate(inquiryEnRemind.getEndDate());
+            enremindRspDTOList.add(enremindRspDTO);
+        }
+        return enremindRspDTOList;
+    }
+
     //更新最新销售总额
     //更新最新销售总额
     private void updateTotal(Long id) {
     private void updateTotal(Long id) {
         if (null == id) {
         if (null == id) {

+ 3 - 1
applications/sale/sale-server/src/main/resources/application.yml

@@ -88,4 +88,6 @@ hystrix:
                 enabled: true
                 enabled: true
               isolation:
               isolation:
                     thread:
                     thread:
-                        timeoutInMilliseconds: 4000
+                        timeoutInMilliseconds: 4000
+inquiry:
+  base-url: https://test-inquiry.uuzcc.cn

+ 0 - 6
applications/transfers/mall-api/pom.xml

@@ -10,7 +10,6 @@
     <modelVersion>4.0.0</modelVersion>
     <modelVersion>4.0.0</modelVersion>
 
 
     <artifactId>mall-api</artifactId>
     <artifactId>mall-api</artifactId>
-
     <description>mall api</description>
     <description>mall api</description>
 
 
     <dependencies>
     <dependencies>
@@ -38,11 +37,6 @@
             <artifactId>spring-boot-starter-data-redis</artifactId>
             <artifactId>spring-boot-starter-data-redis</artifactId>
             <scope>test</scope>
             <scope>test</scope>
         </dependency>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.data</groupId>
-            <artifactId>spring-data-commons</artifactId>
-            <version>RELEASE</version>
-        </dependency>
     </dependencies>
     </dependencies>
 
 
 </project>
 </project>

+ 13 - 4
applications/transfers/mall-api/src/main/java/com/usoftchina/inquiry/api/InquiryApi.java

@@ -2,7 +2,6 @@ package com.usoftchina.inquiry.api;
 
 
 import com.usoftchina.inquiry.po.*;
 import com.usoftchina.inquiry.po.*;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
@@ -27,12 +26,15 @@ public interface InquiryApi {
      * @param pageNumber
      * @param pageNumber
      * @param pageSize
      * @param pageSize
      * @param enableOffer   是否能报价的:1为是 0为否,作为搜索条件。  值为0或null时,筛选所有
      * @param enableOffer   是否能报价的:1为是 0为否,作为搜索条件。  值为0或null时,筛选所有
+     * @param keyword       关键词
+     * @param quoted        1是已报价 0是未报价 查看全部不传
      * @return
      * @return
      */
      */
     @GetMapping("/sale/enremind")
     @GetMapping("/sale/enremind")
     IPage<InquiryEnRemind> findEnRemind(@RequestParam("useruu") Long useruu, @RequestParam("enuu") Long enuu,
     IPage<InquiryEnRemind> findEnRemind(@RequestParam("useruu") Long useruu, @RequestParam("enuu") Long enuu,
                                         @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize,
                                         @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize,
-                                        @RequestParam("enableOffer") Integer enableOffer);
+                                        @RequestParam("enableOffer") Integer enableOffer, @RequestParam("keyword") String keyword,
+                                        @RequestParam("quoted") Integer quoted);
 
 
     /**
     /**
      * 查看(个人商机)
      * 查看(个人商机)
@@ -79,11 +81,18 @@ public interface InquiryApi {
                                              @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize,
                                              @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize,
                                              @RequestParam("state") String state);
                                              @RequestParam("state") String state);
 
 
-    /*@GetMapping("/buyer/quotations")
+    /**
+     * 查看已报价列表
+     * @param state         defaultValue: done
+     * @param enUU
+     * @param pageNumber
+     * @param pageSize
+     * @return
+     */
+    @GetMapping("/buyer/quotations")
     IPage<PurcInquiryItemInfo> findQuotationsByPage(@RequestParam(value = "state", defaultValue = "done") String state,
     IPage<PurcInquiryItemInfo> findQuotationsByPage(@RequestParam(value = "state", defaultValue = "done") String state,
                                                    @RequestParam("enUU") Long enUU,
                                                    @RequestParam("enUU") Long enUU,
                                                    @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize);
                                                    @RequestParam("pageNumber") int pageNumber, @RequestParam("pageSize") int pageSize);
-    */
 
 
     /**
     /**
      * 采纳
      * 采纳

+ 2 - 2
applications/transfers/mall-api/src/test/java/com/usoftchina/inquiry/test/InquiryApiTest.java

@@ -42,7 +42,7 @@ public class InquiryApiTest {
 
 
     @Test
     @Test
     public void testB_findEnRemind(){
     public void testB_findEnRemind(){
-        IPage<InquiryEnRemind> inquiryEnRemindIPage = inquiryApi.findEnRemind(userUU, enUU, pageNum, pageSize, 1);
+        IPage<InquiryEnRemind> inquiryEnRemindIPage = inquiryApi.findEnRemind(userUU, enUU, pageNum, pageSize, 1, "", 0);
         System.out.println(JsonUtils.toJsonString(inquiryEnRemindIPage));
         System.out.println(JsonUtils.toJsonString(inquiryEnRemindIPage));
     }
     }
 
 
@@ -60,7 +60,7 @@ public class InquiryApiTest {
     }
     }
 
 
     @Test
     @Test
-    public void testE_saveQuote(){
+    public void testE_saveInquiry(){
         PurcInquiry purcInquiry = new PurcInquiry();
         PurcInquiry purcInquiry = new PurcInquiry();
         PurcInquiry result = inquiryApi.saveInquiry(purcInquiry);
         PurcInquiry result = inquiryApi.saveInquiry(purcInquiry);
         System.out.println(JsonUtils.toJsonString(result));
         System.out.println(JsonUtils.toJsonString(result));