New file |
| | |
| | | <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 name="hospitalName" id="hospitalName-seach" placeholder="按医院名称" type="text" |
| | | class="layui-input search-input" maxlength="50" autocomplete="off" />  |
| | | <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="结束时间">   |
| | | </div> |
| | | <button id="app-btn-search" class="layui-btn icon-btn permissions" permissions="sysdictionaries-list"><i |
| | | class="layui-icon"></i>搜索</button> |
| | | <button id="piliangjiesuan" class="layui-btn icon-btn permissions" permissions="sysdictionaries-edit"><i |
| | | class="layui-icon"></i>批量结算</button> |
| | | <button id="export" class="layui-btn icon-btn permissions" permissions="sysdictionaries-edit"><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' //指定元素 |
| | | }); |
| | | |
| | | |
| | | // 获取应用列表 |
| | | // 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, |
| | | doctorId: 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) { |
| | | 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'); |
| | | }); |
| | | |
| | | // 搜索按钮点击事件 |
| | | $('#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> |