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代理,这也太麻烦了吧. ...
随机推荐
- 16位汇编 多文件 intel汇编 编译器masm5.0 调用子程序库即静态库的自定义函数 WINDOWS
;以下是16位汇编 创建静态库,并调用静态库中的函数 ;多文件汇编格式 ;编译方法(此处用的是masm 5.0,如果是其他的编译器,有可能不能编译) ;第一种,编译方法 ;1.masm main.as ...
- mvc局部视图
新建一个控制器啊! public ActionResult Index() { ViewBag.title = "this is title!!!"; return View(); ...
- LNMP脚本安装
#!/bin/bash#nginx:nginx-1.8.0.tar.gz#mysql:mysql-5.5.50.tar.gz#php:php-5.5.31.tar.gz#the software pa ...
- angular js 的 ng-keyup 监听 keydown keyup事件获取 keyCode
参考这个页面.http://www.angularjshub.com/examples/eventhandlers/keyboardevents/ Html页面代码: <input ng-mod ...
- 高德地图API编译警告
版本: V2.1.1 警告内容: (null): warning: (i386) /Users/xiaominghan/Desktop/autonavi/MAMapKit_3D_r923_201310 ...
- 第55讲:Scala中Infix Type实战详解
今天学习了Infix type的知识,来看看实战代码: def main(args:Array[String]){ object log { def >>:(data:String) ...
- Linq To Xml基础
<?xml version="1.0" encoding="utf-8" ?> <Books> <Category Order=& ...
- Eclipse中设置jsp文字大小
- minigui编译
1, libminigui修改单 file: src/kernel/desktop.c func: def_mouse_handler keywords: MSG_DT_RBUTTONUP break ...
- 大数据存储:MongoDB实战指南——常见问题解答
锁粒度与并发性能怎么样? 数据库的读写并发性能与锁的粒度息息相关,不管是读操作还是写操作开始运行时,都会请求相应的锁资源,如果请求不到,操作就会被阻塞.读操作请求的是读锁,能够与其它读操作共享,但是当 ...