⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 movephonebean.java

📁 电信的网厅的整站代码
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		try {
			// 查询固话的费用信息。
			String sSO_ID = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID);
			String sSO_SEQ = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_SEQ);
			DataTable dt = callQryFee(useDisct, sSO_ID, sSO_SEQ);
			
			DataTable adsl_dt = null;
			// 查询ADSL的费用信息。
			if ( hasAdsl() ) {
				String sADSL_SO_ID = getRecordIDS(BSSParamName.OUTPUT_ADSL_SO_ID);
				String sADSL_SO_SEQ = getRecordIDS(BSSParamName.OUTPUT_ADSL_SO_SEQ);
				adsl_dt = callQryFee(useDisct, sADSL_SO_ID, sADSL_SO_SEQ);
			}

			DataTable outTable = null;
			if (dt != null) {
				outTable = dt.copyStruct();
				copyFee(dt, outTable);
				
				if ( adsl_dt != null ) {
					copyFee(adsl_dt, outTable);
				}
			}
			
			if ( outTable != null ) {
				setRecordFrom(outTable, BSSParamName.APPLFEE_TABLE);
				save();
			}

			return outTable;
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
		}

		return null;
	}
	
	private void copyFee(DataTable src, DataTable desc) {
		// 费用合并到一张表中。
		for ( int i=0; i<src.getRows().getCount(); i++) {
			DataRow newRow = desc.newRow();
			DataRow dr = src.getRow(i);
			for ( int j=0; j<desc.getColumns().getCount(); j++) {
				String sColName = desc.getColumn(j).getColumnName();
				newRow.setValue(sColName, dr.getValue(sColName));
			}
			desc.getRows().add(newRow);
		}
	}

	private DataTable callQryFee(boolean useDisct, String sSO_ID, String sSO_SEQ) throws IOException {
		String sDisctType = getRecordIDS(BSSParamName.PRODTYPE_DISCT_TYPE_ID);
		String sCityCode = getRecordIDS("CITYCODE");

		DataTable dt = null;
		if (!useDisct)
			dt = BssInter7.callWebQryApplFee(sSO_ID, sSO_SEQ, sCityCode);

		if (dt == null && sDisctType != null) {
			dt = BssInter1.callWebDispApplFee(sDisctType, sSO_ID, sSO_SEQ, sCityCode);
		}
		return dt;
	}

	private boolean getSoIDNbr() {
		String areaId = getRecordIDS("AREAID");
		String cityCode = getRecordIDS("CITYCODE");

		try {
			DataTable dt = BssInter6.callWebGetSoIDNbr(areaId, cityCode);
			String sSoId = dt.getRow(0).getString(BSSParamName.SOIDNBR_SO_ID);
			String sSoNbr = dt.getRow(0).getString(BSSParamName.SOIDNBR_SO_NBR);

			setRecordIDS(BSSParamName.SOIDNBR_SO_ID, sSoId);
			setRecordIDS(BSSParamName.SOIDNBR_SO_NBR, sSoNbr);

			return true;
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
		}

		return false;
	}

	private String getSo_ID() {
		String sSoId = getRecordIDS(BSSParamName.SOIDNBR_SO_ID);
		if (sSoId == null) {
			getSoIDNbr();
			sSoId = getRecordIDS(BSSParamName.SOIDNBR_SO_ID);
		}

		return sSoId;
	}

	private String getSo_Nbr() {
		String sSoNbr = getRecordIDS(BSSParamName.SOIDNBR_SO_NBR);
		if (sSoNbr == null) {
			getSoIDNbr();
			sSoNbr = getRecordIDS(BSSParamName.SOIDNBR_SO_NBR);
		}

		return sSoNbr;
	}

	public String getAreaName() {
		try {
			String areaName = getRecordIDS("AREANAME");
			if (areaName == null) {
				DataTable areaInfo_dt = null;
				String cityCode = "";
				cityCode = getRecordIDS("CITYCODE"); // 城市编号
				String area_Id = getRecordIDS("AREAID");
				areaInfo_dt = BssInter2.callWebQryAreaInfo("6", cityCode);
				for (int i = 0; areaInfo_dt != null && i < areaInfo_dt.getRows().getCount(); i++) {
					if (area_Id.equals(areaInfo_dt.getRow(i).getString("AREA_INFOiAREA_ID"))) {
						areaName = areaInfo_dt.getRow(i).getString("AREA_INFOiNAME");// 地区名称
						break;
					}
				}
			}
			return areaName;
		} catch (Exception e) {
			FileLogger.getLogger().debug("取已有终端设备ID失败", e);
			return null;
		}
	}

	public boolean finishAccept() {
		if (hasAdsl()) {
			if (!moveAdsl()) {
				return false;
			}
		}

		return movePhone();
	}
	
	private boolean hasAdsl() {
		String hasAdsl = getRecordIDS(BSSParamName.OTHER_HAS_ADSL);
		if (hasAdsl != null && hasAdsl.equalsIgnoreCase("Y")) {
			return true;
		}
		
		return false;
	}

	public boolean cancel() {
		try {
			String SOiSO_ID = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID);
			String SOiSO_SEQ = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_SEQ);
			String SOiSO_NBR = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_NBR);
			String SERViSERV_ID = getRecordIDS(BSSParamName.ARCHIVE_INFO_SERV_ID);
			String CUSTiCUST_ID = getRecordIDS(BSSParamName.CUST_ARCHIVES_CUST_ID);
			String ACCTiACCT_ID = getRecordIDS(BSSParamName.ACC_ACCT_ID);
			String ACCESS_INTERFACEiACCESS_ID = "";
			String sCityCode = getRecordIDS("CITYCODE");

			if (isEmpty(SOiSO_ID) || isEmpty(SOiSO_SEQ) || isEmpty(SOiSO_NBR))
				return true;
			if (ACCTiACCT_ID == null)
				ACCTiACCT_ID = "";

			BssInter1.callWebCancelSo(SOiSO_ID, SOiSO_SEQ, SOiSO_NBR, SERViSERV_ID, CUSTiCUST_ID, ACCTiACCT_ID,
					ACCESS_INTERFACEiACCESS_ID, sCityCode);

			// 释放订单流水号。
			setRecordIDS(BSSParamName.SOIDNBR_SO_ID, null);
			setRecordIDS(BSSParamName.SOIDNBR_SO_NBR, null);

			// 释放BSS输出的流水号。
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID, null);
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_SEQ, null);
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_NBR, null);
			setRecordIDS(BSSParamName.OUTPUT_PHONE_APPL_DATE, null);

			// 撤销保存的费用信息。
			setRecordFrom(null, BSSParamName.APPLFEE_TABLE);

			// 如果该单有存在ADSL,释放BSS输出的流水号。
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_ID, null);
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_SEQ, null);
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_NBR, null);
			setRecordIDS(BSSParamName.OUTPUT_ADSL_APPL_DATE, null);

			// 撤销保存的费用信息。
			setRecordFrom(null, BSSParamName.OTHER_ADSL_PREV + BSSParamName.APPLFEE_TABLE);

			save();

			return true;
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
		}

		return false;
	}

	public boolean recision() {
		try {
			if (getStepSN() >= 5)
				return true;

			String SOiSO_ID = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID);
			String SOiSO_SEQ = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_SEQ);
			String SOiSO_NBR = getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_NBR);
			String SOiAPPL_DATE = getRecordIDS(BSSParamName.OUTPUT_PHONE_APPL_DATE);
			String SOiAREA_ID = getRecordIDS("AREAID");
			String SOiSO_TYPE_ID = getRecordIDS(BSSParamName.OTHER_SO_TYPE_ID);
			String SOiSERV_TYPE_ID = getRecordIDS(BSSParamName.CUST_ARCHIVES_SERV_TYPE_ID);
			String sCityCode = getRecordIDS("CITYCODE");

			if (isEmpty(SOiSO_ID) || isEmpty(SOiSO_SEQ) || isEmpty(SOiSO_NBR) || isEmpty(sCityCode)
					|| isEmpty(SOiSERV_TYPE_ID) || isEmpty(SOiSO_TYPE_ID) || isEmpty(SOiAREA_ID)
					|| isEmpty(SOiAPPL_DATE))
				return false;

			BssInter1.callWebDealNewOrd(SOiSO_ID, SOiSO_SEQ, SOiSO_NBR, SOiAPPL_DATE, SOiAREA_ID, SOiSO_TYPE_ID,
					SOiSERV_TYPE_ID, sCityCode);
			
			if ( hasAdsl() ) {
				SOiSERV_TYPE_ID = getRecordIDS(BSSParamName.OTHER_ADSL_PREV + BSSParamName.CUST_ARCHIVES_SERV_TYPE_ID);
				SOiSO_ID = getRecordIDS(BSSParamName.OUTPUT_ADSL_SO_ID);
				SOiSO_SEQ = getRecordIDS(BSSParamName.OUTPUT_ADSL_SO_SEQ);
				SOiSO_NBR = getRecordIDS(BSSParamName.OUTPUT_ADSL_SO_NBR);
				SOiAPPL_DATE = getRecordIDS(BSSParamName.OUTPUT_ADSL_APPL_DATE);

				BssInter1.callWebDealNewOrd(SOiSO_ID, SOiSO_SEQ, SOiSO_NBR, SOiAPPL_DATE, SOiAREA_ID, SOiSO_TYPE_ID,
						SOiSERV_TYPE_ID, sCityCode);
			}
			
			setStepSN(5);
			finishFlow();
			save();

			return true;
		} catch (Exception ex) {
			FileLogger.getLogger().warn(ex.getMessage(), ex);
		}

		return false;
	}

	public boolean moveAdsl() {
		String sActionType = "moveadsl";

		// 如果ADSL档案表不存在则先获取ADSL档案信息。
		this.callQryServByADSL();

		Map _map = moveAdsl(sActionType);
		
		if ( _map != null ) {
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_ID, (String) _map.get(BssReferSoBean.OUTPUT_SO_ID));
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_NBR, (String) _map.get(BssReferSoBean.OUTPUT_SO_NBR));
			setRecordIDS(BSSParamName.OUTPUT_ADSL_SO_SEQ, (String) _map.get(BssReferSoBean.OUTPUT_SO_SEQ));
			setRecordIDS(BSSParamName.OUTPUT_ADSL_APPL_DATE, (String) _map.get(BssReferSoBean.OUTPUT_APPL_DATE));
			
			return true;
		}
		
		return false;
	}
	
	public boolean moveAdslBySignle() {
//		String area_Id = getRecordIDS("AREAID");
//		String cityCode = getRecordIDS("CITYCODE");
//		try {
//			DataTable dataNbr_dt = getRecordFrom("ADSL_NBRSPE");
//			if ( dataNbr_dt == null )
//				dataNbr_dt = com.doone.fj1w.fjmgr.order.BssInter5.callWebQryNbrSpe( area_Id,"S","S","Z","1","1","ADSL",cityCode);
//			if ( dataNbr_dt == null ) return false;
//
//			setRecordFrom(dataNbr_dt, "ADSL_NBRSPE");
//			save();
//		}
//		catch(Exception ex) {
//			FileLogger.getLogger().info(ex.getMessage(),ex);
//			
//			return false;
//		}
		System.out.println("................!!!!!!!!!!!!!@@@@@@@@@@@@@");
		
		Map _map = moveAdsl("moveadsl_signle");

		if ( _map != null ) {
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID, (String) _map.get(BssReferSoBean.OUTPUT_SO_ID));
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_NBR, (String) _map.get(BssReferSoBean.OUTPUT_SO_NBR));
			setRecordIDS(BSSParamName.OUTPUT_PHONE_SO_SEQ, (String) _map.get(BssReferSoBean.OUTPUT_SO_SEQ));
			setRecordIDS(BSSParamName.OUTPUT_PHONE_APPL_DATE, (String) _map.get(BssReferSoBean.OUTPUT_APPL_DATE));
			return true;
		}
		
		return false;
	}

	private Map moveAdsl(String sActionType) {
		// 如果流水没有生成则先生成流水。
		if (getRecordIDS(BSSParamName.SOIDNBR_SO_ID) == null || getRecordIDS(BSSParamName.SOIDNBR_SO_NBR) == null) {
			if (!this.getSoIDNbr())
				return null;
		}

		try {
			Map _map = BssReferSoBean.call(sActionType, this, getRecordIDS("CITYCODE"));
			return _map;
		} catch (Exception ex) {
			FileLogger.getLogger().info(ex.getMessage(), ex);
		}

		return null;
	}

	public boolean movePhone() {
		boolean ret = false;
		try {
			// 如果已经生成了申请流水则不再提交。
			if (getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_ID) != null
					|| getRecordIDS(BSSParamName.OUTPUT_PHONE_SO_NBR) != null)
				return true;

			DataSet dtSet = BssReferSoBean.getReferSoBean();

			// 提交申请信息;
			setApplyInfo(dtSet.getDataTable(BssReferSoBean.APPLY_INFO_TABLE));
			// 设置经办人信息;
			setCorrInfo(dtSet.getDataTable(BssReferSoBean.CORR_INFO_TABLE), "D",
					getRecordIDS(BSSParamName.TRANSACTOR_CONTACT_NAME),
					getRecordIDS(BSSParamName.TRANSACTOR_CONTACT_TEL), getRecordIDS(BSSParamName.TRANSACTOR_CERT_TYPE),
					getRecordIDS(BSSParamName.TRANSACTOR_CERT_NBR));
			// 设置联系人信息;
			setCorrInfo(dtSet.getDataTable(BssReferSoBean.CORR_INFO_TABLE), "C",
					getRecordIDS(BSSParamName.LINKMAN_CONTACT_NAME), getRecordIDS(BSSParamName.LINKMAN_CONTACT_TEL),
					getRecordIDS(BSSParamName.LINKMAN_CERT_TYPE), getRecordIDS(BSSParamName.LINKMAN_CERT_NBR));

			// 提交产品信息
			setProd(dtSet.getDataTable(BssReferSoBean.PROD_TABLE), getRecordIDS(BSSParamName.ARCHIVE_INFO_PROD_ID), 1,
					dtSet.getDataTable(BssReferSoBean.APPLY_INFO_TABLE).getRow(0).getString(
							BssReferSoBean.APPLY_INFO_SO_TYPE_ID));
			// 提交程控信息。
			setProdFun(dtSet.getDataTable(BssReferSoBean.PROD_TABLE));

			// 提交付费信息
			setServAcct(dtSet.getDataTable(BssReferSoBean.SERV_ACCT_TABLE));

			// 提交受理业务信息
			setBusiness(dtSet.getDataTable(BssReferSoBean.BUSINESS_TABLE),
					getRecordIDS(BSSParamName.ARCHIVE_INFO_SECRE_GRADE_ID),
					getRecordIDS(BSSParamName.ARCHIVE_INFO_LIMIT_DATE),
					getRecordIDS(BSSParamName.ARCHIVE_INFO_BESP_DATE), getRecordIDS(BSSParamName.ARCHIVE_INFO_PROD_ID),
					getRecordIDS(BSSParamName.CUST_ARCHIVES_CUST_ID), "X");

			// 提交其它业务信息
			setNWK(dtSet.getDataTable(BssReferSoBean.NWK_TABLE), getRecordIDS(BSSParamName.NWK_SERV_ACC_NBR));

			// 设置资源接入信息
			setAccess(dtSet.getDataTable(BssReferSoBean.ACCESS_TABLE), getRecordIDS(BSSParamName.WEB_ACCESS_ACCESS_ID),
					getRecordIDS(BSSParamName.ACCNODE_ACC_NODE_ID), getRecordIDS(BSSParamName.EXCH_EXCH_ID),
					getRecordIDS(BSSParamName.SUB_ADDR_ADDR_ID), null, null, "A");
			if (getRecordFrom(BSSParamName.ACCESS_TABLE) != null) {
				DataRow oldAccess = getRecordFrom(BSSParamName.ACCESS_TABLE).getRow(0);
				setAccess(dtSet.getDataTable(BssReferSoBean.ACCESS_TABLE), oldAccess
						.getString(BSSParamName.ACCESS_ACCESS_ID),

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -