📄 lanflowservice.java
字号:
package com.doone.fj1w.fjmgr.order;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Hashtable;
import java.util.Map;
import java.util.Vector;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import com.doone.data.DacClient;
import com.doone.data.DataRow;
import com.doone.data.DataSet;
import com.doone.data.DataTable;
import com.doone.fj1w.fjmgr.order.Bss_infoEntity.CustArchivesBean;
import com.doone.fj1w.fjmgr.order.list.BssSreachCustImpl;
import com.doone.fj1w.fjmgr.order.list.QueryBssInfoFromDB;
import com.doone.fj1w.fjmgr.order.saveFlowRecord.AdslFlow;
import com.doone.iossp.FormBody;
import com.doone.util.ExtString;
import com.doone.util.FileLogger;
public class LanFlowService {
static private FileLogger log = new FileLogger();
/**将选中的客户保存到数据库中
*
* @param request
* @param response
* @param _map
* @return
*/
public static String saveInfo(ServletRequest request, ServletResponse response, Map _map) {
try {
if (_map != null) {
String infoType = (String) _map.get("INFOTYPE");
String prodOrderId = (String) _map.get("PRODORDERID");
TF_BSSFlowRecord tf_BSSFlowRecord = new TF_BSSFlowRecord(new DacClient(),
Long.parseLong(prodOrderId));
if(infoType.equals("archives")){
System.out.println("infoType==>"+infoType);
tf_BSSFlowRecord.setRecordIDS(BssParameter.SERVISERV_TYPE_ID,"48");
tf_BSSFlowRecord.setStepSN(1);
tf_BSSFlowRecord.save();
}
/*保存客户的记费信息*/
if(infoType.equals("payInfo")){
System.out.println("infoType==>"+infoType);
String payMode = (String) _map.get("PAYMODE");//计费方式
String payNo = (String) _map.get("PAYNO");//付费号码
String percent = (String) _map.get("PERCENT");//付费额度
String payType = (String) _map.get("PAYTYPE");//帐目类型
tf_BSSFlowRecord.setRecordIDS("PAYMODE",payMode);
tf_BSSFlowRecord.setRecordIDS("PAYNO",payNo);
tf_BSSFlowRecord.setRecordIDS("PERCENT",percent);
tf_BSSFlowRecord.setRecordIDS("PAYTYPE",payType);
tf_BSSFlowRecord.setStepSN(3);
tf_BSSFlowRecord.save();
}
/*保存客户的终端设备信息*/
if(infoType.equals("deviceInfo")){
System.out.println("infoType==>"+infoType);
String productIds = (String) _map.get("PRODUCTID");//终端设备
String attachIds = (String) _map.get("ATTACHID");//产权归属
String serivceIds = (String) _map.get("SERVICEID");//维护级别
String[] productId = ExtString.split(productIds,"and",null,0);
String[] attachId = ExtString.split(attachIds,"and",null,0);
String[] serivceId = ExtString.split(serivceIds,"and",null,0);
DataTable select_device_dt = AdslFlowService.getNewTable(BssParameter.SELECT_DEVICE_TABLE,
BssParameter.DEVICEID,productId);
DataTable select_attach_dt = AdslFlowService.getNewTable(BssParameter.SELECT_ATTACH_TABLE,
BssParameter.ATTACHID,attachId);
DataTable select_serivce_dt = AdslFlowService.getNewTable(BssParameter.SELECT_SERVICE_TABLE,
BssParameter.SERVICEID,serivceId);
tf_BSSFlowRecord.setRecordFrom(select_device_dt,BssParameter.SELECT_DEVICE_TABLE);
tf_BSSFlowRecord.setRecordFrom(select_attach_dt,BssParameter.SELECT_ATTACH_TABLE);
tf_BSSFlowRecord.setRecordFrom(select_serivce_dt,BssParameter.SELECT_SERVICE_TABLE);
tf_BSSFlowRecord.setStepSN(4);
tf_BSSFlowRecord.save();
}
/*保存客户的服务信息*/
if(infoType.equals("serverInfo")){
System.out.println("infoType==>"+infoType);
String servProperty = (String) _map.get("SERVPROPERTY");//服务性质
tf_BSSFlowRecord.setRecordIDS("SERVPROPERTY",servProperty);
/*保存adsl协议*/
DataTable service_dt = null;
String cityCode = tf_BSSFlowRecord.getRecordIDS("CITYCODE"); //城市编号
String SO_PRODiPROD_ID = tf_BSSFlowRecord.getRecordIDS("SERVPROPERTY");//产品编码(服务性质编码)
/*取可选协议信息*/
/*取ADSL数据号码*/
String servTypeId = "48";//服务类型(LAN)
String SOiSO_TYPE_ID = "1";//申请类型编码(新装)
String STAFF_ID = "QZ02900";//受理员工
String servId = tf_BSSFlowRecord.getRecordIDS("SERVISERV_ID");//服务编号
service_dt = BssInter3.callWebQryProtocol( servTypeId,cityCode,
SOiSO_TYPE_ID,
STAFF_ID,
servId,
SO_PRODiPROD_ID);
tf_BSSFlowRecord.setRecordFrom(service_dt,"LANPROTOCOL_TABLE");
tf_BSSFlowRecord.setStepSN(5);
tf_BSSFlowRecord.save();
}
/*保存客户的特别信息*/
if(infoType.equals("selfhoodInfo")){
System.out.println("infoType==>"+infoType);
String dataNbr = (String) _map.get("DATANBR");//数据号码
String dataNbrId = (String) _map.get("DATANBRID");//数据号码ID
String addPhoNbr = (String) _map.get("ADDPHONBR");//增装电话号码
String dataAccountMethod = (String) _map.get("DATAACCOUNTMETHOD");//增装电话号码
String netOrder = (String) _map.get("NETORDER");//增装电话号码
String deviceAccountMethod = (String) _map.get("DEVICEACCOUNTMETHOD");//增装电话号码
String num = (String) _map.get("IPNUM");//IP个数
String IPType = (String) _map.get("IPTYPE");//IP类型
String hostName = (String) _map.get("HOSTNAME");//主机域名
String dialUpAcc = (String) _map.get("DIALUPACC");//拨号帐号
String dialUpPwd = (String) _map.get("DIALUPPWD");//拨号密码
String everyTime = (String) _map.get("EVERYTIME");//每次上网时长
String everyMonth = (String) _map.get("EVERYMONTH");//每月上网时长
//验证新装宽带帐号是否存在
String result = BssInter1.IsAdslIdRepeatWeb(dialUpAcc,tf_BSSFlowRecord.getRecordIDS("CITYCODE"));
if(result.equals("-1")) {
return "-1";
}
else if(result.equals("-2")){
return "-2";//帐号格式非法
}
else if(result.equals("1")){
return "-3";//该帐号已被其他人使用
}
tf_BSSFlowRecord.setRecordIDS("DATANbr",dataNbr);
tf_BSSFlowRecord.setRecordIDS("DATANbrId",dataNbrId);
tf_BSSFlowRecord.setRecordIDS("ADDPHONbr",addPhoNbr);
tf_BSSFlowRecord.setRecordIDS("DATAACCOUNTMETHOD",dataAccountMethod);
tf_BSSFlowRecord.setRecordIDS("NETORDER",netOrder);
tf_BSSFlowRecord.setRecordIDS("DEVICEACCOUNTMETHOD",deviceAccountMethod);
tf_BSSFlowRecord.setRecordIDS("NUM",num);
tf_BSSFlowRecord.setRecordIDS("IPTYPE",IPType);
tf_BSSFlowRecord.setRecordIDS("HOSTNAME",hostName);
tf_BSSFlowRecord.setRecordIDS("DIALUPACC",dialUpAcc);
tf_BSSFlowRecord.setRecordIDS("DIALUPPWD",dialUpPwd);
tf_BSSFlowRecord.setRecordIDS("EVERYTIME",everyTime);
tf_BSSFlowRecord.setRecordIDS("EVERYMONTH",everyMonth);
tf_BSSFlowRecord.setStepSN(6);
tf_BSSFlowRecord.save();
}
/*保存取ADSL协议环节*/
if(infoType.equals("shineAccountInfo")){
System.out.println("infoType==>"+infoType);
String isGive =(String) _map.get("ISGIVE");//是否开通阳光帐号
String shineAccount = (String) _map.get("SHINEACCOUNT");//阳光帐号
String studentPwd = (String) _map.get("STUDENTPWD");//学生密码
String familyPwd = (String) _map.get("FAMILYPWD");//家长密码
tf_BSSFlowRecord.setRecordIDS("ISOPEN",isGive);
tf_BSSFlowRecord.setRecordIDS("SHINEACCOUNT",shineAccount);
tf_BSSFlowRecord.setRecordIDS("STUDENTPWD",studentPwd);
tf_BSSFlowRecord.setRecordIDS("FAMILYPWD",familyPwd);
tf_BSSFlowRecord.setStepSN(7);
tf_BSSFlowRecord.save();
}
/*保存取ADSL协议环节*/
if(infoType.equals("protocolInfo")){
System.out.println("infoType==>"+infoType);
tf_BSSFlowRecord.setStepSN(8);
tf_BSSFlowRecord.save();
}
if(infoType.equals("relationInfo")){
System.out.println("infoType==>"+infoType);
String name =(String) _map.get("RELATIONNAME");//联系人姓名
String pho = (String) _map.get("RELATIONPHO");//联系人客户的联系电话
String card = (String) _map.get("CARDTYPE");//客户的证件
String cardNo = (String) _map.get("CARDNO");//客户的证件号码
String menType = (String) _map.get("TITLE");
if(menType != null && menType.equals("经办人")){
tf_BSSFlowRecord.setRecordIDS("ACCEPTMEN_NAME",name);
tf_BSSFlowRecord.setRecordIDS("ACCEPTMEN_PHO",pho);
tf_BSSFlowRecord.setRecordIDS("ACCEPTMEN_CARD",card);
tf_BSSFlowRecord.setRecordIDS("ACCEPTMEN_CARDNO",cardNo);
}
else{
/*添加客户信息*/
tf_BSSFlowRecord.setRecordIDS("CUSTICUST_RELATIONNAME",name);
tf_BSSFlowRecord.setRecordIDS("CUSTICUST_RELATIONPHO",pho);
tf_BSSFlowRecord.setRecordIDS("CUSTICUST_CARD",card);
tf_BSSFlowRecord.setRecordIDS("CUSTICUST_CARDNO",cardNo);
}
tf_BSSFlowRecord.setStepSN(9);
tf_BSSFlowRecord.save();
}
/*保存客户的公共的受理信息*/
if(infoType.equals("commonAcceptInfo")){
System.out.println("infoType==>"+infoType);
String relationName = (String) _map.get("RELATIONNAME");//联系人姓名
String acceptMen = (String) _map.get("ACCEPTMEN");//受理人姓名
String developMen = (String) _map.get("DEVELOPMEN");//发展员工
String fixType = (String) _map.get("FIXTYPE");//安装类型
String operationLevel = (String) _map.get("OPERATIONLEVEL");//处理级别
String acceptSource = (String) _map.get("ACCEPTSOURCE");//受理来源
String bespeakTime = (String) _map.get("BESPEAKTIME");//预约时间
tf_BSSFlowRecord.setRecordIDS("CUSTICUST_RELATIONNAME",relationName);
tf_BSSFlowRecord.setRecordIDS("ACCEPTMEN_NAME",acceptMen);
tf_BSSFlowRecord.setRecordIDS("DEVELOPMEN",developMen);
tf_BSSFlowRecord.setRecordIDS("FIXTYPE",fixType);
tf_BSSFlowRecord.setRecordIDS("OPERATIONLEVEL",operationLevel);
tf_BSSFlowRecord.setRecordIDS("ACCEPTSOURCE",acceptSource);
tf_BSSFlowRecord.setRecordIDS("BESPEAKTIME",bespeakTime);
tf_BSSFlowRecord.setStepSN(9);
tf_BSSFlowRecord.save();
}
/*保存客户是否赠送礼品信息*/
if(infoType.equals("giftInfo")){
System.out.println("infoType==>"+infoType);
String isGive = (String) _map.get("ISGIVE");//是否赠送礼品
String giftNo = (String) _map.get("GIFTNO");//是否赠送礼品
tf_BSSFlowRecord.setRecordIDS("GIFENO",giftNo);
tf_BSSFlowRecord.setRecordIDS("ISGIFE",isGive);
tf_BSSFlowRecord.setStepSN(10);
tf_BSSFlowRecord.save();
}
/*保存客户选择的优惠类型信息*/
if(infoType.equals("disctTypeInfo")){
System.out.println("infoType==>"+infoType);
String disctType = (String) _map.get("DISCTTYPE");
tf_BSSFlowRecord.setRecordIDS("DISCTTYPE",disctType);
tf_BSSFlowRecord.setStepSN(11);
tf_BSSFlowRecord.save();
}
}
return "1";
} catch (Exception rux) {
FileLogger.getLogger().warn(rux.getMessage(), rux);
return "0";
}
}
/**判断两个协议是否依赖
*
* @param protocolId
* @param prodOrderId
* @return
*/
public static String relaBProto(String protocolId,String prodOrderId) {
try {
String intfo = "";
boolean isPass = true;
if (prodOrderId != null) {
TF_BSSFlowRecord tf_BSSFlowRecord = TF_BSSFlowRecord.getBSSFlowRecord(new DacClient(),
Long.parseLong(prodOrderId));
DataTable select_protocol_dt = tf_BSSFlowRecord.getRecordFrom(BssParameter.SELECT_PROTOCOL_TABLE);
String protocolName = AdslFlowService.getInfoByField_value(tf_BSSFlowRecord.getRecordFrom("LANPROTOCOL_TABLE"),
protocolId,"PROT_INFO_SYSiPROTOCOL_ID","PROT_INFO_SYSiPROTOCOL_NAME");
for(int i=0;i<protocolName.length();i++) {
if(protocolName.charAt(i) == '{') {
intfo = protocolName.substring(i+1, i+4);
if(intfo.equals("依赖于")) {
isPass = false;
intfo = protocolName.substring(i+6,protocolName.length()-1);
}
}
}
if(isPass == false) {
String[] reProtocolName = ExtString.split(intfo,"或",null,0);
String reProtocolId = "";
boolean isHaving = false;
if(select_protocol_dt != null && select_protocol_dt.getRows().getCount() > 0) {
for(int j=0;j<select_protocol_dt.getRows().getCount();j++) {
reProtocolId = select_protocol_dt.getRow(j).getString(BssParameter.PROTOCOLID);
for(int i=0;i<reProtocolName.length;i++) {
protocolId = AdslFlowService.getInfoByField_value(tf_BSSFlowRecord.getRecordFrom("LANPROTOCOL_TABLE"),
reProtocolName[i],"PROT_INFO_SYSiPROTOCOL_NAME","PROT_INFO_SYSiPROTOCOL_ID");
//System.out.println("protocolId==>"+protocolId);
if(protocolId.equals(reProtocolId)) {
isHaving = true;
break;
}
if(isHaving == true) break;
}
}
}
if(isHaving == false) {
return "“" + intfo + "["+AdslFlowService.getInfoByField_value(tf_BSSFlowRecord.getRecordFrom("LANPROTOCOL_TABLE"),
intfo,"PROT_INFO_SYSiPROTOCOL_NAME","PROT_INFO_SYSiPROTOCOL_ID")+"]”";
}
else {
return "0";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -