atitit agt sys 设置下级代理功能设计.docx
atitit agt sys 设置下级代理功能设计.docx
/atiplat_cms/src/com/attilax/user/AgentService.java3
显示界面
http://localhost:8080/agent/set_sub2.htm
先查询显示 set_sub.js
// JavaScript Document
function btn_click()
{
var sql="select * from account where id='$uid$' ";
sql=sql.replace("$uid$",$("#txtUid").val());
//sql=sql.replace("$pwd$",$("#txtPassword").val());
var orm=new atiOrmV4();
orm.obj=sql ;
orm.callbackFun=function(data)
{
try{
processJavaEx_V2q315(data);
}catch(e)
{
showErr(e);
return;
}
var json=str2json(data);
if(json.length==0)
{
alert("没有此用户id");
return;
}
var obj=json[0];
var fm=new AForm()
fm.bind(obj);
};
orm.query();
}
设置代理
function setSubAgent()
{
if( $("#tel").val()=='' || $("#bankcard").val()=='' || $("#sid").val()=='' )
{
alert("信息不能为空");
reutrn;
}
if(! confirm('确定要授权该玩家为您的下级代理吗?'))
return;
var code="new(com.attilax.user.AgentService).setSubAgent($uid$)";
code=code.replace("$uid$",$("#txtUid").val());
//code=code.replace("$pwd$",$("#txtPassword").val());
var jsb=new AtiJsBridge();
var nick=encodeURIComponent($("#nick").text());
var urlparams=$("form").serialize()+"&$code="+encodeURIComponent(code)+"&uname="+nick;
jsb.exe(urlparams,function(data){
console.log(data);
try{
processJavaEx_V2q315(data);
}catch(e)
{
if(catchEx(e,"com.attilax.secury.LoginException"))
{
alert("用户名密码错误");
return;
//
}
showErr(e);
return;
}
alert(" ok");
// window.location="../uc/uc.htm";
});
}
/atiplat_cms/src/com/attilax/user/AgentService.java
@SuppressWarnings("all")
public Object setSubAgent(String sub_id) throws UserNotExistEx, CantSetSelfEx, SuperiorExistEx, DuplicateEntryEx {
checkUserExist(sub_id);
String getuid = tksvr.getuid();
if (sub_id.equals(getuid))
throw new CantSetSelfEx("ex:CantSetSelfEx:不能设置自己为代理");
// checkSuperiorExist(sub_id);
String sql = "insert agent(uid,parent_id,pwd,name,tel,wechat,bkkad,sid,uname)values('$uid$','$pid$','$pwd$','$name$','$tel$','$wechat$','$bkkad$','$sid$','$uname$') ";
sql = sql.replace("$uid$", sub_id);
tksvr.setUtype("agent");
sql = sql.replace("$pid$", getuid);
sql = sql.replace("$pwd$", "111111");
HttpServletRequest req = Global.req.get();
try {
req.setCharacterEncoding("utf8");
} catch (UnsupportedEncodingException e1) {
ExUtil.throwExV2(e1);
}
String name=req.getParameter("name");
String name_gbk2utf=EncodeX.gbk2utf(name);
String name_utf2gbk=EncodeX.utf2gbk(name);
Map m = ReqX.toMap(req);
sql = new ParamX().sqlFmtV2(sql, m);
System.out.println(sql);
try {
return dbsvrV4.executeUpdateV2qb0(sql);
} catch (DuplicateEntryEx e) {
throw new DuplicateEntryEx("已经存在此代理", e);
} catch (getConnEx | SQLException e) {
ExUtil.throwExV2(e);
}
return sql;
}
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )
汉字名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
Atiend
atitit agt sys 设置下级代理功能设计.docx的更多相关文章
- Atitit.atiagent agent分销系统 代理系统 设计文档
Atitit.atiagent agent分销系统 代理系统 设计文档 1. 启动项目1 2. 首也2 3. 登录功能2 4. 用户中心2 5. 充值查询3 6. 授权下级代理4 7. 我的提成5 ...
- 在cocos2d-x jsb/html5中设置触摸代理的方法
和官方的说明不同,js binding的很多api和ch5版是不一样的.遇到不一样的就需要我们努力去看源码寻找了. 主要是以下几个文件 cocos2d_specifics.cpp cocos2d_sp ...
- Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCompc dtS420 \s2018 s4f doc homepc \s2018 s4 doc compc dtS44\(5 封私信 _ 44 条消息)WebSocket 有没有可能取代 AJAX
Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCo ...
- C#设置IE代理及遇到问题的解决方案
起初使用的方法是修改完一次代理之后就不能继续修改,需要重新启动一次进程才可以,最初代码是: private void ShowProxyInfo() { if (!GetProxyStatus()) ...
- C#设置通过代理访问ftp服务器
// 创建FTP连接 private FtpWebRequest CreateFtpWebRequest(string uri, string requestMethod) { FtpWebReque ...
- atitit 业务 触发器原理. 与事件原理 docx
atitit 业务 触发器原理. 与事件原理 docx 1.1. 呵呵,你需要需要一个业务 触发器..1 1.2. 触发器/事件/中断的原理1 1.3. Io 硬件中断的原理( 中断的低层有cpu轮询 ...
- Nginx_地址重写(rewrite)_日志管理(log_format)_压缩输出_Nginx设定限速_Nginx设置反向代理及反向代理缓存
Nginx地址重写 Nginx rewrite rewrite语法规则1).变量名可以使用 "=" 或 "!=" 运算符~ 区分大小写~* 不区分大小写^~ 禁 ...
- maven3实战之设置HTTP代理
maven3实战之设置HTTP代理 ---------- 有时候你所在的公司基于安全因素考虑,要求你使用通过安全认证的代理访问因特网.这种情况下,就需要为Maven配置HTTP代理,才能让它正常访问外 ...
- 快捷设置IE代理小工具
时间:2015-02-06 起因: 公司新装了PLM系统,用这个系统必须使用指定IP段的IP才能访问.所以为了还能愉快的继续使用代理进行特定网站的访问,我们必须要频繁的去设置IE代理,这也太麻烦了吧. ...
随机推荐
- 虚拟机安装Ubuntu到U盘
这篇经验中特指系统安装到U盘,系统在U盘上,不是双系统,不会改变源系统的设置.只需在启动的时候选择启动路径,就可以从U盘启动你的系统.本文仅仅Ubuntu系统,举一反三可以按照此方法安装各种各样的系统 ...
- js实现xml转化成字符串
xml字符串转xml dom经常遇到在js里面需要解析xml的问题,然而有时候,后台返回的不是dom 而是string 字符串,需要将字符串转换成dom对象,然后才可以进行节点值解析和读取functi ...
- SpringAOP代理报错问题
public class BaseDataSyncPushJob implements StatefulJob{ /*** 日志 */ private static final Log LOG = L ...
- 简单易懂的Activity四种启动模式
Activity的四种启动模式 我们在项目开发的过程中,会涉及到应用中各个Activity的跳转,有些Activity是可以复用,不用重复加载,节约内存的使用. 将第二个Activity的启动模式修改 ...
- iphone 耳机 线控
有电话呼入时: 按一次接听电话: 快速按两次将电话转到语音信箱: 通话中: 按一次挂断电话: 通话中如果有第二个电话打进来时: 按一次保留当前通话并接听第二个电话: 按住两秒钟不放忽略(拒绝接听)第二 ...
- 《理解 ES6》阅读整理:函数(Functions)(七)Block-Level Functions
块级函数(Block-Level Functions) 在ES3及以前,在块内声明一个函数会报语法错误,但是所有的浏览器都支持块级函数.不幸的是,每个浏览器在支持块级函数方面都有一些细微的不同的行为. ...
- Git 更换仓库地址
github国内访问偶尔抽风速度太慢了,想把项目转到oschina上来,今天实践了一下,还是挺简单的. 1. 从原始地址 clone 一份不包含 work copy的仓库: git clone -- ...
- 单用户模式下修改root密码
1.重启或者开机时,在倒数3秒的界面按下任意键. 2.该界面有如下提示(e 编辑 a 更改内核选项 c 命令行 b 启动),所以我们按下"e"编辑. 3.上下键选中第二行再按下& ...
- PAT/查找元素习题集
B1004. 成绩排名 (20) Description: 读入n名学生的姓名.学号.成绩,分别输出成绩最高和成绩最低学生的姓名和学号. Input: 每个测试输入包含1个测试用例,格式为: 第1行: ...
- libj 0.8.2 发布,Java/JavaScript API 的 C++ 实现
libj 0.8.2 增加了一些新的字符串相关的方法. libj 是一个跨平台的运行库,相当于提供了类似 Java/JavaScript API.libj 的内存管理是自动的,基于 shared_pt ...