Przeglądaj źródła

开通服务接口

wangyu 6 lat temu
rodzic
commit
46bd4187a1
18 zmienionych plików z 262 dodań i 24 usunięć
  1. 2 0
      diagbotman-service/src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  2. 2 0
      diagbotman-service/src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  3. 6 6
      diagbotman-service/src/main/java/com/diagbot/entity/OpenedProducts.java
  4. 59 0
      diagbotman-service/src/main/java/com/diagbot/entity/OpenedProductsIndex.java
  5. 19 0
      diagbotman-service/src/main/java/com/diagbot/entity/wrapper/OpendProductWrapper.java
  6. 49 0
      diagbotman-service/src/main/java/com/diagbot/facade/LantoneProductFacade.java
  7. 5 0
      diagbotman-service/src/main/java/com/diagbot/facade/OrderDetailsFacade.java
  8. 8 0
      diagbotman-service/src/main/java/com/diagbot/facade/ProductOrderFacade.java
  9. 13 5
      diagbotman-service/src/main/java/com/diagbot/mapper/OpenedProductsMapper.java
  10. 6 0
      diagbotman-service/src/main/java/com/diagbot/mapper/ProductOrderMapper.java
  11. 9 0
      diagbotman-service/src/main/java/com/diagbot/service/OpenedProductsService.java
  12. 6 0
      diagbotman-service/src/main/java/com/diagbot/service/ProductOrderService.java
  13. 7 0
      diagbotman-service/src/main/java/com/diagbot/service/impl/OpenedProductsServiceImpl.java
  14. 4 0
      diagbotman-service/src/main/java/com/diagbot/service/impl/ProductOrderServiceImpl.java
  15. 23 0
      diagbotman-service/src/main/java/com/diagbot/vo/OppendedProductVO.java
  16. 10 12
      diagbotman-service/src/main/java/com/diagbot/web/DiagLantoneProductController.java
  17. 28 1
      diagbotman-service/src/main/resources/mapper/OpenedProductsMapper.xml
  18. 6 0
      diagbotman-service/src/main/resources/mapper/ProductOrderMapper.xml

+ 2 - 0
diagbotman-service/src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -29,6 +29,8 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                         ,"/service_filter/getAll", "/serviceToken/hasPermission").permitAll()
                 .antMatchers("/getDiagbotManEnumsData").permitAll()
                 .antMatchers("/diagLantoneProduct/selectProduct").permitAll()
+                .antMatchers("/morServices/addOrder").permitAll()
+                .antMatchers("/diagLantoneProduct/opendedProduct").permitAll()
                 .antMatchers("/**").authenticated();
 //        .antMatchers("/**").permitAll();
     }

+ 2 - 0
diagbotman-service/src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -38,6 +38,8 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                     || matchers("/service_filter/getAll", request)
                     || matchers("/serviceToken/hasPermission", request)
                     || matchers("/diagLantoneProduct/selectProduct", request)
+                    || matchers("/morServices/addOrder", request)
+                    || matchers("/diagLantoneProduct/opendedProduct", request)
                     || matchers("/", request)){
                 return;
             } else {

+ 6 - 6
diagbotman-service/src/main/java/com/diagbot/entity/OpenedProducts.java

@@ -54,12 +54,12 @@ public class OpenedProducts implements Serializable {
     /**
      * 产品id
      */
-    private Integer productId;
+    private Long productId;
 
     /**
      * 用户id
      */
-    private Integer userId;
+    private Long userId;
 
     /**
      * 开通日期
@@ -134,19 +134,19 @@ public class OpenedProducts implements Serializable {
         this.modifier = modifier;
     }
 
-    public Integer getProductId() {
+    public Long getProductId() {
         return productId;
     }
 
-    public void setProductId(Integer productId) {
+    public void setProductId(Long productId) {
         this.productId = productId;
     }
 
-    public Integer getUserId() {
+    public Long getUserId() {
         return userId;
     }
 
-    public void setUserId(Integer userId) {
+    public void setUserId(Long userId) {
         this.userId = userId;
     }
 

+ 59 - 0
diagbotman-service/src/main/java/com/diagbot/entity/OpenedProductsIndex.java

@@ -0,0 +1,59 @@
+package com.diagbot.entity;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 已开通产品
+ * </p>
+ *
+ * @author gaodm
+ * @since 2018-09-18
+ */
+@Getter
+@Setter
+public class OpenedProductsIndex implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 已开通产品id
+     */
+    private Long id;
+
+    /**
+     * 产品id
+     */
+    private Long productId;
+
+
+    /**
+     * 停用状态
+     */
+    private Integer serviceStatus;
+
+    /**
+     * 订单id
+     */
+    private Integer orderId;
+
+    /**
+        每页显示条数
+     */
+    private Long size;
+
+    /**
+        页数
+     */
+    private Long current;
+
+    /**
+     * 入参页数
+     */
+    private Long index;
+
+
+}

+ 19 - 0
diagbotman-service/src/main/java/com/diagbot/entity/wrapper/OpendProductWrapper.java

@@ -0,0 +1,19 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.entity.OpenedProducts;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/9/21 13:14
+ */
+@Getter
+@Setter
+public class OpendProductWrapper extends OpenedProducts{
+    private Date orderTime;
+
+}

+ 49 - 0
diagbotman-service/src/main/java/com/diagbot/facade/LantoneProductFacade.java

@@ -2,14 +2,26 @@ package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.diagbot.client.UserServiceClient;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.UserOrgDTO;
 import com.diagbot.entity.LantoneProduct;
+import com.diagbot.entity.OpenedProducts;
+import com.diagbot.entity.OpenedProductsIndex;
 import com.diagbot.entity.wrapper.LantoneProductWrapper;
+import com.diagbot.entity.wrapper.OpendProductWrapper;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.service.impl.LantoneProductServiceImpl;
+import com.diagbot.util.BeanUtil;
 import com.diagbot.util.UserUtils;
+import com.diagbot.vo.OppendedProductVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description:产品业务层
@@ -18,6 +30,12 @@ import java.util.List;
  */
 @Component
 public class LantoneProductFacade extends LantoneProductServiceImpl {
+    @Autowired
+    private OpenedProductsFacade openedProductsFacade;
+    @Autowired
+    private ProductOrderFacade productOrderFacade;
+    @Autowired
+    private UserServiceClient userServiceClient;
     /**
      * @Description: 添加产品业务逻辑
      * @Author: wangyu
@@ -98,4 +116,35 @@ public class LantoneProductFacade extends LantoneProductServiceImpl {
     public LantoneProduct selectLanProduct(Long id){
         return getById(id);
     }
+
+    /**
+     * @Description: 根据产品id查询当条产品线下所有订单信息
+     * @Author: wangyu
+     * @Date: 10:15 2018/9/21
+     */
+    public List<OpendProductWrapper> opendedProduct(OppendedProductVO oppendedProductVO){
+        OpenedProductsIndex openedProductsIndex =new OpenedProductsIndex();
+        Long curren = openedProductsIndex.getCurrent();
+        Long size =openedProductsIndex.getSize();
+        if(curren==null){
+            oppendedProductVO.setCurrent(1L);
+        }
+        if (size==null){
+            oppendedProductVO.setSize(10L);
+        }
+        BeanUtil.copyProperties(oppendedProductVO, openedProductsIndex);
+
+        openedProductsIndex.setIndex((oppendedProductVO.getCurrent().longValue()-1)*oppendedProductVO.getSize().longValue());
+        List<OpendProductWrapper> list = openedProductsFacade.getByProductId(openedProductsIndex);
+        List<Long> list1 =new ArrayList<>();
+        for (OpenedProducts opendProducts:list) {
+            Long longs = opendProducts.getUserId();
+            list1.add(longs);
+        }
+        RespDTO<Map<Long, UserOrgDTO>> mapRespDTO =userServiceClient.getUserAndOrg(list1);
+        Map map =new HashMap();
+        map.put("1",RespDTO.onSuc(mapRespDTO));
+        System.out.println(list);
+        return list;
+    }
 }

+ 5 - 0
diagbotman-service/src/main/java/com/diagbot/facade/OrderDetailsFacade.java

@@ -18,6 +18,11 @@ public class OrderDetailsFacade extends OrderDetailsServiceImpl{
         return orderDetailsIPage;
     }
 
+    /**
+     * @Description: 添加订单明细
+     * @Author: wangyu
+     * @Date: 19:31 2018/9/20
+     */
     public boolean addOrderDetails(OrderDetails orderDetails){
         Boolean falg =true;
         if(!save(orderDetails)){

+ 8 - 0
diagbotman-service/src/main/java/com/diagbot/facade/ProductOrderFacade.java

@@ -100,4 +100,12 @@ public class ProductOrderFacade extends ProductOrderServiceImpl {
 		return CommonErrorCode.OK;
 	}
 
+	/**
+	 * @Description:  根据订单号查询订单信息
+	 * @Author: wangyu
+	 * @Date: 19:42 2018/9/20
+	 */
+	public ProductOrder selectByOrderNum(ProductOrder productOrder){
+		return selctOrderTimeByOrderNum(productOrder);
+	}
 }

+ 13 - 5
diagbotman-service/src/main/java/com/diagbot/mapper/OpenedProductsMapper.java

@@ -1,16 +1,17 @@
 package com.diagbot.mapper;
 
-import java.util.List;
-import java.util.Map;
-
-import org.apache.ibatis.annotations.Param;
-
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.dto.GetConsoleOnTrialDTO;
 import com.diagbot.dto.GetConsoleOpenedDTO;
 import com.diagbot.entity.OpenedProducts;
+import com.diagbot.entity.OpenedProductsIndex;
+import com.diagbot.entity.wrapper.OpendProductWrapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -71,4 +72,11 @@ public interface OpenedProductsMapper extends BaseMapper<OpenedProducts> {
      * @return
      */
     int getConsoleOnTrialCount(Long userId);
+
+    /**
+     * @Description: 根据产品id查询所有开通用户信息
+     * @Author: wangyu
+     * @Date: 20:23 2018/9/20
+     */
+    public List<OpendProductWrapper> getByProductId(OpenedProductsIndex openedProductsIndex);
 }

+ 6 - 0
diagbotman-service/src/main/java/com/diagbot/mapper/ProductOrderMapper.java

@@ -20,4 +20,10 @@ public interface ProductOrderMapper extends BaseMapper<ProductOrder> {
 	
 	List<AuthDetailDTO> getOrderDetails(String orderNum);
 
+	/**
+	 * @Description: 根据订单号查询订单信息
+	 * @Author: wangyu
+	 * @Date: 19:39 2018/9/20
+	 */
+	ProductOrder selctOrderTimeByOrderNum(ProductOrder productOrder);
 }

+ 9 - 0
diagbotman-service/src/main/java/com/diagbot/service/OpenedProductsService.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.diagbot.entity.OpenedProducts;
+import com.diagbot.entity.OpenedProductsIndex;
+import com.diagbot.entity.wrapper.OpendProductWrapper;
 
 import java.util.List;
 import java.util.Map;
@@ -39,4 +41,11 @@ public interface OpenedProductsService extends IService<OpenedProducts> {
      */
     List<OpenedProducts> getByAppkeyAndSecret(Map<String,Object> map);
 
+    /**
+     * @Description: 根据产品id查询所有开通用户信息
+     * @Author: wangyu
+     * @Date: 20:23 2018/9/20
+     */
+    public List<OpendProductWrapper> getByProductId(OpenedProductsIndex openedProductsIndex);
+
 }

+ 6 - 0
diagbotman-service/src/main/java/com/diagbot/service/ProductOrderService.java

@@ -13,4 +13,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface ProductOrderService extends IService<ProductOrder> {
 
+    /**
+     * @Description: 根据订单号查询订单信息
+     * @Author: wangyu
+     * @Date: 19:39 2018/9/20
+     */
+    ProductOrder selctOrderTimeByOrderNum(ProductOrder productOrder);
 }

+ 7 - 0
diagbotman-service/src/main/java/com/diagbot/service/impl/OpenedProductsServiceImpl.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.entity.OpenedProducts;
+import com.diagbot.entity.OpenedProductsIndex;
+import com.diagbot.entity.wrapper.OpendProductWrapper;
 import com.diagbot.mapper.OpenedProductsMapper;
 import com.diagbot.service.OpenedProductsService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -44,4 +46,9 @@ public class OpenedProductsServiceImpl extends ServiceImpl<OpenedProductsMapper,
     public List<OpenedProducts> getByAppkeyAndSecret(Map<String, Object> map) {
         return openedProductsMapper.getByAppkeyAndSecret(map);
     }
+
+    @Override
+    public List<OpendProductWrapper> getByProductId(OpenedProductsIndex openedProductsIndex) {
+        return baseMapper.getByProductId(openedProductsIndex);
+    }
 }

+ 4 - 0
diagbotman-service/src/main/java/com/diagbot/service/impl/ProductOrderServiceImpl.java

@@ -17,4 +17,8 @@ import org.springframework.stereotype.Service;
 @Service
 public class ProductOrderServiceImpl extends ServiceImpl<ProductOrderMapper, ProductOrder> implements ProductOrderService {
 
+    @Override
+    public ProductOrder selctOrderTimeByOrderNum(ProductOrder productOrder) {
+        return baseMapper.selctOrderTimeByOrderNum(productOrder);
+    }
 }

+ 23 - 0
diagbotman-service/src/main/java/com/diagbot/vo/OppendedProductVO.java

@@ -0,0 +1,23 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/9/20 19:27
+ */
+@Getter
+@Setter
+public class OppendedProductVO {
+    @NotBlank(message = "请输入产品Id!")
+    private Long productId;
+    @NotBlank(message = "请输入页数!")
+    private Long current;
+    @NotBlank(message = "请输入每页显示条数!")
+    private Long size;
+
+}

+ 10 - 12
diagbotman-service/src/main/java/com/diagbot/web/DiagLantoneProductController.java

@@ -8,8 +8,8 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.LantoneProduct;
 import com.diagbot.entity.wrapper.LantoneProductWrapper;
 import com.diagbot.facade.LantoneProductFacade;
-import com.diagbot.util.UserUtils;
 import com.diagbot.facade.OpenedProductsFacade;
+import com.diagbot.vo.OppendedProductVO;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -18,9 +18,7 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 /**
  * @Description: 朗通产品 前端控制器
@@ -82,18 +80,18 @@ public class DiagLantoneProductController {
     }
 
     @ApiOperation(value = "查询当条产品线所有已开通用户",
-            notes = "id:根据产品id查询所有已开通本产品用户,必填<br>")
-    @GetMapping("/opendedProduct")
+            notes = "id:根据产品id查询所有已开通本产品用户,必填<br>"+
+                    "current:页数<br>"+
+                    "size:每页显示条数"
+    )
+    @PostMapping("/opendedProduct")
     @SysLogger("opendedProduct")
-    public RespDTO<LantoneProduct> opendedProduct(Page page,LantoneProduct lantoneProduct){
-        Map map =new HashMap();
-        map.put("lantoneProduct",lantoneProduct);
-        System.out.println(map);
-        System.out.println(lantoneProductFacade.opendedProduct(page,map));
-        return RespDTO.onSuc(lantoneProductFacade.opendedProduct(page,map));
+    public RespDTO<LantoneProduct> opendedProduct(OppendedProductVO oppendedProductVO){
+
+        return RespDTO.onSuc(lantoneProductFacade.opendedProduct(oppendedProductVO));
     }
 
-    @ApiOperation(value = "查询当前登录用户已开通产品列表")
+    @ApiOperation(value = "根据用户id查询当前用户已开通产品")
     @GetMapping("/opendedProductByCurrentUser")
     @SysLogger("opendedProductByCurrentUser")
     public RespDTO opendedProductByCurrentUser() {

+ 28 - 1
diagbotman-service/src/main/resources/mapper/OpenedProductsMapper.xml

@@ -19,6 +19,25 @@
         <result column="access_type" property="accessType" />
         <result column="charge_type" property="chargeType" />
     </resultMap>
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultWrapper" type="com.diagbot.entity.wrapper.OpendProductWrapper">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="product_id" property="productId" />
+        <result column="user_id" property="userId" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="service_status" property="serviceStatus" />
+        <result column="order_id" property="orderId" />
+        <result column="access_type" property="accessType" />
+        <result column="charge_type" property="chargeType" />
+        <result column="order_time" property="orderTime" />
+    </resultMap>
     <select id="selectOpendInfoByUserId" resultMap="BaseResultMap" parameterType="java.util.List">
         SELECT opend.* FROM diag_opened_products opend WHERE user_id = #{userId}
     </select>
@@ -92,5 +111,13 @@
 		and a.id not in (SELECT product_id FROM diag_opened_products where user_id=#{userId})
     </select>
 
-
+    <select id="getByProductId" parameterType="com.diagbot.entity.OpenedProductsIndex" resultMap="BaseResultWrapper">
+        SELECT a.*,b.time  order_time from diag_opened_products a
+            LEFT JOIN diag_product_order b ON a.order_id =b.id
+         WHERE product_id =#{productId}
+        <if test="serviceStatus != null and serviceStatus != ''">
+            and t.service_status=#{serviceStatus}
+        </if>
+        LIMIT #{index},#{size}
+    </select>
 </mapper>

+ 6 - 0
diagbotman-service/src/main/resources/mapper/ProductOrderMapper.xml

@@ -33,4 +33,10 @@
 		and a.num=#{orderNum}
 	</select>
 
+    <select id="selctOrderTimeByOrderNum" resultMap="BaseResultMap" parameterType="com.diagbot.entity.ProductOrder">
+        SELECT * FROM diag_product_order d WHERE d.is_deleted='N'
+         <if test="num != null and num != ''">
+             AND num=#{num}
+         </if>
+    </select>
 </mapper>