0%

功能:货物批量审批

根据查询条件显示的货物审批列表,在显示的货物列表左侧加一个单选框,可根据勾选项批量通过审批。

  • 基础

先在页面添加个button、然后在js初始化申请列表时增添了name一致的勾选框,值为当前选中项的index,第一项index为0。

设置当点击查询按钮时将查询表中的值存到 hideen input中 <input type="hidden" name="temp_starttime"> 不作直接读取查询表内容,避免勾选后更改查询值而未点击查询按钮时与显示列表信息的不一致性。

  • 前端读取查询值
1
2
3
4
5
var targetDom = $("#query-form");

var createJsonData = Utils.formToJsonArray(targetDom.serializeArray()); // 此处为utils.js中自定义的数据格式转换方法

var queryStart = targetDom.find("input[name='temp_starttime']").val();
  • 前端获取勾选值
1
2
3
4
5
targetDom=$("#cargo-approve-list");
var shenpiArray = new Array();
targetDom.find("input:checkbox[name='ShenpiCheck']:checked").each(function () {
shenpiArray.push($(this).val());//向数组中添加元素
});
  • 传值到后端
1
2
3
4
5
Utils.putJSON('api/CargoApprove/GetCargoRequestsByConditionsShenpiGroup', {
PageIndex: PAGE_PARAMS.pagenum, //此处有页面设置,这是另一回事了,后端查询时可根据页面挑选,不影响
PageSize: PAGE_PARAMS.pagesize,
Start: queryStart,
ShenpiArray:shenpiArray}
  • 后端方法

PaegerCargoQueryDto为自定义的model 用于接收参数

一通查询后获取满足查询条件的申请列表(正如界面所显示的那样) 将满足 pagerQuery.ShenpiArray.Contains(index) 条件的项审批状态改为通过

大功告成。