From 2b936900541574c4df53100b55bcd6a095ee6c9e Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Wed, 11 Nov 2020 19:13:39 +0800
Subject: [PATCH] 添加运动处方

---
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java |   29 ++++++-
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_health.html                                              |  126 +++++++++++++++++++++++++++++++
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java                   |   14 +++
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java         |    4 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html                                                     |   21 ++++-
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java |   27 ++++++
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js                                                                 |    4 
 7 files changed, 215 insertions(+), 10 deletions(-)

diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
index 98451e7..47063e7 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
@@ -11,6 +11,7 @@
 import org.hibernate.validator.constraints.NotEmpty;
 
 import javax.validation.constraints.NotNull;
+import java.util.Date;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
@@ -85,4 +86,17 @@
      * 是否单次支付 1是0否
      */
     private Boolean isPay;
+    /**
+     * 运动处方 1是0否
+     */
+    private Boolean isHealth;
+
+    /**
+     * 运动处方服务生效时间
+     */
+    private Date healthBeginTime;
+    /**
+     * 运动处方服务结束时间
+     */
+    private Date healthEndTime;
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java
index 1d1cbf9..8b6023f 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java
@@ -46,5 +46,9 @@
      * @return  如果返回空则视为不存在
      */
     String checkDepartmentName(Long hosId,String departmentName);
+    /**
+     *运动处方调用 是否开通服务
+     */
+    ResultBody getHealth(SysDepartment sysDepartment);
 }
 
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java
index 1d97395..9774b1c 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java
@@ -17,10 +17,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -96,4 +93,28 @@
         String departName=baseMapper.checkDepartmentName(hosId,departmentName);
         return departName;
     }
+
+    @Override
+    public ResultBody getHealth(SysDepartment sysDepartment) {
+        SysDepartment department = baseMapper.selectById(sysDepartment.getId());
+        if(department==null){
+            return ResultBody.failed("该数据为空");
+        }else {
+            if(department.getIsHealth()){
+                Date now= new Date();
+                if(now.getTime()<department.getHealthBeginTime().getTime()){
+                    department.setIsHealth(false);
+                    return ResultBody.ok().data(department);
+                }else if(department.getHealthBeginTime().getTime()<=now.getTime()&&now.getTime()<=department.getHealthEndTime().getTime()){
+                    return ResultBody.ok().data(department);
+                }else if(department.getHealthEndTime().getTime()<now.getTime()) {
+                    department.setIsHealth(false);
+                    return ResultBody.ok().data(department);
+                }
+                return ResultBody.ok();
+            }else {
+                return ResultBody.ok().data(false);
+            }
+        }
+    }
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
index 6da73ca..4b79c36 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
@@ -1,5 +1,6 @@
 package com.kidgrow.usercenter.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.kidgrow.common.annotation.LoginUser;
 import com.kidgrow.common.controller.BaseController;
 import com.kidgrow.common.model.PageResult;
@@ -203,4 +204,30 @@
     public ResultBody findListByHospitalId(@RequestParam Map<String, Object> params) {
         return sysDepartmentService.findListByHospitalId(params);
     }
+    @PostMapping
+    public ResultBody update(@RequestBody SysDepartment sysDepartment){
+        if(sysDepartment.getId()==null){
+            return ResultBody.failed("请输入id");
+        }
+        QueryWrapper queryWrapper =new QueryWrapper();
+        queryWrapper.eq("id",sysDepartment.getId());
+        boolean update = sysDepartmentService.update(sysDepartment, queryWrapper);
+        if(update){
+            return ResultBody.ok();
+        }else {
+            return ResultBody.failed("更新数据失败");
+        }
+    }
+    /**
+     *运动处方调用 是否开通服务
+     */
+
+    @PostMapping("getHealth")
+    public ResultBody getHealth(@RequestBody SysDepartment sysDepartment){
+        if(sysDepartment.getId()==null){
+            return ResultBody.failed("请输入id");
+        }
+        return sysDepartmentService.getHealth(sysDepartment);
+    }
+
 }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js
index 84d3e23..6da8e9d 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js
@@ -1,8 +1,8 @@
-// var my_api_server_url = 'http://127.0.0.1:8888/';
+ var my_api_server_url = 'http://127.0.0.1:8888/';
 // var my_api_server_url = 'http://192.168.2.240:8888/';
 //var my_api_server_url = 'http://open.zuul.kidgrow.cloud/';
  // var my_api_server_url = 'zuul.kidgrow.cloud/';
-var my_api_server_url = 'https://zuul.kidgrow.cloud/';
+//var my_api_server_url = 'https://zuul.kidgrow.cloud/';
 
 if(my_api_server_url.indexOf("http")<0)
 {
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
index faa35c9..bec3632 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
@@ -43,6 +43,7 @@
     <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="productdetail-List">套餐</a>
     <a class="layui-btn layui-btn-xs permissions" permissions="product-rechage" lay-event="pay">充值</a>
     <a class="layui-btn layui-btn-xs layui-btn-normal" permissions="product-pay" lay-event="userpay">支付</a>
+    <a class="layui-btn layui-btn-xs layui-btn-normal" permissions="product-pay" lay-event="health">运功处方</a>
     <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="hospital-save" lay-event="edit">修改</a>
     <a class="layui-btn layui-btn-danger layui-btn-xs permissions" permissions="hospital-del" lay-event="del">删除</a>
 </script>
@@ -75,15 +76,16 @@
             },
             page: true,
             cols: [
-                [{
+                [
+                    {
                         field: 'hospitalId',
-                        width: 180,
+                        width: 80,
                         title: '医院编号',
                         fixed: 'left'
                     },
                     {
                         field: 'hospitalName',
-                        width: 250,
+                        width: 100,
                         title: '医院名称',
                         fixed: 'left'
                     },
@@ -130,7 +132,6 @@
                     // { field: 'isAnswer', width: 80,  title: '医答',templet:function (d) {
                     //     return d.isScreen?"是":"否"
                     // } },
-
                     {
                         field: 'serverUserName',
                         width: 100,
@@ -223,6 +224,18 @@
                         $('#hospita-btn-search').click();
                     }
                 });
+            } else if(layEvent=="health"){
+                //充值
+                admin.putTempData("t_hospital", data);
+                admin.popupCenter({
+                    title: '运动处方服务',
+                    path: 'pages/opration/hospital_health.html',
+                    area: '500px',
+                    offset: '50px',
+                    finish: function () {
+                        $('#hospita-btn-search').click();
+                    }
+                });
             }
         });
         // 搜索按钮点击事件
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_health.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_health.html
new file mode 100644
index 0000000..2a8256a
--- /dev/null
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_health.html
@@ -0,0 +1,126 @@
+<form id="health-form" lay-filter="health-form" class="layui-form model-form" method="POST">
+    <div class="layui-form-item">
+        <label class="layui-form-label" style="width: 150px;">服务</label>
+        <div class="layui-input-block">
+            <input type="checkbox" name="isHealth" lay-skin="switch" lay-filter="health_enabled" lay-text="启用|停用" />
+        </div>
+    </div>
+    <div class="layui-form-item">
+        <label class="layui-form-label" style="width: 150px;">生效时间</label>
+        <div class="layui-input-block">
+            <input  class="layui-input"  lay-verify="required" required name="healthBeginTime" class="layui-input" id="healthBeginTime">
+        </div>
+    </div>
+    <div class="layui-form-item">
+        <label class="layui-form-label" style="width: 150px;">结束时间</label>
+        <div class="layui-input-block">
+            <input class="layui-input" lay-verify="required" required name="healthEndTime" class="layui-input" id="healthEndTime">
+        </div>
+    </div>
+    <div class="layui-form-item model-form-footer">
+        <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button>
+        <button class="layui-btn permissions" permissions="productpay-edit" lay-filter="health-form-submit"
+            lay-submit>保存</button>
+    </div>
+    <input type="hidden" value="" id="id" name="id" />
+</form>
+<script>
+    layui.use(['form', 'table', 'laydate', 'config', 'admin', 'formSelects'], function () {
+        var form = layui.form;
+        var table = layui.table;
+        var config = layui.config;
+        var layer = layui.layer;
+        var admin = layui.admin;
+        var laydate = layui.laydate;
+        var oldData = {};
+
+        
+        laydate.render({
+            elem: '#healthBeginTime', //指定元素
+            type: 'date',
+            min: layui.util.toDateString(new Date(), 'yyyy-MM-dd'),
+            done: function (value, date, endDate) {
+                var startDate = new Date(value).getTime();
+                var endTime = new Date($('#healthEndTime').val()).getTime();
+                if (endTime < startDate) {
+                    layer.msg('结束时间不能小于开始时间');
+                    $('#healthBeginTime').val($('#healthEndTime').val());
+                }
+            }
+        });
+        laydate.render({
+            elem: '#healthEndTime', //指定元素
+            type: 'date',
+            min: layui.util.toDateString(new Date(), 'yyyy-MM-dd'),
+            done: function (value, date, endDate) {
+                var startDate = new Date($('#healthBeginTime').val()).getTime();
+                var endTime = new Date(value).getTime();
+                if (endTime < startDate) {
+                    layer.msg('结束时间不能小于开始时间');
+                    $('#healthEndTime').val($('#healthBeginTime').val());
+                }
+            }
+        });
+
+        //回显医院基本数据
+        let hospitalData = admin.getTempData('t_hospital');
+        // form.val('health-form', hospitalData);
+        $("#id").val(hospitalData.departmentId)
+        admin.req('api-user/sysdepartment/' + hospitalData.departmentId, {}, function (data) {
+            if (data.code === 0) {
+                if (data.data != null) {
+                    if (data.data.isHealth) {
+                        data.data.healthBeginTime = layui.util.toDateString(data.data.healthBeginTime, 'yyyy-MM-dd')
+                        data.data.healthEndTime = layui.util.toDateString(data.data.healthEndTime, 'yyyy-MM-dd')
+                        oldData={}
+                        form.val('health-form', data.data);
+                    } else {
+                        oldData.healthEndTime = layui.util.toDateString(data.data.healthEndTime, 'yyyy-MM-dd')
+                        oldData.healthBeginTime = layui.util.toDateString(data.data.healthBeginTime, 'yyyy-MM-dd')
+                    }
+                }
+            } else {
+                layer.closeAll('loading');
+                layer.msg(data.msg, {
+                    icon: 2,
+                    time: 2000
+                });
+            }
+        }, 'get');
+        form.render();
+
+        // 表单提交事件
+        form.on('submit(health-form-submit)', function (data) {
+            layer.load(2);
+            if (data.field.isHealth === 'on') {
+                data.field.isHealth = true;
+            } else {
+                data.field.isHealth = false;
+            }
+            admin.req('api-user/sysdepartment/', JSON.stringify(data.field), function (data) {
+                if (data.code === 0) {
+                    layer.closeAll('loading');
+                    layer.msg(data.msg, {
+                        icon: 1,
+                        time: 2000
+                    });
+                    admin.finishPopupCenter();
+                } else {
+                    layer.closeAll('loading');
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 2000
+                    });
+                }
+            }, "post");
+            return false;
+        });
+        // 修改服务状态
+        form.on('switch(health_enabled)', function (obj) {
+            if (obj.elem.checked) {
+                form.val('health-form', oldData);
+            }
+            form.render();
+        });
+    })
+</script>
\ No newline at end of file

--
Gitblit v1.8.0