define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'selectpage'], function ($, undefined, Backend, Table, Form,SelectPage) { var Controller = { index: function () { // 初始化表格参数配置 Table.api.init({ extend: { index_url: 'exams/studies/index' + location.search, add_url: '', edit_url: '', del_url: '', multi_url: '', table: 'studies', } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, pk: 'id', sortName: 'id', queryParams: function (params) { //这里可以追加搜索条件 let filter = JSON.parse(params.filter); let op = JSON.parse(params.op); if(filter.institution_id){ params.institution_id = filter.institution_id; delete filter.institution_id; } if(op.institution_id){ delete op.institution_id; } params.filter = JSON.stringify(filter); params.op = JSON.stringify(op); common_filter = params.filter; common_op = params.op; return params; }, columns: [ [ {field: 'name', title: __('姓名')}, {field: 'temp_patient_id', title: __('病历号')}, {field: 'studyuid', title: __('Studyuid'),searchable:false}, {field: 'studyid', title: __('Studyid')}, {field: 'accession_num', title: __('检查号')}, {field: 'studydate', title: __('检查日期'),defaultValue:Controller.api.formatter.get_today(0)}, {field: 'modality', title: __('类型')}, {field: 'institution_name', title: __('Institution_name'),searchable:false}, {field: 'institution_id', title: __('医院'),visible:false}, {field: 'flag', title: __('状态'), formatter: Controller.api.formatter.getFlag,searchable:false}, // {field: 'image', title: __('存储'), formatter: Controller.api.formatter.saveImage,searchable:false}, // {field: 'type', title: __('影像归档类型'), formatter: Controller.api.formatter.getType,searchable:false}, // {field: 'studytime', title: __('Studytime'),searchable:false}, { field: 'operate', export:false, title: __('Operate'), table: table, buttons: [ { name : 'btn_topup', title : __('重新同步'), extend : 'data-toggle="tooltip"', classname: 'btn btn-xs btn-warning', icon : 'fa fa-repeat', url : 'exams/studies/reSync', },{ name : 'series', title : '查看序列', text : '查看序列', icon : 'fa fa-calendar-o', classname: 'btn btn-xs btn-info btn-dialog', url : 'exams/studies/series', extend : 'data-toggle="tooltip" data-area=\'["1100px","600px"]\'', } ], events: Table.api.events.operate, formatter: Table.api.formatter.operate, } ] ] }); // 为表格绑定事件 Table.api.bindevent(table); initInstitutionSearchList('institution_id'); }, add: function () { Controller.api.bindevent(); }, edit: function () { Controller.api.bindevent(); }, series: function () { // 初始化表格参数配置 Table.api.init({ extend: { index_url: 'exams/studies/seriesList', } }); let table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, showToggle: false, showColumns: false, paginate:false, queryParams: function queryParams(params) { params.study = $('input[name="study"]').val(); params.ins = $('input[name="ins"]').val(); return params; }, columns: [ [ {field: 'seriesuid', title: 'seriesuid', searchable: false}, {field: 'seriesNum', title: 'seriesNum', searchable: false}, {field: 'seriesDescription', title: 'seriesDescription', searchable: false}, {field: 'modality', title: 'modality', searchable: false}, { field: 'operate', export: false, title: __('Operate'), table: table, buttons: [ { name: 'series', title: '删除序列', text: '删除序列', icon: 'fa fa-calendar-o', classname: 'btn btn-xs btn-info btn-deleteSeries' } ], events: Controller.api.events.operate, formatter: Table.api.formatter.operate, } // {field: 'source',title: __('访问来源'), searchable: false}, ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, api: { events:{ operate:{ 'click .btn-deleteSeries': function (e, value, row, index) { Layer.confirm(__('是否删除该序列?'), { icon: 3, title: '提示' }, function (index) { Backend.api.ajax({ url: "exams/studies/deleteSeries", data: {id:row.id,study:row.study_id,ins:row.ins} }, function () { Layer.closeAll(); $('.btn-refresh').trigger('click'); }); }); } } }, formatter:{ getFlag:function (value) { if(value == 1) { return '成功'; }else if(value == 2) { return '接口请求中'; }else if(value == 0) { return '默认'; }else{ return '失败'+value+'次'; } }, get_today: function (AddDayCount) { const dd = new Date(); dd.setDate(dd.getDate()+AddDayCount);//获取AddDayCount天后的日期 let y = dd.getFullYear() + ''; let m = dd.getMonth()+1;//获取当前月份的日期 let d = dd.getDate(); //判断月 if (m < 10) { m = "0" + m + ''; } //判断日 if (d < 10) { d = "0" + d + ''; } return y + m + d; }, saveImage:function (value) { if(value == 0) { return '老数据库'; }else if(value == 1) { return '新数据库'; } }, getType:function (value) { if(value == 0) { return '默认'; }else if(value == 1) { return '浪潮云'; }else if(value == 2) { return '天翼云'; }else if(value == 3) { return '阿里云'; }else if(value == 4) { return 'fastdfs'; }else if(value == 9) { return '未知'; } }, }, bindevent: function () { Form.api.bindevent($("form[role=form]")); } } }; // 选择机构下拉列表 let initInstitutionSearchList = function (id) { $.ajax({ url: 'institution/institution/institutionSelectList', type: 'post', dataType: 'json', success: function success(res) { let data = res.rows; $('#'+id).selectPage({ data : data, orderBy: 'index' }); } }); }; return Controller; });