From 091e76cc847ec382d3a0a314bd2b2c874fb63bde Mon Sep 17 00:00:00 2001
From: bingbing <zhaobingliang@aliyun.com>
Date: Thu, 23 Jul 2020 13:03:33 +0800
Subject: [PATCH] 套餐过期修改

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java |   75 ++++++++++++++++++++++++++++++++++---
 1 files changed, 69 insertions(+), 6 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
index c82a5f5..ab994bf 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
@@ -6,9 +6,12 @@
 import com.kidgrow.common.model.ResultBody;
 import com.kidgrow.common.model.SysOrganization;
 import com.kidgrow.common.model.SysUser;
+import com.kidgrow.oprationcenter.model.HospitalInfo;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
+import com.kidgrow.oprationcenter.model.ProductOrderRecord;
 import com.kidgrow.oprationcenter.service.IBusinessRecordsService;
 import com.kidgrow.oprationcenter.service.IProductOrderDetailService;
+import com.kidgrow.oprationcenter.service.IProductOrderRecordService;
 import com.kidgrow.oprationcenter.service.IProductOrderService;
 import com.kidgrow.oprationcenter.vo.ProductOrderJoinDetail;
 import io.swagger.annotations.Api;
@@ -47,6 +50,8 @@
     @Autowired
     private IProductOrderDetailService productOrderDetailService;
     @Autowired
+    private IProductOrderRecordService productOrderRecordService;
+    @Autowired
     private IBusinessRecordsService businessRecordsService;
     @Autowired
     private IProductOrderService productOrderService;
@@ -67,7 +72,6 @@
         }
         return productOrderDetailService.findList(params);
     }
-
     /**
      * 列表
      */
@@ -76,13 +80,13 @@
             @ApiImplicitParam(name = "page", value = "分页起始位置", required = true, dataType = "Integer"),
             @ApiImplicitParam(name = "limit", value = "分页结束位置", required = true, dataType = "Integer")
     })
-    @GetMapping("/all")
-    public PageResult findAllList(@RequestParam Map<String, Object> params,@LoginUser SysUser sysUser) {
+    @GetMapping("all")
+    public PageResult all(@RequestParam Map<String, Object> params) {
         if (params.size() == 0) {
             params.put("page", 1);
             params.put("limit", 10);
         }
-        return productOrderDetailService.findAllList(params,sysUser);
+        return productOrderDetailService.all(params);
     }
     /**
      * 列表
@@ -98,7 +102,7 @@
             params.put("page", 1);
             params.put("limit", 10);
         }
-        if(params.get("diagnosticHospitalId").toString().isEmpty())
+        if(params.get("diagnosticHospitalId")==null)
             return PageResult.<ProductOrderJoinDetail>builder().data(null).code(0).count(0L).build();
         return productOrderDetailService.findAllDataList(params);
     }
@@ -118,6 +122,34 @@
             params.put("limit", 10);
         }
         return productOrderDetailService.groupList(params);
+    }
+
+    /**
+     * 获取医院套餐是否到期和到期时间
+     * data内 isend为true说明套餐到期
+     * endtime上套餐的到期时间
+     * @param hospitalId
+     * @param departmentId
+     * @return
+     */
+
+    @ApiOperation(value = "获取医院套餐是否到期和到期时间")
+    @GetMapping("/UserProductDetailData")
+    public ResultBody UserProductDetailData(@RequestParam Long hospitalId,@RequestParam Long departmentId) {
+        return productOrderDetailService.UserProductDetailData(hospitalId,departmentId);
+    }
+
+    /**
+     * 获取医院套餐是否到期和到期时间
+     * data内 isend为true说明套餐到期
+     * endtime上套餐的到期时间
+     * @return
+     */
+
+    @ApiOperation(value = "获取医院套餐是否到期和到期时间")
+    @PostMapping("/serviceperiod")
+    public ResultBody ServicePeriod(@RequestBody HospitalInfo hospitalInfo) {
+        return productOrderDetailService.UserProductDetailData(hospitalInfo.getHospitalId(),hospitalInfo.getDepartmentId());
     }
 
     /**
@@ -180,8 +212,28 @@
             }
             return ResultBody.failed().msg(errMsg.toString());
         } else {
+            //写充值套餐给用户
             Boolean v = productOrderDetailService.saveBatch(list);
-            if (v) {
+            //写充值记录
+            //对象转换
+            List<ProductOrderRecord> productOrderRecordList= new ArrayList<ProductOrderRecord>();;
+            list.forEach(item->{
+                ProductOrderRecord productOrderRecord=new ProductOrderRecord();
+                productOrderRecord.setAilightCount(item.getAilightCount());
+                productOrderRecord.setOrderId(item.getOrderId());
+                productOrderRecord.setProId(item.getProId());
+                productOrderRecord.setProName(item.getProName());
+                productOrderRecord.setProType(item.getProType());
+                productOrderRecord.setIsShare(item.getIsShare());
+                productOrderRecord.setIsDel(item.getIsDel());
+                productOrderRecord.setRecordCount(item.getRecordCount());
+                productOrderRecord.setProBegintime(item.getProBegintime());
+                productOrderRecord.setProEndtime(item.getProEndtime());
+                productOrderRecord.setEnabled(item.getEnabled());
+                productOrderRecordList.add(productOrderRecord);
+            });
+            Boolean r = productOrderRecordService.saveBatch(productOrderRecordList);
+            if (v&&r) {
                 return ResultBody.ok().data(list.size()).msg("产品充值成功");
             } else {
                 //写入订单明细失败,则删除订单记录数据
@@ -237,4 +289,15 @@
         }
         return resultBody;
     }
+
+    /**
+     * 获取 用户的状态  为试用状态还是 启用状态
+     *
+     * @return
+     */
+    @ApiOperation(value = "获取 用户的状态")
+    @GetMapping("/getTypeByUser")
+    public ResultBody getTypeByUser(@LoginUser SysUser sysUser) {
+        return productOrderDetailService.getTypeByUser(sysUser);
+    }
 }

--
Gitblit v1.8.0