public override OpRes doDyop(object param, GMUser user) { ParamApiApprove p = (ParamApiApprove)param; ResultAPIItem item = getItem(p, user); if (item == null) { return(OpRes.op_res_failed); } if (p.m_isPass) { OpRes res = OpRes.op_res_failed; try { HttpContext.Current.Application.Lock(); res = createAPI(user, item, p); //agree(item, user); if (res == OpRes.opres_success) { refuse(item, user); } } catch (System.Exception ex) { } finally { HttpContext.Current.Application.UnLock(); } return(res); } return(refuse(item, user)); }
// OpRes agree(ResultAPIItem item, GMUser user) // { // return createAPI(user, item); // } OpRes refuse(ResultAPIItem item, GMUser user) { string cmd = string.Format(SQL_REFUSE, TableName.API_APPROVE, item.m_apiAcc); user.sqlDb.executeOp(cmd, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); return(OpRes.opres_success); }
public override OpRes doQuery(object param, GMUser user) { OpRes code = canApprove(user); if (code != OpRes.opres_success) { return(code); } m_result.Clear(); string cond = genCond(param, user); string cmd = string.Format(SQL_QUERY_API, TableName.API_APPROVE, cond); List <Dictionary <string, object> > dataList = user.sqlDb.queryList(cmd, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); if (dataList == null || dataList.Count == 0) { return(OpRes.op_res_not_found_data); } for (int i = 0; i < dataList.Count; i++) { ResultAPIItem info = new ResultAPIItem(); m_result.Add(info); Dictionary <string, object> data = dataList[i]; info.m_apiAcc = Convert.ToString(data["apiAcc"]); info.m_apiPwd = Convert.ToString(data["apiPwd"]); info.m_genTime = Convert.ToDateTime(data["genTime"]).ToString(ConstDef.DATE_TIME24); info.m_apiCreator = Convert.ToString(data["apiCreator"]); info.m_apiAliasName = Convert.ToString(data["apiAliasName"]); info.m_apiAgentRatio = Convert.ToDouble(data["apiAgentRatio"]); info.m_apiWashRatio = Convert.ToDouble(data["apiWashRatio"]); info.m_apiPrefix = Convert.ToString(data["apiPrefix"]); } return(OpRes.opres_success); }
private OpRes createAPI(GMUser user, ResultAPIItem item, ParamApiApprove resultParam) { bool res = user.sqlDb.keyStrExists(TableName.GM_ACCOUNT, "acc", item.m_apiAcc, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); if (res) { return(OpRes.op_res_account_has_exists); // 账号重复 } CreateInfo info = new CreateInfo(); res = getCreatorInfo(user, item.m_apiCreator, info); if (!res) { return(OpRes.op_res_failed); } SqlInsertGenerator gen = new SqlInsertGenerator(); gen.addField("acc", item.m_apiAcc, FieldType.TypeString); gen.addField("pwd", item.m_apiPwd, FieldType.TypeString); gen.addField("accType", AccType.ACC_API, FieldType.TypeNumber); gen.addField("createTime", DateTime.Now.ToString(ConstDef.DATE_TIME24), FieldType.TypeString); gen.addField("owner", item.m_apiCreator, FieldType.TypeString); gen.addField("generalAgency", info.m_generalAgency, FieldType.TypeString); gen.addField("postfix", item.m_apiPrefix, FieldType.TypeString); gen.addField("money", 0, FieldType.TypeNumber); gen.addField("moneyType", 0, FieldType.TypeNumber); string key = Guid.NewGuid().ToString().Replace("-", ""); gen.addField("devSecretKey", key, FieldType.TypeString); gen.addField("gmRight", "", FieldType.TypeString); gen.addField("depth", info.m_depth + 1, FieldType.TypeNumber); string ccode = ItemHelp.genCreateCode(info.m_childCount, info.m_createCode); gen.addField("createCode", ccode, FieldType.TypeString); gen.addField("aliasName", item.m_apiAliasName, FieldType.TypeString); ValidatedCodeGenerator vg = new ValidatedCodeGenerator(); vg.CodeSerial = DefCC.CODE_SERIAL; string validatedCode = vg.CreateVerifyCode(4); gen.addField("validatedCode", validatedCode, FieldType.TypeString); gen.addField("agentRatio", item.m_apiAgentRatio, FieldType.TypeNumber); gen.addField("washRatio", item.m_apiWashRatio, FieldType.TypeNumber); res = updateChildNodeNumber(user, info); if (res) { string sqlCmd = gen.getResultSql(TableName.GM_ACCOUNT); int count = user.sqlDb.executeOp(sqlCmd, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); if (count > 0) { resultParam.m_resultAcc = item.m_apiAcc; resultParam.m_validatedCode = validatedCode; OpLogMgr.getInstance().addLog(LogType.LOG_TYPE_API_APPROVE, new LogApiApprove(item.m_apiAcc, item.m_apiAliasName), user); return(OpRes.opres_success); } } return(OpRes.op_res_db_failed); }