/**
* 获取派工单WIP发料筛选页数据
*
*/
public DataBean getProdSendWIPScreenListOrder(FormBean formBean) {
DataBean returnDB = new DataBean();
String productDepartmentName = formBean.getCellBeanValue("productDepartmentName");
String salesTableNo = formBean.getCellBeanValue("salesTableNo");
String assignWorkNo = formBean.getCellBeanValue("assignWorkNo");
String onePageDataNumber = formBean.getCellBeanValue("onePageDataNumber");
String currentPaqeIndex = formBean.getCellBeanValue("currentPaqeIndex");
String startFromDate = "";
String endFromDate = "";
try {
FormBean paramForm = new FormBean();
if (StringUtils.isNotBlank(productDepartmentName)) {
paramForm.addCellBean(new CellBean("manufacturerId", productDepartmentName));
}
if (StringUtils.isNotBlank(salesTableNo)) {
paramForm.addCellBean(new CellBean("salesId", salesTableNo));
}
if (StringUtils.isNotBlank(assignWorkNo)) {
paramForm.addCellBean(new CellBean("prodAssignWorkId", assignWorkNo));
}
//获取日期控件值
CellBean assignDateCellBean = formBean.get("assignDate");
if (assignDateCellBean != null) {
//获取日期控件的FormDataBean
CalendarBean assignDateCalendarBean = (CalendarBean) assignDateCellBean.getFormDataBean();
//因为是时间段查询 所以有开始时间和结束时间
startFromDate = assignDateCalendarBean.getStartDate();
endFromDate = assignDateCalendarBean.getEndDate();
}
if (StringUtils.isNotEmpty(startFromDate) && StringUtils.isNotEmpty(endFromDate)) {
long startFromDateL = ERPBLHelper.getDayStart(startFromDate, "yyyy-MM-dd");
long endFromDateL = ERPBLHelper.getDayEnd(endFromDate, "yyyy-MM-dd");
paramForm.addCellBean(new CellBean("assignDate_START", "" + startFromDateL));
paramForm.addCellBean(new CellBean("assignDate_END", "" + endFromDateL));
}
DataBean dataBean = new DataBean();
paramForm.addCellBean(new CellBean("currentPaqeIndex", currentPaqeIndex));
paramForm.addCellBean(new CellBean("onePageDataNumber", onePageDataNumber));
dataBean = this.baseDAO.getDataByAS("gts.erp.as.prodSendWIPScreenListAS", paramForm, null);
if (dataBean.sizeByTableBean() > 0) {
TableBean prodSendMaterialTableBean = dataBean.getTableBean(0);
returnDB.addTableBean(prodSendMaterialTableBean);
FormBean splitPageInfoFormBean = dataBean.getFormBean(TriangleDefinition.FORM_BEAN_KEY_SPLIT_PAGE_INFO);
if (splitPageInfoFormBean != null) {
returnDB.addFormBean(splitPageInfoFormBean);
}
for (int i = 0; i < prodSendMaterialTableBean.size(); i++) {
String manufacturerId = prodSendMaterialTableBean.get(i).getCellBeanValue("manufacturerId");//生产部门Id
String typeId = prodSendMaterialTableBean.get(i).getCellBeanValue("typeId");//生产单位类型
String prodAssignWorkMaterialId = prodSendMaterialTableBean.get(i).getCellBeanValue("primaryId");//派工单材料Id
String matchingQty = prodSendMaterialTableBean.get(i).getCellBeanValue("matchingQty");//配套数量
if (matchingQty.isEmpty()) {
matchingQty = "0";
}
String productDepartment = "";//生产部门
String sendedNumber = "0";//已发料数量
String canSendNumber = "0";//可发料数量
if (typeId.equals("1")) {//1为厂内部门,2为外包厂商
//获取厂内部门
if (StringUtils.isNotEmpty(manufacturerId)) {
CondSetBean departmentCsb = new CondSetBeanJustAnd();
departmentCsb.addCondBean(new CondBeanEqual("CN_ID", manufacturerId));
ClassPOJO departmentPOJO = new ClassPOJO("TN_DEPARTMENT");
departmentPOJO.addAttribute(new ClassAttributePOJO("CN_NAME"));
FormBean departmentFormBean = this.getBaseDAO().queryForFormBean(departmentPOJO, departmentCsb);
if (departmentFormBean.size() > 0)
productDepartment = departmentFormBean.getCellBeanValue("CN_NAME");
}
} else if (typeId.equals("2")) {
//获取外包厂商
if (StringUtils.isNotEmpty(manufacturerId)) {
CondSetBean vendTableCsb = new CondSetBeanJustAnd();
vendTableCsb.addCondBean(new CondBeanEqual("CN_ID", manufacturerId));
ClassPOJO vendTablePOJO = new ClassPOJO("TN_VEND_TABLE");
vendTablePOJO.addAttribute(new ClassAttributePOJO("CN_NAME"));
FormBean vendTableFormBean = this.getBaseDAO().queryForFormBean(vendTablePOJO, vendTableCsb);
if (vendTableFormBean.size() > 0)
productDepartment = vendTableFormBean.getCellBeanValue("CN_NAME");
}
} else {
}
//获取已发料量,可发料量
if (StringUtils.isNotEmpty(prodAssignWorkMaterialId)) {
CondSetBean sendOrReturnItemLineCsb = new CondSetBeanJustAnd();
sendOrReturnItemLineCsb.addCondBean(new CondBeanEqual("CR_ORDER_ID", prodAssignWorkMaterialId));
ClassPOJO sendOrReturnItemLinePOJO = new ClassPOJO("TN_SEND_OR_RETURN_ITEM_LINE");
sendOrReturnItemLinePOJO.addAttribute(new ClassAttributePOJO("CN_QTY"));
TableBean sendOrReturnItemLineTableBean = this.getBaseDAO().queryForTableBean(sendOrReturnItemLinePOJO, sendOrReturnItemLineCsb);
for (int j = 0; j < sendOrReturnItemLineTableBean.size(); j++) {
RowBean rowBean = sendOrReturnItemLineTableBean.get(j);
String qty = rowBean.getCellBeanValue("CN_QTY");
if (qty.isEmpty()) {
qty = "0";
}
sendedNumber = ERPBLHelper.doubleAdd(sendedNumber, qty);
}
canSendNumber = ERPBLHelper.doubleSub(matchingQty, sendedNumber);
}
prodSendMaterialTableBean.get(i).addCellBean(new CellBean("productDepartmentName", productDepartment + ""));
prodSendMaterialTableBean.get(i).addCellBean(new CellBean("sendedNumber", sendedNumber + ""));
prodSendMaterialTableBean.get(i).addCellBean(new CellBean("canSendNumber", canSendNumber + ""));
}
}
} catch (Exception e) {
TriangleBLHelper.printExceptionLog(log, e);
e.printStackTrace();
throw new RuntimeException("**** Run time Exception!****");
}
return returnDB;
}公司--As Imp的写法
最新推荐文章于 2024-05-23 20:40:56 发布
本文介绍了一个用于获取派工单WIP发料筛选页面数据的方法,包括通过不同条件筛选数据、处理日期范围查询、计算已发料数量及可发料数量等关键步骤。
1471

被折叠的 条评论
为什么被折叠?



