123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431 |
- //@ sourceURL=pharmacy_warehouse.js
- var pharmacyGroupNo = window.localStorage["groupNo"];//药房编码
- $(function () {
- $('#fyClass').selectpicker('refresh');
- $(".selectpicker").selectpicker();
- init_daterangepicker();
- //$("#pharmacyModal").modal("show");
- if(pharmacyGroupNo == null){
- return errorMesageSimaple('药房参数未设置,请在发药参数设置中设置');
- }
- getAll();
- $("input").each(function (){
- this.onkeydown = function (e) { // 监听键盘事件
- let theEvent = window.event || e;
- let code = theEvent.keyCode || theEvent.which;
- if (code == 13) {//回车事件
- $("#btn_search").click(); //触发搜索按钮点击事件
- }
- }
- });
- //保存按钮点击事件
- $("#btn_save").click(function (t) {
- var data= $('#drug_table').bootstrapTable('getData',true);
- if(data.length > 0){
- saveDrug(data);
- }
- });
- });
- //显示请领单详细窗口
- function initDrugTable(drawNo) {
- var display =$('#btn_save').css('display');
- $('#drug_table').bootstrapTable('destroy');
- $('#drug_table').bootstrapTable({
- url: '/thmz/getYpOutDetlDetail', //请求后台的URL(*)
- method: 'GET', //请求方式(*)
- toolbar: '#toolbar', //工具按钮用哪个容器
- striped: true, //是否显示行间隔色
- cache: true, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
- pagination: true, //是否显示分页(*)
- sortable: true, //是否启用排序
- sortOrder: "asc", //排序方式
- queryParams:{'drawNo':drawNo}, //传递参数(*)
- sidePagination: "client", //分页方式:client客户端分页,server服务端分页(*)
- pageNumber: 1, //初始化加载第一页,默认第一页
- pageSize: 10, //每页的记录行数(*)
- pageList: [10, 15, 25, 50, 100], //可供选择的每页的行数(*)
- search: false, //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
- strictSearch: true,
- showColumns: false, //是否显示所有的列
- showRefresh: false, //是否显示刷新按钮
- minimumCountColumns: 2, //最少允许的列数
- clickToSelect: true, //是否启用点击选中行
- uniqueId: "ID", //每一行的唯一标识,一般为主键列
- showToggle: false, //是否显示详细视图和列表视图的切换按钮
- cardView: false, //是否显示详细视图
- detailView: false,
- //rowStyle:rowStyle,//通过自定义函数设置行样式
- ajaxOptions: {
- headers: {
- 'Accept': 'application/json',
- 'Authorization': 'Bearer ' + localStorage.getItem("token")
- }
- },
- columns: [
- {
- field: 'outDate',
- title: '入库日期',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- return value == null ? "-" : format(value, "yyyy-MM-dd");
- }
- },{
- field: 'drawNo',
- title: '领单号',
- align: "center",
- valign: 'middle'
- },{
- field: 'name',
- title: '药品名',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'specification',
- title: '规格',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'outAmt',
- title: '<span style="color: red">数量</span>',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- return "<span style='color: red'>"+value+"</span>";
- }
- },
- {
- field: 'packRetprice',
- title: '零售价',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'splitPercent',
- title: '<span style="color: red">拆零比例</span>',
- align: "center",
- valign: 'middle',
- visible: display == 'none'?false:true,
- formatter:function (value, row, index) {
- if(value == 0){
- return '<span style="color: red">0%</span>'
- }else if(value == 1){
- return '<span style="color: red">100%</span>'
- }
- }
- }, {
- field: 'manufactoryName',
- title: '厂家',
- align: "center",
- valign: 'middle'
- }, {
- field: 'manuNo',
- title: '入库批号',
- align: "center",
- valign: 'middle'
- },{
- field: 'effDate',
- title: '效期',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- return value == null ? "-" : format(value, "yyyy-MM-dd");
- }
- },{
- field: 'nationalCode',
- title: '医保编码',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- return value == null ? "-" : value;
- }
- }
- ],
- responseHandler: function (res) {
- if (res == '401' || res == 401) {
- window.location.href = '/thmz/login/view'
- return;
- }
- var ress = eval(res);
- if (ress.code == -1) {
- errorMesage(res);
- return {
- "total": 0,//总页数
- "rows": {} //数据
- };
- }
- return {
- "total": ress.data.length,//总页数
- "rows": ress.data //数据
- };
- },
- /**
- * @param {点击列的 field 名称} field
- * @param {点击列的 value 值} value
- * @param {点击列的整行数据} row
- * @param {td 元素} $element
- */
- onClickCell: function(field, value, row, $element) {
- if(field == 'splitPercent' && row.serial != '01'){
- $element.attr('contenteditable', true);
- $element.html(null);
- $element.focus();
- $element.blur(function() {
- var index = $element.parent().data('index');
- var tdValue = $element.html();
- if(parseFloat(tdValue).toString() != "NaN"){
- if(parseFloat(tdValue) != 0 && parseFloat(tdValue) != 100){
- saveData(index, field, value);
- $element.html(value==1?"100%":"0%");
- }else{
- saveData(index, field, tdValue==100?1:tdValue);
- $element.html(tdValue+"%");
- }
- }else{
- $element.html(value==1?"100%":"0%");
- }
- })
- }
- }
- });
- }
- /**
- * 修改列数据
- * @param index
- * @param field
- * @param value
- */
- function saveData(index, field, value) {
- $('#drug_table').bootstrapTable('updateCell', {
- index: index, //行索引
- field: field, //列名
- value: value //cell值
- })
- }
- /**
- * 药品入库
- */
- function saveDrug(data) {
- $("#btn_save").attr('disabled',true);
- $.ajax({
- type: "POST",
- url: '/thmz/saveYpInDetlYf',
- contentType: "application/json;charset=UTF-8",
- dataType: "json",
- async: false,
- headers: {'Accept': 'application/json', 'Authorization': 'Bearer ' + localStorage.getItem("token")},
- data: JSON.stringify(data),
- success: function (res) {
- $("#btn_save").attr('disabled',false);
- if (res == '401' || res == 401) {
- window.location.href = '/thmz/login/view'
- return;
- }
- if (res.code == 0) {
- $("#editModal").modal("hide");
- $('#tb_table').bootstrapTable('refresh');
- successMesage(res);
- } else {
- errorMesage(res);
- }
- }
- });
- }
- /**
- * 重置查询表单
- */
- function resetSearch() {
- $("#acceptSignSearch").val(null);
- $("#acceptSignSearch").selectpicker('refresh');
- $("#outTypeSearch").val(null);
- $("#outTypeSearch").selectpicker('refresh');
- $("#drawNoSearch").val(null);
- $('#reportrange span').html(new Date.format('YYYY-MM-DD') + ' - ' + new Date.format('YYYY-MM-DD'));
- }
- /**
- * 查询列表
- */
- function getAll() {
- $('#tb_table').bootstrapTable("destroy");
- $('#tb_table').bootstrapTable({
- url: '/thmz/getYpOutDetl', //请求后台的URL(*)
- method: 'post', //请求方式(*)
- toolbar: '#toolbar', //工具按钮用哪个容器
- striped: true, //是否显示行间隔色
- cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
- pagination: true, //是否显示分页(*)
- sortable: true, //是否启用排序
- sortOrder: "desc", //排序方式
- queryParams: queryParams, //传递参数(*)
- sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*)
- pageNumber: 1, //初始化加载第一页,默认第一页
- pageSize: 10, //每页的记录行数(*)
- pageList: [10, 15, 25, 50, 100], //可供选择的每页的行数(*)
- search: false, //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
- strictSearch: true,
- showColumns: false, //是否显示所有的列
- showRefresh: false, //是否显示刷新按钮
- minimumCountColumns: 2, //最少允许的列数
- clickToSelect: true, //是否启用点击选中行
- uniqueId: "drawNo", //每一行的唯一标识,一般为主键列
- showToggle: false, //是否显示详细视图和列表视图的切换按钮
- cardView: false, //是否显示详细视图
- detailView: false,
- //rowStyle:rowStyle,//通过自定义函数设置行样式
- ajaxOptions: {
- headers: {
- 'Accept': 'application/json',
- 'Authorization': 'Bearer ' + localStorage.getItem("token")
- }
- },
- columns: [
- {
- title: '操作',
- field: 'op',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- var str = '<button type="button" class="registration-no-color-foot-button" title="详细" onclick="ypInPlanDetail(\'' + row.drawNo + '\',\'' + row.acceptSign + '\')"><i class="fa fa-plus"></i></button>';
- return str;
- }
- }, {
- field: 'outDate',
- title: '出库日期',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- return value == null ? "-" : format(value, "yyyy-MM-dd HH:mm:ss");
- }
- }, {
- field: 'drawNo',
- title: '单号',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'groupName',
- title: '出库库房',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'outType',
- title: '出库类型 ',
- align: "center",
- valign: 'middle',
- formatter: function (value, row, index) {
- if(value == 0){
- return '出库'
- }else if(value == 1){
- return '报损'
- }else if(value == 2){
- return '退库'
- }else if(value == 8){
- return '盘点'
- }
- }
- },
- {
- field: 'groupNamePharmacy',
- title: '入库药房',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'acceptSign',
- title: '<span style="color: red">状态</span>',
- align: "center",
- valign: 'middle',
- formatter: function (value,row,index) {
- return value==0?"<span style='color: red'>未入库</span>":"<span style='color: red'>已入库</span>"
- }
- },
- {
- field: 'keeperName',
- title: '发药人',
- align: "center",
- valign: 'middle'
- },
- {
- field: 'drawerName',
- title: '请领人',
- align: "center",
- valign: 'middle'
- }
- ],
- responseHandler: function (res) {
- if (res == '401' || res == 401) {
- window.location.href = '/thmz/login/view'
- return;
- }
- var ress = eval(res);
- if (ress.code == -1) {
- if (ress.message != null && ress.message != '') {
- new PNotify({
- title: '错误提示',
- text: ress.message,
- type: 'error',
- hide: true,
- styling: 'bootstrap3'
- });
- }
- return {
- "total": 0,//总页数
- "rows": {} //数据
- };
- }
- return {
- "total": ress.total,//总页数
- "rows": ress.data //数据
- };
- },
- });
- }
- /**
- * 构建列表查询参数
- * @param params
- */
- function queryParams(params) {
- var rePortRangeArr = getRePortRangeArr();
- var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
- pageSize: params.limit, //页面大小
- pageIndex: params.offset / params.limit, //页码
- beginTime: rePortRangeArr[0],
- endTime: rePortRangeArr[1],
- drawNo: $("#drawNoSearch").val() == "" ? null : $("#drawNoSearch").val(),
- acceptSign: $("#acceptSignSearch").val() == "" ? null : $("#acceptSignSearch").val(),
- outType: $("#outTypeSearch").val() == "" ? null : $("#outTypeSearch").val(),
- groupNoOut: pharmacyGroupNo
- };
- return temp;
- }
- $('#searchText').on('input focus',function(e){
- showDrugPopover();
- });
- //显示请领单详细
- function ypInPlanDetail(drawNo,acceptSign) {
- $("#btn_save").attr('disabled',false);
- $("#editModal").modal();
- if(acceptSign == 0){
- $("#classTitle").text("入库");
- $("#btn_save").show();
- }else{
- $("#classTitle").text("查看");
- $("#btn_save").hide();
- }
- initDrugTable(drawNo);
- };
|