/**
  * 页面tab页签切换 @Override
  *
  * @param dataDom DataDom
  * @param sessionInfo SessionInfo
  * @param serviceRequest ServiceRequest 含有tabName参数
  * @throws LiemsException
  */
 public void TabOnClick(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   Table table = dataDom.getTable("YXPBPFLIN");
   if (null != table) {
     Field orgNoField = table.getField("ORG_NO");
     if (null != orgNoField) {
       Row currRow = table.getRow(0);
       String orgNo = "";
       // 增加当前行的判断,仅当当前行不为null时候取DataDom里的orgNo
       if (null != currRow) {
         orgNo = Charset.nullToEmpty(currRow.getColumnValue("ORG_NO"));
       }
       if (!("".equals(orgNo))) {
         serviceRequest.addParameter("selectorgno", orgNo);
       } else {
         serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
       }
       // 没有公司编号字段,则取session中第一个公司编号
     } else {
       serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
     }
   } else {
     serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
   }
   super.TabOnClick(dataDom, sessionInfo, serviceRequest);
 }
  public void Delete(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
    Table table = dataDom.getTable("YXPBPFMST");
    Row row = table.getRow(0L);
    if (row == null) {
      /* */ serviceRequest.getMessage().addInfo("没有需要删除的数据!");
      return;
    }
    String pkValue = table.getPkValue();
    if ((pkValue == null) || ("".equals(pkValue.trim()))) {
      serviceRequest.getMessage().addInfo("没有需要删除的数据!");
      return;
    }
    Database db = null;
    try {
      db = Tools.getDatabase(false);

      deleteChildTable(dataDom, sessionInfo, serviceRequest, db);
      super.Delete(dataDom, sessionInfo, serviceRequest, db);
      db.commit();
      serviceRequest.getMessage().addInfo("删除成功!");
    } catch (Exception e) {
      if (db != null) {
        db.rollback();
      }
      Log.error(e);
      serviceRequest.getMessage().addInfo("删除失败,请重试或联系系统管理员!");
    } finally {
      if (db != null) db.cleanup();
    }
  }
  public void CST_NO_onblur(
      DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
    Database db = null;
    Rowset rs = null;
    String sql = "";
    String cstNo = "";
    String cstId = "";
    String cstNam = "";

    try {
      db = Tools.getDatabase(true);
      cstId = Charset.nullToEmpty(serviceRequest.getParameter("value"));
      if (!cstId.equals("")) {
        sql = "select cst_no,cst_nam from ogcstmst where cst_id='" + cstId + "'";
        rs = db.getRS(sql);
        if (rs.getRowCount() <= 0) {
          serviceRequest.addServiceReturnParameter("CSTFLG", "FALSE");
          return;
        } else {
          if (rs.next()) {
            cstNo = Charset.nullToEmpty(rs.getString("cst_no"));
            cstNam = Charset.nullToEmpty(rs.getString("cst_nam"));
          }
        }
      }
      serviceRequest.addServiceReturnParameter("CSTFLG", "TRUE");
      serviceRequest.addServiceReturnParameter("CST_NO", cstNo);
      serviceRequest.addServiceReturnParameter("CST_NAM", cstNam);

    } catch (Exception e) {
      Log.error(e);
    } finally {
      if (db != null) db.cleanup();
    }
  }
Beispiel #4
0
 public void Delete(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   Table table = dataDom.getTable("YXDBJYMST");
   Row row = table.getRow(0L);
   if (row == null) {
     serviceRequest.getMessage().addInfo("没有需要删除的数据");
     return;
   }
   String pkValue = table.getPkValue();
   if ((pkValue == null) || ("".equals(pkValue.trim()))) {
     serviceRequest.getMessage().addInfo("没有需要删除的数据");
     return;
   }
   Database db = null;
   try {
     db = Tools.getDatabase(false);
     deleteChildTable(dataDom, sessionInfo, serviceRequest, db);
     super.Delete(dataDom, sessionInfo, serviceRequest, db);
     db.commit();
     dataDom.refresh(sessionInfo);
     serviceRequest.getMessage().addInfo("删除数据成功");
   } catch (Exception e) {
     if (db != null) {
       db.rollback();
     }
     Log.error(e);
     serviceRequest.getMessage().addInfo("发生异常,请联系管理员");
   } finally {
     if (db != null) {
       db.cleanup();
     }
     dataDom.refresh(sessionInfo);
   }
   init(dataDom, sessionInfo, serviceRequest);
 }
Beispiel #5
0
 public void rowSave(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
     throws Exception {
   Table table = dataDom.getTable("YXDBJYMST");
   String pkValue = table.getPkValue();
   if ((pkValue == null) || ("".equals(pkValue)) || ("-1".equals(pkValue)))
     serviceRequest.getMessage().addError("??????????????");
   else
     try {
       String tableName = serviceRequest.getParameter("tableName");
       super.save(tableName, dataDom, sessionInfo, serviceRequest);
     } catch (Exception e) {
       Log.error(e);
       serviceRequest.getMessage().addInfo("保存子表失败");
     }
 }
Beispiel #6
0
 public void clearDLFL_AMT(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
     throws Exception {
   Table table = dataDom.getTable("YXPRJMST");
   Database db = null;
   String pk = "";
   try {
     db = Tools.getDatabase(false);
     save(dataDom, sessionInfo, serviceRequest);
     serviceRequest.getMessage().clear();
     pk = table.getPkValue();
     db.execSqlUpdate("update YXPRJLIN set DLFL_AMT='' where PRJ_NO = " + pk);
     db.commit();
     pk = table.getPkValue();
     WhereLimit wr = new WhereLimit();
     wr.addColumn(new Column("PRJ_NO", pk));
     dataDom.getTable("YXPRJLIN").setWhereLimit(wr);
     dataDom.getTable("YXPRJLIN").refresh("B1YXM00030", sessionInfo);
   } catch (Exception ex) {
     db.rollback();
     Log.error(ex);
   } finally {
     if (db != null) {
       db.cleanup();
     }
   }
 }
Beispiel #7
0
 public void DeleteAllSubTable_FB(
     DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) throws Exception {
   Table table = dataDom.getTable("YXPRJMST");
   Database db = null;
   String pk = "";
   try {
     db = Tools.getDatabase(false);
     save(dataDom, sessionInfo, serviceRequest);
     serviceRequest.getMessage().clear();
     pk = table.getPkValue();
     if ((pk != null) && (!"".equals(pk))) {
       db.execSqlUpdate("delete from YXPRJLIN where IS_FB='Y' and PRJ_NO = " + pk);
     }
     db.commit();
     WhereLimit wr = new WhereLimit();
     wr.addColumn(new Column("PRJ_NO", pk));
     dataDom.getTable("YXPRJLIN").setWhereLimit(wr);
     dataDom.getTable("YXPRJLIN").refresh("B1YXM00030", sessionInfo);
   } catch (Exception ex) {
     if (db != null) {
       db.rollback();
     }
     Log.error(ex);
   } finally {
     if (db != null) {
       db.cleanup();
     }
   }
 }
Beispiel #8
0
 private boolean saveBefore(
     DataDom dataDom, ServiceRequest serviceRequest, SessionInfo sessionInfo) {
   Table ctb = dataDom.getChildTable();
   String pkValue = dataDom.getRootTable().getPkValue();
   ArrayList<String> prjlIds = new ArrayList<String>();
   try {
     Rowset rs = Database.getRowset("select PRJL_ID from YXPRJLIN  where PRJ_NO =" + pkValue);
     while (rs.next()) {
       String lid = rs.getString("PRJL_ID");
       prjlIds.add(lid);
     }
     Iterator<?> it = ctb.getRows().keySet().iterator();
     String zbId = dataDom.getRootTable().getSafeRowColumnValue("PRJ_ID");
     while (it.hasNext()) {
       String rowNo = (String) it.next();
       Row row = (Row) ctb.getRows().get(rowNo);
       String rPk = row.getColumnValue("PRJL_NO");
       if ((rPk != null) && (Integer.parseInt(rPk) > 0)) {
         prjlIds.remove(_$15996(rPk));
       }
     }
     Iterator<?> it2 = ctb.getRows().keySet().iterator();
     while (it2.hasNext()) {
       String rowNo = (String) it2.next();
       Row row = (Row) ctb.getRows().get(rowNo);
       String prjId = row.getColumnValue("PRJL_ID");
       if (prjlIds.contains(prjId)) {
         serviceRequest
             .getMessage()
             .addError("第" + (Integer.parseInt(rowNo) + 1) + "行的分包编号之前已经使用过,请重新输入!");
         return false;
       }
       if ((!prjId.startsWith(zbId + "-")) && (!prjId.equals(zbId))) {
         serviceRequest
             .getMessage()
             .addError("第" + (Integer.parseInt(rowNo) + 1) + "行的分包编号格式错误,未包含招标编号,请重新输入!");
         return false;
       }
       prjlIds.add(prjId);
     }
   } catch (Exception e) {
     e.printStackTrace();
     Log.error(e);
     return false;
   }
   return true;
 }
 public void myTask(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   try {
     setForwardURL("FrontServlet");
     addForwardParameter("programNoFrom", dataDom.getProgramInfo().getProgramNo());
     addForwardParameter("programNo", "B1BXS00013");
   } catch (Exception e) {
     serviceRequest.getMessage().addError(e.getMessage());
   }
 }
Beispiel #10
0
 /**
  * 我的书签查询 @Override
  *
  * @param dataDom DataDom
  * @param sessionInfo SessionInfo
  * @param serviceRequest ServiceRequest
  */
 public void myBookmark(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   super.myBookquery(dataDom, sessionInfo, serviceRequest);
   try {
     setForwardURL("FrontServlet");
     addForwardParameter("bookmark", "true");
     addForwardParameter("programNo", "B1OAS60007");
   } catch (Exception e) {
     serviceRequest.getMessage().addError(e.getMessage());
   }
 }
Beispiel #11
0
  public void Delete(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
    Table table = dataDom.getTable("YXPRJMST");
    Row row = table.getRow(0L);
    if (row == null) {
      serviceRequest.getMessage().addInfo("没有需要删除的数据!");
      return;
    }
    String pkValue = table.getPkValue();
    if ((pkValue == null) || ("".equals(pkValue.trim()))) {
      serviceRequest.getMessage().addInfo("没有需要删除的数据!");
      return;
    }
    Database db = null;
    try {
      db = Tools.getDatabase(false);
      deleteChildTable(dataDom, sessionInfo, serviceRequest, db);
      super.Delete(dataDom, sessionInfo, serviceRequest, db);
      db.commit();

      String pk = table.getPkValue();
      table.refreshG(pk);

      pk = table.getPkValue();
      WhereLimit wl = new WhereLimit();
      wl.addColumn("new_sql_wherelimit", "PRJ_NO =" + pk);
      Log.info("PRJ_NO:" + pk);
      dataDom.getTable("YXPRJLIN").setWhereLimit(wl);
      dataDom.getTable("YXPRJLIN").refresh2("B1YXM00030", sessionInfo);
    } catch (Exception e) {
      if (db != null) {
        db.rollback();
      }
      Log.error(e);
      serviceRequest.getMessage().addInfo("删除失败,请重试或联系系统管理员!");
      table.refresh("B1YXM00030", sessionInfo);
      ;
    } finally {
      if (db != null) {
        db.cleanup();
      }
    }
  }
Beispiel #12
0
  public void TabOnClick(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
    Table table = dataDom.getTable("YXDBJYMST");
    if (table != null) {
      Field orgNoField = table.getField("ORG_NO");
      if (orgNoField != null) {
        Row currRow = table.getRow(0L);
        String orgNo = "";

        if (currRow != null) {
          orgNo = Charset.nullToEmpty(currRow.getColumnValue("ORG_NO"));
        }
        if (!("".equals(orgNo))) serviceRequest.addParameter("selectorgno", orgNo);
        else serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
      } else {
        serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
      }
    } else {
      serviceRequest.addParameter("selectorgno", sessionInfo.getOrg()[0].getValue());
    }
    super.TabOnClick(dataDom, sessionInfo, serviceRequest);
  }
Beispiel #13
0
 /**
  * 程序初始化方法 @Override
  *
  * @param dataDom DataDom
  * @param sessionInfo SessionInfo
  * @param serviceRequest ServiceRequest
  */
 public void init(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   super.init(dataDom, sessionInfo, serviceRequest);
   Select usr_id = dataDom.getExtend().getSelect("EXT_USR_ID");
   String sql =
       "select distinct a.usr_nam,a.usr_id,a.mop_no from utusrmst a, utusremplnk b, cmempmst c,(select aa.emp_no, aa.position_no from cmempposmst aa,(select emp_no, max(nvl(regular_flg, 0)) flag from cmempposmst group by emp_no) bb where aa.emp_no = bb.emp_no and nvl(aa.regular_flg, 0) = bb.flag) d,cmpositionmst e,ogcstposmst f,ogcstmst g,carinfmst h where a.usr_id = b.usr_id and b.emp_no = c.emp_no and c.emp_no = d.emp_no and d.position_no = e.position_no and e.position_no = f.position_no and f.cst_no = g.cst_no and g.cst_no = 1 and g.cst_id = 'GSLD' and g.cst_nam = '公司领导' and c.valid_sta = 'A' and a.usr_id = h.carinf_usr_id order by a.mop_no";
   creatSel(usr_id, sql, false);
   String paraTo = Charset.nullToEmpty(serviceRequest.getParameter("paraTo"));
   if (paraTo != null && !"".equals(paraTo)) {
     String[] param = paraTo.split(",", 2);
     serviceRequest
         .getMessage()
         .addJS("document.getElementById('Data_Dtm').value='" + param[0] + "';");
     dataDom.getExtend().getSelect("EXT_USR_ID").setSelectedValueList(param[1]);
   } else {
     Calendar curCal = Calendar.getInstance();
     curCal.add(5, 0);
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
     String dateStr = sdf.format(curCal.getTime());
     String beg_dtm = dateStr.substring(0, 4);
     dataDom.getExtend().getText("Data_Dtm").setValue(beg_dtm);
   }
 }
Beispiel #14
0
  public void USR_ID_onblur(
      DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {

    String usrId = "";
    String usrNam = "";

    try {

      usrId = Charset.nullToEmpty(serviceRequest.getParameter("value"));
      if (!usrId.equals("")) {
        usrNam = Charset.nullToEmpty(UTUSRMST.getDesc(usrId));
        if (usrNam.equals("")) {
          serviceRequest.addServiceReturnParameter("USRFLG", "FALSE");
          return;
        }
      }
      serviceRequest.addServiceReturnParameter("USRFLG", "TRUE");
      serviceRequest.addServiceReturnParameter("USR_ID", usrId);
      serviceRequest.addServiceReturnParameter("USR_NAM", usrNam);
    } catch (Exception e) {
      Log.error(e);
    }
  }
Beispiel #15
0
 /**
  * 查询操作,展示列表 @Override
  *
  * @param dataDom DataDom
  * @param sessionInfo SessionInfo
  * @param serviceRequest ServiceRequest
  * @return
  * @throws LiemsException
  */
 public String ShowListView(
     DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   try {
     super.ShowListView2(dataDom, sessionInfo, serviceRequest);
     // 添加重定向地址
     ProgramInfo pi = dataDom.getProgramInfo();
     pi.setProgramNo("B1OAS60007");
     setForwardURL(Tools.getProgramURL(dataDom, pi.getProgramNo(), "jsp"));
     // 添加传递的参数
     this.addForwardParameter(Constant.REQUEST_DATADOM, dataDom);
   } catch (Exception e) {
     serviceRequest.getMessage().addError(e.getMessage());
   }
   return "true";
 }
Beispiel #16
0
 public void setFirstRowSubTable(
     DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) throws Exception {
   String ZB_ID = serviceRequest.getParameter("ZB_ID");
   String PRJ_NAM = serviceRequest.getParameter("PRJ_NAM");
   Table table = dataDom.getTable("YXPRJMST");
   Database db = null;
   String pk = "";
   try {
     db = Tools.getDatabase(false);
     pk = table.getPkValue();
     String nextPkValue = CommSequence.getInstance("YXPRJLIN_SEQ").getNextValue();
     db.execSqlUpdate(
         "insert into YXPRJLIN(PRJL_NO,PRJ_NO,PRJL_ID,PRJL_NAM,IS_FB) values( "
             + nextPkValue
             + ","
             + pk
             + ",'"
             + ZB_ID
             + "','"
             + PRJ_NAM
             + "','Y') ");
     db.commit();
     pk = table.getPkValue();
     WhereLimit wr = new WhereLimit();
     wr.addColumn(new Column("PRJ_NO", pk));
     dataDom.getTable("YXPRJLIN").setWhereLimit(wr);
     dataDom.getTable("YXPRJLIN").refresh("B1YXM00030", sessionInfo);
   } catch (Exception ex) {
     db.rollback();
     Log.error(ex);
   } finally {
     if (db != null) {
       db.cleanup();
     }
   }
 }
Beispiel #17
0
 /**
  * 子表行记录保存 @Override
  *
  * @param dataDom DataDom
  * @param sessionInfo SessionInfo
  * @param serviceRequest ServiceRequest
  * @throws LiemsException
  */
 public void rowSave(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
     throws Exception {
   Table table = dataDom.getTable("YXPBPFLIN");
   String pkValue = table.getPkValue();
   if (null == pkValue || "".equals(pkValue) || "-1".equals(pkValue)) {
     serviceRequest.getMessage().addError("请先维护主信息!");
   } else {
     try {
       String tableName = serviceRequest.getParameter("tableName");
       Table childTable = dataDom.getTable(tableName);
       // 添加whereLimit的判断,这里目前不加任何过滤字段由研发人员自行添加
       if (null != childTable) {
         WhereLimit whereLimit = childTable.getWhereLimit();
         if (null == whereLimit) {
           whereLimit = new WhereLimit();
         }
         super.save(tableName, dataDom, sessionInfo, serviceRequest);
       }
     } catch (Exception e) {
       Log.error(e);
       serviceRequest.getMessage().addInfo("保存失败,请重试或联系系统管理员!");
     }
   }
 }
Beispiel #18
0
 public void save(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
     throws LiemsException {
   Table table = dataDom.getTable("YXPBPFMST");
   Row currRow = table.getRow(0L);
   if (currRow == null) {
     table.addRow(new Row(false, 0, 0, "new"));
     currRow = table.getRow(0L);
   }
   currRow.setFirstLastUserInfo(sessionInfo.getUserId());
   try {
     super.save(dataDom, sessionInfo, serviceRequest);
   } catch (Exception e) {
     Log.error(e);
     serviceRequest.getMessage().addInfo("保存失败,请重试或联系系统管理员!");
   }
 }
Beispiel #19
0
 public void reStartPrj(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) {
   String pkValue = dataDom.getRootTable().getPkValue();
   if ((pkValue != null) && (!"".equals(pkValue))) {
     CommSequence cs = CommSequence.getInstance("YXPRJMST_SEQ");
     CommCodeNumber KLTYPID =
         new CommCodeNumber("PRJ", sessionInfo.getCurrentLanguage(), sessionInfo.getUserId());
     String newPk = cs.getNextValue();
     String prjNam = dataDom.getRootTable().getSafeRowColumnValue("PRJ_NAM");
     String rSql =
         "declare v_wkpl YXPRJMST%rowtype; zbTime  yxprjmst.ZB_TIMES%type; begin select * into v_wkpl from YXPRJMST where PRJ_NO ="
             + pkValue
             + ";"
             + " v_wkpl.OLD_PRJ := v_wkpl.PRJ_NO;"
             + " v_wkpl.PRJ_NO := "
             + newPk
             + ";"
             + " select nvl(max(ZB_TIMES),v_wkpl.ZB_TIMES) into zbTime from YXPRJMST where PRJ_NAM ='"
             + prjNam
             + "';"
             + " v_wkpl.ZB_TIMES := zbTime+1;"
             + " v_wkpl.VALID_STA := 'A';"
             + " v_wkpl.VEN_NO := null;"
             + " v_wkpl.ZB_ID := null;"
             + " v_wkpl.PRJ_STA := '00';"
             + " v_wkpl.PRJ_STAG := '01';"
             + " v_wkpl.PRJ_ID := '"
             + KLTYPID.getNextValue()
             + "';"
             + " v_wkpl.FSTUSR_DTM := sysdate;"
             + " v_wkpl.FSTUSR_ID := '"
             + sessionInfo.getUserId()
             + "';"
             + " insert into YXPRJMST values v_wkpl;"
             + "end;";
     Database.execString(rSql);
     setForwardURL(Tools.getProgramURL(dataDom, "B1YXM00030", "jsp?pkValue=" + newPk));
   } else {
     serviceRequest.getMessage().addError("请先维护主表!");
   }
 }
Beispiel #20
0
 public void DeleteAllSubTable(
     DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest) throws Exception {
   Table table = dataDom.getTable("YXPRJMST");
   Database db = null;
   String pk = "";
   try {
     db = Tools.getDatabase(false);
     save(dataDom, sessionInfo, serviceRequest);
     serviceRequest.getMessage().clear();
     pk = table.getPkValue();
     db.execSqlUpdate("delete from YXPRJLIN where PRJ_NO = " + pk);
     db.commit();
   } catch (Exception ex) {
     db.rollback();
     Log.error(ex);
   } finally {
     if (db != null) {
       db.cleanup();
     }
   }
   setFirstRowSubTable(dataDom, sessionInfo, serviceRequest);
 }
Beispiel #21
0
  public void save(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
      throws LiemsException {
    Table table = dataDom.getTable("YXDBJYMST");
    Table cTable = dataDom.getTable("YXDBJYLIN");
    Row currRow = table.getRow(0L);
    if (currRow == null) {
      table.addRow(new Row(false, 0, 0, "new"));
      currRow = table.getRow(0L);
    }

    currRow.setFirstLastUserInfo(sessionInfo.getUserId());
    String prjNo = currRow.getColumnValue("PRJ_NO");
    Database db = null;
    try {
      db = Tools.getDatabase(false);
      if (currRow.getDataStatus().equals("new")) {
        currRow.addColumn("ORG_NO", sessionInfo.getDefaultOrg());
        if ((currRow.getColumn("DBJY_ID") == null)
            || (currRow.getColumn("DBJY_ID").getValue() == null)
            || (currRow.getColumn("DBJY_ID").getValue().equals(""))) {
          CommCodeNumber KLTYPID =
              new CommCodeNumber("DBJY", sessionInfo.getCurrentLanguage(), sessionInfo.getUserId());
          currRow.addColumn(new Column("DBJY_ID", KLTYPID.getNextValue()));
        }
      } else if ((currRow.getDataStatus().equals("modified"))
          && (CheckDate.isPrjNoChange(dataDom, db))) {
        deleteChildTable(dataDom, sessionInfo, serviceRequest, db);
      }
      String isSplit = Database.getValue(db, "select IS_SPLIT from YXPRJMST where PRJ_NO=" + prjNo);
      if ((prjNo != null) && (!(prjNo.equals(""))) && (Integer.parseInt(prjNo) > 0)) {
        if ((isSplit.equals("Y"))
            && (CheckDate.isTableEmpty(
                "YXDBJYLIN", dataDom, db, "PRJ_NO=" + prjNo, currRow.getPkValue("DBJY_NO"))))
          initTBRTable(dataDom, prjNo, db);
        else if ((isSplit.equals("N"))
            && (CheckDate.isTableEmpty(
                "YXDBJYLIN", dataDom, db, "PRJ_NO=" + prjNo, currRow.getPkValue("DBJY_NO")))) {
          initNoSplitTbrTab(dataDom, prjNo, db);
        }
      }
      super.save(dataDom, sessionInfo, serviceRequest, db);
      String pkValue = dataDom.getRootTable().getPkValue();
      //
      String selString =
          "select PRJL_NO,dlf_sum from YXDBJYLIN where DBJY_NO="
              + pkValue
              + " and dlf_sum is not null";
      Rowset rs = db.getRS(selString);
      Vector<String> vc = new Vector<String>();
      while (rs.next()) {
        String PRJL_NO = rs.getString("PRJL_NO");
        String dlf_sum = Charset.nullToEmpty(rs.getString("dlf_sum"));
        if (!"".equals(dlf_sum)) {
          String upPrjInfoString =
              "update yxprjlin set DLFL_AMT="
                  + dlf_sum
                  + " where PRJ_NO="
                  + prjNo
                  + " and prjl_no="
                  + PRJL_NO;
          vc.add(upPrjInfoString);
        }
      }
      if (vc.size() > 0) {
        db.execSqlUpdateBatch(vc);
      }
      db.commit();
    } catch (Exception e) {
      db.rollback();
      table.refresh("B1YXM00200", sessionInfo);
      Log.error(e);
      serviceRequest.getMessage().addInfo("保存失败");
    } finally {
      if (db != null) {
        db.cleanup();
      }
    }
    initSel(dataDom, sessionInfo);
    dataDom.getChildTable().refresh("B1YXM00200", sessionInfo);
  }
Beispiel #22
0
  /**
   * 招标代理费生成
   *
   * @param dataDom
   * @param sessionInfo
   * @param serviceRequest
   * @throws LiemsException
   */
  public void creatDLFEE(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
      throws LiemsException {
    Database db = null;
    Table table = dataDom.getTable("YXDBJYMST");
    Row currRow = table.getRow(0L);
    try {
      db = Tools.getDatabase(true);
      String DBJY_NO = currRow.getColumnValue("DBJY_NO");
      String PRJ_NO = currRow.getColumnValue("PRJ_NO");
      String ORG_NO = currRow.getColumnValue("ORG_NO");
      Vector<String> vc = new Vector<String>();
      String sel1 =
          "select distinct TBR_NO from YXDBJYLIN where DBJY_NO=" + DBJY_NO + " and IS_ZB='01'";
      Rowset rs = db.getRS(sel1);
      while (rs.next()) {
        // 查询投标单位 生成主表
        String TBR_NO = rs.getString("TBR_NO");
        CommSequence cs = CommSequence.getInstance("YXDLFMST_SEQ");
        String TBDJ_NO = cs.getNextValue();
        CommCodeNumber seq =
            new CommCodeNumber(
                "DLF", sessionInfo.getCurrentLanguage(), sessionInfo.getUserId(), db);
        String TBDJ_ID = seq.getNextValue();
        String insertSQL =
            " insert into YXDLFMST(DLF_NO,ORG_NO,DLF_STA,DLF_ID,PRJ_NO,TBR_NO,FSTUSR_ID,FSTUSR_DTM) "
                + " values("
                + TBDJ_NO
                + ","
                + ORG_NO
                + ",'00','"
                + TBDJ_ID
                + "',"
                + PRJ_NO
                + ",'"
                + TBR_NO
                + "','"
                + sessionInfo.getUserId()
                + "',sysdate) ";
        vc.add(insertSQL);
        // 查询标包 生成子表明细数据
        String sel2 =
            "select YXDBJYLIN.PRJL_NO,YXPRJLIN.DLFL_AMT from YXDBJYLIN,YXPRJLIN "
                + " where YXDBJYLIN.PRJL_NO=YXPRJLIN.PRJL_NO and YXDBJYLIN.TBR_NO = "
                + TBR_NO
                + " and YXDBJYLIN.DBJY_NO="
                + DBJY_NO
                + " and YXDBJYLIN.IS_ZB='01'";
        Rowset rs2 = db.getRS(sel2);
        while (rs2.next()) {
          String PRJL_NO = rs2.getString("PRJL_NO");
          CommSequence cs2 = CommSequence.getInstance("YXDBJYLIN_SEQ");
          String TBDJL_NO = cs2.getNextValue();
          String DLFL_AMT = rs2.getString("DLFL_AMT");
          insertSQL =
              " insert into YXDBJYLIN(DLFL_NO,DLF_NO,TBR_NO,PRJ_NO,PRJL_NO,DLFL_AMT,IS_JF) "
                  + " values("
                  + TBDJL_NO
                  + ","
                  + TBDJ_NO
                  + ","
                  + TBR_NO
                  + ","
                  + PRJ_NO
                  + ","
                  + PRJL_NO
                  + ","
                  + DLFL_AMT
                  + ", 'N')";
          vc.add(insertSQL);
        }
      }

      db.execSqlUpdateBatch(vc);
      db.commit();
      serviceRequest.addServiceReturnParameter("relString", "true");
    } catch (Exception e) {
      e.printStackTrace();
      serviceRequest.addServiceReturnParameter("relString", e.toString());
    } finally {
      if (db != null) {
        db.cleanup();
      }
    }
  }
Beispiel #23
0
 public void save(DataDom dataDom, SessionInfo sessionInfo, ServiceRequest serviceRequest)
     throws LiemsException {
   if (!saveBefore(dataDom, serviceRequest, sessionInfo)) {
     return;
   }
   Table table = dataDom.getTable("YXPRJMST");
   Database db = null;
   Row currRow = table.getRow(0L);
   if (currRow == null) {
     table.addRow(new Row(false, 0, 0, "new"));
     currRow = table.getRow(0L);
   }
   currRow.setFirstLastUserInfo(sessionInfo.getUserId());
   try {
     db = Tools.getDatabase(false);
     String isSplit = dataDom.getRootTable().getSafeRowColumnValue("IS_SPLIT");
     if (currRow.getDataStatus().equals("new")) {
       currRow.addColumn("ORG_NO", sessionInfo.getDefaultOrg());
       if ((currRow.getColumn("PRJ_ID") == null)
           || (currRow.getColumn("PRJ_ID").getValue() == null)
           || (currRow.getColumn("PRJ_ID").getValue().equals(""))) {
         String idTyp = currRow.getColumnValue("PRJ_EXT02");
         if ("A".equals(idTyp)) {
           CommCodeNumber KLTYPID =
               new CommCodeNumber(
                   "PRJ", sessionInfo.getCurrentLanguage(), sessionInfo.getUserId());
           currRow.addColumn(new Column("PRJ_ID", KLTYPID.getNextValue()));
         }
         CommCodeNumber ZB_ID =
             new CommCodeNumber("ZBBH", sessionInfo.getCurrentLanguage(), sessionInfo.getUserId());
         currRow.addColumn(new Column("ZB_ID", ZB_ID.getNextValue()));
         currRow.addColumn("VALID_STA", "A");
         currRow.addColumn(new Column("ZB_TIMES", "1"));
       }
       if ("N".equals(isSplit)) {
         Row row = new Row(false, 0, 0, "new");
         row.addColumn("PRJL_NAM", currRow.getColumnValue("PRJ_NAM"));
         row.addColumn("PRJL_ID", currRow.getColumnValue("PRJ_ID"));
         row.addColumn("BZ_AMT", "0.00");
         row.addColumn("IS_FB", "Y");
         dataDom.getChildTable().getRows().put("0", row);
       }
     }
     String dlfTyp = dataDom.getRootTable().getSafeRowColumnValue("DLF_TYP");
     super.save(dataDom, sessionInfo, serviceRequest, db);
     db.commit();
     String pkValue = currRow.getPkValue("PRJ_NO");
     if (isSplit.equals("Y")) {
       String sql = "";
       if (dlfTyp.equals("B")) {
         sql =
             "update YXPRJMST set ZBS_AMT = (select sum(ZBS_AMT) from YXPRJLIN where PRJ_NO="
                 + pkValue
                 + "),"
                 + "BZ_AMT = (select sum(BZ_AMT) from YXPRJLIN where PRJ_NO="
                 + pkValue
                 + "),"
                 + "DL_AMT=(select sum(DLFL_AMT) from YXPRJLIN where PRJ_NO="
                 + pkValue
                 + ")"
                 + " where PRJ_NO = "
                 + pkValue;
         dataDom.getChildTable().getField("DLFL_AMT").setReadonly(false);
       } else {
         sql =
             "update YXPRJMST set ZBS_AMT = (select sum(ZBS_AMT) from YXPRJLIN where PRJ_NO="
                 + pkValue
                 + "),"
                 + "BZ_AMT = (select sum(BZ_AMT) from YXPRJLIN where PRJ_NO="
                 + pkValue
                 + ")"
                 + " where PRJ_NO = "
                 + pkValue;
         dataDom.getChildTable().getField("DLFL_AMT").setReadonly(true);
       }
       Database.execString(sql);
     }
     serviceRequest.getMessage().addInfo("保存成功");
     initSel(dataDom);
     dataDom.getChildTable().getWhereLimit().addColumn("PRJ_NO", pkValue);
     dataDom.refresh(sessionInfo);
   } catch (Exception e) {
     if (db != null) {
       db.rollback();
     }
     Log.error(e);
     serviceRequest.getMessage().addInfo("保存失败,请重试或联系系统管理员!");
   } finally {
     if (db != null) {
       db.cleanup();
     }
   }
 }