apzl_leasing/src/com/ample/icms/util/GetInfoUtil.java

393 lines
15 KiB
Java

package com.ample.icms.util;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.are.jbo.JBOTransaction;
import com.amarsoft.awe.util.ASResultSet;
import com.amarsoft.awe.util.SqlObject;
import com.amarsoft.awe.util.Transaction;
import java.sql.SQLException;
public class GetInfoUtil {
private String flowUnid;
private String projectId;
private String projectNo;
private String contractId;
private String productId;
private String flowNo;
private String sTable;
/**
* 根据流程ID获取appCode和appName
*
* @return
* @throws Exception
*/
public String getAppInfoByFlowUnidRJM() throws Exception {
return getAppInfoByFlowUnid(this.flowUnid);
}
public String getAppInfoByFlowUnid(String flowUnid) throws Exception {
Transaction Sqlca = Transaction.createTransaction("als");
String projectNo = this.getProjectNoByFlowUnid(flowUnid, Sqlca);
if (projectNo == null || "".equals(projectNo)) {
return "0000@未找到当前流程对应的项目编号";
}
String flowNo = this.getFlowNoByFlowUnid(flowUnid, Sqlca);
if (flowNo == null || "".equals(flowNo)) {
return "0000@未找到当前流程对应的流程编号";
}
String appInfo = getAppInfoByProjectNo(projectNo, flowNo, Sqlca);
if(appInfo==null||appInfo.contains("0000@")){
String productId = getProductIdByFlowUnid(flowUnid, Sqlca);
appInfo = this.getAppInfoByProductId(productId, flowNo, Sqlca);
}
if (Sqlca != null) {
Sqlca.commit();
}
return appInfo;
}
/**
* 根据项目编号和流程编号获取appCode和appName
*
* @return
* @throws SQLException
*/
public String getAppInfoByProjectNoRJM() throws SQLException, JBOException {
return getAppInfoByProjectNo(this.projectNo, this.flowNo);
}
public String getAppInfoByProjectNo(String projectNo, String flowNo) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction("als");
String appInfo = this.getAppInfoByProjectNo(projectNo, flowNo, Sqlca);
return appInfo;
}
public String getAppInfoByProjectNo(String projectNo,String flowNo,JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String appInfo = getAppInfoByProjectNo(projectNo,flowNo,Sqlca);
return appInfo;
}
public String getAppInfoByProjectNo(String projectNo, String flowNo, Transaction Sqlca) throws SQLException {
String sql = "select app_code,app_name from icms_rela where flow_no='" + flowNo + "' and project_no='" + projectNo + "'";
SqlObject sql_icms = new SqlObject(sql);
ASResultSet rs = Sqlca.getASResultSet(sql_icms);
String appCode = null;
String appName = null;
while (rs.next()) {
appCode = rs.getString("app_code");
appName = rs.getString("app_name");
}
String appInfo = appCode + "@" + appName;
if (appCode == null) {
String productId = getProductIdByProjectNo(projectNo,Sqlca);
appInfo = this.getAppInfoByProductId(productId, flowNo, Sqlca);
}
return appInfo;
}
public String getAllAppInfoByProjectIdRJMT(JBOTransaction tx) throws SQLException, JBOException {
return getAllAppInfoByProjectId(this.projectId,tx);
}
public String getAllAppInfoByProjectId(String projectId,JBOTransaction tx) throws SQLException, JBOException {
String projectNo = getProjectNoByProjectId(projectId,tx);
return getAllAppInfoByProjectNo(projectNo,tx);
}
public JSONArray getAllAppInfoJsonByProjectId(String projectId,JBOTransaction tx) throws SQLException, JBOException {
String projectNo = getProjectNoByProjectId(projectId,tx);
Transaction Sqlca = Transaction.createTransaction(tx);
return getAllAppInfoJsonByProjectNo(projectNo,Sqlca);
}
/**
* 根据项目编号和流程编号获取appCode和appName
*
* @return
* @throws SQLException
*/
public String getAllAppInfoByProjectNoRJM() throws SQLException, JBOException {
return getAllAppInfoByProjectNo(this.projectNo);
}
public String getAllAppInfoByProjectNoRJMT(JBOTransaction tx) throws SQLException, JBOException {
return getAllAppInfoByProjectNo(this.projectNo,tx);
}
public String getAllAppInfoByProjectNo(String projectNo) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction("als");
String appInfo = this.getAllAppInfoByProjectNo(projectNo, Sqlca);
return appInfo;
}
public String getAllAppInfoByProjectNo(String projectNo,JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String appInfo = this.getAllAppInfoByProjectNo(projectNo, Sqlca);
return appInfo;
}
public String getAllAppInfoByProjectNo(String projectNo, Transaction Sqlca) throws SQLException {
return getAllAppInfoJsonByProjectNo(projectNo,Sqlca).toJSONString();
}
public JSONArray getAllAppInfoJsonByProjectNo(String projectNo, Transaction Sqlca) throws SQLException {
String sql = "select app_code,app_name from icms_rela where project_no='" + projectNo + "' and flow_no<>'MortgageFileMailFlow' group by app_code";
SqlObject sql_icms = new SqlObject(sql);
ASResultSet rs = Sqlca.getASResultSet(sql_icms);
if(!rs.next()){
String productId = getProductIdByProjectNo(projectNo,Sqlca);
JSONArray ja = getAllAppInfoJsonByProductId(productId,Sqlca);
return ja;
}
String appCode = null;
String appName = null;
JSONArray ja = new JSONArray();
while (rs.next()) {
appCode = rs.getString("app_code");
appName = rs.getString("app_name");
JSONObject appInfo = new JSONObject();
appInfo.put("app_code",appCode);
appInfo.put("app_name",appName);
appInfo.put("project_no",projectNo);
ja.add(appInfo);
}
return ja;
}
public JSONArray getAllAppInfoJsonByProductId(String productId, Transaction Sqlca) throws SQLException {
String sql = "select app_code,app_name from icms_prd_rela where productid='" + productId + "' and flowno<>'MortgageFileMailFlow' group by app_code order by update_time desc";
SqlObject sql_icms = new SqlObject(sql);
ASResultSet rs = Sqlca.getASResultSet(sql_icms);
String appCode = null;
String appName = null;
JSONArray ja = new JSONArray();
while (rs.next()) {
appCode = rs.getString("app_code");
appName = rs.getString("app_name");
JSONObject appInfo = new JSONObject();
appInfo.put("app_code",appCode);
appInfo.put("app_name",appName);
ja.add(appInfo);
}
if (appCode == null) {
return null;
}
return ja;
}
/**
* 根据productId和流程编号获取appCode和appName
*
* @return
* @throws SQLException
*/
public String getAppInfoByProductIdRJM() throws SQLException, JBOException {
return getAppInfoByProjectNo(this.productId, this.flowNo);
}
public String getAppInfoByProductId(String productId, String flowNo) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction("als");
String appInfo = this.getAppInfoByProductId(productId, flowNo, Sqlca);
return appInfo;
}
public String getAppInfoByProductId(String productId, String flowNo, Transaction Sqlca) throws SQLException {
String sql = "select app_code,app_name from icms_prd_rela where flowno='" + flowNo + "' and productid='" + productId + "' order by update_time desc";
SqlObject sql_icms = new SqlObject(sql);
ASResultSet rs = Sqlca.getASResultSet(sql_icms);
String appCode = null;
String appName = null;
while (rs.next()) {
appCode = rs.getString("app_code");
appName = rs.getString("app_name");
}
if (appCode == null) {
return "0000@未找到初始化的影像信息配置,请联系管理员";
}
String appInfo = appCode + "@" + appName;
return appInfo;
}
/**
* 根据flowunid获取projectNo
*
* @return
* @throws SQLException
*/
public String getProjectNoByFlowUnidRJM() throws SQLException, JBOException {
return getProjectNoByFlowUnid(this.flowUnid);
}
public String getProjectNoByFlowUnid(String flowUnid) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction("als");
String projectNo = getProjectNoByFlowUnid(flowUnid, Sqlca);
if (Sqlca != null) {
Sqlca.commit();
}
return projectNo;
}
public String getProjectNoByFlowUnid(String flowUnid, Transaction Sqlca) throws SQLException {
String sql = "select PROJECT_NO from lb_project_info_temp where FLOWUNID='" + flowUnid + "'";
String projectNo = Sqlca.getString(new SqlObject(sql));
if (projectNo == null || "".equals(projectNo) || projectNo.length() == 0) {
sql = "select PROJECT_NO from lb_project_info where id=(select project_id from lb_contract_info_temp where FLOWUNID='" + flowUnid + "')";
projectNo = Sqlca.getString(new SqlObject(sql));
}
if (projectNo == null || "".equals(projectNo) || projectNo.length() == 0) {
return null;
}
return projectNo;
}
/**
* 根据项目编号
*
* @param tx
* @return
* @throws SQLException,JBOException
*/
public String getProjectNoByProjectIdRJMT(JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String projectNo = getProjectNoByProjectId(projectId,Sqlca);
return projectNo;
}
public String getProjectNoByProjectId(String projectId, JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String projectNo = getProjectNoByProjectId(projectId,Sqlca);
return projectNo;
}
public String getProjectNoByProjectId(String projectId, Transaction Sqlca) throws SQLException {
String sql = "select project_no from lb_project_info where id='" + projectId + "'";
String projectNo = Sqlca.getString(new SqlObject(sql));
return projectNo;
}
public String getProjectNoByContractIdRJMT(JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String projectNo = getProjectNoByContractId(contractId,Sqlca);
return projectNo;
}
public String getProjectNoByContractId(String contractId, JBOTransaction tx) throws SQLException, JBOException {
Transaction Sqlca = Transaction.createTransaction(tx);
String projectNo = getProjectNoByContractId(contractId,Sqlca);
return projectNo;
}
public String getProjectNoByContractId(String contractId,Transaction Sqlca) throws SQLException {
String sql = "select project_no from lb_project_info where id=(select project_id from lb_contract_info where id='"+contractId+"')";
String projectNo = Sqlca.getString(new SqlObject(sql));
return projectNo;
}
public String getProjectIdByContractId(String contractId,Transaction Sqlca) throws SQLException {
String sql = "select project_id from lb_contract_info where id='"+contractId+"'";
String projectNo = Sqlca.getString(new SqlObject(sql));
return projectNo;
}
/**
* 根据流程编号
*
* @param flowUnid
* @param Sqlca
* @return
* @throws SQLException
*/
public String getFlowNoByFlowUnid(String flowUnid, Transaction Sqlca) throws SQLException {
String sql = "select flowno from flow_object where objectno='" + flowUnid + "'";
String flowNo = Sqlca.getString(new SqlObject(sql));
return flowNo;
}
/**
* 根据flowunid获取productid
*
* @param flowUnid
* @param Sqlca
* @return
* @throws SQLException
*/
public String getProductIdByFlowUnid(String flowUnid, Transaction Sqlca) throws SQLException {
String sql = "select productId from flow_bussiness_object where flow_unid='" + flowUnid + "'";
String productId = Sqlca.getString(new SqlObject(sql));
return productId;
}
public String getProductIdByProjectNo(String projectNo, Transaction Sqlca) throws SQLException {
String sql = "select product_id from lb_project_info where project_no='"+projectNo+"'";
String productId = Sqlca.getString(new SqlObject(sql));
return productId;
}
public String getAppInfoByFlowNoRJM() throws SQLException {
Transaction Sqlca = Transaction.createTransaction("als");
return getAppInfoByFlowNo(flowNo,Sqlca);
}
public String getAppInfoByFlowNo(String flowNo, Transaction Sqlca) throws SQLException {
String sql = "select app_code,app_name from icms_prd_rela where flowno='" + flowNo + "' order by update_time desc";
SqlObject sql_icms = new SqlObject(sql);
ASResultSet rs = Sqlca.getASResultSet(sql_icms);
String appCode = null;
String appName = null;
while (rs.next()) {
appCode = rs.getString("app_code");
appName = rs.getString("app_name");
}
if (appCode == null) {
return "0000@未找到初始化的影像信息配置,请联系管理员";
}
String appInfo = appCode + "@" + appName;
return appInfo;
}
public String getDistributorIdByFlowUnid(String flowUnid, Transaction Sqlca) throws SQLException {
String sql = "select distributor_no from distributor_info_temp where flowunid='" + flowUnid + "'";
String distributorNo = Sqlca.getString(new SqlObject(sql));
return distributorNo;
}
public String getFlowUnid() {
return flowUnid;
}
public void setFlowUnid(String flowUnid) {
this.flowUnid = flowUnid;
}
public String getProjectNo() {
return projectNo;
}
public void setProjectNo(String projectNo) {
this.projectNo = projectNo;
}
public String getFlowNo() {
return flowNo;
}
public void setFlowNo(String flowNo) {
this.flowNo = flowNo;
}
public String getsTable() {
return sTable;
}
public void setsTable(String sTable) {
this.sTable = sTable;
}
public String getProductId() {
return productId;
}
public void setProductId(String productId) {
this.productId = productId;
}
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public String getContractId() {
return contractId;
}
public void setContractId(String contractId) {
this.contractId = contractId;
}
}