当这个alias标签=刀具亭才显示这几个字段 <fm:noteRequestReport alias="刀具站"/>,returnTool.add(new ColumnConfig("完全可用", "useableQty", "50px"));
returnTool.add(new ColumnConfig("不可用待挑选", "unUseableQty", "80px"));
returnTool.add(new ColumnConfig("损坏", "demageQty", "30px"));
returnTool.add(new ColumnConfig("打飞", "offQty", "30px"));,代码 public Map<String, List<ColumnConfig>> header() {
Map<String, List<ColumnConfig>> headerMap = new HashMap<>();
// 机床配置报表
List<ColumnConfig> config = new ArrayList<>();
config.add(new ColumnConfig("组织", "orgCode", "30px"));
config.add(new ColumnConfig("申请单号", "requestNo", "120px"));
config.add(new ColumnConfig("刀具站名称", "stationName", "80px"));
config.add(new ColumnConfig("刀流水号", "serialNumber", "80px"));
config.add(new ColumnConfig("主轴类型", "ladingType", "80px"));
config.add(new ColumnConfig("机床号", "machineNo", "80px"));
config.add(new ColumnConfig("创建日期", "creationDate", "80px"));
config.add(new ColumnConfig("部门编号", "deptCode", "80px"));
config.add(new ColumnConfig("部门名称", "deptName", "80px"));
config.add(new ColumnConfig("领用人", "empNo", "80px"));
config.add(new ColumnConfig("姓名", "empName", "80px"));
config.add(new ColumnConfig("创建人", "createdBy", "80px"));
config.add(new ColumnConfig("子库货位", "locatorFrom", "80px"));
config.add(new ColumnConfig("刀具名称", "toolName", "80px"));
config.add(new ColumnConfig("数量", "qty", "30px"));
config.add(new ColumnConfig("刀具直径", "dia", "80px"));
config.add(new ColumnConfig("刀具内径", "diaMin", "80px"));
config.add(new ColumnConfig("加工深度", "deep", "80px"));
config.add(new ColumnConfig("刀具编码", "itemCode", "200px"));
config.add(new ColumnConfig("刀具名称", "itemDesc", "400px"));
headerMap.put("config", config);
//机床转移
List<ColumnConfig> move = new ArrayList<>();
move.add(new ColumnConfig("组织", "orgCode", "30px"));
move.add(new ColumnConfig("申请单号", "requestNo", "120px"));
move.add(new ColumnConfig("类型", "noteType", "80px"));
move.add(new ColumnConfig("状态", "state", "80px"));
move.add(new ColumnConfig("申请人", "createdBy", "60px"));
move.add(new ColumnConfig("转出库位", "locatorFrom", "60px"));
move.add(new ColumnConfig("转入库位", "locatorTo", "60px"));
move.add(new ColumnConfig("刀具编码", "itemCode", "200px"));
move.add(new ColumnConfig("刀具名称", "itemDesc", "400px"));
move.add(new ColumnConfig("数量", "qty", "30px"));
//move.add(new ColumnConfig("旧刀汇总编号", "oldToolGatherNo", "60px"));
headerMap.put("move", move);
//个人帐转移
List<ColumnConfig> personTransfer = new ArrayList<>();
personTransfer.add(new ColumnConfig("组织", "orgCode", "30px"));
personTransfer.add(new ColumnConfig("申请单号", "requestNo", "80px"));
personTransfer.add(new ColumnConfig("类型", "noteType", "40px"));
personTransfer.add(new ColumnConfig("状态", "state", "40px"));
personTransfer.add(new ColumnConfig("转出人", "empNo", "60px"));
personTransfer.add(new ColumnConfig("转出机床", "machineNo", "60px"));
personTransfer.add(new ColumnConfig("创建日期", "creationDate", "80px"));
personTransfer.add(new ColumnConfig("部门编号", "deptCode", "80px"));
personTransfer.add(new ColumnConfig("部门名称", "deptName", "80px"));
//personTransfer.add(new ColumnConfig("旧刀汇总编号", "oldToolGatherNo", "60px"));
headerMap.put("personTransfer", personTransfer);
//退刀
List<ColumnConfig> returnTool = new ArrayList<>();
returnTool.add(new ColumnConfig("组织", "orgCode", "40px"));
returnTool.add(new ColumnConfig("申请单号", "requestNo", "100px"));
returnTool.add(new ColumnConfig("刀具站名称", "stationName", "120px"));
returnTool.add(new ColumnConfig("机床号", "machineNo", "80px"));
returnTool.add(new ColumnConfig("创建日期", "creationDate", "120px"));
returnTool.add(new ColumnConfig("部门编号", "deptCode", "60px"));
returnTool.add(new ColumnConfig("部门名称", "deptName", "80px"));
returnTool.add(new ColumnConfig("领用人", "empNo", "60px"));
returnTool.add(new ColumnConfig("姓名", "empName", "60px"));
returnTool.add(new ColumnConfig("创建人", "createdBy", "60px"));
returnTool.add(new ColumnConfig("子库货位", "locatorFrom", "60px"));
returnTool.add(new ColumnConfig("刀具名称", "toolName", "160px"));
returnTool.add(new ColumnConfig("完全可用", "useableQty", "50px"));
returnTool.add(new ColumnConfig("不可用待挑选", "unUseableQty", "80px"));
returnTool.add(new ColumnConfig("损坏", "demageQty", "30px"));
returnTool.add(new ColumnConfig("打飞", "offQty", "30px"));
returnTool.add(new ColumnConfig("数量", "qty", "30px"));
returnTool.add(new ColumnConfig("刀具直径", "dia", "60px"));
returnTool.add(new ColumnConfig("刀具内径", "diaMin", "60px"));
returnTool.add(new ColumnConfig("加工深度", "deep", "60px"));
headerMap.put("returnTool", returnTool);
//损耗退仓
List<ColumnConfig> lessReturn = new ArrayList<>();
lessReturn.add(new ColumnConfig("组织", "orgCode", "30px"));
lessReturn.add(new ColumnConfig("申请单号", "requestNo", "120px"));
lessReturn.add(new ColumnConfig("类型", "noteType", "40px"));
lessReturn.add(new ColumnConfig("填写时间", "creationDate", "80px"));
lessReturn.add(new ColumnConfig("部门编号", "deptCode", "90px"));
lessReturn.add(new ColumnConfig("部门名称", "deptName", "60px"));
lessReturn.add(new ColumnConfig("开单人", "createdBy", "60px"));
lessReturn.add(new ColumnConfig("状态", "state", "60px"));
lessReturn.add(new ColumnConfig("货位", "locatorFrom", "40px"));
lessReturn.add(new ColumnConfig("刀具编码", "itemCode", "180px"));
lessReturn.add(new ColumnConfig("刀具名称", "itemDesc", "280px"));
lessReturn.add(new ColumnConfig("数量", "qty", "20px"));
lessReturn.add(new ColumnConfig("erp信息", "erpState", "60px"));
headerMap.put("lessReturn", lessReturn);
//不可用
List<ColumnConfig> unavailable = new ArrayList<>();
unavailable.add(new ColumnConfig("组织", "orgCode", "30px"));
unavailable.add(new ColumnConfig("申请单号", "requestNo", "100px"));
unavailable.add(new ColumnConfig("类型", "noteType", "60px"));
unavailable.add(new ColumnConfig("刀具站名称", "stationName", "60px"));
unavailable.add(new ColumnConfig("申请人", "empNo", "60px"));
unavailable.add(new ColumnConfig("姓名", "empName", "60px"));
unavailable.add(new ColumnConfig("刀具编码", "itemCode", "60px"));
unavailable.add(new ColumnConfig("刀具名称", "itemDesc", "60px"));
unavailable.add(new ColumnConfig("数量", "qty", "60px"));
headerMap.put("unavailable", unavailable);
List<ColumnConfig> unpaid = new ArrayList<>();
//借用未还
unpaid.add(new ColumnConfig("组织", "orgCode", "30px"));
unpaid.add(new ColumnConfig("申请单号", "requestNo", "100px"));
unpaid.add(new ColumnConfig("领用日期", "creationDate", "120px"));
unpaid.add(new ColumnConfig("借领时长", "requestNo", "80px"));
unpaid.add(new ColumnConfig("部门编号", "deptCode", "80px"));
unpaid.add(new ColumnConfig("部门名称", "deptName", "80px"));
unpaid.add(new ColumnConfig("申请人", "empNo", "60px"));
unpaid.add(new ColumnConfig("姓名", "empName", "60px"));
unpaid.add(new ColumnConfig("操作人", "lastUpdatedBy", "60px"));
unpaid.add(new ColumnConfig("姓名", "lastUpdatedName", "60px"));
unpaid.add(new ColumnConfig("子库货位", "locatorFrom", "60px"));
unpaid.add(new ColumnConfig("刀具编码", "itemCode", "60px"));
unpaid.add(new ColumnConfig("刀具名称", "itemDesc", "60px"));
unpaid.add(new ColumnConfig("待还数量", "qty", "30px"));
headerMap.put("unpaid", unpaid);
//刀具站领用
List<ColumnConfig> stationHeader = new ArrayList<>();
stationHeader.add(new ColumnConfig("组织", "orgCode", "30px"));
stationHeader.add(new ColumnConfig("申请单号", "requestNo", "120px"));
stationHeader.add(new ColumnConfig("领用日期", "creationDate", "120px"));
stationHeader.add(new ColumnConfig("员工编号", "empNo", "60px"));
stationHeader.add(new ColumnConfig("员工姓名", "empName", "60px"));
stationHeader.add(new ColumnConfig("部门编号", "deptCode", "60px"));
stationHeader.add(new ColumnConfig("部门名称", "deptName", "60px"));
stationHeader.add(new ColumnConfig("站点名称", "stationName", "60px"));
stationHeader.add(new ColumnConfig("领用机床", "machineNo", "60px"));
stationHeader.add(new ColumnConfig("刀具名称", "toolName", "60px"));
stationHeader.add(new ColumnConfig("领用数量", "qty", "30px"));
stationHeader.add(new ColumnConfig("领用类型", "type", "50px"));
stationHeader.add(new ColumnConfig("货位", "locatorFrom", "60px"));
stationHeader.add(new ColumnConfig("状态", "state", "60px"));
headerMap.put("stationReceive", stationHeader);
//刀具亭领用
List<ColumnConfig> storeHeader = new ArrayList<>();
storeHeader.add(new ColumnConfig("组织", "orgCode", "30px"));
storeHeader.add(new ColumnConfig("申请单号", "requestNo", "80px"));
storeHeader.add(new ColumnConfig("领用日期", "creationDate", "120px"));
storeHeader.add(new ColumnConfig("员工编号", "empNo", "60px"));
storeHeader.add(new ColumnConfig("员工姓名", "empName", "60px"));
storeHeader.add(new ColumnConfig("部门编号", "deptCode", "60px"));
storeHeader.add(new ColumnConfig("部门名称", "deptName", "60px"));
storeHeader.add(new ColumnConfig("站点名称", "stationName", "60px"));
storeHeader.add(new ColumnConfig("领用机床", "machineNo", "60px"));
storeHeader.add(new ColumnConfig("刀具编码", "itemCode", "120px"));
storeHeader.add(new ColumnConfig("刀具名称", "itemDesc", "240px"));
storeHeader.add(new ColumnConfig("领用数量", "qty", "30px"));
storeHeader.add(new ColumnConfig("领用类型", "type", "50px"));
storeHeader.add(new ColumnConfig("货位", "locatorFrom", "60px"));
storeHeader.add(new ColumnConfig("以旧换新", "oldToNew", "60px"));
storeHeader.add(new ColumnConfig("状态", "state", "60px"));
headerMap.put("storeReceive", storeHeader);
return headerMap;
}
@PostConstruct
public void init() {
try {
if (serverInfoBean == null) {
serverInfoBean = (ServerInfoBean) FacesUtils.findViewBean("serverInfoBean");
}
toolNameInit();
query = new NoteRequestReportQuery();
setOrg();
query.setReportCode("personTransfer");
columnFields = header().get("personTransfer");
noteRequestList = new LazyDataModel() {
@Override
public List load(int first, int pageSize, String sortField, SortOrder sortOrder, Map filters) {
if (!doQuery) {
return Collections.emptyList();
}
Map<String, String> queryMap = query.getQueryMap();
Integer total = 0;
if (StringUtils.equals(query.getReportCode(), "config")) {
requestDmList = noteRequestEjb.queryEmpConfig(first, pageSize, queryMap);
total = noteRequestEjb.queryEmpConfigCount(queryMap);
} else if (StringUtils.equals(query.getReportCode(), "personTransfer")) {
requestDmList = noteRequestEjb.queryNoteReqDistinct(first, pageSize, queryMap, null);
total = noteRequestEjb.getNoteReqUnApprCnt(queryMap);
} else {
requestDmList =
noteRequestEjb.queryNoteReqByPage(first, pageSize, queryMap, new HashMap<String, String>());
total = noteRequestEjb.getNoteReqCount(queryMap);
for (ToolNoteRequestDm toolNoteRequestDm : requestDmList) {
HashMap<String, String> checkQuery = new HashMap<>();
checkQuery.put("requestNo", toolNoteRequestDm.getRequestNo());
List<ToolCheckDm> toolCheckDms = toolCheckEjb.queryCheckByPage(first, pageSize, checkQuery, new HashMap<>());
for (ToolCheckDm toolCheckDm : toolCheckDms) {
toolNoteRequestDm.setUseableQty(toolCheckDm.getUseableQty());
toolNoteRequestDm.setUnUseableQty(toolCheckDm.getUnUseableQty());
toolNoteRequestDm.setDemageQty(toolCheckDm.getDemageQty());
toolNoteRequestDm.setOffQty(toolCheckDm.getOffQty());
}
}
}
requestDmList = afterHandle(requestDmList, query);
this.setRowCount(total.intValue());
return requestDmList;
}
};
initRole();
} catch (Exception e) {
FacesUtils.showError("错误", ExceptionUtils.getRootCauseMessage(e));
}
}
private List<ToolNoteRequestDm> afterHandle(List<ToolNoteRequestDm> requestDmList, NoteRequestReportQuery query) {
if (StringUtils.equals(query.getReportCode(), "returnTool") && StringUtils.equals(query.getMotive(), "刀具站")) {
return returnDistinct(requestDmList);
}
return requestDmList;
}
private List<ToolNoteRequestDm> returnDistinct(List<ToolNoteRequestDm> requestDmList) {
List<ToolNoteRequestDm> resultList = new ArrayList<>();
Map<String, ToolNoteRequestDm> reqMap = new HashMap<>();
for (ToolNoteRequestDm reqDm : requestDmList) {
ToolNoteRequestDm dm = reqMap.get(reqDm.getRequestNo());
if (null == dm) {
reqMap.put(reqDm.getRequestNo(), reqDm);
continue;
}
dm.setQty(dm.getQty() + reqDm.getQty());
}
resultList.addAll(reqMap.values());
return resultList;
}
最新发布