package xin.glue.nui.F.F01;
import xin.glue.user.common.GlobalConstants;
import com.posdata.glue.PosException;
import com.posdata.glue.biz.activity.PosActivity;
import com.posdata.glue.biz.constants.PosBizControlConstants;
import com.posdata.glue.biz.control.PosBizProvider;
import com.posdata.glue.context.PosContext;
import com.posdata.glue.msg.PosMESMessageImpl;
import com.posdata.glue.msg.PosMessage;
/* Program Name SMSOrdMain (NIF012100)
* Description SMS INSTRUCTION MANAGEMENT MAIN
* Write By KIM SUNG HO
* Date 2008-10-26
*/
public class SMSOrdMain extends PosActivity implements GlobalConstants {
public String runActivity(PosContext context) {
PosMessage message = context.getMessage();
String P_CHARGE_MANA_NO_ST = (String)message.get("CHARGE_MANA_NO_ST");
String P_CHARGE_MANA_NO_EN = (String)message.get("CHARGE_MANA_NO_EN");
String P_CHARGE_MANA_NO_TG = (String)message.get("CHARGE_MANA_NO_TG");
String P_REG_ID = (String)message.get("REG_ID");
String P_MODE = (String)message.get("P_MODE");
/*
U
B
M
C
L
D
T*/
//PARAMETER CHECK (L:LEVEL2 SEND, M:MOVE, D:DELETE, C:LEVEL2 CANCEL U:PROC CHANGE, T:TIME RESCHEDULE)
if (!P_MODE.equals("L") && !P_MODE.equals("M") && !P_MODE.equals("D") &&
!P_MODE.equals("C") && !P_MODE.equals("U") && !P_MODE.equals("T")) {
//P_MODE PARAMETER ERROR MESSAGE
// throw new PosException("SMSOrdMain..PARAMATER ERROR.." + P_MODE);
//logger.logInfo("SMSOrdMain..PARAMATER ERROR.." + P_MODE);
//context.put("errorMsg", "请按正规流程操作!");
errorDate(context,"SMSOrdMain..PARAMATER ERROR.." + P_MODE,"请按正规流程操作!");
return PosBizControlConstants.FAILURE;
}
if (P_MODE.equals("L")) {
//CALL NIF012110_SMSLvlSend
if (P_CHARGE_MANA_NO_EN == null || P_CHARGE_MANA_NO_EN.equals("")) {
//ERROR MESSAGE
//throw new PosException("SMSOrdMain..CHARGE_MANA_NO_EN IS NULL.");
errorDate(context,"SMSOrdMain..CHARGE_MANA_NO_EN IS NULL.","终止炉次为空!");
return PosBizControlConstants.FAILURE;
} else {
SMSOrdMain_CALL("NIF012110", P_CHARGE_MANA_NO_ST, P_CHARGE_MANA_NO_EN, P_CHARGE_MANA_NO_TG, P_REG_ID);
}
} else if (P_MODE.equals("M")) {
//CALL NIF012120_SMSSeqChange
if (P_CHARGE_MANA_NO_ST == null || P_CHARGE_MANA_NO_ST.equals("") ||
P_CHARGE_MANA_NO_EN == null || P_CHARGE_MANA_NO_EN.equals("") ||
P_CHARGE_MANA_NO_TG == null || P_CHARGE_MANA_NO_TG.equals("")) {
//ERROR MESSAGE
// throw new PosException("SMSOrdMain..CHARGE_MANA_NO IS NULL.");
errorDate(context,"SMSOrdMain..CHARGE_MANA_NO IS NULL.", "炉次号为空!");
return PosBizControlConstants.FAILURE;
} else {
SMSOrdMain_CALL("NIF012120", P_CHARGE_MANA_NO_ST, P_CHARGE_MANA_NO_EN, P_CHARGE_MANA_NO_TG, P_REG_ID);
}
} else if (P_MODE.equals("D")) {
//CALL NIF012130_SMSOrdDel
if (P_CHARGE_MANA_NO_ST == null || P_CHARGE_MANA_NO_ST.equals("") ||
P_CHARGE_MANA_NO_EN == null || P_CHARGE_MANA_NO_EN.equals("")) {
//ERROR MESSAGE
//throw new PosException("SMSOrdMain..CHARGE_MANA_NO IS NULL.");
errorDate(context,"SMSOrdMain..CHARGE_MANA_NO IS NULL.", "炉次号为空!");
return PosBizControlConstants.FAILURE;
} else {
SMSOrdMain_CALL("NIF012130", P_CHARGE_MANA_NO_ST, P_CHARGE_MANA_NO_EN, P_CHARGE_MANA_NO_TG, P_REG_ID);
}
} else if (P_MODE.equals("C")) {
//CALL NIF012140_SMSLvlCan
if (P_CHARGE_MANA_NO_ST == null || P_CHARGE_MANA_NO_ST.equals("")) {
//ERROR MESSAGE
//throw new PosException("SMSOrdMain..CHARGE_MANA_NO_ST IS NULL.");
errorDate(context,"SMSOrdMain..CHARGE_MANA_NO_ST IS NULL.", "起始炉次为空!");
return PosBizControlConstants.FAILURE;
} else {
SMSOrdMain_CALL("NIF012140", P_CHARGE_MANA_NO_ST, P_CHARGE_MANA_NO_EN, P_CHARGE_MANA_NO_TG, P_REG_ID);
}
} else if (P_MODE.equals("U")) {
//CALL NIF012150_SMSPrcChange
if (P_CHARGE_MANA_NO_ST == null || P_CHARGE_MANA_NO_ST.equals("")) {
//ERROR MESSAGE
//throw new PosException("SMSOrdMain..CHARGE_MANA_NO_ST IS NULL.");
errorDate(context,"SMSOrdMain..CHARGE_MANA_NO_ST IS NULL.", "起始炉次为空!");
return PosBizControlConstants.FAILURE;
} else {
SMSOrdMain_CALL("NIF012150", P_CHARGE_MANA_NO_ST, P_CHARGE_MANA_NO_EN, P_CHARGE_MANA_NO_TG, P_REG_ID);
}
} else if (P_MODE.equals("T")) {
//CALL NIF012180_SMSSchTme
NIF012180_CALL(P_REG_ID);
}
return PosBizControlConstants.SUCCESS;
}
/**
* 参数错误处理
*@param context
*@param logMsg 打印到后台的日志信息
*@param errorMsg 返回到页面的提示信息
*/
public void errorDate(PosContext context,String logMsg, String errorMsg)
{
logger.logInfo(logMsg);
context.put("errorMsg", errorMsg);
}
public PosContext SMSOrdMain_CALL(String SerID, String V_CHARGE_MANA_NO_ST, String V_CHARGE_MANA_NO_EN, String V_CHARGE_MANA_NO_TG, String V_REG_ID)
{
PosContext context = new PosContext();
PosMessage message = new PosMESMessageImpl();
String TcId = SerID;
message.setTCID(TcId);
message.setObject("MSG_ID", TcId);
message.setObject("CHARGE_MANA_NO_ST", V_CHARGE_MANA_NO_ST);
message.setObject("CHARGE_MANA_NO_EN", V_CHARGE_MANA_NO_EN);
message.setObject("CHARGE_MANA_NO_TG", V_CHARGE_MANA_NO_TG);
message.setObject("REG_ID", V_REG_ID);
context.setMessage(message);
message.setTCID(TcId);
String SERVICE_POSTFIX = "-service";
context.put(PosBizControlConstants.SERVICE_NAME, TcId + SERVICE_POSTFIX);
PosBizProvider.getController().doSubController(context, false);
String SERVICE_ERR_MSG = (String) context.get("SERVICE_ERR_MSG");
if (SERVICE_ERR_MSG != null)
{
throw new PosException(SERVICE_ERR_MSG);
}
return null;
}
public PosContext NIF012180_CALL(String V_REG_ID)
{
PosContext context = new PosContext();
PosMessage message = new PosMESMessageImpl();
//SMSSchTme
String TcId = "NIF012180";
message.setTCID(TcId);
message.setObject("MSG_ID", TcId);
message.setObject("CHARGE_MANA_NO_ST", "");
message.setObject("CHARGE_MANA_NO_EN", "");
message.setObject("CHARGE_MANA_NO_TG", "");
message.setObject("L2_SEND", "N");
message.setObject("REG_ID", V_REG_ID);
context.setMessage(message);
message.setTCID(TcId);
String SERVICE_POSTFIX = "-service";
context.put(PosBizControlConstants.SERVICE_NAME, TcId + SERVICE_POSTFIX);
PosBizProvider.getController().doSubController(context, false);
String SERVICE_ERR_MSG = (String) context.get("SERVICE_ERR_MSG");
if (SERVICE_ERR_MSG != null)
{
throw new PosException(SERVICE_ERR_MSG);
}
return null;
}
}