<div class="layui-card">
|
<div class="layui-card-header">
|
<h2 class="header-title">支付管理</h2>
|
<span class="layui-breadcrumb pull-right">
|
<a href="#!home_console">首页</a>
|
<a><cite>支付管理</cite></a>
|
</span>
|
</div>
|
<div class="layui-card-body">
|
<div class="layui-form toolbar">
|
|
<input type="hidden" id="hospitalId" />
|
<select id="departmentId" lay-filter="department_clients">
|
<option>--科室--</option>
|
</select> 
|
<select id="doctorId" lay-filter="doctor_clients">
|
<option>--医生--</option>
|
</select> 
|
<div class="layui-col-sm4">
|
<input type="text" class="layui-input search-input" id="startTime" placeholder="开始时间"> 至 <input
|
type="text" class="layui-input search-input" id="endTime" placeholder="结束时间">  
|
<input name="hospitalName" id="hospitalName-seach" placeholder="按医院名称" type="text"
|
class="layui-input search-input" maxlength="50" autocomplete="off" /> 
|
</div>
|
<button id="app-btn-search" class="layui-btn icon-btn permissions" permissions="saasclientpay-list"><i
|
class="layui-icon"></i>搜索</button>
|
<button id="piliangjiesuan" class="layui-btn icon-btn permissions" permissions="saasclientpay-edit"><i
|
class="layui-icon"></i>批量结算</button>
|
<button id="export" class="layui-btn icon-btn permissions" permissions="saasclientpay-export"><i
|
class="layui-icon"></i>导出</button>
|
</div>
|
|
<!-- 数据表格 -->
|
<table class="layui-table" id="app-table" lay-filter="app-table"></table>
|
</div>
|
</div>
|
|
<script>
|
layui.use(['form', 'table', 'laydate', 'util', 'config', 'admin', 'autocomplete',], 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;
|
var autocomplete = layui.autocomplete;
|
|
//时间格式
|
var laydate = layui.laydate;
|
//执行一个laydate实例
|
laydate.render({
|
elem: '#startTime' //指定元素
|
});
|
laydate.render({
|
elem: '#endTime' //指定元素
|
});
|
// permissionsInput(null, config);
|
|
// 获取应用列表
|
// layer.load(2);
|
admin.req('api-user/syshospital/findAllByMap', JSON.stringify({
|
is_del: 0
|
}), function (data) {
|
layer.closeAll('loading');
|
if (0 === data.code) {
|
let selected = false;
|
clientsAll = data.data;
|
hospital = data.data;
|
$.each(data.data, function (index, item) {
|
if (config.clientId === item.clientId) {
|
selected = true;
|
} else {
|
selected = false;
|
}
|
//往下拉菜单里添加元素
|
$('#hospitalName-seach').append(new Option(item.hospitalName, item.id,
|
false, selected));
|
form.render('select', 'app-form');
|
})
|
form.render();
|
} else {
|
layer.msg(data.msg, {
|
icon: 2,
|
time: 2000
|
});
|
}
|
}, 'Post');
|
//自动完成-医院名称
|
autocomplete.render({
|
elem: $('#hospitalName-seach')[0],
|
keywordsName: 'hospitalName', //查询关键字名称
|
url: config.base_server + 'api-user/syshospital/findByName',
|
template_val: '{{d.hospitalName}}', //选择后文本框显示的数据字段
|
template_txt: "<div class='layui-table-cell'>{{d.hospitalName}}</div>", //下拉列表模板
|
onselect: function (resp) {
|
$("#hospitalId").val(resp.id);
|
//获取科室
|
getDepData();
|
//获取医生
|
}
|
});
|
//获取科室
|
function getDepData() {
|
var hospitalId = $("#hospitalId").val();
|
admin.req('api-user/sysdepartment/findListByHospitalId', { id: hospitalId }, function (data) {
|
layer.closeAll('loading');
|
if (0 === data.code) {
|
let selected = false;
|
console.log(data.data)
|
let id = 0;
|
$("#departmentId").empty();
|
$.each(data.data, function (index, item) {
|
//往下拉菜单里添加元素
|
if (index == 0) {
|
selected = true
|
id = item.id
|
} else {
|
selected = false
|
}
|
$('#departmentId').append(new Option(item.departmentName, item.id,
|
false, selected));
|
form.render('select', 'department_clients');
|
})
|
getDoctorData(id)
|
form.render();
|
} else {
|
layer.msg(data.msg, {
|
icon: 2,
|
time: 2000
|
});
|
}
|
}, 'Get');
|
};
|
|
form.on('select(department_clients)', function (data) {
|
getDoctorData(data.value)
|
});
|
//获取医生
|
function getDoctorData(id) {
|
admin.req('api-user/sysdoctor/findByMap', JSON.stringify({
|
department_id: id
|
}), function (data) {
|
layer.closeAll('loading');
|
if (0 === data.code) {
|
let selected = false;
|
console.log(data.data)
|
$("#doctorId").empty();
|
$.each(data.data, function (index, item) {
|
//往下拉菜单里添加元素
|
if (index == 0) {
|
selected = true
|
} else {
|
selected = false
|
}
|
console.log(item)
|
$('#doctorId').append(new Option(item.doctorName, item.id,
|
false, selected));
|
form.render('select', 'doctor_clients');
|
})
|
|
form.render();
|
} else {
|
layer.msg(data.msg, {
|
icon: 2,
|
time: 2000
|
});
|
}
|
}, 'post');
|
};
|
function getTabel() {
|
var doctorId = ""
|
if ($("#doctorId").val() != "--医生--") {
|
doctorId = $("#doctorId").val();
|
}
|
var departmentId = ""
|
if ($("#departmentId").val() != "--科室--") {
|
departmentId = $("#departmentId").val();
|
}
|
var startTime = $('#startTime').val();
|
var endTime = $('#endTime').val();
|
if (startTime != null && endTime != null) {
|
var flag = compareDate(startTime, endTime);
|
if (!flag) {
|
layer.msg('结束时间不得小于开始时间');
|
return;
|
}
|
}
|
var obj = {
|
payStatus: 2,
|
type: 0,
|
createHospitalId: $("#hospitalId").val(),
|
createHospitalDepartid: departmentId,
|
createDoctorId: doctorId,
|
startTime: startTime,
|
endTime: endTime
|
}
|
|
table.render({
|
elem: '#app-table',
|
url: config.base_server + 'api-opration/saasclientpay',
|
method: 'GET',
|
headers: { 'Authorization': 'Bearer ' + config.getToken().access_token },
|
page: true,
|
where: obj,
|
cols: [[
|
{ field: 'id', width: "10%", align: 'center', title: '支付id' },
|
{ field: 'createHospitalName', width: "10%", align: 'center', title: '医院名称' },
|
{ field: 'createHospitalDepartment', width: "10%", align: 'center', title: '科室' },
|
{ field: 'createUserName', width: "20%", align: 'center', title: '诊断人' },
|
{ field: 'childName', width: "10%", align: 'center', title: '患者姓名' },
|
{ field: 'childSex', width: "10%", align: 'center', title: '患者性别', templet: "<div>{{d.childSex==0 ?'男':'女'}}</div>" },// 0就诊数据 1筛查
|
{ field: 'childBirthday', width: "10%", align: 'center', title: '出生时间', templet: "<div>{{layui.util.toDateString(d.childBirthday, 'yyyy-MM-dd')}}</div>" },
|
{ field: 'tradeNo', width: "10%", align: 'center', title: '订单号' },
|
{ field: 'payTime', width: "10%", align: 'center', title: '支付日期', templet: "<div>{{layui.util.toDateString(d.payTime, 'yyyy-MM-dd')}}</div>" },
|
{ field: 'payMethod', width: "10%", align: 'center', title: '支付方式', templet: "<div>{{d.payMethod==0 ?'微信':'支付宝'}}</div>" },
|
{ field: 'price', width: "10%", align: 'center', title: '支付费用' },
|
{ field: 'id', type: 'checkbox', width: "10%", align: 'center', toolbar: '#dictionaries-table-bar', title: '操作' },// 0就诊数据 1筛查
|
]],
|
done: function (res) {
|
permissionsInput(res, config);
|
}
|
});
|
}
|
|
//比较日期大小
|
function compareDate(logintime, logouttime) {
|
var arys1 = new Array();
|
var arys2 = new Array();
|
if (logintime != null && logouttime != null) {
|
arys1 = logintime.split('-');
|
var logindate = new Date(arys1[0], parseInt(arys1[1] - 1), arys1[2]);
|
arys2 = logouttime.split('-');
|
var logoutdate = new Date(arys2[0], parseInt(arys2[1] - 1), arys2[2]);
|
if (logindate > logoutdate) {
|
return false;
|
} else {
|
return true;
|
}
|
}
|
}
|
$('#piliangjiesuan').click(function () {
|
var selectData = layui.table.checkStatus('app-table').data;
|
if (selectData == null || selectData.length <= 0) {
|
layer.msg('请选择一条数据');
|
return;
|
}
|
let objList = [];
|
selectData.forEach(element => {
|
objList.push(element.id);
|
});
|
admin.req('api-opration/saasclientpay/updateTypeList', JSON.stringify(objList), function (data) {
|
layer.closeAll('loading');
|
if (0 === data.code) {
|
var doctorId = ""
|
if ($("#doctorId").val() != "--医生--") {
|
doctorId = $("#doctorId").val();
|
}
|
var departmentId = ""
|
if ($("#departmentId").val() != "--科室--") {
|
departmentId = $("#departmentId").val();
|
}
|
var startTime = $('#startTime').val();
|
var endTime = $('#endTime').val();
|
if (startTime != null && endTime != null) {
|
var flag = compareDate(startTime, endTime);
|
if (!flag) {
|
layer.msg('结束时间不得小于开始时间');
|
return;
|
}
|
}
|
var obj = {
|
payStatus: 2,
|
type: 0,
|
createHospitalId: $("#hospitalId").val(),
|
createHospitalDepartid: departmentId,
|
createDoctorId: doctorId,
|
startTime: startTime,
|
endTime: endTime
|
}
|
table.reload('app-table', { where: obj });
|
} else {
|
layer.msg(data.msg, {
|
icon: 2,
|
time: 2000
|
});
|
}
|
}, 'post');
|
});
|
|
// 搜索按钮点击事件
|
$('#app-btn-search').click(function () {
|
getTabel();
|
// var key = $('#app-edit-search').val();
|
// table.reload('app-table', { where: { dictionariesName: key } });
|
});
|
//导出
|
$('#export').click(function () {
|
var doctorId = ""
|
if ($("#doctorId").val() != "--医生--") {
|
doctorId = $("#doctorId").val();
|
}
|
var departmentId = ""
|
if ($("#departmentId").val() != "--科室--") {
|
departmentId = $("#departmentId").val();
|
}
|
var startTime = $('#startTime').val();
|
var endTime = $('#endTime').val();
|
if (startTime != null && endTime != null) {
|
var flag = compareDate(startTime, endTime);
|
if (!flag) {
|
layer.msg('结束时间不得小于开始时间');
|
return;
|
}
|
}
|
var obj = {
|
payStatus: 2,
|
type: 0,
|
createHospitalId: $("#hospitalId").val(),
|
createHospitalDepartid: departmentId,
|
doctorId: doctorId,
|
startTime: startTime,
|
endTime: endTime
|
}
|
var url = config.base_server + 'api-opration/saasclientpay/export';
|
var xhr = new XMLHttpRequest();
|
xhr.open('POST', url, true);
|
xhr.responseType = "blob";
|
var form = new FormData();
|
// Add selected file to form
|
form.append("payStatus", 2);
|
form.append('type', 0);
|
form.append('doctorId', doctorId);
|
form.append('startTime', startTime);
|
form.append('endTime', endTime);
|
form.append('createHospitalId', $("#hospitalId").val());
|
|
xhr.setRequestHeader("client_type", "DESKTOP_WEB");
|
xhr.setRequestHeader("Authorization", "Bearer " + config.getToken().access_token);
|
xhr.onload = function () {
|
if (this.status == 200) {
|
var fileName = "支付导出.xlsx";
|
var blob = this.response;
|
var a = document.createElement('a');
|
a.innerHTML = fileName;
|
// 指定生成的文件名
|
a.download = fileName;
|
a.href = URL.createObjectURL(blob);
|
document.body.appendChild(a);
|
var evt = document.createEvent("MouseEvents");
|
evt.initEvent("click", false, false);
|
a.dispatchEvent(evt);
|
document.body.removeChild(a);
|
}
|
}
|
xhr.send(form);
|
});
|
});
|
</script>
|