Zhiqim Master(运营管理台)是在ZhiqimManager基础上改造成用于运营思路的管理系统,增加余额,和组织结构等,开放组织管理员,可以添加组织内的部门和角色和操作员。并增加该管理台上的一些组件,如充值支付等组件。适用于二级代理管理或该大型组织机构
index.htm6KB
1<!DOCTYPE html>2<html>3<head>4<title>${context.getContextName()}</title>5<meta charset="UTF-8">6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>7${Styles.src(zhiqim.css)}8${Scripts.src(zhiqim.js)}9${Scripts.setContextPath(context)}10${Scripts.src(jsencrypt.js)}11${Styles.htmlOverflowHidden()}12${zhiqim_manager_console_log()}13${Scripts.src(new ZmrCdnRuntime(context, "/service/res/extend/zhiqim_webgl_three.js"))}14<style>15body{color:#333;background-color:#1d72c0;}16body,table,td,div{font-size:14px;line-height:120%;}17a,a:visited{color:#333;text-decoration:none;cursor:pointer;}18a:active,a:hover{color:#1e7eec;text-decoration:none;}19 20.header{position:fixed;width:100%;height:40px;line-height:40px;background:rgba(255,255,255,0.2);z-index:20;}21.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}22 23.login{width:520px;padding:20px;background:rgba(255,255,255,0.6);}24.input{color:#333;font-size:18px;border:2px solid #fffafa;border-radius:5px;height:50px;line-height:50px;text-indent:10px;font-family:Consolas,"微软雅黑";}25.input.verificationCode{letter-spacing:4px;}26</style>27<script>28Z.onload(function()29{//默认焦点30 if (Z.V.isEmpty(Z("#operatorCode").val()))31 Z("#operatorCode").focus();32 else if (Z.V.isEmpty(Z("#operatorPass").val()))33 Z("#operatorPass").focus();34 else if (Z("#verificationCode").length > 0)35 Z("#verificationCode").focus();36 37 var three = new Z.WebGLThree();38 three.threePath = "${new ZmrCdnRuntime(context, "/service/res/extend/three.js")}";39 three.elem = "z-webgl-canvas";40 three.execute();41 42 Z(document).keydown(function(e)43 {44 if (Z.E.key(e) != Z.E.KEY.ENTER)45 return;46 47 if (!Z.Dialog.cache.isEmpty())48 return;49 50 doLogin();51 });52 53});5455function doRememberCode(rememberCode)56{//取消记住账号时,同时取消记住密码57 if (!rememberCode.checked)58 {59 Z("#rememberPass")[0].checked = false;60 Z("[data-id=rememberPass]").removeClass("z-active");61 }62}63 64function doRememberPass(rememberPass)65{//记住密码时,同时记住账号66 if (rememberPass.checked)67 {68 Z("#rememberCode")[0].checked = true;69 Z("[data-id=rememberCode]").addClass("z-active");70 }71}72 73function doLogin()74{//登陆75 var operatorCode = Z("#operatorCode").val();76 if (Z.V.isEmptyBlank(operatorCode))77 {//用户名和密码必填78 Z.failure("用户名不能为空!",function(){79 Z("#operatorCode").focus();80 });81 return;82 } 83 84 var operatorPass = Z("#operatorPass").val();85 if (Z.V.isEmptyBlank(operatorPass))86 {//用户名和密码必填87 Z.failure("密码不能为空!",function(){88 Z("#operatorPass").focus();89 });90 return;91 }92 93 var verificationCode = Z("#verificationCode").val();94 if (Z("#verificationCode").length > 0 && verificationCode.length != 4)95 {//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)96 Z.failure("验证码为4位数字!");97 return;98 }99 100 //对密码进行RSA加密101 var publicKey = "${ZmrParamDao.getPublicKey()}";102 var encrypt = new JSEncrypt();103 encrypt.setPublicKey(publicKey);104 operatorPass = encrypt.encrypt(operatorPass);105 106 var ajax = Z.ajax("ZmrLoginPresenter", "doLogin");107 ajax.addParam("operatorCode", operatorCode);108 ajax.addParam("operatorPass", operatorPass);109 ajax.addParam("verificationCode", verificationCode);110 111 <#if hasRememberCode>112 ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);113 </#if>114 <#if hasRememberPass>115 ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);116 </#if>117 118 ajax.setFailureAlertRecovery();119 ajax.setSuccessLocationResponse();120 ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});121 ajax.execute();122}123</script>124</head>125126<body>127<div class="header">128 <div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录 [ ${context.getContextName()} ]!</div>129 <div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>130</div>131<div class="z-absolute-center-middle z-bd-rd10 login" style="height:<#if hasVerificationCode && hasRememberCode>420<#elseif hasVerificationCode>390<#elseif hasRememberCode>350<#else>320</#if>px"> 132 <input type="text" class="z-hidden-fixed"/>133 <input type="password" class="z-hidden-fixed"/>134 <div class="z-px24 z-color-333 z-pd-b10 z-pd-l20"> <i class="z-font z-customer"></i> 用户登录</div>135 <div style="padding:25px 40px 20px 30px;">136 <table class="z-table z-h100p z-h70-tr z-pd5">137 <tr>138 <td><input id="operatorCode" class="z-w400 input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>139 </tr>140 <tr>141 <td><input id="operatorPass" type="password" class="z-w100p input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>142 </tr>143 <#if hasVerificationCode>144 <tr>145 <td>146 <input id="verificationCode" type="text" class="input verificationCode" style="width:270px" placeholder="验证码" maxlength="4" data-options="type:Numeric;paste:true;" spellcheck="false" autocomplete="off">147 <img class="z-pointer z-bd-rd5 z-mg-t-5" title="点击刷新验证码" onclick="this.src='service/vcode.jpg?bgColor=%231299ec&width=120&height=50&fontSize=20&yawp=true&t='+new Date().getTime();" src="service/vcode.jpg?bgColor=%231299ec&width=120&height=50&fontSize=20&yawp=true&t=${DateTimes.getDateTime17String()}">148 </td> 149 </tr>150 </#if>151 <#if hasRememberCode>152 <tr class="zi-h40">153 <td class="z-px16 z-color-333">154 <input id="rememberCode" type="checkbox" data-role="z-checkbox" data-class="z-mg-r10 ${zmr_color_class}" onclick="doRememberCode(this);" <#if Validates.isNotEmpty(operatorCode)>checked</#if>>记住用户名155 <#if hasRememberPass>156 157 <input id="rememberPass" type="checkbox" data-role="z-checkbox" data-class="z-mg-r10 ${zmr_color_class}" onclick="doRememberPass(this);" <#if Validates.isNotEmpty(operatorPass)>checked</#if>/>记住密码158 </#if>159 </td>160 </tr>161 </#if>162 <tr>163 <td><button id="login" class="z-button z-xlarge z-w100p z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">登 录</button></td> 164 </tr>165 </table>166 </div>167</div>168<div class="footer">${zmr_copyright}</div>169<div id="z-webgl-canvas" class="z-absolute z-w100p z-h100p" style="z-index:-1;"></div>170</body>171</html>172