From f6d390988b1c9b5695338214e95ff0d6da70b300 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Wed, 25 Nov 2020 16:34:41 +0800
Subject: [PATCH] 完善功能

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java |    9 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html                                                                        |  143 ++++++++++++++++++-----
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html                                                                        |    3 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrderDetail.java                   |   16 +
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java |   13 ++
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html                                                                  |  131 +++++++++++++++++----
 6 files changed, 244 insertions(+), 71 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrderDetail.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrderDetail.java
index 960b12f..633d2fa 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrderDetail.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrderDetail.java
@@ -70,15 +70,21 @@
     @NotEmpty(message = "是否删除,1删除,0未删除不能为空")
     private Boolean isDel;
     /**
+     * 产品的读片总量
+     */
+    @NotNull(message = "产品的读片总量")
+    private Integer orderAilightCount;
+    /**
+     * 产品的报告总量
+     */
+    @NotNull(message = "产品的报告总量")
+    private Integer orderRecordCount;
+    /**
      * 读片量
      */
     @NotNull(message = "读片量不能为空")
     private Integer ailightCount;
-    /**
-     * 总共的读片量
-     */
-    @NotNull(message = "总共的读片量不能为空")
-    private Integer count;
+
     /**
      * 报告量
      */
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
index b58b730..98ec8aa 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
@@ -13,8 +13,10 @@
 import com.kidgrow.oprationcenter.model.ConsumptionRecord;
 import com.kidgrow.oprationcenter.model.ProductOrder;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
+import com.kidgrow.oprationcenter.model.SysProduct;
 import com.kidgrow.oprationcenter.service.IProductOrderDetailService;
 import com.kidgrow.oprationcenter.service.IProductOrderService;
+import com.kidgrow.oprationcenter.service.ISysProductService;
 import com.kidgrow.oprationcenter.vo.*;
 import com.kidgrow.redis.util.RedisUtils;
 import com.kidgrow.usercenter.feign.SysDoctorService;
@@ -52,6 +54,8 @@
     @Autowired
     private IProductOrderService iProductOrderService;
     @Autowired
+    private ISysProductService productService;
+    @Autowired
     private RedisUtils redisUtils;
     /**
      * 列表
@@ -62,6 +66,15 @@
     public PageResult<ProductOrderDetail> findList(Map<String, Object> params){
         Page<ProductOrderDetail> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit"));
         List<ProductOrderDetail> list  =  baseMapper.findList(page, params);
+        for (ProductOrderDetail productOrderDetail : list) {
+            if(productOrderDetail.getOrderAilightCount()==null){
+                SysProduct byId = productService.getById(productOrderDetail.getProId());
+                if(byId!=null){
+                    productOrderDetail.setOrderAilightCount(byId.getAilightCount());
+                    productOrderDetail.setOrderRecordCount(byId.getRecordCount());
+                }
+            }
+        }
         return PageResult.<ProductOrderDetail>builder().data(list).code(0).count(page.getTotal()).build();
     }
     /**
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 cff6d71..8405bf2 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
@@ -4,6 +4,7 @@
 import com.kidgrow.common.constant.CommonConstant;
 import com.kidgrow.common.controller.BaseController;
 import com.kidgrow.common.model.*;
+import com.kidgrow.common.utils.DateUtils;
 import com.kidgrow.oprationcenter.model.HospitalInfo;
 import com.kidgrow.oprationcenter.model.ProductOrder;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
@@ -451,13 +452,13 @@
         map.put("enabled",true);
         map.put("is_del",false);
         List<ProductOrder> productOrders = productOrderService.listByMap(map);
-        IntSummaryStatistics intSummaryStatistics = productOrders.stream().mapToInt((x) -> x.getContractNum()).summaryStatistics();
+        IntSummaryStatistics intSummaryStatistics = productOrders.stream().filter(a-> a.getContractNum()!=null).mapToInt((x) -> x.getContractNum()).summaryStatistics();
         Date minDate = productOrders.stream().map(e -> e.getContractBeginTime()).min((e1, e2) -> e1.compareTo(e2)).get();
         Date manDate = productOrders.stream().map(e -> e.getContractEndTime()).max((e1, e2) -> e1.compareTo(e2)).get();
         map = new HashMap<>();
-        map.put("count",intSummaryStatistics.getSum());
-        map.put("beginTime",minDate);
-        map.put("endTime",manDate);
+        map.put("count", intSummaryStatistics.getSum());
+        map.put("beginTime",DateUtils.formatDate(minDate,"yyyy-MM-dd HH:mm:ss"));
+        map.put("endTime",DateUtils.formatDate(manDate,"yyyy-MM-dd HH:mm:ss"));
         return  ResultBody.ok().data(map);
     }
 }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
index 8613f39..cdf70b6 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
@@ -85,6 +85,9 @@
                     },
                     {
                         field: 'contractTime', width: 120, title: '合同签订时间', templet: function (d) {
+                            if(d.contractTime==null){
+                                return new Date(d.createTime).dateFormat("yyyy/MM/dd");
+                            }
                             return new Date(d.contractTime).dateFormat("yyyy/MM/dd");
                         }
                     },
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
index 054b7d8..3dd58bb 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
@@ -36,7 +36,7 @@
                     <div class="layui-form-item" style="padding: 0; margin-bottom: 0px;">
                         <div class="layui-row">
                             <div class="layui-col-sm5">
-                                <label class="layui-form-label" style="padding: 0 30px 0 0;">地区</label>
+                                <label class="layui-form-label" style="padding: 0 20px 0 0;">地区</label>
                                 <input name="hospitalAreas" id="hospitalAreas" type="text"
                                     style="border: none; width: 250px; margin-top:-10px" readonly class="layui-input" />
                             </div>
@@ -62,14 +62,16 @@
                                 <label class="layui-form-label" style="padding: 10px 30px 0 0px;">合同名称</label>
                                 <div class="layui-input-block">
                                     <input name="contractTitle" id="contractTitle" type="text" class="layui-input"
-                                        maxlength="50" lay-verify="required" required autocomplete="off" />
+                                        maxlength="50" lay-verify="required" required autocomplete="off"
+                                        style="display: inline-block;width: 80%;" />
                                 </div>
                             </div>
                             <div class="layui-col-sm6">
                                 <label class="layui-form-label">合同编号</label>
                                 <div class="layui-input-block">
                                     <input name="contractNo" id="contractNo" type="text" class="layui-input"
-                                        maxlength="50" autocomplete="off" lay-verify="required" required />
+                                        maxlength="50" autocomplete="off" lay-verify="required" required
+                                        style="display: inline-block;width: 80%;" />
                                 </div>
                             </div>
                         </div>
@@ -78,22 +80,22 @@
                         <div class="layui-row">
                             <div class="layui-col-sm6">
                                 <label class="layui-form-label">当前软件服务周期:</label>
-                                <div class="layui-col-sm4" style="margin-right: 30px;">
+                                <div class="layui-input-block">
                                     <input autocomplete="off" name="contractBeginTime_not" disabled
                                         id="contractBeginTime_not" type="text" placeholder="请输开始时间" class="layui-input"
-                                        maxlength="50" />
-                                </div>
-                                <div class="layui-col-sm4 ">
+                                        maxlength="50" readonly
+                                        style="border: none; display: inline-block;width: 40%;" />
                                     <input autocomplete="off" name="contractEndTime_not" disabled
                                         id="contractEndTime_not" type="text" placeholder="请输入结束时间" class="layui-input"
-                                        maxlength="50" />
+                                        maxlength="50" readonly
+                                        style="border: none; display: inline-block;width: 40%;" />
                                 </div>
                             </div>
                             <div class="layui-col-sm6">
                                 <label class="layui-form-label">当前读片总量:</label>
                                 <div class="layui-input-inline">
                                     <input autocomplete="off" name="contractNum_not" id="contractNum_not" disabled
-                                        type="text" class="layui-input" maxlength="50" />
+                                        type="text" class="layui-input" maxlength="50" readonly style="border: none;" />
                                 </div>
                             </div>
                             <!-- <div class="layui-col-sm6">
@@ -114,16 +116,13 @@
                                     required /> -->
                                 <!-- <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text"
                                     class="layui-input" maxlength="50" lay-verify="required" required /> -->
-
-                                <div class="layui-col-sm4" style="margin-right: 30px;">
+                                <div class="layui-input-block">
                                     <input autocomplete="off" name="contractBeginTime" id="contractBeginTime"
                                         type="text" placeholder="请输开始时间" class="layui-input" maxlength="50"
-                                        lay-verify="required" required />
-                                </div>
-                                <div class="layui-col-sm4 ">
+                                        lay-verify="required" required style="display: inline-block;width: 40%;" />
                                     <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text"
                                         placeholder="请输入结束时间" class="layui-input" maxlength="50" lay-verify="required"
-                                        required />
+                                        required style="display: inline-block;width: 40%;" />
                                 </div>
                             </div>
                             <div class="layui-col-sm6">
@@ -157,7 +156,7 @@
                                 <label class="layui-form-label">充值名称:</label>
                                 <div class="layui-input-inline">
                                     <input autocomplete="off" id="custom_proName" type="text" class="layui-input"
-                                        maxlength="50" value="1000" lay-verify="required" required />
+                                        maxlength="50" lay-verify="required" required />
                                 </div>
                             </div>
                         </div>
@@ -169,8 +168,7 @@
                                 <div class="layui-input-inline">
                                     <input autocomplete="off" id="custom_ailightCount"
                                         onkeyup="this.value=this.value.replace(/[^\d]/g,'') " type="text"
-                                        class="layui-input" maxlength="50" value="1000" lay-verify="required"
-                                        required />张
+                                        class="layui-input" maxlength="50" lay-verify="required" required />
                                 </div>
                             </div>
                             <div class="layui-col-sm6">
@@ -182,12 +180,11 @@
                     </div>
                     <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
                         <div class="layui-row">
-                            <div class="layui-col-sm6">
-                                <div class="layui-input-inline">
-                                    <input type="radio" id="termType" name="termType" value="true" title="期限限制" />
+                            <div class="layui-col-sm12">
+                                <div class="layui-input-inline" style="width: 160px;text-align: right;">
+                                    <input type="radio" id="termType" name="termType" value="true" checked
+                                        title="期限限制" />
                                 </div>
-                            </div>
-                            <div class="layui-col-sm6">
                                 <div class="layui-col-sm4" style="margin-right: 30px;">
                                     <input autocomplete="off" id="custom_beginTime" type="text" placeholder="请输开始时间"
                                         class="layui-input" maxlength="50" />
@@ -200,7 +197,8 @@
                         </div>
                     </div>
                     <div class="layui-form-item">
-                        <div class="layui-input-block" style="width: 50;">
+                        <div class="layui-input-block"
+                            style="text-align: right;padding-right: 100px;padding-top: 50px;">
                             <input class="layui-btn" type="button" id="custom_submit" value="确定" />
                         </div>
                     </div>
@@ -260,7 +258,7 @@
         //充值进行中
         var isRun = false;
         //执行一个laydate实例
-        laydate.render({
+        var contractBeginTime= laydate.render({
             elem: '#contractBeginTime', //指定元素
             done: function (value, date, endDate) {
                 var startDate = new Date(value).getTime();
@@ -268,17 +266,48 @@
                 if (endTime < startDate) {
                     layer.msg('结束时间不能小于开始时间');
                     $('#contractBeginTime').val($('#contractEndTime').val());
+                } else {
+                    $('#custom_beginTime').val($("#contractBeginTime").val())
+                    custom_beginTimes.config.min = {
+                        year: date.year,
+                        month: date.month - 1,//关键
+                        date: date.date,
+                        hours: date.hours,
+                        minutes: date.minutes,
+                        seconds: date.seconds
+                    }
                 }
             }
         });
-        laydate.render({
+        var contractEndTime = laydate.render({
             elem: '#contractEndTime', //指定元素
+            // min: $("#contractEndTime_not").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date($('#contractBeginTime').val()).getTime();
                 var endTime = new Date(value).getTime();
                 if (endTime < startDate) {
                     layer.msg('结束时间不能小于开始时间');
                     $('#contractEndTime').val($('#contractBeginTime').val());
+                } else {
+                    $('#custom_endTime').val($("#contractEndTime").val())
+                    custom_endTimes.config.max = {
+                        year: date.year,
+                        month: date.month - 1,//关键
+                        date: date.date,
+                        hours: date.hours,
+                        minutes: date.minutes,
+                        seconds: date.seconds
+                    }
+                    var begin = new Date($("#contractBeginTime").val())
+                    custom_endTimes.config.min = {
+                        year: layui.util.toDateString(begin, "yyyy"),
+                        month: layui.util.toDateString(begin, "MM") - 1,//关键
+                        date: layui.util.toDateString(begin, "dd"),
+                        hours: layui.util.toDateString(begin, "HH"),
+                        minutes: layui.util.toDateString(begin, "mm"),
+                        seconds: layui.util.toDateString(begin, "ss")
+                    }
+
                 }
             }
         });
@@ -288,8 +317,10 @@
         laydate.render({
             elem: '#contractEndTime_not' //指定元素
         });
-        laydate.render({
+        var custom_beginTimes = laydate.render({
             elem: '#custom_beginTime', //指定元素
+            // min: $("#contractEndTime").val(),
+            // man: $("#contractBeginTime").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date(value).getTime();
                 var endTime = new Date($('#custom_endTime').val()).getTime();
@@ -299,8 +330,10 @@
                 }
             }
         });
-        laydate.render({
+        var custom_endTimes = laydate.render({
             elem: '#custom_endTime', //指定元素
+            // min: $("#contractEndTime").val(),
+            // man: $("#contractBeginTime").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date($('#custom_beginTime').val()).getTime();
                 var endTime = new Date(value).getTime();
@@ -408,8 +441,34 @@
                 ]
             });
         }
+        //获取软件的服务周期
+        var getCycleTime = function (departmentId) {
+            admin.req('api-opration/productorderdetail/getContractBeginEndTimeAndNum', { departmentId: departmentId },
+                function (data) {
+                    if (data.code == 0) {
+                        $("#contractBeginTime_not").val(layui.util.toDateString(data.data.beginTime, "yyyy-MM-dd"));
+                        $("#contractEndTime_not").val(layui.util.toDateString(data.data.endTime, "yyyy-MM-dd"));
+                        contractBeginTime.config.max = {
+                            year: layui.util.toDateString(data.data.beginTime, "yyyy"),
+                            month: layui.util.toDateString(data.data.beginTime, "MM") - 1,//关键
+                            date: layui.util.toDateString(data.data.beginTime, "dd"),
+                            hours: layui.util.toDateString(data.data.beginTime, "HH"),
+                            minutes: layui.util.toDateString(data.data.beginTime, "mm"),
+                            seconds: layui.util.toDateString(data.data.beginTime, "ss")
+                        }
+                        contractEndTime.config.min = {
+                            year: layui.util.toDateString(data.data.endTime, "yyyy"),
+                            month: layui.util.toDateString(data.data.endTime, "MM") - 1,//关键
+                            date: layui.util.toDateString(data.data.endTime, "dd"),
+                            hours: layui.util.toDateString(data.data.endTime, "HH"),
+                            minutes: layui.util.toDateString(data.data.endTime, "mm"),
+                            seconds: layui.util.toDateString(data.data.endTime, "ss")
+                        }
+                        $("#contractNum_not").val(data.data.count);
+                    }
 
-
+                }, "get")
+        }
 
         //回显医院基本数据
         let hospitalData = admin.getTempData('t_hospital');
@@ -615,6 +674,7 @@
                 tempDataList(data);
                 waitRecharge();
             })
+            getCycleTime(hospitalData.departmentId);
         }
         //待充值列表功能操作
         table.on('tool(product-table-temp)', function (obj) {
@@ -663,10 +723,13 @@
                 data.isShare = obj.tr.find("td[data-field='isShare'] em").text();
                 data.isShare = (data.isShare.indexOf("不") == 0) ? 0 : 1;
                 //判断待加入产品的总数是否大于合同的总数
-                var msg = isthenNum(data.ailightCount);
-                if (msg != null) {
-                    layer.msg(msg);
-                    return false;
+                //试用产品不计算总数
+                if (data.proType == 1) {
+                    var msg = isthenNum(data.ailightCount);
+                    if (msg != null) {
+                        layer.msg(msg);
+                        return false;
+                    }
                 }
                 if (!strUtil.isEmpty(data.beginTime) && !strUtil.isEmpty(data.endTime)) {
                     if (dateUtil.compareDate(data.endTime, data.beginTime)) {
@@ -816,7 +879,8 @@
                                                     ' 00:00:00' : "",
                                                 proEndtime: item.endTime != "" ? item.endTime +
                                                     ' 23:59:59' : "",
-                                                count: item.ailightCount
+                                                orderAilightCount: item.ailightCount,
+                                                orderRecordCount: item.recordCount != null ? item.recordCount : 0,
                                             };
                                             listDetailData.push(detailData);
                                         })
@@ -881,4 +945,13 @@
             }
         });
     });
-</script>
\ No newline at end of file
+</script>
+<style>
+    .layui-form-label {
+        width: 140px;
+    }
+
+    .layui-input-block {
+        margin-left: 160px;
+    }
+</style>
\ No newline at end of file
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html
index 04662e6..5deb8e4 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html
@@ -91,9 +91,9 @@
                                 </div> -->
                                 <div class="layui-input-block">
                                     <input autocomplete="off" name="contractBeginTime" id="contractBeginTime"
-                                        type="text" placeholder="请输开始时间" class="layui-input" readonly
+                                        type="text" placeholder="请输开始时间" disabled class="layui-input" readonly
                                         style="border: none; margin-top:-10px;display: inline-block;width: 46%;" />
-                                    <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text"
+                                    <input autocomplete="off" name="contractEndTime" disabled id="contractEndTime" type="text"
                                         placeholder="请输入结束时间" class="layui-input" readonly
                                         style="border: none; margin-top:-10px;display: inline-block;width: 46%;" />
                                 </div>
@@ -150,7 +150,7 @@
                                 <label class="layui-form-label">充值名称:</label>
                                 <div class="layui-input-inline">
                                     <input autocomplete="off" id="custom_proName" type="text" class="layui-input"
-                                        maxlength="50" value="1000" lay-verify="required" required />
+                                        maxlength="50"  lay-verify="required" required />
                                 </div>
                             </div>
                         </div>
@@ -162,8 +162,8 @@
                                 <div class="layui-input-inline">
                                     <input autocomplete="off" id="custom_ailightCount"
                                         onkeyup="this.value=this.value.replace(/[^\d]/g,'') " type="text"
-                                        class="layui-input" maxlength="50" value="1000" lay-verify="required"
-                                        required />张
+                                        class="layui-input" maxlength="50"  lay-verify="required"
+                                        required />
                                 </div>
                             </div>
                             <div class="layui-col-sm6">
@@ -175,12 +175,10 @@
                     </div>
                     <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
                         <div class="layui-row">
-                            <div class="layui-col-sm6">
-                                <div class="layui-input-inline">
-                                    <input type="radio" id="termType" name="termType" value="true" title="期限限制" />
+                            <div class="layui-col-sm12">
+                                <div class="layui-input-inline" style="width: 120px;text-align: right;">
+                                    <input type="radio" id="termType" name="termType" value="true" checked title="期限限制" />
                                 </div>
-                            </div>
-                            <div class="layui-col-sm6">
                                 <div class="layui-col-sm4" style="margin-right: 30px;">
                                     <input autocomplete="off" id="custom_beginTime" type="text" placeholder="请输开始时间"
                                         class="layui-input" maxlength="50" />
@@ -193,10 +191,11 @@
                         </div>
                     </div>
                     <div class="layui-form-item">
-                        <div class="layui-input-block" style="width: 50;">
+                        <div class="layui-input-block" style="text-align: right;padding-right: 100px;padding-top: 50px;">
                             <input class="layui-btn" type="button" id="custom_submit" value="确定" />
                         </div>
                     </div>
+                   
                 </div>
             </div>
         </div>
@@ -225,7 +224,7 @@
 </form>
 <!-- 表格操作列 -->
 <script type="text/html" id="product-tpl-bar-now">
-    {{# if (d.ailightCount !=d.count){}}
+    {{# if (d.ailightCount !=d.orderAilightCount){}}
         {{# if (d.enabled){}}
             <a class="layui-btn layui-btn-xs" lay-event="order_detail_enable">禁用</a>
             {{#  } else { }}
@@ -270,7 +269,7 @@
         //充值进行中
         var isRun = false;
         //执行一个laydate实例
-        laydate.render({
+        var contractBeginTime= laydate.render({
             elem: '#contractBeginTime', //指定元素
             done: function (value, date, endDate) {
                 var startDate = new Date(value).getTime();
@@ -278,17 +277,48 @@
                 if (endTime < startDate) {
                     layer.msg('结束时间不能小于开始时间');
                     $('#contractBeginTime').val($('#contractEndTime').val());
+                } else {
+                    $('#custom_beginTime').val($("#contractBeginTime").val())
+                    custom_beginTimes.config.min = {
+                        year: date.year,
+                        month: date.month - 1,//关键
+                        date: date.date,
+                        hours: date.hours,
+                        minutes: date.minutes,
+                        seconds: date.seconds
+                    }
                 }
             }
         });
-        laydate.render({
+        var contractEndTime = laydate.render({
             elem: '#contractEndTime', //指定元素
+            // min: $("#contractEndTime_not").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date($('#contractBeginTime').val()).getTime();
                 var endTime = new Date(value).getTime();
                 if (endTime < startDate) {
                     layer.msg('结束时间不能小于开始时间');
                     $('#contractEndTime').val($('#contractBeginTime').val());
+                } else {
+                    $('#custom_endTime').val($("#contractEndTime").val())
+                    custom_endTimes.config.max = {
+                        year: date.year,
+                        month: date.month - 1,//关键
+                        date: date.date,
+                        hours: date.hours,
+                        minutes: date.minutes,
+                        seconds: date.seconds
+                    }
+                    var begin = new Date($("#contractBeginTime").val())
+                    custom_endTimes.config.min = {
+                        year: layui.util.toDateString(begin, "yyyy"),
+                        month: layui.util.toDateString(begin, "MM") - 1,//关键
+                        date: layui.util.toDateString(begin, "dd"),
+                        hours: layui.util.toDateString(begin, "HH"),
+                        minutes: layui.util.toDateString(begin, "mm"),
+                        seconds: layui.util.toDateString(begin, "ss")
+                    }
+
                 }
             }
         });
@@ -298,8 +328,10 @@
         laydate.render({
             elem: '#contractEndTime_not' //指定元素
         });
-        laydate.render({
+        var custom_beginTimes = laydate.render({
             elem: '#custom_beginTime', //指定元素
+            // min: $("#contractEndTime").val(),
+            // man: $("#contractBeginTime").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date(value).getTime();
                 var endTime = new Date($('#custom_endTime').val()).getTime();
@@ -309,8 +341,10 @@
                 }
             }
         });
-        laydate.render({
+        var custom_endTimes = laydate.render({
             elem: '#custom_endTime', //指定元素
+            // min: $("#contractEndTime").val(),
+            // man: $("#contractBeginTime").val(),
             done: function (value, date, endDate) {
                 var startDate = new Date($('#custom_beginTime').val()).getTime();
                 var endTime = new Date(value).getTime();
@@ -448,8 +482,11 @@
                         field: 'ailightCount', width: 100, align: 'center', title: '读片剩余量'
                     },
                     {
-                        field: 'count', width: 100, align: 'center', title: '读片使用量', templet: function (d) {
-                            return d.count - d.ailightCount;
+                        field: 'orderAilightCount', width: 100, align: 'center', title: '读片使用量', templet: function (d) {
+                            // if(d.orderAilightCount==null){
+                            //     return "";
+                            // }
+                            return d.orderAilightCount - d.ailightCount;
                         }
                     },
                     {
@@ -478,10 +515,12 @@
                     //如果是直接赋值的方式,res即为:{data: [], count: 99} data为当前页数据、count为数据总长度
                     var num = 0;
                     res.data.forEach(element => {
-                        if (element.enabled) {
-                            num += element.count;
-                        } else {
-                            num += (element.count - element.ailightCount)
+                        if(element.proType==1){
+                            if (element.enabled) {
+                                num += element.orderAilightCount;
+                            } else {
+                                num += (element.orderAilightCount - element.ailightCount)
+                            }
                         }
                     });
                     $("#contractNum_not").val($("#contractNum").val() - num);
@@ -501,6 +540,7 @@
                 admin.putTempData("t_tempProduct", "");
             }
         }
+        //获取医院的地址
         var getHospitalAddress=function(id){
             admin.req('api-user/syshospital/' + id, {},
                 function (data) {
@@ -514,6 +554,35 @@
                    
                 },"get")
         }
+        //获取软件的服务周期
+        var getCycleTime=function(departmentId){
+            admin.req('api-opration/productorderdetail/getContractBeginEndTimeAndNum' , {departmentId: departmentId},
+                function (data) {
+                    if(data.code==0){
+                            $("#contractBeginTime").val(layui.util.toDateString(data.data.beginTime,"yyyy-MM-dd"));
+                            $("#contractEndTime").val( layui.util.toDateString(data.data.endTime,"yyyy-MM-dd"));
+                            $("#contractNum").val(data.data.count);
+                            contractBeginTime.config.max = {
+                            year: layui.util.toDateString(data.data.beginTime, "yyyy"),
+                            month: layui.util.toDateString(data.data.beginTime, "MM") - 1,//关键
+                            date: layui.util.toDateString(data.data.beginTime, "dd"),
+                            hours: layui.util.toDateString(data.data.beginTime, "HH"),
+                            minutes: layui.util.toDateString(data.data.beginTime, "mm"),
+                            seconds: layui.util.toDateString(data.data.beginTime, "ss")
+                        }
+                        contractEndTime.config.min = {
+                            year: layui.util.toDateString(data.data.endTime, "yyyy"),
+                            month: layui.util.toDateString(data.data.endTime, "MM") - 1,//关键
+                            date: layui.util.toDateString(data.data.endTime, "dd"),
+                            hours: layui.util.toDateString(data.data.endTime, "HH"),
+                            minutes: layui.util.toDateString(data.data.endTime, "mm"),
+                            seconds: layui.util.toDateString(data.data.endTime, "ss")
+                        }
+                    }
+                   
+                },"get")
+        }
+
 
         //回显医院基本数据
         let hospitalData = admin.getTempData('t_hospital');
@@ -534,6 +603,9 @@
                         } else {
                             hospitalData.contractBeginTime = layui.util.toDateString(hospitalData.contractBeginTime, 'yyyy-MM-dd')
                             hospitalData.contractEndTime = layui.util.toDateString(hospitalData.contractEndTime, 'yyyy-MM-dd')
+                            delete hospitalData.contractBeginTime
+                            delete hospitalData.contractEndTime
+                            delete hospitalData.contractNum
                             form.val('recharge-form', hospitalData);
                             getHospitalAddress(hospitalData.hospitalId);
                             //装载产品数据
@@ -722,6 +794,7 @@
             $("#submit").click(function () {
                 submit();
             })
+            getCycleTime(hospitalData.departmentId);
         }
         //已充值列表 功能操作
         table.on('tool(product-table-now)', function (obj) {
@@ -804,10 +877,13 @@
                 data.isShare = obj.tr.find("td[data-field='isShare'] em").text();
                 data.isShare = (data.isShare.indexOf("不") == 0) ? 0 : 1;
                 //判断待加入产品的总数是否大于合同的总数
-                var msg = isthenNum(data.ailightCount);
-                if (msg != null) {
-                    layer.msg(msg);
-                    return false;
+                     //试用产品不计算总数
+                if(data.proType==1){
+                    var msg = isthenNum(data.ailightCount);
+                        if (msg != null) {
+                            layer.msg(msg);
+                            return false;
+                        }
                 }
                 if (!strUtil.isEmpty(data.beginTime) && !strUtil.isEmpty(data.endTime)) {
                     if (dateUtil.compareDate(data.endTime, data.beginTime)) {
@@ -926,7 +1002,8 @@
                                     ' 00:00:00' : "",
                                 proEndtime: item.endTime != "" ? item.endTime +
                                     ' 23:59:59' : "",
-                                count: item.ailightCount
+                                orderAilightCount: item.ailightCount,
+                                orderRecordCount: item.recordCount != null ? item.recordCount : 0,
                             };
                             listDetailData.push(detailData);
                         })

--
Gitblit v1.8.0