From 9a86c4e3283b412e499c683a0b28ed7c9856c55f Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Fri, 27 Nov 2020 11:51:32 +0800
Subject: [PATCH] Merge branch 'dev' of ssh://192.168.2.240:29418/kidgrow-microservices-platform into dev
---
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html | 1044 +++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 708 insertions(+), 336 deletions(-)
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 697168d..975f886 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
@@ -1,128 +1,223 @@
<form id="recharge-form" lay-filter="recharge-form" class="layui-form">
<div style="overflow-y: auto; height:700px;">
- <div class="layui-tab">
- <ul class="layui-tab-title">
- <li class="layui-this">合同信息</li>
- </ul>
- <div class="layui-tab-content" style="margin: 0px;">
- <div class="layui-tab-item layui-show">
- <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;">医院名称</label>
- <div class="layui-input-block">
- <input name="hospitalName" id="hospitalName" type="text" class="layui-input"
- style="border: none; margin-top:-10px" readonly />
+ <div class="layui-tab">
+ <ul class="layui-tab-title">
+ <li class="layui-this">合同信息</li>
+ </ul>
+ <div class="layui-tab-content" style="margin: 0px 0px -10px 0px;">
+ <div class="layui-tab-item layui-show">
+ <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;">医院名称</label>
+ <div class="layui-input-block">
+ <input name="hospitalName" id="hospitalName" type="text" class="layui-input"
+ style="border: none; margin-top:-10px" readonly />
+ </div>
</div>
- </div>
- <div class="layui-col-sm3">
- <label class="layui-form-label" style="padding: 0;">科室名称</label>
- <div class="layui-input-block">
- <input name="departmentName" id="departmentName" style="border: none; margin-top:-10px"
- readonly class="layui-input" />
+ <div class="layui-col-sm3">
+ <label class="layui-form-label" style="padding: 0;">科室名称</label>
+ <div class="layui-input-block">
+ <input name="departmentName" id="departmentName"
+ style="border: none; margin-top:-10px" readonly class="layui-input" />
+ </div>
</div>
- </div>
- <div class="layui-col-sm2">
- <label class="layui-form-label" style="padding: 0;">服务人员</label>
- <div class="layui-input-block">
- <input name="serverUserName" id="serverUserName"
- style="border: none; margin-top:-10px;width: 120px;" readonly class="layui-input" />
+ <div class="layui-col-sm2">
+ <label class="layui-form-label" style="padding: 0;">服务人员</label>
+ <div class="layui-input-block">
+ <input name="serverUserName" id="serverUserName"
+ style="border: none; margin-top:-10px;width: 120px;" readonly
+ class="layui-input" />
+ </div>
</div>
</div>
</div>
- </div>
- <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>
- <input name="hospitalAreas" id="hospitalAreas" type="text"
- style="border: none; width: 250px; margin-top:-10px" readonly class="layui-input" />
- </div>
- <div class="layui-col-sm3">
- <label class="layui-form-label" style="padding: 0;">联系电话</label>
- <div class="layui-input-block">
- <input name="hospitalTel" id="hospitalTel" type="text" class="layui-input"
- style="border: none; margin-top:-10px" readonly />
+ <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 20px 0 0;">地区</label>
+ <input name="hospitalAreas" id="hospitalAreas" type="text"
+ style="border: none; width: 250px; margin-top:-10px" readonly class="layui-input" />
</div>
- </div>
- <div class="layui-col-sm2">
- <label class="layui-form-label" style="padding: 0;">联系人</label>
- <div class="layui-input-block">
- <input name="hospitalLink" type="text" class="layui-input"
- style="border: none; margin-top:-10px;width: 120px;" readonly />
+ <div class="layui-col-sm3">
+ <label class="layui-form-label" style="padding: 0;">联系电话</label>
+ <div class="layui-input-block">
+ <input name="hospitalTel" id="hospitalTel" type="text" class="layui-input"
+ style="border: none; margin-top:-10px" readonly />
+ </div>
+ </div>
+ <div class="layui-col-sm2">
+ <label class="layui-form-label" style="padding: 0;">联系人</label>
+ <div class="layui-input-block">
+ <input name="hospitalLink" type="text" class="layui-input"
+ style="border: none; margin-top:-10px;width: 120px;" readonly />
+ </div>
</div>
</div>
</div>
- </div>
- <div class="layui-form-item" style="padding: 0; margin-bottom: 0px;">
- <div class="layui-row">
- <div class="layui-col-sm4">
- <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" />
+ <div class="layui-form-item" style="padding: 0; margin-bottom: 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm6">
+ <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"
+ style="display: inline-block;width: 80%;" />
+ </div>
</div>
- </div>
- <div class="layui-col-sm3">
- <label class="layui-form-label">合同编号</label>
- <div class="layui-input-block">
- <input name="contractNo" id="contractNo" type="text" class="layui-input" maxlength="50"
- style="width: 185px;" autocomplete="off" lay-verify="required" required />
+ <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
+ style="display: inline-block;width: 80%;" />
+ </div>
</div>
</div>
</div>
- </div>
- <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
- <div class="layui-row">
- <div class="layui-col-sm4">
- <label class="layui-form-label" style="padding: 10px 30px 0 0px;">开始日期</label>
- <input autocomplete="off" name="contractBeginTime" id="contractBeginTime" type="text"
- class="layui-input" style="width: 182px;" maxlength="50" lay-verify="required"
- required />
- </div>
- <div class="layui-col-sm4">
- <label class="layui-form-label">截止日期</label>
- <div class="layui-input-block">
- <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text"
- class="layui-input" maxlength="50" lay-verify="required" required />
+ <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm6">
+ <label class="layui-form-label">当前软件服务周期:</label>
+ <div class="layui-input-block">
+ <input autocomplete="off" name="contractBeginTime_not" disabled
+ id="contractBeginTime_not" type="text" placeholder="请输开始时间" class="layui-input"
+ 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" 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" readonly style="border: none;" />
+ </div>
+ </div>
+ <!-- <div class="layui-col-sm6">
+ <label class="layui-form-label">签订日期</label>
+ <div class="layui-input-block">
+ <input autocomplete="off" name="contractTime" id="contractTime" type="text"
+ class="layui-input" maxlength="50" lay-verify="required" required />
+ </div>
+ </div> -->
</div>
- <div class="layui-col-sm4">
- <label class="layui-form-label">签订日期</label>
- <div class="layui-input-block">
- <input autocomplete="off" name="contractTime" id="contractTime" type="text"
- class="layui-input" maxlength="50" lay-verify="required" required />
+ </div>
+ <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm6">
+ <label class="layui-form-label">合同服务周期:</label>
+ <!-- <input autocomplete="off" name="contractBeginTime" id="contractBeginTime" type="text"
+ class="layui-input" maxlength="50" lay-verify="required"
+ required /> -->
+ <!-- <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text"
+ class="layui-input" maxlength="50" lay-verify="required" required /> -->
+ <div class="layui-input-block">
+ <input autocomplete="off" name="contractBeginTime" id="contractBeginTime"
+ type="text" placeholder="请输开始时间" class="layui-input" maxlength="50"
+ 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 style="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" id="contractNum"
+ onkeyup="this.value=this.value.replace(/[^\d]/g,'') " type="text"
+ class="layui-input" maxlength="50" lay-verify="required" required />
+ </div>
</div>
</div>
</div>
</div>
</div>
</div>
- </div>
- <div class="layui-tab" style="margin: 0px;">
- <ul class="layui-tab-title">
- <li class="layui-this">产品信息</li>
- </ul>
- <div class="layui-tab-content" style="margin: 0px;">
- <div class="layui-tab-item layui-show" style="padding-top: 0px;">
- <table class="layui-table" id="product-table" lay-filter="product-table" style="margin: 0px;"></table>
+ <div class="layui-tab" style="margin: 0px;">
+ <ul class="layui-tab-title">
+ <li class="layui-this">套餐列表</li>
+ <li>自定义充值</li>
+ </ul>
+ <div class="layui-tab-content" style="margin: -10px 0px -10px 0px;">
+ <div class="layui-tab-item layui-show" style="padding-top: 0px;">
+ <table class="layui-table" id="product-table" lay-filter="product-table" style="margin: 0px;">
+ </table>
+ </div>
+ <div class="layui-tab-item">
+ <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm12">
+ <label class="layui-form-label">充值名称:</label>
+ <div class="layui-input-inline">
+ <input autocomplete="off" id="custom_proName" type="text" class="layui-input"
+ maxlength="50" />
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm6">
+ <label class="layui-form-label">读片充值量:</label>
+ <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" />
+ </div>
+ </div>
+ <div class="layui-col-sm6">
+ <div class="layui-input-inline">
+ <input type="checkbox" id="custom_isShare" name="gongxiang" value="1" lay-skin="primary" title="是否共享" />
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item" style="margin: 10px 0px 0px 0px;">
+ <div class="layui-row">
+ <div class="layui-col-sm12">
+ <div class="layui-input-inline" style="width: 160px;text-align: right;">
+ <input type="checkbox" id="termType" lay-skin="primary" name="termType" value="true" checked
+ title="期限限制" />
+ </div>
+ <div class="layui-col-sm4" style="margin-right: 30px;">
+ <input autocomplete="off" id="custom_beginTime" type="text" placeholder="请输开始时间"
+ class="layui-input" maxlength="50" />
+ </div>
+ <div class="layui-col-sm4 ">
+ <input autocomplete="off" type="text" placeholder="请输入结束时间" id="custom_endTime"
+ class="layui-input" maxlength="50" />
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item">
+ <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>
- </div>
- <div class="layui-tab" style="margin: 0px;">
- <ul class="layui-tab-title">
- <li class="layui-this">待充值产品</li>
- </ul>
- <div class="layui-tab-content">
- <div class="layui-tab-item layui-show" style="padding-top: 0px;">
- <table class="layui-table" id="product-table-temp" lay-filter="product-table-temp" style="margin: 0px;">
- </table>
+ <div class="layui-tab" style="margin: 0px;">
+ <ul class="layui-tab-title">
+ <li class="layui-this">待充值产品</li>
+ </ul>
+ <div class="layui-tab-content" style="margin: -10px 0px -10px 0px;">
+ <div class="layui-tab-item layui-show" style="padding-top: 0px;">
+ <table class="layui-table" id="product-table-temp" lay-filter="product-table-temp"
+ style="margin: 0px;">
+ </table>
+ </div>
</div>
</div>
- </div>
</div>
<div class="layui-form-item model-form-footer" style="margin-right: 20px;">
<button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button>
@@ -147,28 +242,106 @@
<input type="checkbox" lay-filter="product-tpl-isShare" value="{{d.id}}" lay-skin="switch" lay-text="共享|不共享" />
</script>
<script>
- layui.use(['form', 'table', 'util', 'config', 'laydate', 'admin'], function () {
+ layui.use(['form', 'table', 'util', 'config', 'laydate', 'jquery', 'admin'], function () {
var form = layui.form;
var table = layui.table;
var config = layui.config;
var layer = layui.layer;
var util = layui.util;
var admin = layui.admin;
+ // element=layui.element;
var $ = layui.jquery;
var laydate = layui.laydate;
+ var contractNum = 0;
+
//充值进行中
- var isRun=false;
+ var isRun = false;
//执行一个laydate实例
- laydate.render({
- elem: '#contractBeginTime' //指定元素
+ var contractBeginTime= laydate.render({
+ elem: '#contractBeginTime', //指定元素
+ done: function (value, date, endDate) {
+ var startDate = new Date(value).getTime();
+ var endTime = new Date($('#contractEndTime').val()).getTime();
+ 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
+ }
+ }
+ }
+ });
+ 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")
+ }
+
+ }
+ }
});
laydate.render({
- elem: '#contractEndTime' //指定元素
+ elem: '#contractBeginTime_not' //指定元素
});
laydate.render({
- elem: '#contractTime', //指定元素
- value: new Date().dateFormat("yyyy-MM-dd")
+ elem: '#contractEndTime_not' //指定元素
+ });
+ 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();
+ if (endTime < startDate) {
+ layer.msg('结束时间不能小于开始时间');
+ $('#custom_beginTime').val($('#custom_endTime').val());
+ }
+ }
+ });
+ 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();
+ if (endTime < startDate) {
+ layer.msg('结束时间不能小于开始时间');
+ $('#custom_endTime').val($('#custom_beginTime').val());
+ }
+ }
});
//现将临时数据清理
admin.putTempData("t_tempProduct", "");
@@ -181,126 +354,14 @@
cellMinWidth: 100,
cols: [
[{
- field: 'proName',
- width: 320,
- title: '产品名称',
- align: 'center',
- fixed: 'left'
- },
- {
- field: 'proType',
- align: 'center',
- width: 100,
- templet: function (d) {
- if (d.proType === 0)
- return "试用"
- else
- return "正式"
- },
- title: '类型'
- },
- {
- field: 'proTime',
- width: 100,
- title: '时长',
- align: 'center',
- templet: function (d) {
- switch (d.proTimeUnit) {
- case 0:
- return d.proTime + "天";
- break;
- case 1:
- return d.proTime + "月";
- break;
- case 2:
- return d.proTime + "年";
- break;
- }
- }
- },
- {
- field: 'recordCount',
- width: 110,
- align: 'center',
- title: '报告数'
- },
- {
- field: 'ailightCount',
- width: 100,
- align: 'center',
- title: '读片量'
- },
- {
- field: 'beginTime',
- align: 'center',
- width: 120,
- title: '开始日期'
- },
- {
- field: 'endTime',
- align: 'center',
- width: 120,
- title: '结束日期'
- },
- {
- field: 'isShare',
- fixed: 'right',
- align: 'center',
- width: 100,
- templet: function (d) {
- if (d.isShare == 0)
- return "不共享"
- else
- return "共享"
- },
- title: '共享'
- },
- {
- field: 'id',
- fixed: 'right',
- align: 'center',
- width: 80,
- toolbar: '#product-tpl-bar-temp',
- title: '操作'
- }
- ]
- ]
- });
- }
-
- //回显医院基本数据
- let hospitalData = admin.getTempData('t_hospital');
- if (hospitalData != null) {
- form.val('recharge-form', hospitalData);
- $("#hospitalAreas").val(hospitalData.hospitalProvince + " " + hospitalData.hospitalCity + " " +
- hospitalData.hospitalArea);
- }
- //装载产品数据
- table.render({
- elem: '#product-table',
- url: config.base_server + 'api-opration/product',
- method: 'GET',
- cellMinWidth: 50,
- headers: {
- 'Authorization': 'Bearer ' + config.getToken().access_token
- },
- page: false,
- where: {
- is_del: 0,
- enabled: 1
- },
- cols: [
- [{
field: 'proName',
- sort: true,
- width: 300,
+ width: 330,
title: '产品名称',
align: 'center',
fixed: 'left'
},
{
field: 'proType',
- sort: true,
align: 'center',
width: 80,
templet: function (d) {
@@ -328,13 +389,8 @@
return d.proTime + "年";
break;
}
+ return "";
}
- },
- {
- field: 'recordCount',
- width: 100,
- align: 'center',
- title: '报告数'
},
{
field: 'ailightCount',
@@ -343,33 +399,34 @@
title: '读片量'
},
{
+ field: 'recordCount',
+ width: 100,
+ align: 'center',
+ title: '报告量'
+ },
+ {
field: 'beginTime',
align: 'center',
- width: 130,
- title: '开始日期',
- templet: function (d) {
- return getNowDate();
- },
- event: "date",
- edit: 'text'
+ width: 120,
+ title: '开始日期'
},
{
field: 'endTime',
align: 'center',
- width: 130,
- title: '结束日期',
- templet: function (d) {
- return getNowDate(d.proTime, d.proTimeUnit);
- },
- event: "date",
- edit: 'text'
+ width: 120,
+ title: '结束日期'
},
{
field: 'isShare',
fixed: 'right',
align: 'center',
width: 100,
- templet: '#product-tpl-isShare',
+ templet: function (d) {
+ if (d.isShare == 0)
+ return "不共享"
+ else
+ return "共享"
+ },
title: '共享'
},
{
@@ -377,15 +434,250 @@
fixed: 'right',
align: 'center',
width: 100,
- toolbar: '#product-tpl-bar',
+ toolbar: '#product-tpl-bar-temp',
title: '操作'
}
+ ]
]
- ],
- done: function (res) {
- permissionsInput(res, config);
- }
- });
+ });
+ }
+ //获取软件的服务周期
+ 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');
+ if (hospitalData != null) {
+ admin.req('api-user/sysdepartment/getPayMes?departmentId=' + hospitalData.departmentId, {},
+ function (data) {
+ layer.closeAll('loading');
+ if (0 === data.code) {
+ queryData = data.data;
+ if (queryData === true) {
+ admin.finishPopupCenter();
+ layer.msg("当前科室开通了单次支付功能,不能进行充值业务!", {
+ icon: 3,
+ time: 5000
+ });
+ } else {
+ form.val('recharge-form', hospitalData);
+ var hospitalProvince = hospitalData.hospitalProvince != null ? hospitalData.hospitalProvince : "";
+ var hospitalCity = hospitalData.hospitalCity != null ? hospitalData.hospitalCity : "";
+ var hospitalArea = hospitalData.hospitalArea != null ? hospitalData.hospitalArea : "";
+ // console.log(hospitalProvince + " " + hospitalCity + " " +hospitalArea)
+ $("#hospitalAreas").val(hospitalProvince + " " + hospitalCity + " " + hospitalArea);
+
+ //装载产品数据
+ table.render({
+ elem: '#product-table',
+ url: config.base_server + 'api-opration/product/all',
+ method: 'GET',
+ cellMinWidth: 50,
+ headers: {
+ 'Authorization': 'Bearer ' + config.getToken().access_token
+ },
+ page: false,
+ where: {
+ is_del: 0,
+ enabled: 1
+ },
+ cols: [
+ [{
+ field: 'proName',
+ sort: true,
+ width: 330,
+ title: '产品名称',
+ align: 'center',
+ fixed: 'left'
+ },
+ {
+ field: 'proType',
+ sort: true,
+ align: 'center',
+ width: 80,
+ templet: function (d) {
+ if (d.proType === 0)
+ return "试用"
+ else
+ return "正式"
+ },
+ title: '类型'
+ },
+ {
+ field: 'proTime',
+ width: 100,
+ title: '时长',
+ align: 'center',
+ templet: function (d) {
+ switch (d.proTimeUnit) {
+ case 0:
+ return d.proTime + "天";
+ break;
+ case 1:
+ return d.proTime + "月";
+ break;
+ case 2:
+ return d.proTime + "年";
+ break;
+ }
+ }
+ },
+ {
+ field: 'ailightCount',
+ width: 100,
+ align: 'center',
+ title: '读片量'
+ },
+ {
+ field: 'recordCount',
+ width: 100,
+ align: 'center',
+ title: '报告量'
+ },
+ {
+ field: 'beginTime',
+ align: 'center',
+ width: 120,
+ title: '开始日期',
+ event: "date"
+ },
+ {
+ field: 'endTime',
+ align: 'center',
+ width: 120,
+ title: '结束日期',
+ event: "date"
+ },
+ {
+ field: 'isShare',
+ fixed: 'right',
+ align: 'center',
+ width: 100,
+ templet: '#product-tpl-isShare',
+ title: '共享'
+ },
+ {
+ field: 'id',
+ fixed: 'right',
+ align: 'center',
+ width: 100,
+ toolbar: '#product-tpl-bar',
+ title: '操作'
+ }
+ ]
+ ],
+ done: function (res) {
+ permissionsInput(res, config);
+ }
+ });
+ }
+ }
+ else {
+ admin.finishPopupCenter();
+ layer.msg("验证医院科室数据异常!", {
+ icon: 2,
+ time: 3000
+ });
+ }
+ }, 'get');
+ //报告数量事件
+ $("#contractNum").blur(function () {
+ if ($("#contractNum").val() <= 0) {
+ layer.msg("输入的读片量大于0");
+ $("#contractNum").val("")
+ return false;
+ }
+ var listData = admin.getTempData("t_tempProduct");
+ var listNum = 0;
+ if (!strUtil.isEmpty(listData)) {
+ listData.forEach(item => {
+ if(item.proType==1){
+ listNum += item.ailightCount;
+ }
+ })
+ }
+ if ($("#contractNum").val() < listNum) {
+ layer.msg("请先删除待充值套餐");
+ $("#contractNum").val(contractNum)
+ return false;
+ } else {
+ contractNum = $("#contractNum").val();
+ }
+ })
+ //自定义的确定
+ $("#custom_submit").click(function () {
+ var custom_proName = $("#custom_proName").val()
+ var custom_ailightCount = $("#custom_ailightCount").val()
+ var custom_isShare = $("#custom_isShare").prop("checked") ? 1 : 0;
+ var termType = $("#termType").prop("checked") ? 1 : 0;
+ var custom_beginTime = "";
+ var custom_endTime = "";
+ if (termType == 1) {
+ custom_beginTime = $("#custom_beginTime").val();
+ custom_endTime = $("#custom_endTime").val();
+ } else {
+ custom_beginTime = $("#contractBeginTime").val();
+ custom_endTime = $("#contractEndTime").val();
+ }
+ var listData = admin.getTempData("t_tempProduct");
+ //添加一个id,删除用
+ var max = 0;
+ if (strUtil.isEmpty(listData)) {
+ listData = new Array();
+ }
+ listData.forEach(element => {
+ if (max < element.id) {
+ max = element.id
+ }
+ });
+ //判断待加入产品的总数是否大于合同的总数
+ var msg = isthenNum(parseInt(custom_ailightCount));
+ if (msg != null) {
+ layer.msg(msg);
+ return false;
+ }
+
+ var data = {
+ id: max + 1,
+ ailightCount: parseInt(custom_ailightCount),
+ beginTime: custom_beginTime,
+ endTime: custom_endTime,
+ isShare: custom_isShare,
+ proName: custom_proName,
+ proTime: "",
+ proType: 1,
+ termType: termType
+ }
+ tempDataList(data);
+ waitRecharge();
+ })
+ getCycleTime(hospitalData.departmentId);
+ }
//待充值列表功能操作
table.on('tool(product-table-temp)', function (obj) {
if (obj.event === "del") {
@@ -397,8 +689,32 @@
});
//单元格点击事件
table.on('tool(product-table)', function (obj) {
+ var newdata = {};
var data = obj.data;
var selectData = {};
+ if (obj.event === 'date') {
+ var field = $(this).data('field');
+ laydate.render({
+ elem: this.firstChild,
+ format: "yyyy-MM-dd",
+ show: true,
+ done: function (value, date) {
+ var nowTr = obj.tr;
+ if (field === "beginTime") {
+ var endTimes = getNowDate(data.proTime, data.proTimeUnit,
+ value);
+ newdata["beginTime"] = value;
+ newdata["endTime"] = endTimes;
+ } else if (field === "endTime") {
+ newdata["endTime"] = value;
+ var beginTimes = getNowDate((0 - parseInt(data.proTime)),
+ data.proTimeUnit, value);
+ newdata["beginTime"] = beginTimes;
+ }
+ obj.update(newdata);
+ }
+ });
+ }
if (obj.event === "pay") {
data.beginTime = obj.tr.find("td[data-field='beginTime'] input").val();
data.endTime = obj.tr.find("td[data-field='endTime'] input").val();
@@ -408,8 +724,18 @@
"td[data-field='endTime'] div").text();
data.isShare = obj.tr.find("td[data-field='isShare'] em").text();
data.isShare = (data.isShare.indexOf("不") == 0) ? 0 : 1;
+ //判断待加入产品的总数是否大于合同的总数
+ //试用产品不计算总数
+ 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)) {
+ data.id = data.id + '';
tempDataList(data);
waitRecharge();
} else {
@@ -422,6 +748,30 @@
}
}
});
+ function isthenNum(num) {
+ if (num <= 0) {
+ return "请输入合同读片充值量大于0";
+ }
+ var listData = admin.getTempData("t_tempProduct");
+ var listNum = 0;
+ if (!strUtil.isEmpty(listData)) {
+ listData.forEach(item => {
+ if(item.proType==1){
+ listNum += item.ailightCount;
+ }
+ })
+ }
+ listNum += num;
+ if ($("#contractNum").val() == undefined || $("#contractNum").val() == "") {
+ return "请输入合同读片充值量!";
+ } else {
+ if ($("#contractNum").val() < listNum) {
+ return "当前产品总数不得大于合同读片充值量";
+ } else {
+ return null;
+ }
+ }
+ }
//监听单元格编辑 判断日期格式
table.on('edit(product-table)', function (obj) {
var value = obj.value //得到修改后的值
@@ -429,13 +779,17 @@
data = obj.data //得到所在行所有键值
,
field = obj.field; //得到字段
- if (dateUtil.isDate(value)) {} else {
+ if (dateUtil.isDate(value)) { } else {
layer.msg("输入的日期格式无效!");
}
});
//自动计算时间
- var getNowDate = function (proTime, proTimeUnit) {
- var now = new Date();
+ var getNowDate = function (proTime, proTimeUnit, now) {
+ if (strUtil.isEmpty(now)) {
+ now = new Date();
+ } else {
+ now = dateUtil.strTurnDate(now);
+ }
if (strUtil.isEmpty(proTime) && strUtil.isEmpty(proTimeUnit)) {
return now.dateFormat("yyyy-MM-dd");
} else {
@@ -446,8 +800,8 @@
return new Date(now.setDate(now.getDate() + proTime)).dateFormat("yyyy-MM-dd");
break;
case 1:
- return new Date(now.setMonth(now.getMonth() + proTime + 1)).dateFormat(
- "yyyy-MM-dd");
+ return new Date(now.setMonth(now.getMonth() + proTime)).dateFormat(
+ "yyyy-MM-dd");
break;
case 2:
return new Date(now.setFullYear(now.getFullYear() + proTime)).dateFormat(
@@ -463,13 +817,13 @@
if (strUtil.isEmpty(listData)) {
listData = new Array();
}
- $.each(listData, function (index, value) {
- if (value.id === data.id) {
- //移除
- listData.splice(index, 1);
- return false;
- }
- })
+ // $.each(listData, function (index, value) {
+ // if (value.id === data.id) {
+ // //移除
+ // listData.splice(index, 1);
+ // return false;
+ // }
+ // })
listData.push(data);
admin.putTempData("t_tempProduct", listData);
} else {
@@ -491,99 +845,117 @@
}
}
form.on('submit(recharge-form-submit)', function (data) {
- if(!isRun){
+ if (!isRun) {
layer.load(2);
- var listData = admin.getTempData("t_tempProduct");
- if (listData != null) {
- if (data.field != null) {
- layer.confirm("确定要将待充值列表中的" + listData.length + "个产品充值给当前医院的科室吗?", {
- btn: ["确定", "返回"]
- }, function () {
- isRun=true;
- data.field.contractBeginTime = data.field.contractBeginTime +
- " 00:00:00";
- data.field.contractEndTime = data.field.contractEndTime + " 23:59:59";
- data.field.contractTime = data.field.contractTime + " 00:00:00";
- admin.req('api-opration/contract', JSON.stringify(data.field),
- function (data) {
- layer.closeAll('loading');
- if (data.code === 0) {
- var orderData = data.data;
- //处理订单明细数据
- var listDetailData = new Array();
- $.each(listData, function (index, item) {
- var detailData = {
- orderId: orderData.id,
- proId: item.id,
- proType: item.proType,
- proName: item.proName,
- isShare: item.isShare,
- ailightCount: item.ailightCount,
- recordCount: item.recordCount,
- proBegintime: item.beginTime +
- ' 00:00:00',
- proEndtime: item.endTime +
- ' 23:59:59'
- };
- listDetailData.push(detailData);
- })
+ var listData = admin.getTempData("t_tempProduct");
+ if (listData != null) {
+ if (data.field != null) {
+ layer.confirm("确定要将待充值列表中的" + listData.length + "个产品充值给当前医院的科室吗?", {
+ btn: ["确定", "返回"]
+ }, function () {
+ isRun = true;
+ data.field.contractBeginTime = data.field.contractBeginTime +
+ " 00:00:00";
+ data.field.contractEndTime = data.field.contractEndTime +
+ " 23:59:59";
+ // data.field.contractTime = data.field.contractTime + " 00:00:00";
+ delete data.field.contractNum_not
+ delete data.field.contractBeginTime_not
+ delete data.field.contractEndTime_not
+ admin.req('api-opration/contract', JSON.stringify(data.field),
+ function (data) {
+ layer.closeAll('loading');
+ if (data.code === 0) {
+ var orderData = data.data;
+ //处理订单明细数据
+ var listDetailData = new Array();
+ $.each(listData, function (index, item) {
+ var detailData = {
+ orderId: orderData.id + '',
+ proId: item.termType == null ? item.id + '' : "0",
+ proType: item.proType,
+ proName: item.proName,
+ isShare: item.isShare,
+ ailightCount: item.ailightCount != null ? item.ailightCount : 0,
+ recordCount: item.recordCount != null ? item.recordCount : 0,
+ termType: item.termType,
+ proBegintime: item.beginTime != "" ? item.beginTime +
+ ' 00:00:00' : "",
+ proEndtime: item.endTime != "" ? item.endTime +
+ ' 23:59:59' : "",
+ orderAilightCount: item.ailightCount,
+ orderRecordCount: item.recordCount != null ? item.recordCount : 0,
+ };
+ listDetailData.push(detailData);
+ })
- if (listDetailData.length > 0) {
- //提交订单数据
- admin.req('api-opration/productorderdetail/saveall',
- JSON.stringify(listDetailData),
- function (data) {
- isRun=false;
- layer.closeAll('loading');
- if (data.code === 0) {
- //现将临时数据清理
- admin.putTempData("t_tempProduct",
- "");
- layer.msg(data.msg, {
- icon: 1,
- time: 3000
- }, function () {
- admin
- .finishPopupCenter();
- });
- } else {
- layer.msg(data.msg, {
- icon: 2,
- time: 1000
- });
- }
- }, 'POST');
+ if (listDetailData.length > 0) {
+ //提交订单数据
+ admin.req(
+ 'api-opration/productorderdetail/saveall',
+ JSON.stringify(listDetailData),
+ function (data) {
+ isRun = false;
+ layer.closeAll('loading');
+ if (data.code === 0) {
+ //现将临时数据清理
+ admin.putTempData(
+ "t_tempProduct",
+ "");
+ layer.msg(data.msg, {
+ icon: 1,
+ time: 2000
+ }, function () {
+ admin
+ .finishPopupCenter();
+ });
+ } else {
+ layer.msg(data.msg, {
+ icon: 2,
+ time: 1000
+ });
+ }
+ }, 'POST');
+ } else {
+ layer.msg("充值数据异常为空!", {
+ icon: 2,
+ time: 1000
+ });
+ isRun = false;
+ }
} else {
- layer.msg("充值数据异常为空!", {
+ layer.msg(data.msg, {
icon: 2,
time: 1000
});
- isRun=false;
+ isRun = false;
}
- } else {
- layer.msg(data.msg, {
- icon: 2,
- time: 1000
- });
- isRun=false;
- }
- }, 'POST');
- })
+ }, 'POST');
+ })
+ } else {
+ layer.msg("数据异常!", {
+ icon: 2,
+ time: 1000
+ });
+ }
} else {
- layer.msg("数据异常!", {
+ layer.msg("请先将要充值的产品加入待充值!", {
icon: 2,
- time: 1000
+ time: 2000
});
}
- } else {
- layer.msg("请先将要充值的产品加入待充值!", {
- icon: 2,
- time: 2000
- });
- }
- layer.closeAll('loading');
- return false;
+ layer.closeAll('loading');
+ return false;
}
});
});
-</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
--
Gitblit v1.8.0