📄 operation.java
字号:
} else if (dateStatus == 2) { return "单据日期超出允许未来日期范围!"; } else if (dateStatus == 1) { return "单据日期超出允许历史日期范围!"; } CustomerAdapter cust = new CCustomerAdapter(adapter.getJndiName()); if (!cust.getCanShort(adapter.getCustID()) && cust.getShortAmo(adapter.getCustID()) > 0) { return "此客户不允许欠款时处理单据[销售/发货]"; } if (!cust.getCanOverShort(adapter.getCustID()) && cust.getShortAmo(adapter.getCustID()) > cust .getPlanAmo(adapter.getCustID())) { return "此客户不允许欠款超过欠款额度时处理单据[销售/发货]"; } if (adapter.getIsExt()) { return adapter.getExSheetCode() + " 已收款!"; } if (adapter.getIsChecked()) { return MsgConstant.CANCEL; } if (adapter.getIsAcc() && (eventCode == EventCode.EX_SHEET_NEW_V || eventCode == EventCode.EX_SHEET_NEW_V2)) { return MsgConstant.BILL_VALIDATE_ALREADY; } if (!ToolKit.allowModify(adapter.getOperator(), loginUser)) { if (eventCode == EventCode.EX_SHEET_NEW_V) { ExItemsAdapter order = null; List newItems = new LinkedList(); for (int i = 0; i < items.size(); i++) { order = (ExItemsAdapter) items.get(i); if (order.getGoodsID() != 0) { newItems.add(order); } } if (adapter.dirty(adapter.getExSheetCode(), newItems)) { return MsgConstant.DATA_DIRTY_ERROR; } } } else { if (!ToolKit.allowSameUser(adapter.getJndiName())) { return MsgConstant.AUDIT_USER_ERROR; } } if (!ToolKit.allowNeg(adapter.getJndiName()) && !adapter.getIsRegLed()) { String msg = ToolKit.itemsBalanceAssert(adapter.getJndiName(), items); if (!"".equals(msg)) { return "不允许负库存,操作被取消。\\n" + msg; } } return null; } public static Object[] saveitem(ExSheetAdapter adapter, List item, List stat) { ExItemsAdapter order = null; boolean b = true; Object[] a = new Object[2]; for (int i = 0; i < item.size(); i++) { order = (ExItemsAdapter) item.get(i); if ("".equals(order.getGdsName())) { if ("A".equals((String) stat.get(i))) { continue; } else if ("M,O".indexOf((String) stat.get(i)) != -1) { b = b && order.delete(); } } else { if ("A".equals((String) stat.get(i))) { order.setExSheetCode(adapter.getExSheetCode()); b = b && order.insert(); } else if ("M,O".indexOf((String) stat.get(i)) != -1) { order.setExSheetCode(adapter.getExSheetCode()); b = b && order.modify(); } else if ("D".equals((String) stat.get(i))) { b = b && order.delete(); } } } b = b && ToolKit.updateBCostXX(adapter.getJndiName(), SheetTypes.ExSheet, adapter.getExSheetCode()); order = new CExItemsAdapter(adapter.getJndiName()); List list = order.getItemsByExSheetCode(adapter.getExSheetCode()); a[0] = new Boolean(b); a[1] = list; return a; } public static boolean auding(ExSheetAdapter adapter, List item, LoginInfo loginInfo, int eventCode, String settleID, String catalogCode, String compID, String factAmo, String msAmo) { boolean b = true; adapter.setIsRegLed(true); adapter.setUserName(loginInfo.getSysUserCode()); b = b && adapter.setRegLed(); // 保存进货材料报价: b = b && salePriceUpdate(adapter, item, loginInfo); // 把新的款号保存到供货明细: b = b && custGoodsUpdate(adapter, item, loginInfo); b = b && goodsWarehouseCodeUpdate(item, loginInfo); // 更新库存结余 b = b && addBalance(adapter, item, loginInfo, eventCode, settleID, catalogCode, compID, factAmo, msAmo); b = b && updateOrder(adapter, item, loginInfo); return b; } public static boolean backOut(ExSheetAdapter adapter, LoginInfo loginInfo) { boolean b = true; SalePriceAdapter gdsPriceAdapter2 = new CSalePriceAdapter(adapter .getJndiName()); gdsPriceAdapter2.setSheetCode(adapter.getExSheetCode()); b = b && gdsPriceAdapter2.deleteBySheetCode(); adapter.setIsRegLed(false); adapter.setUserName(loginInfo.getSysUserCode()); b = b && adapter.setRegLed(); ExItemsAdapter order = new CExItemsAdapter(adapter.getJndiName()); List list = order.getItemsByExSheetCode(adapter.getExSheetCode()); b = b && delBalance(adapter, list, loginInfo); // 冲销 b = b && updateOrderB(adapter, list, loginInfo); return b; } public static boolean back(ExSheetAdapter adapter, LoginInfo loginInfo) { boolean b = true; adapter.setIsBack(true); adapter.setIsAcc(false); adapter.setUserName(String.valueOf(loginInfo.getSysUserCode())); b = b && adapter.modify2(); // ****************************************************************************************************************************************************************************************** CustMonthItems custMonthItems = new CustMonthItems(loginInfo .getJndiName()); b = b && custMonthItems.modify(adapter.getCustID(), adapter .getCreateDate(), -adapter.getAmo(), -adapter.getQua(), CustMonthItems.NORMAL); // ****************************************************************************************************************************************************************************************** return b; } private static boolean addBalance(ExSheetAdapter adapter, List item, LoginInfo loginInfo, int eventCode, String settleID, String catalogCode, String compID, String factAmo, String msAmo) { boolean b = true; ExItemsAdapter order = null; CBalanceAdapter balance = new CBalanceAdapter(adapter.getJndiName()); for (Iterator iter = item.iterator(); iter.hasNext();) { order = (ExItemsAdapter) iter.next(); // 更新日结 boolean isNeed = ToolKit.needUpdateDay(adapter.getJndiName(), adapter.getCreateDate()); if (isNeed) { net.intuitsoft.xeon.table.warehouse.month.WarehouseMonthItems month = new net.intuitsoft.xeon.table.warehouse.month.WarehouseMonthItems( adapter.getJndiName()); b = b && month.updateDayAfter(order.getWarehouseCode(), adapter.getCreateDate(), -order.getQua(), order .getGoodsID()); } balance.setGoodsID(order.getGoodsID()); balance.setWarehouseCode(order.getWarehouseCode()); BrandModel brand = new BrandBean(adapter.getJndiName()); GoodsModel goods = new GoodsBean(adapter.getJndiName()); goods.setGoodsID(order.getGoodsID()); if (goods.content()) { brand.setID(goods.getBrandID()); } balance.setOperator(loginInfo.getSysUserCode()); if (balance.isExistsByCode(balance.getGoodsID(), balance .getWarehouseCode())) { b = b && balance.modify(balance.getBalanceID(), -order .getS1(), -order.getS2(), -order.getS3(), -order.getS4(), -order.getS5(), -order.getS6(), -order.getS7(), -order.getS8(), -order.getS9(), -order.getS10(), -order.getS11(), -order .getS12(), -order.getS13(), -order .getQua(), order.getGdsNo(), order .getGdsName(), order.getUnit()); } else { balance.setS1(-order.getS1()); balance.setS2(-order.getS2()); balance.setS3(-order.getS3()); balance.setS4(-order.getS4()); balance.setS5(-order.getS5()); balance.setS6(-order.getS6()); balance.setS7(-order.getS7()); balance.setS8(-order.getS8()); balance.setS9(-order.getS9()); balance.setS10(-order.getS10()); balance.setS11(-order.getS11()); balance.setS12(-order.getS12()); balance.setS13(-order.getS13()); balance.setBalQua(-order.getQua()); balance.setBalPrice(goods.getInPrice()); balance.setBalAmo(balance.getBalQua() * balance.getBalPrice()); balance.setSheetCode(order.getExSheetCode()); balance.setGdsName(order.getGdsName()); balance.setGdsNo(order.getGdsNo()); balance.setUnit(order.getUnit()); b = b && balance.insert(); } // 记录log CGoodsLogAdapter log = new CGoodsLogAdapter(adapter.getJndiName(), "销售出库单(建立)", SheetTypes.EX, "减", adapter.getCreateDate(), adapter.getExSheetCode(), order.getGoodsID(), order .getGdsNo(), order.getGdsName(), order.getUnit(), order.getQua()); b = b && log.insert(); } return b; } public static boolean rec(ExSheetAdapter adapter, LoginInfo loginInfo, String settleID, String catalogCode, String compID, String factAmo, String msAmo) { boolean b = true; CustomerAdapter cust = new CCustomerAdapter(loginInfo.getJndiName()); cust.setCustID(adapter.getCustID()); cust.content(); RecSheet recSheet = new RecSheet(loginInfo.getJndiName()); recSheet.setRecSheetCode(recSheet.newRecSheetCode()); recSheet.setCreateDate(adapter.getCreateDate()); recSheet.setOperator(loginInfo.getSysUserCode()); recSheet.setComputer(loginInfo.getSysRoleCode()); b = b && recSheet.insert(); recSheet.setCatalogCode(catalogCode); recSheet.setCompID(compID); recSheet.setOrderID(adapter.getExSheetCode()); recSheet.setSettleID(settleID); recSheet.setIsVou(true); recSheet.setIsAcc(true); recSheet.setUserName(String.valueOf(loginInfo.getSysUserCode())); recSheet.setCustID(adapter.getCustID()); recSheet .setAmo(Double.parseDouble(factAmo) + Double.parseDouble(msAmo)); recSheet.setRemark("销售出库单直接收款[" + adapter.getExSheetCode() + "]"); recSheet.setEmplID(adapter.getEmplID()); recSheet.setFactAmo(factAmo); recSheet.setMsAmo(msAmo); b = b && recSheet.modify(); CustMonthItems custMonthItems = new CustMonthItems(loginInfo .getJndiName()); if (recSheet.getCompID() == 0) { b = b && adapter.updateStatus(adapter.getExSheetCode(), true, adapter.getAmo() == recSheet.getAmo(), recSheet .getAmo()); RecItems recItems = new RecItems(loginInfo.getJndiName()); recItems.setRecSheetCode(recSheet.getRecSheetCode()); recItems.setSheetCode(adapter.getExSheetCode()); recItems.setBillDate(adapter.getCreateDate()); recItems.setSumAmo(adapter.getAmo()); recItems.setAmo(recSheet.getAmo()); recItems.setType(0); b = b && recItems.insert(); } // ***************************************************************************************************************** // 仅更新本月扣款与预付 else if (recSheet.getCompID() == 2 && !custMonthItems.isInMonths(adapter.getCustID(), recSheet .getCreateDate())) { b = b && cust.modifyPreAmo(adapter.getCustID(), recSheet.getAmo()); } // ***************************************************************************************************************** ConcreteSysUserAdapter sys = new ConcreteSysUserAdapter(loginInfo .getJndiName()); new SheetLog( loginInfo.getJndiName(), recSheet.getRecSheetCode(), "销售出库单直接收款", sys.getCreateBy(loginInfo.getSysUserCode())[0], Integer .parseInt(sys.getCreateBy(loginInfo.getSysUserCode())[2]), adapter.getExSheetCode());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -