fundao.java
来自「电信的网厅的整站代码」· Java 代码 · 共 648 行 · 第 1/2 页
JAVA
648 行
/**
* 取出某个地市的单条记录.....................目前主要用来做变更。。。。。。。。。。取新的名称。
*
* @param productid
* @param code
* @param citycode
* @return
* @throws java.sql.SQLException
* @throws RuntimeException
*/
static public String getSinFunOrder(String productid, String code,
String citycode) throws java.sql.SQLException, RuntimeException {
StringBuffer sql = new StringBuffer();
String name = "";
try {
Object[] value = new Object[3];
value[0] = code; // 登陆帐号
value[1] = productid; // 程控功能序号
value[2] = citycode;
// 基本条件
sql.append(" select f.* ");
sql.append(" from td_prodfun f");
sql.append(" where f.FUNCODE=? and f.PRODUCTID=? and f.CITYCODE=?");
DataTable dt_ml = _dac.executeQuery(sql.toString(), value);
for (int i = 0; i < dt_ml.getRows().getCount(); i++) {
DataRow dr_ml = dt_ml.getRow(i);
name = dr_ml.getString("FUNNAME_BSS");
break;
}
return name;
} catch (java.sql.SQLException sqlx) {
throw sqlx;
} catch (RuntimeException rux) {
_logger.warn(rux.getMessage(), rux);
throw rux;
}
}
/**
* **************程控工单修改程控信息********************** wull
* 2006-6-14***********************
*
* @param OtherMSG
* @param funorderid
* @return
*/
public boolean updateFunMSG(Map OtherMSG, String funorderid) {
LinkedList _linkList = new LinkedList();
_linkList.add(OtherMSG.get("PROGRESSSTATE"));
_linkList.add(OtherMSG.get("THIRDMSG"));
_linkList.add(OtherMSG.get("OTHERORDER"));
_linkList.add(OtherMSG.get("FINISHTIME"));
_linkList.add(OtherMSG.get("FUNORDERID"));
String sql = "update tf_funorder set PROGRESSSTATE=?,THIRDMSG=?,OTHERORDER=?,FINISHTIME= to_date(?,'YYYY-MM-DD HH24:MI') where FUNORDERID=?";
try {
if (OtherMSG.size() >= 1) {
int i = _dac.executeUpdate(sql, 10000, _linkList.toArray());
if (i > 0)
return true;
}
} catch (Exception e) {
_logger.warn("updateFunMSG " + e.getMessage());
}
return false;
}
private static DataTable executePageList(int start, int end, String sql,
Object[] _param) throws java.sql.SQLException {
StringBuffer _sb = new StringBuffer();
_sb.append("SELECT * FROM ( SELECT row_.*, rownum rownum_ FROM(");
_sb.append(sql);
_sb.append(")row_ WHERE rownum <=");
_sb.append(end);
_sb.append(") WHERE rownum_ >");
_sb.append(start);
if (_param == null || _param.length == 0) {
return _dac.executeQuery(_sb.toString());
}
else {
return _dac.executeQuery(_sb.toString(), _param);
}
}
/**
* <title>程控与套餐受理单是否升降排序</title> <body>true : 升序 1: 待处理, 2:处理中, L:锁定 </body>
* <body>false : 降序 3:处理结束, 4:处理失败与异常, 911:撤单
* </body>
*
* @param active
* @return
*/
private static boolean isCompositor(String active) {
if (active == null || active.equals("")) {
return false;
}
else if (active.equals("1") || active.equals("2") || active.equals("L")) {
return true;
}
else if (active.equals("3") || active.equals("4") || active.equals("911")) {
return false;
}
return false;
}
/**
* <title>工单是否被锁定.</title>
*
* @param funid
* @return
*/
public String lockID(String funid) {
try {
String sql = "select f.lockstaffid from tf_funorder f where f.funorderid=?";
DataTable dt = _dac.executeQuery(sql, new Object[] { funid });
if (dt == null || dt.getRows().getCount() == 0) {
return "";
}
String lockId = dt.getRow(0).getString("lockstaffid");
if (lockId == null || lockId.equals("")) {
return "";
}
return lockId;
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return "";
}
/**
* <title>设置工单信息.</title>
*
* @param funid
* @param state
* @return
*/
public boolean setOrderMsg(java.util.Map _map) {
String sFunorderid = (String) _map.get("FUNORDERID");
String sThirdmsg = (String) _map.get("THIRDMSG");
String sFinishTime = (String) _map.get("FINISHTIME");
try {
String sql = "update tf_funorder f set f.THIRDMSG = ? , f.FINISHTIME= to_date(?,'YYYY-MM-DD HH24:MI') where f.FUNORDERID=?";
int i = _dac
.executeUpdate(sql, 1000, new Object[] { sThirdmsg,sFinishTime, sFunorderid });
if (i > 0) {
return true;
}
return false;
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return false;
}
/**
* <title>锁定一张工单.</title>
*
* @param funid
* @return 失败:
*/
public boolean isLockOrder(String funid, String lockid) {
String queryID = lockID(funid);
if (lockid.equals(queryID)) {
return true;
}
if (queryID.equals("") && lockOrderSelf(funid, lockid)) {
return true;
}
return false;
}
/**
* <title>审核员工锁定一张工单.</title>
*
* @param funid
* @param lockid
* @return
*/
private boolean lockOrderSelf(String funid, String lockid) {
try {
String sql = "update tf_funorder f set f.lockstaffid=? where f.funorderid=?";
int i = _dac.executeUpdate(sql, 1000,
new Object[] { lockid, funid });
if (i > 0) {
return true;
}
return false;
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return false;
}
/**
* <title>解锁工单.</title>
*
* @param funid
* @return
*/
public boolean unLock(String funid) {
try {
String sql = "update tf_funorder f set f.lockstaffid = '' where f.funorderid=?";
int i = _dac.executeUpdate(sql, 1000, new Object[] { funid });
if (i > 0) {
return true;
}
return false;
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return false;
}
/**
* <title>设置工单状态.</title>
*
* @param funid
* @param state
* @return
*/
public boolean setOrderState(String funid, String state) {
try {
String sql = "update tf_funorder f set f.progressstate = ? where f.funorderid=?";
int i = _dac
.executeUpdate(sql, 1000, new Object[] { state, funid });
if (i > 0) {
return true;
}
return false;
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return false;
}
/**
* <title>撤消工单.</title>
*
* @param funid
* @return
*/
public boolean cancelOrder(String funid) {
return setOrderState(funid, "911");
}
/**
* <title>获取单张程控工单的数据.</title> <body>为了以后扩展,现在作冗鱼处理.</body>
*
* @param funId
* @return
*/
public DataTable singleOrder(String funId) {
try {
String sql = "select * from tf_funorder f where f.funorderid=?";
return _dac.executeQuery(sql, new Object[] { funId });
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return null;
}
/**
* 取单条记录
* @param funId
* @param citycode
* @return
*/
public DataTable SingleOrderInfo(String funId,String citycode) {
if(citycode==null ||"".equals(citycode)||"null".equals(citycode))citycode = "0590";
try {
//String sql = "select * from tf_funorder f where f.funorderid=?";
StringBuffer sql = new StringBuffer();
LinkedList _linkList = new LinkedList();
sql.append(" select t.FUNORDERID,t.WEBORDER,to_char(t.ACCEPTTIME,'YYYY-MM-DD HH24:MI') ACCEPTTIME,");
sql.append(" decode(t.ACTION,'1','开','2','关','3','设置',4,'取消',5,'变更','其它') ACTION,");
// ACTION
sql.append(" t.PROGRESSSTATE,staff.name,");
sql.append(" decode(t.PROGRESSSTATE,'1','待处理','2','处理中','3','处理完成',4,'处理失败','其它') PROGRESSSTATENAME,");
sql.append(" t.OTHERORDER,t.ORDERNBRTYPE,t.TEMPORDER,t.CONTENT,");
sql.append(" t.PHONENUM,to_char(t.FINISHTIME,'YYYY-MM-DD HH24:MI') FINISHTIME,");
sql.append(" decode(f.PRODUCTID,'1','固定电话','2','小灵通','其它') PRODUCTIDNAME,");
sql.append(" f.CITYCODE,f.PRODUCTID,f.FUNCODE,f.FUNNAME,f.FUNAUTO,f.FUNTYPE,f.FUNNAME_BSS,");
sql.append(" decode(t.FUNORDERAUTO,'0','自助','1','人工','其它') FUNAUTONAME,");
sql.append(" decode(f.FUNTYPE,'C','程控','N','新业务','T','套餐','其它') FUNTYPENAME,");// C-程控
sql.append(" c.PARADESC");
sql.append(" from tf_funorder t ,td_prodfun f,ts_configsub c,tf_staff staff");
sql.append(" where t.FUNORDERID = ? ");
_linkList.add(funId);
// 权限值
if (!citycode.equals("0590")) {
sql.append(" and t.citycode=?");
_linkList.add(citycode);
sql.append(" and c.citycode=?");
_linkList.add(citycode);
}
sql.append(" and t.PRODFUNID=f.PRODFUNID and c.PARANAME='FunFailureStateLogDsec' ");
sql.append(" and t.PROGRESSSTATE=c.PARAVALUE(+) ");
sql.append(" and t.lockstaffid=staff.staffid(+) ");
return _dac.executeQuery(sql.toString(),_linkList.toArray());
} catch (Exception ex) {
_logger.warn("isLock " + ex.getMessage());
}
return null;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?