//@ sourceURL=yf_special_mark.js
var pharmacyGroupNo = window.localStorage["groupNo"];//药房编码
var chargeNo;//药品表选中的行号
var batchNo;//批次表选中的行号
$(function () {
$(".selectpicker").selectpicker();
//$("#pharmacyModal").modal("show");
if(pharmacyGroupNo == null){
return errorMesageSimaple('药房参数未设置,请在发药参数设置中设置');
}
initTable();
initBatch();
$('#btn_search').on('click',function(e){
loadTbTable();
});
$('#searchText').on('blur',function(e){
loadTbTable();
});
});
/**
* 查询列表
*/
function initTable() {
$.jgrid.gridUnload("tb_table");
$("#tb_table").jqGrid({
datatype: 'local',
mtype: 'get',
url: '/thmz/getYpSpecialMark',
loadBeforeSend: function (jqXHR) {
jqXHR.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem("token"));
jqXHR.setRequestHeader("Accept", 'application/json');
},
ajaxCellOptions: {
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem("token"));
}
},
styleUI: 'Bootstrap',
viewrecords: true,
autowidth: false,
rowNum: -1,//取消分页
height: screen.height*0.3,
caption: '药品信息',
shrinkToFit:false,
autoScroll: false,
cellEdit: true,
cellsubmit: "remote",
cellurl: '/thmz/modifYpSpecialMark',
colNames: ['门诊停用','住院停用','库存为零','处方限制天数','编码','序号', '药品名','厂家', '库存量', '大规格(汇总)', '规格', '虚存2','启用虚存2', '3天用量', '7天用量', '14天用量','30天用量','货位号','药性分类'],
colModel: [
{name: 'visibleFlagMz', index: 'visibleFlagMz',align:'center',width:100,formatter : "checkbox",editable : true,edittype:'checkbox', editoptions:{value:"1:0"}},
{name: 'visibleFlagZy', index: 'visibleFlagZy',align:'center',width:100,formatter : "checkbox",editable : true,edittype:'checkbox', editoptions:{value:"1:0"}},
{name: 'visibleFlagStop', index: 'visibleFlagStop',align:'center',width:100,formatter : "checkbox",editable : true,edittype:'checkbox', editoptions:{value:"1:0"}},
{name: 'prescriptionLimitDays', index: 'prescriptionLimitDays',width:100,align:'center',editable : true,edittype:'text'
,editrules: {edithidden:false,number:true,minValue:0}
},
{name: 'chargeCode', index: 'chargeCode',align:'center',width:100},
{name: 'serial', index: 'serial',align:'center',width:100,hidden:true},
{name: 'name', index: 'name',width:180},
{name: 'manufactoryName', index: 'manufactoryName',width:180},
{name: 'stockAmount', index: 'stockAmount',align:'center',width:100},
{name: 'stockAmountLarge', index: 'stockAmountLarge',align:'center',width:100},
{name: 'specification', index: 'specification',align:'center',width:100},
{name: 'stockAmountVirtual2', index: 'stockAmountVirtual2',width:100,align:'center',editable : true,edittype:'text'
,editrules: {edithidden:true,number:true,minValue:0}
},
{name: 'openVirtual2', index: 'openVirtual2',width:100,align:'center',formatter : "checkbox",editable : true,edittype:'checkbox', editoptions:{value:"1:0"}},
{name: 'threeDayDosage', index: 'threeDayDosage', formatter: 'number',formatoptions:{decimalPlaces:0},align:'center',width:100},
{name: 'sevenDayDosage', index: 'sevenDayDosage', formatter: 'number',formatoptions:{decimalPlaces:0},align:'center',width:100},
{name: 'fourteenDayDosage', index: 'fourteenDayDosage', formatter: 'number',formatoptions:{decimalPlaces:0},align:'center',width:100},
{name: 'thirtyDayDosage', index: 'thirtyDayDosage', formatter: 'number',formatoptions:{decimalPlaces:0},align:'center',width:100},
{name: 'location', index: 'location',width:100,align:'center',editable : true,edittype:'text'
,editrules: {edithidden:false}},
{name: 'className', index: 'className',width:100,align:'center'}
],
jsonReader: {
root: "data", repeatitems: false
},
beforeSubmitCell:function(rowid, cellname, value, iRow, iCol){
let record = $("#tb_table").getRowData(rowid);
let temp = eval('(' + '{ "'+cellname+'": "'+value+'"}' + ')');
if(cellname === 'prescriptionLimitDays' && value == 0){
if (!confirm("确定放开当前药品的处方天数限制吗?")) {
return;
}
}
if(cellname !== 'prescriptionLimitDays'){
temp.prescriptionLimitDays = record.prescriptionLimitDays;
}
temp.chargeCode = record.chargeCode;
temp.serial = record.serial;
temp.groupNo = pharmacyGroupNo;
return temp
},
onCellSelect: function(rowid,iCol,cellcontent,e){
let record = jQuery("#tb_table").getRowData(rowid);
loadBatch(record.chargeCode);
chargeNo = rowid;
},
loadComplete: function (res) { //加载完成(初始加载),回调函数
if (res == '401' || res == 401) {
window.location.href = '/thmz/login/view';
return;
}
if (res.code == -1) {
errorMesage(res);
}
}
});
}
/**
* 加载药品批次表格数据
*/
function loadTbTable() {
$("#tb_table").jqGrid('setGridParam', {
datatype:'json',
postData: { searchText: $("#searchText").val(), groupNo: pharmacyGroupNo }
}).trigger('reloadGrid');
}
/**
* 加载药品批次表格数据
* @param chargeCode
*/
function loadBatch(chargeCode) {
batchNo = null;
$("#tb_table_batch").jqGrid('setGridParam', {
datatype:'json',
postData: { chargeCode: chargeCode }
}).trigger('reloadGrid');
}
/**
* 初始化药品批次表格
*/
function initBatch() {
$.jgrid.gridUnload("tb_table_batch");
$("#tb_table_batch").jqGrid({
datatype: 'json',
mtype: 'get',
url: '/thmz/getYpZdYpbh',
loadBeforeSend: function (jqXHR) {
jqXHR.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem("token"));
jqXHR.setRequestHeader("Accept", 'application/json');
},
ajaxCellOptions: {
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem("token"));
}
},
toolbar : [ true, "top" ],
styleUI: 'Bootstrap',
viewrecords: true,
autowidth: true,
rowNum: -1,//取消分页
caption: '药品批次维护',
cellEdit: true,
sortable: true,
loadonce:true, //一次加载全部数据到客户端,由客户端进行排序。
sortname: 'fDate', //设置默认的排序列
sortorder: 'desc',
cellsubmit: "remote",
cellurl: '/thmz/modifYpZdYpbh',
editurl: '/thmz/addYpZdYpbh',
colNames: ['停用标记','药品编号','药品批号','入库时间'],
colModel: [
{name: 'usingFlag', index: 'usingFlag',align:'center',width:100,formatter : "checkbox",editable : true,edittype:'checkbox', editoptions:{value:"1:0"}},
{name: 'chargeCode', index: 'chargeCode',align:'center',width:100},
{name: 'ypbh', index: 'ypbh',align:'center',width:100,editable : true,edittype:'text'},
{name: 'fDate', index: 'fDate',align:'center', formatter:"date", formatoptions: {srcformat:'Y-m-d H:i',newformat:'Y-m-d H:i'},sortable: true,width:100,
editable:true,
edittype:"text",editoptions: {
size: 10, maxlengh: 10,
dataInit: function(element) {
$(element).datetimepicker({language:'zh-CN',dateFormat: 'yyyy-mm-dd hh:ii'})
}
}
}
],
jsonReader: {
root: "data", repeatitems: false
},
beforeSubmitCell:function(rowid, cellname, value, iRow, iCol){
let record = jQuery("#tb_table_batch").getRowData(rowid);
let temp = eval('(' + '{ "'+cellname+'": "'+value+'"}' + ')');
temp.chargeCode = record.chargeCode;
temp.ypbh = record.ypbh;
return temp
},
onCellSelect: function(rowid,iCol,cellcontent,e){
batchNo = rowid;
},
beforeEditCell: function(rowid,iCol,cellcontent,e){
batchNo = rowid;
},
loadComplete: function (res) { //加载完成(初始加载),回调函数
var ids = jQuery("#tb_table_batch").jqGrid("getDataIDs");
for (let i = 0; i < ids.length; i++) {
$("#tb_table_batch").jqGrid("setCell",ids[i],"ypbh",'','not-editable-cell');//列不可编辑
}
if (res == '401' || res == 401) {
window.location.href = '/thmz/login/view';
return;
}
if (res.code == -1) {
errorMesage(res);
}
}
});
$("#t_tb_table_batch").append("");
$("#t_tb_table_batch").append("");
$("#t_tb_table_batch").append("");
$("#addBatch").on('click',function(e){
var ids = jQuery("#tb_table_batch").jqGrid("getDataIDs");//得到jqgrid当前行数
var rowid = Math.max.apply(Math,ids);//获得当前最大行号
let record = jQuery("#tb_table").getRowData(chargeNo);
let data= {chargeCode:record['chargeCode'],usingFlag:0,ypbh:"",fDate:new Date()};
$("#tb_table_batch").addRowData(rowid+1, data,'first');
jQuery("#tb_table_batch").jqGrid('editRow', rowid+1);
batchNo = rowid+1;
});
$("#removeBatch").on('click',function(e){
if(batchNo == null){
return errorMesageSimaple('请选择一行进行删除!');
}
let record = jQuery("#tb_table_batch").getRowData(batchNo);
if(!(record['ypbh'].indexOf("