public OpRes dispatch(ParamModifyGmRight p, GMUser user) { DestGmUser dst = new DestGmUser(p.m_acc, user); if (!dst.m_isExists) { return(OpRes.op_res_no_right); } bool res = DyOpModifyGmRight.canDispatchRight(user, dst.m_accType, () => { return(dst.m_owner == user.m_user); }); if (!res) { return(OpRes.op_res_no_right); } SqlUpdateGenerator gen = new SqlUpdateGenerator(); gen.addField("gmRight", p.m_right, FieldType.TypeString); string sql = gen.getResultSql(TableName.GM_ACCOUNT, string.Format("acc='{0}'", p.m_acc)); int count = user.sqlDb.executeOp(sql, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); return(count > 0 ? OpRes.opres_success : OpRes.op_res_db_failed); }
public void ProcessRequest(HttpContext context) { RightMgr.getInstance().opCheck("modify", context.Session, context.Response); ParamModifyGmRight param = new ParamModifyGmRight(); param.m_acc = context.Request.Form["acc"]; param.m_right = context.Request.Form["rstr"]; param.m_op = 1; GMUser user = (GMUser)context.Session["user"]; OpRes res = user.doDyop(param, DyOpType.opTypeDyOpModiyGmRight); string retStr = OpResMgr.getInstance().getResultString(res); context.Response.ContentType = "text/plain"; context.Response.Write(retStr); }
protected void onModifyRight(object sender, EventArgs e) { GMUser user = (GMUser)Session["user"]; ParamModifyGmRight param = new ParamModifyGmRight(); param.m_acc = m_acc.Text; string r = ""; for (int i = 0; i < m_right.Items.Count; i++) { if (m_right.Items[i].Selected) { r += m_right.Items[i].Value; // RightMap.getRightName(Convert.ToInt32(m_right.Items[i].Value)); r += ","; } } param.m_right = r; OpRes res = user.doDyop(param, DyOpType.opTypeDyOpModiyGmRight); m_res.InnerText = OpResMgr.getInstance().getResultString(res); }
public override OpRes doDyop(object param, GMUser user) { ParamModifyGmRight p = (ParamModifyGmRight)param; if (p.m_op == 1) { return(dispatch(p, user)); } DestGmUser dst = new DestGmUser(p.m_acc, user); if (!dst.m_isExists) { return(OpRes.op_res_no_right); } if (!dst.isDerivedFrom(user)) { return(OpRes.op_res_no_right); } if (!dst.isAccType(AccType.ACC_AGENCY) && !dst.isAccType(AccType.ACC_GENERAL_AGENCY) && !dst.isAccType(AccType.ACC_SUPER_ADMIN_SUB)) { return(OpRes.op_res_no_right); } SqlUpdateGenerator gen = new SqlUpdateGenerator(); gen.addField("gmRight", p.m_right, FieldType.TypeString); string sql = gen.getResultSql(TableName.GM_ACCOUNT, string.Format("acc='{0}'", p.m_acc)); int count = user.sqlDb.executeOp(sql, user.getMySqlServerID(), MySqlDbName.DB_XIANXIA); return(count > 0 ? OpRes.opres_success : OpRes.op_res_db_failed); }