first commit

Bu işleme şunda yer alıyor:
2025-02-20 14:59:35 +08:00
ebeveyn d7be84fac6
işleme d4a3bb8ffc
2541 değiştirilmiş dosya ile 336536 ekleme ve 0 silme
+24
Dosyayı Görüntüle
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="lib" path="lib/zhiqim.jar" sourcepath="/zhiqim_kernel"/>
<classpathentry kind="lib" path="lib/zhiqim_httpd.jar" sourcepath="/zhiqim_httpd"/>
<classpathentry kind="lib" path="lib/zhiqim_ui.jar"/>
<classpathentry kind="lib" path="lib/zhiqim_zml.jar"/>
<classpathentry kind="lib" path="lib/zhiqim_orm.jar"/>
<classpathentry kind="lib" path="lib/zhiqim_mysql5.0.8.jar"/>
<classpathentry kind="lib" path="lib/workwechat-service-provider-SNAPSHOT-1.0.0.jar"/>
<classpathentry kind="lib" path="lib/commons-lang-2.6.jar"/>
<classpathentry kind="lib" path="lib/commons-lang3-3.7.jar"/>
<classpathentry kind="lib" path="lib/fastjson-1.2.47.jar"/>
<classpathentry kind="lib" path="lib/httpclient-4.5.2.jar"/>
<classpathentry kind="lib" path="lib/httpcore-4.4.9.jar"/>
<classpathentry kind="lib" path="lib/jackson-annotations-2.9.0.jar"/>
<classpathentry kind="lib" path="lib/commons-codec-1.9.jar"/>
<classpathentry kind="lib" path="lib/commons-logging-1.2.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/aliyun-java-sdk-core-4.1.0.jar"/>
<classpathentry kind="lib" path="lib/aliyun-java-sdk-dysmsapi-1.1.0.jar"/>
<classpathentry kind="lib" path="lib/gson-2.8.5.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
+17
Dosyayı Görüntüle
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>zhiqim_manager</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
+2
Dosyayı Görüntüle
@@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding//src/org/zhiqim/manager/action/IndexAction.java=UTF-8
+13
Dosyayı Görüntüle
@@ -0,0 +1,13 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=1.8
+1
Dosyayı Görüntüle
@@ -0,0 +1 @@
/org/
+23
Dosyayı Görüntüle
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ZHIQIM-CONFIG PUBLIC "-//ZHIQIM //DTD Zhiqim-Config Configuration 1.5.0//EN" "http://zhiqim.org/xmldtds/zhiqim_config_1_5_0.dtd">
<zhiqim-config>
<group id="httpd" desc="HTTP服务">
<item key="context" value="httpd.root" type="protected" desc="HTTP服务下包括的上下文环境,多个用逗号隔开" />
<item key="scheme" value="HTTP" type="protected" desc="HTTP或HTTPS协议" />
<item key="port" value="8999" type="protected" desc="监听端口" />
<item key="io" value="NIO" type="protected" desc="可选,IO方式,AIO|BIO|NIO,默认NIO" />
<item key="minPoolSize" value="20" type="protected" desc="HTTP处理线程池最小值" />
<item key="maxPoolSize" value="500" type="protected" desc="HTTP处理线程池最大值" />
</group>
<group id="httpd.root" desc="HTTP根上下文环境">
<item key="path" value="/admin" type="protected" desc="必须,上下文环境路径" />
<item key="resourceType" value="directory" type="protected" desc="资源目录类型classpath|directory" />
<item key="resourcePath" value="./resource" type="protected" desc="资源目录" />
<item key="welcomeUrl" value="/index.htm" type="protected" desc="欢迎页" />
<item key="zmr.orm" value="orm" type="protected" desc="管理台对应的数据库映射" />
<item key="zmr.orm.opr" value="orm" type="protected" desc="管理台对应的操作员与组织数据库映射,用于共享" />
</group>
</zhiqim-config>
+30
Dosyayı Görüntüle
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ZHIQIM-CONFIG PUBLIC "-//ZHIQIM //DTD Zhiqim-Config Configuration 1.5.0//EN" "http://zhiqim.org/xmldtds/zhiqim_config_1_5_0.dtd">
<zhiqim-config>
<group id="logging" desc="信息日志配置">
<item key="logging.info" value="debug-info" type="protected" desc="信息日志配置" />
<item key="logging.error" value="error-fatal" type="protected" desc="错误日志配置" />
<item key="logging.database" value="debug-fatal" type="protected" desc="数据库日志配置" />
</group>
<group id="logging.info" desc="信息日志配置">
<item key="console.out" value="true" type="protected" desc="是否输出到控制台" />
<item key="file.out" value="true" type="protected" desc="是否输出到文件" />
<item key="file.path" value="./logs/info.log" type="protected" desc="输出到文件路径" />
</group>
<group id="logging.error" desc="错误日志配置">
<item key="console.out" value="true" type="protected" desc="是否输出到控制台" />
<item key="file.out" value="true" type="protected" desc="是否输出到文件" />
<item key="file.path" value="./logs/error.log" type="protected" desc="输出到文件路径" />
</group>
<group id="logging.database" desc="数据库日志配置">
<item key="must.name" value="database.log" type="protected" desc="指定日志名称,为空表示不指定" />
<item key="console.out" value="true" type="protected" desc="是否输出到控制台" />
<item key="file.out" value="true" type="protected" desc="是否输出到文件" />
<item key="file.path" value="./logs/database/database.log" type="protected" desc="输出到文件路径" />
</group>
</zhiqim-config>
+53
Dosyayı Görüntüle
@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ZHIQIM-CONFIG PUBLIC "-//ZHIQIM //DTD Zhiqim-Config Configuration 1.5.0//EN" "http://zhiqim.org/xmldtds/zhiqim_config_1_5_0.dtd">
<zhiqim-config>
<group id="boot" desc="系统启动配置">
<item key="name" value="zhiqim_manager" type="protected" desc="系统名称" />
<item key="version" value="V3.0" type="protected" desc="系统版本" />
<item key="port" value="50080" type="protected" desc="系统监听端口,用于启动监听和命令关闭工程" />
<item key="process" value="zhiqim" type="protected" desc="使用的进程名,MAC系统下该配置无效" />
<item key="args" value="-server -Xms64m -Xmx1024m" type="protected" desc="JVM参数" />
<item key="home" value="C:\\Program Files\\Java\\jdk1.8.0_202\\" type="protected" desc="JDK根目录" />
<item key="libext" value="./libext" type="protected" desc="加载的库目录" />
<item key="include" value="*/bin,*/lib/*" type="protected" desc="扫描包含库模式,多个用逗号隔开,星号表示通配符" />
</group>
<group id="config" desc="系统其他配置文件,./开头表示工程相对路径下,绝对路径使用/或d:/等(Windows也使用顺斜杠作路径)">
<item key="logging" value="./conf/logging.xml" type="protected" desc="日志配置文件" />
<item key="httpd" value="./conf/httpd.xml" type="protected" desc="WEB配置" />
</group>
<group id="service" desc="系统服务配置,有依赖时注意顺序,系统按顺序加载,按倒序销毁">
<item key="logging" value="org.zhiqim.kernel.logging.LogServer" type="protected" desc="日志服务" />
<item key="orm" value="org.zhiqim.orm.ORMServer" type="protected" desc="主数据库服务" />
<item key="httpd" value="org.zhiqim.httpd.HttpServer" type="protected" desc="web服务" />
</group>
<group id="orm" desc="MYSQL数据库连接方式">
<item key="dbType" value="mysql" type="protected" desc="数据库类型,支持mysql|oracle|mssql|postgresql|sqlite|hsql" />
<item key="driver" value="org.zhiqim.mysql5_0_8.jdbc.Driver" type="protected" desc="数据库驱动" />
<!-- <item key="url" value="jdbc:mysql://localhost:3306/yangcai365_design?useUnicode=true&amp;characterEncoding=UTF-8" type="protected" desc="数据库Url" />
<item key="user" value="root" type="protected" desc="数据库用户名" />
<item key="pass" value="123456" type="protected" desc="数据库密码" /> -->
<item key="url" value="jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&amp;characterEncoding=UTF-8" type="protected" desc="数据库Url" />
<item key="user" value="root" type="protected" desc="数据库用户名" />
<item key="pass" value="RdCcZOL1QxdYqEot" type="protected" desc="数据库密码" />
<item key="minPoolSize" value="20" type="protected" desc="线程池最小值" />
<item key="maxPoolSize" value="200" type="protected" desc="线程池最大值" />
<item key="maxKeepTime" value="7001" type="protected" desc="每连接最大保持时长,大于该值将重建连接,单位秒" />
<item key="isUpdateSqlLog" value="false" type="protected" desc="组装更新SQL语句,用于打印日志" />
<item key="isQuerySqlLog" value="false" type="protected" desc="组装查询SQL语句,用于打印日志" />
</group>
<group id="orm.cache" desc="数据库缓存表">
<item key="ZmrParam" value="{name:Day,time:6/7/11}" type="protected" desc="参数表,每天06:07:11刷新一次" />
<item key="ZmrDept" value="{name:Day,time:6/7/11}" type="protected" desc="部门表,每天06:07:11刷新一次" />
</group>
<group id="aliyun.sms" desc="阿里云sms服务">
<item key="accessKeyId" value="LTAI4GH2Pofy8FtAMPibPvj5" type="protected" desc="访问KEY" />
<item key="accessKeySecret" value="BhxUaxBQnsMEZZEHDCVb0rK5wiEKRm" type="protected" desc="访问密钥" />
</group>
</zhiqim-config>
+33
Dosyayı Görüntüle
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="Zhiqim">
<section name="ExportProject">
<item value="" key="excludeDirs"/>
<item value="" key="excludePackages"/>
<item value="" key="excludeResourceDirs"/>
<item value="false" key="isDivided"/>
<item value="false" key="isExportAndZipProject"/>
<item value="false" key="isExportJavaSource"/>
<item value="true" key="isGenExe"/>
<item value="false" key="isGenZip"/>
<item value="false" key="isIncludeJavaFile"/>
<item value="zhiqim_manager" key="jarName"/>
<item value="" key="metaInfoPath"/>
<item value="" key="projectConfPath"/>
<item value="" key="projectSourceName"/>
<item value="zhiqim_manager" key="releaseName"/>
<item value="D:/_yangcai" key="releasePath"/>
</section>
<section name="ExportComponent">
<item value="resource-org.zhiqim.manager.resource" key="dirToJars"/>
<item value="logs/*" key="excludeDirs"/>
<item value="" key="excludePackages"/>
<item value="" key="excludeResourceDirs"/>
<item value="false" key="isExportAndZipProject"/>
<item value="false" key="isExportJavaSource"/>
<item value="false" key="isIncludeJavaFile"/>
<item value="zhiqim_manager" key="jarName"/>
<item value="" key="metaInfoPath"/>
<item value="zhiqim_manager_v1.5.0" key="projectSourceName"/>
<item value="D:/_yangcai" key="releasePath"/>
</section>
</section>
+15
Dosyayı Görüntüle
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="zhiqim">
<section name="ExportJar">
<item value="" key="excludeDirs"/>
<item value="" key="excludePackages"/>
<item value="false" key="isDivided"/>
<item value="false" key="isExportAndZipProject"/>
<item value="false" key="isExportJavaSource"/>
<item value="false" key="isIncludeJavaFile"/>
<item value="zhiqim_manager" key="jarName"/>
<item value="" key="metaInfoPath"/>
<item value="" key="projectSourceName"/>
<item value="G:/tmp" key="releasePath"/>
</section>
</section>
+20
Dosyayı Görüntüle
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<section name="zhiqim">
<section name="ExportProject">
<item value="" key="excludeDirs"/>
<item value="" key="excludePackages"/>
<item value="resource,lib,logs" key="excludeResourceDirs"/>
<item value="false" key="isDivided"/>
<item value="false" key="isExportAndZipProject"/>
<item value="false" key="isExportJavaSource"/>
<item value="true" key="isGenExe"/>
<item value="false" key="isGenZip"/>
<item value="false" key="isIncludeJavaFile"/>
<item value="manager" key="jarName"/>
<item value="" key="metaInfoPath"/>
<item value="G:/git/ziqim/zhiqim_manager/conf" key="projectConfPath"/>
<item value="" key="projectSourceName"/>
<item value="zhiqim_manager" key="releaseName"/>
<item value="G:/tmp" key="releasePath"/>
</section>
</section>
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
İkili dosya gösterilmiyor.
+1
Dosyayı Görüntüle
@@ -0,0 +1 @@

+106
Dosyayı Görüntüle
@@ -0,0 +1,106 @@
2024-06-09 12:00:41,023 [main] INFO - 初始化[数据库映射:orm]开始...
2024-06-09 12:00:41,124 [main] INFO - 增加计划任务[Scheduler-PewK-org.zhiqim.orm.ZTableCacheTask]
2024-06-09 12:00:41,128 [main] INFO - 增加计划任务[Scheduler-PewK-org.zhiqim.orm.ZTableCacheTask]
2024-06-09 12:00:41,130 [main] INFO - 初始化[数据库映射:orm]完成!!!
2024-06-09 12:00:41,130 [main] INFO - 初始化[HTTP服务:httpd]开始...
2024-06-09 12:00:41,131 [Interval-org.zhiqim.httpd.nio.HttpNioListener] INFO - 允许最大连接[200],当前总连接[0]=WS[0]+活动[0]+空闲[0],允许空闲[53]秒
2024-06-09 12:00:41,285 [main] INFO - 初始化[HTTP服务:httpd][ZML引擎]开始...[2024-06-09 12:00:41,285]
2024-06-09 12:00:41,292 [main] INFO - 初始化[HTTP服务:httpd][ZML引擎]结束!!![2024-06-09 12:00:41,292]
2024-06-09 12:00:41,292 [main] INFO - 初始化[HTTP服务:httpd][Context:zhiqim_manager]开始...[2024-06-09 12:00:41,292]
2024-06-09 12:00:41,300 [main] INFO - <attribute name="系统名称" key="name" value="管理平台" />
2024-06-09 12:00:41,300 [main] INFO - <attribute name="系统版本" key="version" value="V1.0.0" />
2024-06-09 12:00:41,300 [main] INFO - <attribute name="系统引导" key="bootstrap" value="org.zhiqim.manager.ZmrBootstrap" />
2024-06-09 12:00:41,300 [main] INFO - <attribute name="管理台菜单" key="zmr_menu_sql" value="/conf/zmr.menu.sql" />
2024-06-09 12:00:41,301 [main] INFO - <attribute name="管理台路径" key="zhiqim_manager" value="manager" />
2024-06-09 12:00:41,301 [main] INFO - <interceptor name="检查登录" key="chkZmrLogin" class="org.zhiqim.manager.ZmrInterceptor" />
2024-06-09 12:00:41,305 [main] INFO - <action name="首页" path="/index.htm" view="/ztmpl/zhiqim_manager/index.htm" class="org.zhiqim.manager.action.IndexAction" />
2024-06-09 12:00:41,305 [main] INFO - <action name="管理页" path="/manager.htm" view="/ztmpl/zhiqim_manager/index.htm" class="org.zhiqim.manager.action.IndexAction" />
2024-06-09 12:00:41,305 [main] INFO - <action name="退出" path="/manager/logout.htm" redirect="/index.htm" class="org.zhiqim.manager.action.LogoutAction" />
2024-06-09 12:00:41,306 [main] INFO - <action name="主页" path="/manager/main.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/main.zml" class="org.zhiqim.manager.action.MainAction" />
2024-06-09 12:00:41,306 [main] INFO - <action name="主页框架" path="/manager/welcome.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/main.zml" class="org.zhiqim.manager.action.MainAction" />
2024-06-09 12:00:41,306 [main] INFO - <action name="用户中心" path="/manager/profile.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/profile.zml" class="org.zhiqim.manager.action.ProfileAction" />
2024-06-09 12:00:41,306 [main] INFO - <action name="系统菜单列表" path="/manager/menu.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menu.zml" class="org.zhiqim.manager.action.MenuAction" method="list" />
2024-06-09 12:00:41,306 [main] INFO - <action name="增加菜单页面" path="/manager/menuAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menuAdd.zml" class="org.zhiqim.manager.action.MenuAction" method="add" />
2024-06-09 12:00:41,306 [main] INFO - <action name="增加菜单处理" path="/manager/menuInsert.htm" interceptor="chkZmrLogin" redirect="/manager/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,306 [main] INFO - <action name="修改菜单页面" path="/manager/menuModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menuModify.zml" class="org.zhiqim.manager.action.MenuAction" method="modify" />
2024-06-09 12:00:41,306 [main] INFO - <action name="修改菜单处理" path="/manager/menuUpdate.htm" interceptor="chkZmrLogin" redirect="/manager/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="update" success="修改成功" />
2024-06-09 12:00:41,307 [main] INFO - <action name="删除菜单处理" path="/manager/menuDelete.htm" interceptor="chkZmrLogin" redirect="/manager/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,307 [main] INFO - <action name="系统配置设置" path="/manager/config.htm" interceptor="chkZmrLogin" redirect="/manager/config.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/config.zml" class="org.zhiqim.manager.action.ConfigAction" />
2024-06-09 12:00:41,307 [main] INFO - <action name="系统参数设置" path="/manager/param.htm" interceptor="chkZmrLogin" redirect="/manager/param.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/param.zml" class="org.zhiqim.manager.action.ParamAction" />
2024-06-09 12:00:41,307 [main] INFO - <action name="更换首页主题风格" path="/manager/themeIndex.htm" interceptor="chkZmrLogin" redirect="/manager/themeIndex.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/themeIndex.zml" class="org.zhiqim.manager.action.ThemeIndexAction" />
2024-06-09 12:00:41,307 [main] INFO - <action name="更换主页主题风格" path="/manager/themeMain.htm" interceptor="chkZmrLogin" redirect="/manager/themeMain.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/themeMain.zml" class="org.zhiqim.manager.action.ThemeMainAction" />
2024-06-09 12:00:41,308 [main] INFO - <action name="系统缓存管理" path="/manager/cache.htm" interceptor="chkZmrLogin" redirect="/manager/cache.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/cache.zml" class="org.zhiqim.manager.action.CacheAction" />
2024-06-09 12:00:41,308 [main] INFO - <action name="密钥对设置" path="/manager/keys.htm" interceptor="chkZmrLogin" redirect="/manager/keys.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/keys.zml" class="org.zhiqim.manager.action.KeysAction" success="生成成功" />
2024-06-09 12:00:41,308 [main] INFO - <action name="进程状态查询" path="/manager/process.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/process.zml" />
2024-06-09 12:00:41,308 [main] INFO - <action name="进程线程堆栈信息" path="/manager/processThreadStack.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/processThreadStack.zml" class="org.zhiqim.manager.action.ProcessThreadStackAction" />
2024-06-09 12:00:41,308 [main] INFO - <action name="操作员参数列表" path="/manager/paramOperator.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/paramOperator.zml" class="org.zhiqim.manager.action.ParamOperatorAction" method="list" />
2024-06-09 12:00:41,308 [main] INFO - <action name="增加操作员参数页面" path="/manager/paramOperatorAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/paramOperatorAdd.zml" class="org.zhiqim.manager.action.ParamOperatorAction" method="add" />
2024-06-09 12:00:41,308 [main] INFO - <action name="增加操作员参数处理" path="/manager/paramOperatorInsert.htm" interceptor="chkZmrLogin" redirect="/manager/paramOperator.htm" class="org.zhiqim.manager.action.ParamOperatorAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,308 [main] INFO - <action name="删除操作员参数处理" path="/manager/paramOperatorDelete.htm" interceptor="chkZmrLogin" redirect="/manager/paramOperator.htm" class="org.zhiqim.manager.action.ParamOperatorAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,309 [main] INFO - <action name="头像列表" path="/manager/avatar.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatar.zml" class="org.zhiqim.manager.action.AvatarAction" method="list" />
2024-06-09 12:00:41,309 [main] INFO - <action name="修改头像页面" path="/manager/avatarModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatarModify.zml" class="org.zhiqim.manager.action.AvatarAction" method="modify" />
2024-06-09 12:00:41,309 [main] INFO - <action name="增加头像页面" path="/manager/avatarAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatarAdd.zml" />
2024-06-09 12:00:41,309 [main] INFO - <action name="组织列表" path="/manager/org.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/org.zml" class="org.zhiqim.manager.action.OrgAction" method="list" />
2024-06-09 12:00:41,309 [main] INFO - <action name="增加组织页面" path="/manager/orgAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgAdd.zml" class="org.zhiqim.manager.action.OrgAction" method="add" />
2024-06-09 12:00:41,309 [main] INFO - <action name="增加组织处理" path="/manager/orgInsert.htm" interceptor="chkZmrLogin" redirect="/manager/org.htm" class="org.zhiqim.manager.action.OrgAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,309 [main] INFO - <action name="修改组织页面" path="/manager/orgModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgModify.zml" class="org.zhiqim.manager.action.OrgAction" method="modify" />
2024-06-09 12:00:41,309 [main] INFO - <action name="修改组织处理" path="/manager/orgUpdate.htm" interceptor="chkZmrLogin" redirect="/manager/org.htm" class="org.zhiqim.manager.action.OrgAction" method="update" success="修改成功" />
2024-06-09 12:00:41,310 [main] INFO - <action name="删除组织处理" path="/manager/orgDelete.htm" interceptor="chkZmrLogin" redirect="/manager/org.htm" class="org.zhiqim.manager.action.OrgAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,310 [main] INFO - <action name="组织关联权限" path="/manager/orgRule.htm" interceptor="chkZmrLogin" redirect="/manager/orgRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgRule.zml" class="org.zhiqim.manager.action.OrgRuleAction" />
2024-06-09 12:00:41,310 [main] INFO - <action name="组织选择对话框" path="/manager/orgSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/orgSelector.zml" class="org.zhiqim.manager.action.OrgSelectorAction" />
2024-06-09 12:00:41,310 [main] INFO - <action name="部门列表" path="/manager/dept.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/dept.zml" class="org.zhiqim.manager.action.DeptAction" method="list" />
2024-06-09 12:00:41,310 [main] INFO - <action name="增加部门页面" path="/manager/deptAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptAdd.zml" class="org.zhiqim.manager.action.DeptAction" method="add" />
2024-06-09 12:00:41,310 [main] INFO - <action name="增加部门处理" path="/manager/deptInsert.htm" interceptor="chkZmrLogin" redirect="/manager/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,310 [main] INFO - <action name="修改部门页面" path="/manager/deptModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptModify.zml" class="org.zhiqim.manager.action.DeptAction" method="modify" />
2024-06-09 12:00:41,310 [main] INFO - <action name="修改部门处理" path="/manager/deptUpdate.htm" interceptor="chkZmrLogin" redirect="/manager/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="update" success="修改成功" />
2024-06-09 12:00:41,310 [main] INFO - <action name="删除部门处理" path="/manager/deptDelete.htm" interceptor="chkZmrLogin" redirect="/manager/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,311 [main] INFO - <action name="部门操作员" path="/manager/deptOperator.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptOperator.zml" class="org.zhiqim.manager.action.DeptOperatorAction" />
2024-06-09 12:00:41,311 [main] INFO - <action name="部门增加操作员" path="/manager/deptOperatorSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/deptOperatorSelector.zml" class="org.zhiqim.manager.action.DeptOperatorSelectorAction" />
2024-06-09 12:00:41,311 [main] INFO - <action name="部门关联权限" path="/manager/deptRule.htm" interceptor="chkZmrLogin" redirect="/manager/deptRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptRule.zml" class="org.zhiqim.manager.action.DeptRuleAction" success="保存成功" />
2024-06-09 12:00:41,311 [main] INFO - <action name="角色列表" path="/manager/role.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/role.zml" class="org.zhiqim.manager.action.RoleAction" method="list" />
2024-06-09 12:00:41,311 [main] INFO - <action name="增加角色页面" path="/manager/roleAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleAdd.zml" class="org.zhiqim.manager.action.RoleAction" method="add" />
2024-06-09 12:00:41,311 [main] INFO - <action name="增加角色处理" path="/manager/roleInsert.htm" interceptor="chkZmrLogin" redirect="/manager/role.htm" class="org.zhiqim.manager.action.RoleAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,312 [main] INFO - <action name="修改角色页面" path="/manager/roleModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleModify.zml" class="org.zhiqim.manager.action.RoleAction" method="modify" />
2024-06-09 12:00:41,312 [main] INFO - <action name="修改角色处理" path="/manager/roleUpdate.htm" interceptor="chkZmrLogin" redirect="/manager/role.htm" class="org.zhiqim.manager.action.RoleAction" method="update" success="修改成功" />
2024-06-09 12:00:41,312 [main] INFO - <action name="删除角色处理" path="/manager/roleDelete.htm" interceptor="chkZmrLogin" redirect="/manager/role.htm" class="org.zhiqim.manager.action.RoleAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,312 [main] INFO - <action name="角色操作员" path="/manager/roleOperator.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleOperator.zml" class="org.zhiqim.manager.action.RoleOperatorAction" />
2024-06-09 12:00:41,312 [main] INFO - <action name="角色增加操作员" path="/manager/roleOperatorSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/roleOperatorSelector.zml" class="org.zhiqim.manager.action.RoleOperatorSelectorAction" />
2024-06-09 12:00:41,312 [main] INFO - <action name="角色关联权限" path="/manager/roleRule.htm" interceptor="chkZmrLogin" redirect="/manager/role.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleRule.zml" class="org.zhiqim.manager.action.RoleRuleAction" success="保存成功" />
2024-06-09 12:00:41,313 [main] INFO - <action name="操作员列表" path="/manager/operator.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operator.zml" class="org.zhiqim.manager.action.OperatorAction" method="list" />
2024-06-09 12:00:41,313 [main] INFO - <action name="增加操作员页面" path="/manager/operatorAdd.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorAdd.zml" class="org.zhiqim.manager.action.OperatorAction" method="add" />
2024-06-09 12:00:41,313 [main] INFO - <action name="增加操作员反馈页面" path="/manager/operatorAddSuccess.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorAddSuccess.zml" />
2024-06-09 12:00:41,313 [main] INFO - <action name="增加操作员处理" path="/manager/operatorInsert.htm" interceptor="chkZmrLogin" redirect="/manager/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="insert" success="增加成功" />
2024-06-09 12:00:41,313 [main] INFO - <action name="修改操作员页面" path="/manager/operatorModify.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorModify.zml" class="org.zhiqim.manager.action.OperatorAction" method="modify" />
2024-06-09 12:00:41,313 [main] INFO - <action name="修改操作员处理" path="/manager/operatorUpdate.htm" interceptor="chkZmrLogin" redirect="/manager/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="update" success="修改成功" />
2024-06-09 12:00:41,313 [main] INFO - <action name="删除操作员处理" path="/manager/operatorDelete.htm" interceptor="chkZmrLogin" redirect="/manager/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="delete" success="删除成功" />
2024-06-09 12:00:41,313 [main] INFO - <action name="操作员上传头像" path="/manager/operatorUploadAvatar.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorUploadAvatar.zml" />
2024-06-09 12:00:41,313 [main] INFO - <action name="操作员选择对话框" path="/manager/operatorSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorSelector.zml" class="org.zhiqim.manager.action.OperatorSelectorAction" />
2024-06-09 12:00:41,313 [main] INFO - <action name="操作员多选对话框" path="/manager/operatorsSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorsSelector.zml" class="org.zhiqim.manager.action.OperatorSelectorAction" />
2024-06-09 12:00:41,314 [main] INFO - <action name="操作员权限修改" path="/manager/operatorRule.htm" interceptor="chkZmrLogin" redirect="/manager/operatorRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorRule.zml" class="org.zhiqim.manager.action.OperatorRuleAction" />
2024-06-09 12:00:41,314 [main] INFO - <action name="操作员权限显示" path="/manager/operatorRuleView.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorRuleView.zml" class="org.zhiqim.manager.action.OperatorRuleViewAction" />
2024-06-09 12:00:41,314 [main] INFO - <action name="操作员部门选择框" path="/manager/operatorDeptSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorDeptSelector.zml" class="org.zhiqim.manager.action.OperatorDeptSelectorAction" />
2024-06-09 12:00:41,314 [main] INFO - <action name="操作员角色选择框" path="/manager/operatorRoleSelector.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorRoleSelector.zml" class="org.zhiqim.manager.action.OperatorRoleSelectorAction" />
2024-06-09 12:00:41,314 [main] INFO - <action name="更换头像" path="/manager/modifyAvatar.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyAvatar.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改密码" path="/manager/modifyPassword.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyPassword.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改手机号" path="/manager/modifyMobile.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyMobile.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改邮箱" path="/manager/modifyEmail.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyEmail.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改旺旺" path="/manager/modifyWangwang.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWangwang.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改企业微信账号" path="/manager/modifyWkwechatAccount.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWkwechatAccount.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改个人微信账号" path="/manager/modifyWxcode.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWxcode.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="修改操作员参数" path="/manager/modifyOperatorParam.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyOperatorParam.zml" />
2024-06-09 12:00:41,314 [main] INFO - <action name="验证密码" path="/manager/validatePassword.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/validatePassword.zml" />
2024-06-09 12:00:41,315 [main] INFO - <action name="操作日志查询" path="/manager/operateLog.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operateLog.zml" class="org.zhiqim.manager.action.OperateLogAction" />
2024-06-09 12:00:41,315 [main] INFO - <action name="操作员在线列表" path="/manager/operatorOnline.htm" interceptor="chkZmrLogin" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorOnline.zml" class="org.zhiqim.manager.action.OperatorOnlineAction" />
2024-06-09 12:00:41,315 [main] INFO - <action name="头像" path="/manager/avatar/*/*.png" class="org.zhiqim.manager.action.AvatarAction" method="access" />
2024-06-09 12:00:41,315 [main] INFO - <action name="后台页面.htm" path="/zmr/*.htm" interceptor="chkZmrLogin" class="org.zhiqim.manager.action.ZmrAction" />
2024-06-09 12:00:41,315 [main] INFO - <action name="后台页面.zml" path="/zmr/*.zml" interceptor="chkZmrLogin" class="org.zhiqim.manager.action.ZmrAction" />
2024-06-09 12:00:41,315 [main] INFO - <action name="内部页面.htm" path="/zmi/*.htm" interceptor="chkZmrLogin" class="org.zhiqim.manager.action.ZmiAction" />
2024-06-09 12:00:41,315 [main] INFO - <action name="内部页面.zml" path="/zmi/*.zml" interceptor="chkZmrLogin" class="org.zhiqim.manager.action.ZmiAction" />
2024-06-09 12:00:41,329 [main] INFO - 刷新缓存[org.zhiqim.manager.dbo.ZmrParam]
2024-06-09 12:00:41,441 [main] INFO - 增加计划任务[Scheduler-aqGB-org.zhiqim.manager.ZmrTask]
2024-06-09 12:00:41,441 [main] INFO - 初始化[HTTP服务:httpd][Context:管理平台]完成!!![2024-06-09 12:00:41,441]
2024-06-09 12:00:41,441 [main] INFO - 初始化[HTTP服务:httpd]http监听:[name:httpd;port:8999]完成!!!
2024-06-09 12:00:41,441 [main] INFO - 系统[zhiqim_manager]-版本[V3.0]初始化完成!!!
+21
Dosyayı Görüntüle
@@ -0,0 +1,21 @@
2024-06-09 12:00:41,035 [main] INFO - 创建数据库连接[000001][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[测试]
2024-06-09 12:00:41,040 [main] INFO - 创建数据库连接[000002][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,045 [main] INFO - 创建数据库连接[000003][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,048 [main] INFO - 创建数据库连接[000004][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,053 [main] INFO - 创建数据库连接[000005][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,057 [main] INFO - 创建数据库连接[000006][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,060 [main] INFO - 创建数据库连接[000007][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,065 [main] INFO - 创建数据库连接[000008][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,071 [main] INFO - 创建数据库连接[000009][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,075 [main] INFO - 创建数据库连接[000010][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,079 [main] INFO - 创建数据库连接[000011][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,082 [main] INFO - 创建数据库连接[000012][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,085 [main] INFO - 创建数据库连接[000013][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,089 [main] INFO - 创建数据库连接[000014][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,093 [main] INFO - 创建数据库连接[000015][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,096 [main] INFO - 创建数据库连接[000016][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,099 [main] INFO - 创建数据库连接[000017][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,102 [main] INFO - 创建数据库连接[000018][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,105 [main] INFO - 创建数据库连接[000019][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,109 [main] INFO - 创建数据库连接[000020][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
2024-06-09 12:00:41,113 [main] INFO - 创建数据库连接[000021][jdbc:mysql://127.0.0.1:3306/yangcai_design?useUnicode=true&characterEncoding=UTF-8|root]成功,[初始化]
+128
Dosyayı Görüntüle
@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ZHIQIM-CONTEXT PUBLIC "-//ZHIQIM //DTD Zhiqim-Context Configuration 1.5.0//EN" "http://zhiqim.org/xmldtds/zhiqim_context_1_5_0.dtd">
<zhiqim-context>
<!-- 属性配置 -->
<attribute name="系统名称" key="name" value="管理平台"/>
<attribute name="系统版本" key="version" value="V1.0.0"/>
<attribute name="系统引导" key="bootstrap" value="org.zhiqim.manager.ZmrBootstrap"/>
<attribute name="管理台菜单" key="zmr_menu_sql" value="/conf/zmr.menu.sql"/>
<attribute name="管理台路径" key="zhiqim_manager" value="manager"/>
<!-- 拦截器 -->
<interceptor name="检查登录" key="chkZmrLogin" class="org.zhiqim.manager.ZmrInterceptor"/>
<!-- 基本内容 -->
<action name="首页" path="/index.htm" view="/ztmpl/zhiqim_manager/index.htm" class="org.zhiqim.manager.action.IndexAction"/>
<action name="管理页" path="/${zhiqim_manager}.htm" view="/ztmpl/zhiqim_manager/index.htm" class="org.zhiqim.manager.action.IndexAction"/>
<action name="退出" path="/${zhiqim_manager}/logout.htm" redirect="/index.htm" class="org.zhiqim.manager.action.LogoutAction"/>
<action name="头像" path="/${zhiqim_manager}/avatar/*/*.png" class="org.zhiqim.manager.action.AvatarAction" method="access"/>
<!-- 主页 -->
<action name="主页" interceptor="chkZmrLogin" path="/${zhiqim_manager}/main.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/main.zml" class="org.zhiqim.manager.action.MainAction" />
<action name="主页框架" interceptor="chkZmrLogin" path="/${zhiqim_manager}/welcome.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/main.zml" class="org.zhiqim.manager.action.MainAction" />
<action name="用户中心" interceptor="chkZmrLogin" path="/${zhiqim_manager}/profile.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/profile.zml" class="org.zhiqim.manager.action.ProfileAction" />
<!-- 系统管理 -->
<action name="系统菜单列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menu.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menu.zml" class="org.zhiqim.manager.action.MenuAction" method="list"/>
<action name="增加菜单页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menuAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menuAdd.zml" class="org.zhiqim.manager.action.MenuAction" method="add"/>
<action name="增加菜单处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menuInsert.htm" redirect="/${zhiqim_manager}/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="insert" success="增加成功"/>
<action name="修改菜单页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menuModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/menuModify.zml" class="org.zhiqim.manager.action.MenuAction" method="modify"/>
<action name="修改菜单处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menuUpdate.htm" redirect="/${zhiqim_manager}/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="update" success="修改成功"/>
<action name="删除菜单处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/menuDelete.htm" redirect="/${zhiqim_manager}/menu.htm" class="org.zhiqim.manager.action.MenuAction" method="delete" success="删除成功"/>
<action name="系统配置设置" interceptor="chkZmrLogin" path="/${zhiqim_manager}/config.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/config.zml" redirect="/${zhiqim_manager}/config.htm" class="org.zhiqim.manager.action.ConfigAction"/>
<action name="系统参数设置" interceptor="chkZmrLogin" path="/${zhiqim_manager}/param.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/param.zml" redirect="/${zhiqim_manager}/param.htm" class="org.zhiqim.manager.action.ParamAction"/>
<action name="更换首页主题风格" interceptor="chkZmrLogin" path="/${zhiqim_manager}/themeIndex.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/themeIndex.zml" redirect="/${zhiqim_manager}/themeIndex.htm" class="org.zhiqim.manager.action.ThemeIndexAction"/>
<action name="更换主页主题风格" interceptor="chkZmrLogin" path="/${zhiqim_manager}/themeMain.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/themeMain.zml" redirect="/${zhiqim_manager}/themeMain.htm" class="org.zhiqim.manager.action.ThemeMainAction"/>
<action name="系统缓存管理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/cache.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/cache.zml" redirect="/${zhiqim_manager}/cache.htm" class="org.zhiqim.manager.action.CacheAction"/>
<action name="密钥对设置" interceptor="chkZmrLogin" path="/${zhiqim_manager}/keys.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/keys.zml" redirect="/${zhiqim_manager}/keys.htm" class="org.zhiqim.manager.action.KeysAction" success="生成成功"/>
<action name="进程状态查询" interceptor="chkZmrLogin" path="/${zhiqim_manager}/process.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/process.zml" />
<action name="进程线程堆栈信息" interceptor="chkZmrLogin" path="/${zhiqim_manager}/processThreadStack.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/processThreadStack.zml" class="org.zhiqim.manager.action.ProcessThreadStackAction"/>
<!-- 操作员参数管理 -->
<action name="操作员参数列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/paramOperator.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/paramOperator.zml" class="org.zhiqim.manager.action.ParamOperatorAction" method="list"/>
<action name="增加操作员参数页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/paramOperatorAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/paramOperatorAdd.zml" class="org.zhiqim.manager.action.ParamOperatorAction" method="add"/>
<action name="增加操作员参数处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/paramOperatorInsert.htm" redirect="/${zhiqim_manager}/paramOperator.htm" class="org.zhiqim.manager.action.ParamOperatorAction" method="insert" success="增加成功"/>
<action name="删除操作员参数处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/paramOperatorDelete.htm" redirect="/${zhiqim_manager}/paramOperator.htm" class="org.zhiqim.manager.action.ParamOperatorAction" method="delete" success="删除成功"/>
<!-- 头像管理 -->
<action name="头像列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/avatar.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatar.zml" class="org.zhiqim.manager.action.AvatarAction" method="list"/>
<action name="修改头像页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/avatarModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatarModify.zml" class="org.zhiqim.manager.action.AvatarAction" method="modify"/>
<action name="增加头像页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/avatarAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/avatarAdd.zml" />
<!-- 组织管理 -->
<action name="组织列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/org.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/org.zml" class="org.zhiqim.manager.action.OrgAction" method="list"/>
<action name="增加组织页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgAdd.zml" class="org.zhiqim.manager.action.OrgAction" method="add"/>
<action name="增加组织处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgInsert.htm" redirect="/${zhiqim_manager}/org.htm" class="org.zhiqim.manager.action.OrgAction" method="insert" success="增加成功"/>
<action name="修改组织页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgModify.zml" class="org.zhiqim.manager.action.OrgAction" method="modify"/>
<action name="修改组织处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgUpdate.htm" redirect="/${zhiqim_manager}/org.htm" class="org.zhiqim.manager.action.OrgAction" method="update" success="修改成功"/>
<action name="删除组织处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgDelete.htm" redirect="/${zhiqim_manager}/org.htm" class="org.zhiqim.manager.action.OrgAction" method="delete" success="删除成功"/>
<action name="组织关联权限" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/orgRule.zml" redirect="/${zhiqim_manager}/orgRule.htm" class="org.zhiqim.manager.action.OrgRuleAction"/>
<action name="组织选择对话框" interceptor="chkZmrLogin" path="/${zhiqim_manager}/orgSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/orgSelector.zml" class="org.zhiqim.manager.action.OrgSelectorAction"/>
<!-- 部门管理 -->
<action name="部门列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/dept.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/dept.zml" class="org.zhiqim.manager.action.DeptAction" method="list"/>
<action name="增加部门页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptAdd.zml" class="org.zhiqim.manager.action.DeptAction" method="add"/>
<action name="增加部门处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptInsert.htm" redirect="/${zhiqim_manager}/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="insert" success="增加成功"/>
<action name="修改部门页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptModify.zml" class="org.zhiqim.manager.action.DeptAction" method="modify"/>
<action name="修改部门处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptUpdate.htm" redirect="/${zhiqim_manager}/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="update" success="修改成功"/>
<action name="删除部门处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptDelete.htm" redirect="/${zhiqim_manager}/dept.htm" class="org.zhiqim.manager.action.DeptAction" method="delete" success="删除成功"/>
<action name="部门操作员" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptOperator.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptOperator.zml" class="org.zhiqim.manager.action.DeptOperatorAction"/>
<action name="部门增加操作员" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptOperatorSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/deptOperatorSelector.zml" class="org.zhiqim.manager.action.DeptOperatorSelectorAction"/>
<action name="部门关联权限" interceptor="chkZmrLogin" path="/${zhiqim_manager}/deptRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/deptRule.zml" redirect="/${zhiqim_manager}/deptRule.htm" class="org.zhiqim.manager.action.DeptRuleAction" success="保存成功"/>
<!-- 角色管理 -->
<action name="角色列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/role.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/role.zml" class="org.zhiqim.manager.action.RoleAction" method="list"/>
<action name="增加角色页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleAdd.zml" class="org.zhiqim.manager.action.RoleAction" method="add"/>
<action name="增加角色处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleInsert.htm" redirect="/${zhiqim_manager}/role.htm" class="org.zhiqim.manager.action.RoleAction" method="insert" success="增加成功"/>
<action name="修改角色页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleModify.zml" class="org.zhiqim.manager.action.RoleAction" method="modify"/>
<action name="修改角色处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleUpdate.htm" redirect="/${zhiqim_manager}/role.htm" class="org.zhiqim.manager.action.RoleAction" method="update" success="修改成功"/>
<action name="删除角色处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleDelete.htm" redirect="/${zhiqim_manager}/role.htm" class="org.zhiqim.manager.action.RoleAction" method="delete" success="删除成功"/>
<action name="角色操作员" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleOperator.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/roleOperator.zml" class="org.zhiqim.manager.action.RoleOperatorAction"/>
<action name="角色增加操作员" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleOperatorSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/roleOperatorSelector.zml" class="org.zhiqim.manager.action.RoleOperatorSelectorAction"/>
<action name="角色关联权限" interceptor="chkZmrLogin" path="/${zhiqim_manager}/roleRule.htm" view="/ztmpl/zhiqim_manager/template.htm" redirect="/${zhiqim_manager}/role.htm" include="/zview/zhiqim_manager/roleRule.zml" class="org.zhiqim.manager.action.RoleRuleAction" success="保存成功"/>
<!-- 操作员管理 -->
<action name="操作员列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operator.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operator.zml" class="org.zhiqim.manager.action.OperatorAction" method="list"/>
<action name="增加操作员页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorAdd.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorAdd.zml" class="org.zhiqim.manager.action.OperatorAction" method="add"/>
<action name="增加操作员反馈页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorAddSuccess.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorAddSuccess.zml" class=""/>
<action name="增加操作员处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorInsert.htm" redirect="/${zhiqim_manager}/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="insert" success="增加成功"/>
<action name="修改操作员页面" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorModify.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorModify.zml" class="org.zhiqim.manager.action.OperatorAction" method="modify"/>
<action name="修改操作员处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorUpdate.htm" redirect="/${zhiqim_manager}/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="update" success="修改成功"/>
<action name="删除操作员处理" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorDelete.htm" redirect="/${zhiqim_manager}/operator.htm" class="org.zhiqim.manager.action.OperatorAction" method="delete" success="删除成功"/>
<action name="操作员上传头像" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorUploadAvatar.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorUploadAvatar.zml" />
<action name="操作员选择对话框" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorSelector.zml" class="org.zhiqim.manager.action.OperatorSelectorAction"/>
<action name="操作员多选对话框" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorsSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorsSelector.zml" class="org.zhiqim.manager.action.OperatorSelectorAction"/>
<action name="操作员权限修改" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorRule.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorRule.zml" redirect="/${zhiqim_manager}/operatorRule.htm" class="org.zhiqim.manager.action.OperatorRuleAction"/>
<action name="操作员权限显示" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorRuleView.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorRuleView.zml" class="org.zhiqim.manager.action.OperatorRuleViewAction"/>
<action name="操作员部门选择框" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorDeptSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorDeptSelector.zml" class="org.zhiqim.manager.action.OperatorDeptSelectorAction"/>
<action name="操作员角色选择框" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorRoleSelector.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/operatorRoleSelector.zml" class="org.zhiqim.manager.action.OperatorRoleSelectorAction"/>
<!-- 个人中心 -->
<action name="更换头像" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyAvatar.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyAvatar.zml" />
<action name="修改密码" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyPassword.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyPassword.zml" />
<action name="修改手机号" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyMobile.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyMobile.zml" />
<action name="修改邮箱" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyEmail.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyEmail.zml" />
<action name="修改旺旺" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyWangwang.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWangwang.zml" />
<action name="修改企业微信账号" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyWkwechatAccount.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWkwechatAccount.zml" />
<action name="修改个人微信账号" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyWxcode.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyWxcode.zml" />
<action name="修改操作员参数" interceptor="chkZmrLogin" path="/${zhiqim_manager}/modifyOperatorParam.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/modifyOperatorParam.zml" />
<action name="验证密码" interceptor="chkZmrLogin" path="/${zhiqim_manager}/validatePassword.htm" view="/ztmpl/zhiqim_manager/inner.htm" include="/zview/zhiqim_manager/validatePassword.zml" />
<!-- 操作日志与在线列表 -->
<action name="操作日志查询" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operateLog.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operateLog.zml" class="org.zhiqim.manager.action.OperateLogAction"/>
<action name="操作员在线列表" interceptor="chkZmrLogin" path="/${zhiqim_manager}/operatorOnline.htm" view="/ztmpl/zhiqim_manager/template.htm" include="/zview/zhiqim_manager/operatorOnline.zml" class="org.zhiqim.manager.action.OperatorOnlineAction"/>
<!-- 特定目录 -->
<action name="后台页面.htm" interceptor="chkZmrLogin" path="/zmr/*.htm" class="org.zhiqim.manager.action.ZmrAction"/>
<action name="后台页面.zml" interceptor="chkZmrLogin" path="/zmr/*.zml" class="org.zhiqim.manager.action.ZmrAction"/>
<action name="内部页面.htm" interceptor="chkZmrLogin" path="/zmi/*.htm" class="org.zhiqim.manager.action.ZmiAction"/>
<action name="内部页面.zml" interceptor="chkZmrLogin" path="/zmi/*.zml" class="org.zhiqim.manager.action.ZmiAction"/>
</zhiqim-context>
+149
Dosyayı Görüntüle
@@ -0,0 +1,149 @@
<#-------------------------------------------------------------------------->
<#-----知启蒙全局变量定义(统一使用zhiqim前缀)--------------------------------->
<#-------------------------------------------------------------------------->
<#var zhiqim.css = context.getRootPath("/service/res/zhiqim_v1.5.0.r2019010101.css")/>
<#var zhiqim.js = new ZmrCdnRuntime(context, "/service/res/zhiqim_v1.5.0.r2019010101.min.js")/>
<#var zhiqim.mobile.css= context.getRootPath("/service/res/zhiqim.mobile_v1.5.0.r2019010101.css")/>
<#var zhiqim.mobile.js= new ZmrCdnRuntime(context, "/service/res/zhiqim.mobile_v1.5.0.r2019010101.min.js")/>
<#var zhiqim_iframenav.js = new ZmrCdnRuntime(context, "/ztmpl/zhiqim_manager/zhiqim_iframenav_v1.5.0.r2019010101.js")/>
<#var jsencrypt.js = new ZmrCdnRuntime(context, "/ztmpl/zhiqim_manager/jsencrypt.js")/>
<#-------------------------------------------------------------------------->
<#-----知启蒙管理台变量定义(统一使用zmr前缀)---------------------------------->
<#-------------------------------------------------------------------------->
<#--分页显示默认条数-->
<#var zmr_page_size = 20/>
<#--脚注标注-->
<#var zmr_copyname = "2021&nbsp;秒绘科技"/>
<#var zmr_copyright = "Copyright&nbsp;&nbsp;&copy;&nbsp;"+zmr_copyname+"&nbsp;All&nbsp;Rights&nbsp;Reserved"/>
<#-------------------------------------------------------------------------->
<#-------知启蒙管理台函数定义(统一使用zhiqim_manager前缀)--------------------->
<#-------------------------------------------------------------------------->
<#--头部定义返回历史连接-->
<#function zhiqim_manager_history(url)>
<script>
function returnHistory()
{
window.location.href = "${url}";
}
</script>
</#function>
<#--主体内容-->
<#function zhiqim_manager_content()>
<div class="content">
</#function>
<#--主体内容结束-->
<#function zhiqim_manager_content_end()>
</div>
</#function>
<#--显示标题-->
<#function zhiqim_manager_title(name)>
<table class="z-table z-bordered zi-bd-b-none z-pd10">
<tr class="z-h40" style="background-color:${zmr_title_bgcolor}">
<td class="z-bold z-px15">${name}</td>
</tr>
</table>
</#function>
<#--显示无记录信息-->
<#function zhiqim_manager_no_record(colspan, desc)>
<tr class="zi-h60 zi-text-center z-bg-white">
<td colspan="${colspan}">${desc}</td>
</tr>
</#function>
<#--显示无记录信息-->
<#function zhiqim_manager_tr_no_record(result, colspan, desc)>
<#if result.isEmpty()>
<tr class="zi-h60 z-bg-white z-text-center">
<td colspan="${colspan}">${desc}</td>
</tr>
</#if>
</#function>
<#--显示tr标题-->
<#function zhiqim_manager_tr_title(colspan, name)>
<tr class="zi-h40">
<td class="z-bold z-px15 zi-pd-l5 z-text-left" colspan="${colspan}">${name}</td>
</tr>
</#function>
<#--判断列表背景分隔颜色-->
<#function zhiqim_manager_tr_bg(index)>
<#if index % 2 == 0>${zmr_tr_odd_bgcolor}<#else>${zmr_tr_even_bgcolor}</#if>
</#function>
<#--列表行移入移出颜色变化-->
<#function zhiqim_manager_tr_onmouse()>
onmouseover="Z(this).css('background-color', '${zmr_tr_over_bgcolor}')" onmouseout="Z(this).css('background-color', '${zmr_tr_even_bgcolor}')"
</#function>
<#--列表行点击选中单选按钮-->
<#function zhiqim_manager_tr_click_radio()>
onclick="Z(this).find('td:first-child > zcover > i.z-radio').click();"
</#function>
<#--列表行点击选中多选按钮-->
<#function zhiqim_manager_tr_click_checkbox()>
onclick="Z(this).find('td:first-child > zcover > i.z-checkbox').click();"
</#function>
<#--显示记录脚注-->
<#function zhiqim_manager_list(size)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h40">
<td class="zi-pd-r10 z-text-right">共&nbsp;<span class="z-color-red">${size}</span>&nbsp;条数据</td>
</tr>
</table>
</#function>
<#--显示返回上一页-->
<#function zhiqim_manager_return()>
<table class="z-table z-bordered zi-bd-t-none z-pd10 z-bg-white">
<tr class="z-h60">
<td><a href="javascript:returnHistory();">返回上一页</a></td>
</tr>
</table>
</#function>
<#--显示返回上一页和提交-->
<#function zhiqim_manager_submit()>
<table class="z-table zi-bd zi-bd-t-none z-pd10 z-bg-white">
<tr class="z-h80">
<td width="40%"><a href="javascript:returnHistory();">返回上一页</a></td>
<td width="*"><button type="submit" class="z-button z-large z-w150 ${zmr_color_class}">提交</button></td>
</tr>
</table>
</#function>
<#--显示返回上一页和提交带参数-->
<#function zhiqim_manager_submit_onclick(onclick)>
<table class="z-table zi-bd zi-bd-t-none z-pd10 z-bg-white">
<tr class="z-h80">
<td width="40%"><a href="javascript:returnHistory();">返回上一页</a></td>
<td width="*"><button type="button" class="z-button z-large z-w150 ${zmr_color_class}" onclick="${onclick}">提交</button></td>
</tr>
</table>
</#function>
<#-------------------------------------------------------------------------->
<#-------知启蒙管理台预定义函数定义------------------------------------------->
<#-------------------------------------------------------------------------->
<#--topnav左边区域自定义块-->
<#function zhiqim_manager_topnav_left_defined()>
</#function>
<#--topnav右边区域自定义块-->
<#function zhiqim_manager_topnav_right_defined()>
</#function>
+58
Dosyayı Görüntüle
@@ -0,0 +1,58 @@
-- ---------------------------------------------------
-- 知启蒙管理台功能菜单
-- ---------------------------------------------------
truncate table ZMR_MENU;
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('ROOT', 'MENU', '系统功能根菜单', '', 0, 0, 0, '', '', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU', 'MENU_010', '系统配置', '系统', 1, 0, 1, 'z-config', '', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010', 'MENU_010_010', '系统基础设置', '', 2, 0, 1, 'z-setting', '/${zhiqim_manager}/menu.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_010', '增加系统菜单', '', 3, 0, 2, '', '/${zhiqim_manager}/menuAdd.htm,/${zhiqim_manager}/menuInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_020', '修改系统菜单', '', 3, 0, 2, '', '/${zhiqim_manager}/menuModify.htm,/${zhiqim_manager}/menuUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_030', '删除系统菜单', '', 3, 0, 2, '', '/${zhiqim_manager}/menuDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_100', '系统头像管理', '', 3, 0, 2, '', '/${zhiqim_manager}/avatar.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_110', '增加系统头像', '', 3, 0, 2, '', '/${zhiqim_manager}/avatarAdd.htm,/${zhiqim_manager}/avatarInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_120', '修改系统头像', '', 3, 0, 2, '', '/${zhiqim_manager}/avatarModify.htm,/${zhiqim_manager}/avatarUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_130', '删除系统头像', '', 3, 0, 2, '', '/${zhiqim_manager}/avatarDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_200', '系统配置管理', '', 3, 0, 2, '', '/${zhiqim_manager}/config.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_210', '系统缓存管理', '', 3, 0, 2, '', '/${zhiqim_manager}/cache.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_300', '系统参数设置', '', 3, 0, 2, '', '/${zhiqim_manager}/param.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_305', '操作员参数管理', '', 3, 0, 2, '', '/${zhiqim_manager}/paramOperator.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_310', '首页主题设置', '', 3, 0, 2, '', '/${zhiqim_manager}/themeIndex.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_320', '主页主题设置', '', 3, 0, 2, '', '/${zhiqim_manager}/themeMain.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_330', '公钥私钥设置', '', 3, 0, 2, '', '/${zhiqim_manager}/keys.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_010', 'MENU_010_010_340', '系统进程管理', '', 3, 0, 2, '', '/${zhiqim_manager}/process.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010', 'MENU_010_050', '组织部门管理', '', 2, 0, 1, 'z-apps', '/${zhiqim_manager}/dept.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_010', '组织管理', '', 3, 0, 2, '', '/${zhiqim_manager}/org.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_020', '增加组织', '', 3, 0, 2, '', '/${zhiqim_manager}/orgAdd.htm,/zhiqim_manager/orgInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_030', '修改组织', '', 3, 0, 2, '', '/${zhiqim_manager}/orgModify.htm,/zhiqim_manager/orgUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_040', '删除组织', '', 3, 0, 2, '', '/${zhiqim_manager}/orgDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_050', '组织权限', '', 3, 0, 2, '', '/${zhiqim_manager}/orgRule.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_100', '部门管理', '', 3, 0, 2, '', '/${zhiqim_manager}/dept.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_110', '增加部门', '', 3, 0, 2, '', '/${zhiqim_manager}/deptAdd.htm,/${zhiqim_manager}/deptInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_120', '修改部门', '', 3, 0, 2, '', '/${zhiqim_manager}/deptModify.htm,/${zhiqim_manager}/deptUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_130', '删除部门', '', 3, 0, 2, '', '/${zhiqim_manager}/deptDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_140', '部门成员', '', 3, 0, 2, '', '/${zhiqim_manager}/deptOperator.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_050', 'MENU_010_050_150', '部门权限', '', 3, 0, 2, '', '/${zhiqim_manager}/deptRule.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010', 'MENU_010_110', '操作员管理', '', 2, 0, 1, 'z-customer', '/${zhiqim_manager}/operator.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_010', '增加操作员', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorAdd.htm,/${zhiqim_manager}/operatorInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_020', '修改操作员', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorModify.htm,/${zhiqim_manager}/operatorUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_030', '删除操作员', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_040', '查看操作员权限', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorRuleView.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_050', '设置操作员独立权限 ', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorRule.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_060', '设置操作员部门', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorDept.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_070', '设置操作员角色', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorRole.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_080', '操作员参数管理', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorParam.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_090', '角色管理', '', 3, 0, 2, '', '/${zhiqim_manager}/role.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_100', '增加角色', '', 3, 0, 2, '', '/${zhiqim_manager}/roleAdd.htm,/${zhiqim_manager}/roleInsert.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_110', '修改角色', '', 3, 0, 2, '', '/${zhiqim_manager}/roleModify.htm,/${zhiqim_manager}/roleUpdate.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_120', '删除角色', '', 3, 0, 2, '', '/${zhiqim_manager}/roleDelete.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_130', '角色成员', '', 3, 0, 2, '', '/${zhiqim_manager}/roleOperator.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_110', 'MENU_010_110_140', '角色权限', '', 3, 0, 2, '', '/${zhiqim_manager}/roleRule.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010', 'MENU_010_150', '操作日志查询', '', 2, 0, 1, 'z-text', '/${zhiqim_manager}/operateLog.htm', '');
insert into ZMR_MENU (PARENT_CODE, MENU_CODE, MENU_NAME, MENU_NAME_ABBR, MENU_LEVEL, MENU_STATUS, MENU_TYPE, MENU_ICON, MENU_URL, MENU_DESC) values ('MENU_010_150', 'MENU_010_150_100', '操作员在线列表', '', 3, 0, 2, '', '/${zhiqim_manager}/operatorOnline.htm', '');
commit;
-- ---------------------------------------------------
-- 知启蒙管理台功能菜单创建完成
-- ---------------------------------------------------
+138
Dosyayı Görüntüle
@@ -0,0 +1,138 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!--个人中心-->
<div class="z-h80 z-pd-t15 z-pd-l15" style="border-bottom:1px solid #22282e;">
<div class="z-float-left z-w50 z-h50 z-mg-r10"><img class="z-bd-rd50p z-w50 z-h50" src="${sessionUser.getAvatar50()}"></div>
<div class="z-float-left z-lh25 ">
<span class="z-px14 z-bold z-color-white">${sessionUser.getOperatorName()}</span><br>
<a href="${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}"><span class="z-color-white z-px12">个人中心</span></a>
</div>
</div>
<!--栏目列表-->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}<i class="z-arrow z-px5 z-gray"></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Z.L.href('${context.getRootPath(childMenu.getMenuUrl())}');" <#if childMenu.getMenuCode() == childMenuCode>class="active"</#if>><i class="z-font z-mg-r10 ${childMenu.getMenuIcon()}"></i>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Z.L.href('${context.getRootPath(topMenu.getMenuUrl())}');"><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!--主体-->
<div id="mainbody" class="mainbody" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<#include include/>
</div>
<!-- 容器结束 -->
</div>
<!--脚注-->
<div class="footer">
<div class="footer-wrap">${zmr_copyright}</div>
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 7.6 KiB

+95
Dosyayı Görüntüle
@@ -0,0 +1,95 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#4bb0af;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px;color:#fff;background-color:#00a2eb;height:55px;z-index:99;}
.topnav .logo {float:left;width:200px;height:55px;padding:0 10px;overflow:hidden;font-size:24px;line-height:55px;background-color:#008bd2;word-break:break-all;word-wrap:break-word;}
.topnav a{color: #fff;}
.topnav .topnavleft {float:left;height:55px;}
.topnav .topnavleft .bar {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .first {border-left:1px solid #008bd2;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only {float:left;height:55px;line-height:55px;border-right:1px solid #008bd2;}
.topnav .topnavleft .nav:hover{background-color:#008bd2; color:#fff;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px;border-left:1px solid #008bd2;}
.topnav .topnavright .nav:hover {background-color:#008bd2; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%;min-height:1000px;overflow:hidden;background-color:#eaedf1;}
/*[替换z-tabnav的背景色为容器背景色]*/
.container .z-tabnav>nav li.z-active{border-bottom:1px solid #eaedf1;}
.container .z-tabnav>nav li.z-active:hover{background-color:#eaedf1;}
.sidebar {position:relative;float:left;width:200px;min-height:1000px;overflow:hidden;background-color:#2c3a40;margin-bottom:-9999px;padding-bottom:9999px;}
.sidebar p{position:relative;float:left;width:200px; height:40px;line-height:40px;color:#fff; padding-left:15px; background-color:#273237;cursor:pointer;border-bottom:1px solid #22282e;}
.sidebar p a{color:#fff;}
.sidebar p .z-arrow{position:absolute;top:16px;right:10px;}
.sidebar p:hover{background-color:#22282e;}
.sidebar p.active{background-color:#37424f;}
.sidebar ul{position:relative;width:200px;height:auto;overflow:hidden;}
.sidebar ul li{float:left;background-color:#37424f;width:200px;height:40px;color:#fff; line-height:40px;padding-left:15px;cursor:pointer;}
.sidebar ul li a{color:#fff;}
.sidebar ul li:hover{background-color:#414750;color:#fff;}
.sidebar ul li.active{background-color:#5c5c5c;color:#fff;}
/* iframenav */
.iframenav{position:relative;margin-left:200px;height:40px;line-height:40px;}
/* [iframenav翻页] */
.iframenav-prev,.iframenav-next{position:absolute;top:0;width:50px;height:39px;z-index:1;background:#fff;cursor:pointer;padding:0 22px;text-align:center;line-height:39px;}
.iframenav-prev:hover,.iframenav-next:hover{background-color:#f5f5f5;}
.iframenav-prev{left:0;border-right:1px solid #d3d3d3;}
.iframenav-next{right:100px;border-left:1px solid #d3d3d3;}
.iframenav-prev .z-font,.iframenav-next .z-font{color:#999;margin-left:-8px;}
/* [iframenav控制] */
.iframenav-ctrl{position:absolute;top:0;right:0;}
.iframenav-ctrl-title{position:absolute;top:0;right:0;width:100px;height:39px;z-index:1;border-left:1px solid #d3d3d3;text-align:center;line-height:39px;color:#666;background:#fff;cursor:pointer;}
.iframenav-ctrl-title:hover{background-color:#f5f5f5;}
.iframenav-ctrl-title .z-font{color:#999;margin-left:6px;font-size:10px;}
.iframenav-ctrl-wrap{position:absolute;top:39px;right:0;display:none;width:150px;height:130px;z-index:2;background-color:#fff;border:1px solid #d3d3d3;}
.iframenav-ctrl-wrap ul{padding:10px 0;}
.iframenav-ctrl-wrap ul+ul{border-top:1px solid #ccc;}
.iframenav-ctrl-wrap li{padding:0 25px;line-height:30px;cursor:pointer;}
.iframenav-ctrl-wrap li:hover{background:#f1f1f1;}
/* [iframenav选项卡] */
.iframenav-tab-wrap{height:39px;margin:0 150px 0 50px;overflow:hidden;position:relative;}
.iframenav-tab-list{position:absolute;left:0;top:0;height:39px;background-color:#fff;overflow:hidden;}
.iframenav-tab-item{position:relative;float:left;line-height:39px;border-right:1px solid #d3d3d3;padding:0 35px 0 20px;background:#fff;color:#666;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.iframenav-tab-item.active{background-color:#d4d8db;}
.iframenav-tab-item:hover{color:#222;}
.iframenav-tab-item:first-child{padding-right:23px;}
.iframenav-tab-item .z-font{position:absolute;top:2px;width:25px;line-height:39px;color:#666;font-size:12px;cursor:pointer;text-align:center;}
.iframenav-tab-item .z-error{right:0;padding-right:5px;}
.iframenav-tab-item .z-error:hover{color:#f00;}
/* [iframenav内容页] */
.iframenav-cont{}
.iframenav-cont-item{width:100%;height:100%;display:none;}
.iframenav-cont-item.active{display:block;}
.iframenav-cont-item > iframe{width:100%;height:100%;border:0;margin:0;padding:0;}
/* mainbody */
.mainbody{margin-left:200px;}
.mainbody .breadcrumb{position:relative;float:left;width:100%;}
.mainbody .content{position:relative;float:left;width:100%;padding:20px;}
/* footer */
.footer {position:relative;width:100%;height:60px;display:block;overflow:hidden;background-color:#f4f4f4;border-top:1px solid #d3d3d3;z-index:99;}
.footer-wrap {position:relative;margin:0 auto;height:100%;line-height:60px;text-align: center;color:#333;}
+115
Dosyayı Görüntüle
@@ -0,0 +1,115 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.sidebar = function()
{//打开&关闭边导航
var $sidebar = Z("#sidebar");
if ($sidebar.isHide())
{
$sidebar.show();
Z("#logo").show();
Z("#iframenav").css("margin-left", 200);
Z("#mainbody").css("margin-left", 200);
}
else
{
$sidebar.hide();
Z("#logo").hide();
Z("#iframenav").css("margin-left", 0);
Z("#mainbody").css("margin-left", 0);
}
Z.ajax().setContextPath(Zmr.contextPath)
.setClassName("sessionUser").setMethodName("setSidebar").addParam(!$sidebar.isHide())
.execute();
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height-40);//40为iframenav高度
};
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
Zmr.addTopMenuClick = function()
{//增加顶级栏目点击事件,先定义两个开关,防止并发时导致数据混乱
Zmr.doClickTopMenuUp = false;
Zmr.doClickTopMenuDw = false;
Z(".sidebar p").click(function()
{
if (Zmr.doClickTopMenuUp || Zmr.doClickTopMenuDw)
return;
Zmr.doClickTopMenuUp = true;Zmr.doClickTopMenuDw = true;
Z(this).next("ul").slideToggle(200, function(){Zmr.doClickTopMenuDw = false;})
.siblings("ul").slideUp(200, function(){Zmr.doClickTopMenuUp = false;});
});
};
/**************************************************/
//定义初始化滑动菜单
/**************************************************/
Z.onload(function()
{//菜单隐藏展开
Zmr.addTopMenuClick();
});
//END
})(zhiqim);
+61
Dosyayı Görüntüle
@@ -0,0 +1,61 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/default_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/default_2019010101.js")/>
<#var zmr_color_class = "z-blue"/>
<#var zmr_sidebar_width = 200/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#efefef"/>
<#var zmr_thead_bgcolor = "#efefef"/>
<#var zmr_tr_odd_bgcolor = "#f3fdfc"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f3fdfc"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">${name}</span>
</div>
</#if>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+175
Dosyayı Görüntüle
@@ -0,0 +1,175 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Scripts.src(zhiqim_iframenav.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Zin.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
Z(window).resize(Zin.setTranslateForShowActive);
<#if !sessionUser.isWelcomeUrl()>
Z.onload(function()
{
var $elem = Z("#sidebar [data-url]");
if ($elem.length > 0)
{//存在指定主页,主动打开
Zin.doClickChildMenu($elem[0], $elem.attr("data-url"));
}
});
</#if>
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Zin.selectIframeTab('menu_index');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Zin.refreshIframeTabActive();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!-- 个人中心 -->
<div class="z-h80 z-pd-t15 z-pd-l15" style="border-bottom:1px solid #22282e;">
<div class="z-float-left z-w50 z-h50 z-mg-r10"><img class="z-bd-rd50p z-w50 z-h50" src="${sessionUser.getAvatar50()}"></div>
<div class="z-float-left z-lh25">
<span class="z-px14 z-bold z-color-white">${sessionUser.getOperatorName()}</span><br>
<a href="javascript:void(0);" onclick="Zin.doClickChildMenu(this, '${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><span class="z-color-white z-px12">个人中心</span></a>
</div>
</div>
<!-- 栏目列表 -->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, sessionUser.getMainUrl())/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}<i class="z-arrow z-px5 z-gray"></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Zin.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>class="active" data-url="${context.getRootPath(childMenu.getMenuUrl())}"</#if>><i class="z-font z-mg-r10 ${childMenu.getMenuIcon()}"></i>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Zin.doClickChildMenu(this, '${context.getRootPath(topMenu.getMenuUrl())}');"><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!-- 框架导航 -->
<div class="iframenav z-h40 z-lh40 z-bg-white z-bd-b" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div class="iframenav-prev" onclick="Zin.turnIframeTab(false);"><i class="z-font z-arrow-left"></i><i class="z-font z-arrow-left"></i></div>
<div class="iframenav-tab-wrap">
<ul class="iframenav-tab-list">
<li class="iframenav-tab-item active" id="tab_menu_index" onclick="Zin.selectIframeTabEvent(event);"><span>首页</span></li>
</ul>
</div>
<div class="iframenav-next" onclick="Zin.turnIframeTab(true);"><i class="z-font z-arrow-right"></i><i class="z-font z-arrow-right"></i></div>
<div class="iframenav-ctrl">
<div class="iframenav-ctrl-title" onclick="Zin.toggleIframeCtrlWrap();">关闭操作<i class="z-font z-arrow-down"></i></div>
<div class="iframenav-ctrl-wrap">
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.selectIframeTabActive();">定位当前选项卡</li>
</ul>
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabAll();">关闭全部选项卡</li>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabOther();">关闭其他选项卡</li>
</ul>
</div>
</div>
</div>
<!--框架内容-->
<div id="mainbody" class="mainbody iframenav-cont z-h100p" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div id="iframe_menu_index" class="iframenav-cont-item active">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="welcome.htm"></iframe>
</div>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+176
Dosyayı Görüntüle
@@ -0,0 +1,176 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
<style>
body{color:#333;background-color:#747f9d;background-image: url(ztmpl/zhiqim_manager/index_bg_00.jpg);background-repeat: no-repeat;background-size:100%;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;height:40px;line-height:40px;background-color:#000; background:rgba(0,0,0,0.2); filter:alpha(opacity=20);}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{background-image: url(ztmpl/zhiqim_manager/00_default/index_bg_center.jpg);background-repeat:repeat-y; width:825px;}
.input{background-color:#3f3f40;color:#fffafa;font-size:20px;letter-spacing:1px;border:2px solid #5c5c5c;border-radius:5px;height:45px;line-height:45px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input:focus{border-color:#708090;}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z.V.isEmpty(Z("#operatorCode").val()))
Z("#operatorCode").focus();
else if (Z.V.isEmpty(Z("#operatorPass").val()))
Z("#operatorPass").focus();
else if (Z("#verificationCode").length > 0)
Z("#verificationCode").focus();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
${Htmls.toCallFrame()}
<div class="header">
<div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录&nbsp;&nbsp;[&nbsp;${context.getContextName()}&nbsp;]</div>
<div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>
</div>
<div class="z-absolute-center-middle login" style="height:<#if hasVerificationCode && hasRememberCode>410<#elseif hasVerificationCode>360<#elseif hasRememberCode>350<#else>300</#if>px">
<table class="z-table z-h100p">
<tr>
<td width="50%" class="z-text-center"><img src="ztmpl/zhiqim_manager/index_logo_00.png"></td>
<td width="50%" valign="top" rowspan="2">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<table class="z-table z-mg-l30 z-h70-tr z-pd5 z-color-white">
<tr>
<td class="z-px20 z-text-gray z-mg-t10">用户登录</td>
</tr>
<tr>
<td><input id="operatorCode" class="z-w300 input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr>
<td><input id="operatorPass" type="password" class="z-w300 input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr>
<td>
<input id="verificationCode" class="z-w200 input verificationCode" placeholder="验证码" data-options="type:Numeric;paste:true;" maxlength="4" spellcheck="false" autocomplete="off">
<img class="z-pointer z-bd-rd5 z-mg-t-8" title="点击刷新验证码" onclick="this.src='service/vcode.jpg?bgColor=%231299ec&width=95&height=42&fontSize=20&yawp=true&t='+new Date().getTime();" src="service/vcode.jpg?bgColor=%231299ec&width=95&height=42&fontSize=20&yawp=true&t=${DateTimes.getDateTime17String()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="zi-h40">
<td class="z-px16 z-text-gray">
<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>>记住用户名
<#if hasRememberPass>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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>/>记住密码
</#if>
</td>
</tr>
</#if>
<tr>
<td><button id="login" class="z-button z-w300 z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button></td>
</tr>
</table>
</td>
</tr>
<tr class="z-h120">
<td class="z-text-center" valign="top"><img src="ztmpl/zhiqim_manager/index_slogan_00.png"/></td>
</tr>
</table>
</div>
<div class="footer">${zmr_copyright}</div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 4.5 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 67 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 19 KiB

+130
Dosyayı Görüntüle
@@ -0,0 +1,130 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w80 z-text-center z-pointer" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px16 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}<i class="z-arrow z-px5"><span></span></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Z.L.href('${context.getRootPath(childMenu.getMenuUrl())}');" <#if childMenu.getMenuCode() == childMenuCode>class="active"</#if>>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Z.L.href('${context.getRootPath(topMenu.getMenuUrl())}');"><i class="z-font z-px16 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!--主体-->
<div id="mainbody" class="mainbody" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<#include include/>
</div>
<!-- 容器结束 -->
</div>
<!--脚注-->
<div class="footer">
<div class="footer-wrap">${zmr_copyright}</div>
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+97
Dosyayı Görüntüle
@@ -0,0 +1,97 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#216a9d;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px;color: #fff;background-color:#008fbf;height:55px;z-index:99;}
.topnav .logo {float:left;width:200px;height:55px;padding:0 10px;overflow:hidden;font-size:24px;line-height:55px;background-color:#2a80b9;word-break:break-all;word-wrap:break-word;}
.topnav .topnavleft {float:left;height:55px;}
.topnav .topnavleft .bar {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .first {border-left:1px solid #2a80b9;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only {float:left;height:55px;line-height:55px;border-right:1px solid #2a80b9;}
.topnav .topnavleft .nav:hover{background-color:#2a80b9; color:#fff;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px; border-left:1px solid #2a80b9;}
.topnav .topnavright .nav:hover {background-color:#2a80b9; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%; min-height:1000px;overflow:hidden;background-color:#edf3f7;}
/*[替换z-tabnav的背景色为容器背景色]*/
.container .z-tabnav>nav li.z-active{border-bottom:1px solid #edf3f7;}
.container .z-tabnav>nav li.z-active:hover{background-color:#edf3f7;}
.sidebar {position:relative; float: left; width:200px;min-height:1000px;height:100%;margin-bottom:-9999px;padding-bottom:9999px;overflow:hidden; background-color: #f2f2f2; border-right:1px solid #d8dce5;}
.sidebar p{position:relative;float:left;width:200px; height:40px;line-height:40px; border-bottom:1px solid #e5e5e5;border-left:3px solid transparent;display:block;padding-left:10px;cursor:pointer;}
.sidebar p a{color:#333;}
.sidebar p .z-arrow{position:absolute;top:16px;right:10px;}
.sidebar p .z-arrow>span{border-color:#f2f2f2 transparent transparent;}
.sidebar p:hover{width:200px;background-color:#fafafa; border-left:3px solid #2a80b9;color:#216a9d;}
.sidebar p.active{width:200px;background-color:#fafafa; border-left:3px solid #2a80b9;color:#216a9d;}
.sidebar p:hover>.z-arrow>span{border-color:#fafafa transparent transparent;}
.sidebar p.active>.z-arrow>span{border-color:#fafafa transparent transparent;}
.sidebar ul{position:relative;width:200px;height:auto;overflow:hidden;}
.sidebar ul li{float:left;width:200px;border-left:0px;line-height:35px;text-indent:35px;border-bottom:1px dashed #e5e5e5;background-color:#fff;background-color:#fff;background-image:url(ico_n.gif); background-position:15px; background-repeat:no-repeat;display:block;cursor:pointer;}
.sidebar ul li:hover{background-image: url(ico_h.gif) ; background-repeat:no-repeat;color:#216a9d;}
.sidebar ul li.active{background-image:url(ico_h.gif); background-repeat:no-repeat;color:#216a9d;}
/* iframenav */
.iframenav{position:relative;margin-left:200px;height:40px;line-height:40px;}
/* [iframenav翻页] */
.iframenav-prev,.iframenav-next{position:absolute;top:0;width:50px;height:39px;z-index:1;background:#fff;cursor:pointer;padding:0 22px;text-align:center;line-height:39px;}
.iframenav-prev:hover,.iframenav-next:hover{background-color:#f5f5f5;}
.iframenav-prev{left:0;border-right:1px solid #d3d3d3;}
.iframenav-next{right:100px;border-left:1px solid #d3d3d3;}
.iframenav-prev .z-font,.iframenav-next .z-font{color:#999;margin-left:-8px;}
/* [iframenav控制] */
.iframenav-ctrl{position:absolute;top:0;right:0;}
.iframenav-ctrl-title{position:absolute;top:0;right:0;width:100px;height:39px;z-index:1;border-left:1px solid #d3d3d3;text-align:center;line-height:39px;color:#666;background:#fff;cursor:pointer;}
.iframenav-ctrl-title:hover{background-color:#f5f5f5;}
.iframenav-ctrl-title .z-font{color:#999;margin-left:6px;font-size:10px;}
.iframenav-ctrl-wrap{position:absolute;top:39px;right:0;display:none;width:150px;height:130px;z-index:2;background-color:#fff;border:1px solid #d3d3d3;}
.iframenav-ctrl-wrap ul{padding:10px 0;}
.iframenav-ctrl-wrap ul+ul{border-top:1px solid #ccc;}
.iframenav-ctrl-wrap li{padding:0 25px;line-height:30px;cursor:pointer;}
.iframenav-ctrl-wrap li:hover{background:#f1f1f1;}
/* [iframenav选项卡] */
.iframenav-tab-wrap{height:39px;margin:0 150px 0 50px;overflow:hidden;position:relative;}
.iframenav-tab-list{position:absolute;left:0;top:0;height:39px;background-color:#fff;overflow:hidden;}
.iframenav-tab-item{position:relative;float:left;line-height:39px;border-right:1px solid #d3d3d3;padding:0 35px 0 20px;background:#fff;color:#666;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.iframenav-tab-item.active{background-color:#d4d8db;}
.iframenav-tab-item:hover{color:#222;}
.iframenav-tab-item:first-child{padding-right:23px;}
.iframenav-tab-item .z-font{position:absolute;top:2px;width:25px;line-height:39px;color:#666;font-size:12px;cursor:pointer;text-align:center;}
.iframenav-tab-item .z-error{right:0;padding-right:5px;}
.iframenav-tab-item .z-error:hover{color:#f00;}
/* [iframenav内容页] */
.iframenav-cont{}
.iframenav-cont-item{width:100%;height:100%;display:none;}
.iframenav-cont-item.active{display:block;}
.iframenav-cont-item > iframe{width:100%;height:100%;border:0;margin:0;padding:0;}
/* mainbody */
.mainbody{margin-left:200px;}
.mainbody .breadcrumb{position:relative;float:left;width: 100%;background-color:#f5f5f5;}
.mainbody .content{position:relative;float:left;width:100%;padding:20px;}
/* footer */
.footer {position:relative;width:100%;height:40px;display:block;overflow:hidden;background-color:#2a80b9;z-index:99;}
.footer-wrap {position:relative;margin:0 auto;height:100%;line-height:40px;text-align: center;color:#fff;}
+113
Dosyayı Görüntüle
@@ -0,0 +1,113 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.sidebar = function()
{//打开&关闭边导航
var $sidebar = Z("#sidebar");
if ($sidebar.isHide())
{
$sidebar.show();
Z("#logo").show();
Z("#mainbody").css("margin-left", 200);
}
else
{
$sidebar.hide();
Z("#logo").hide();
Z("#mainbody").css("margin-left", 0);
}
Z.ajax().setContextPath(Zmr.contextPath)
.setClassName("sessionUser").setMethodName("setSidebar").addParam(!$sidebar.isHide())
.execute();
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//-55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height-40);//40为iframenav高度
}
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
Zmr.addTopMenuClick = function()
{//增加顶级栏目点击事件
Zmr.doClickTopMenuUp = false;
Zmr.doClickTopMenuDw = false;
Z(".sidebar p").click(function()
{
if (Zmr.doClickTopMenuUp || Zmr.doClickTopMenuDw)
return;
Zmr.doClickTopMenuUp = true;Zmr.doClickTopMenuDw = true;
Z(this).next("ul").slideToggle(200, function(){Zmr.doClickTopMenuDw = false;})
.siblings("ul").slideUp(200, function(){Zmr.doClickTopMenuUp = false;});
});
};
/**************************************************/
//定义初始化滑动菜单
/**************************************************/
Z.onload(function()
{//菜单隐藏展开
Zmr.addTopMenuClick();
});
//END
})(zhiqim);
+61
Dosyayı Görüntüle
@@ -0,0 +1,61 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/classic_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/classic_2019010101.js")/>
<#var zmr_color_class = "z-blue"/>
<#var zmr_sidebar_width = 200/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#f5f5f5"/>
<#var zmr_thead_bgcolor = "#f5f5f5"/>
<#var zmr_tr_odd_bgcolor = "#f6fafd"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f6fafd"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">${name}</span>
</div>
</#if>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#0280d4;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l15">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#0280d4;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l15">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#0280d4;">${name}</span></span>
</div>
</#if>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.3 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.2 KiB

+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+167
Dosyayı Görüntüle
@@ -0,0 +1,167 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Scripts.src(zhiqim_iframenav.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Zin.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
Z(window).resize(Zin.setTranslateForShowActive);
<#if !sessionUser.isWelcomeUrl()>
Z.onload(function()
{
var $elem = Z("#sidebar [data-url]");
if ($elem.length > 0)
{//存在指定主页,主动打开
Zin.doClickChildMenu($elem[0], $elem.attr("data-url"));
}
});
</#if>
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Zin.selectIframeTab('menu_index');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w80 z-text-center z-pointer" onclick="Zin.doClickChildMenu(this, '${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');" data-text="个人中心"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></div>
<div class="nav z-w100 z-h50 z-text-center z-pointer" onclick="Zin.refreshIframeTabActive();">刷新</div>
<div class="nav z-w100 z-h50 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, sessionUser.getMainUrl())/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px16 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}<i class="z-arrow z-px5"><span></span></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Zin.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>class="active" data-url="${context.getRootPath(childMenu.getMenuUrl())}"</#if>>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Zin.doClickChildMenu(this, '${context.getRootPath(topMenu.getMenuUrl())}');"><i class="z-font z-px16 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!-- 框架导航 -->
<div class="iframenav z-h40 z-lh40 z-bg-white z-bd-b" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div class="iframenav-prev" onclick="Zin.turnIframeTab(false);"><i class="z-font z-arrow-left"></i><i class="z-font z-arrow-left"></i></div>
<div class="iframenav-tab-wrap">
<ul class="iframenav-tab-list">
<li class="iframenav-tab-item active" id="tab_menu_index" onclick="Zin.selectIframeTabEvent(event);"><span>首页</span></li>
</ul>
</div>
<div class="iframenav-next" onclick="Zin.turnIframeTab(true);"><i class="z-font z-arrow-right"></i><i class="z-font z-arrow-right"></i></div>
<div class="iframenav-ctrl">
<div class="iframenav-ctrl-title" onclick="Zin.toggleIframeCtrlWrap();">关闭操作<i class="z-font z-arrow-down"></i></div>
<div class="iframenav-ctrl-wrap">
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.selectIframeTabActive();">定位当前选项卡</li>
</ul>
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabAll();">关闭全部选项卡</li>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabOther();">关闭其他选项卡</li>
</ul>
</div>
</div>
</div>
<!--框架内容-->
<div id="mainbody" class="mainbody iframenav-cont z-h100p" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div id="iframe_menu_index" class="iframenav-cont-item active">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="welcome.htm"></iframe>
</div>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+166
Dosyayı Görüntüle
@@ -0,0 +1,166 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
<style>
body{color:#333;background-color:#fff;background-image: url(ztmpl/zhiqim_manager/index_bg_01.jpg);background-repeat: no-repeat;background-size:100%;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;height:40px;line-height:40px;background-color:#000; background:rgba(0,0,0,0.2); filter:alpha(opacity=20);}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{width:520px;;border:1px solid #ccc;background-color: #ffffff;border-radius:10px;padding:20px;}
.input{color:#666;font-size:20px;border:2px solid #cecfcf;border-radius:5px;height:50px;line-height:50px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z("#operatorCode").val() == "")
Z("#operatorCode").focus();
else if (Z("#operatorPass").val() == "")
Z("#operatorPass").focus();
else if (Z("#verificationCode").val() == null)
Z("#verificationCode").focus();
else
Z("#operatorCode").focus();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
<div class="header">
<div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录&nbsp;&nbsp;[&nbsp;${context.getContextName()}&nbsp;]</div>
<div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>
</div>
<div class="z-absolute-center-middle login" style="height:<#if hasVerificationCode && hasRememberCode>420<#elseif hasVerificationCode>390<#elseif hasRememberCode>350<#else>320</#if>px">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<div class="z-px24 zi-bd-b z-color-666 z-pd-b10"><i class="z-font z-customer"></i>&nbsp;&nbsp;用户登录</div>
<div style="padding:25px 40px 20px 30px;">
<table class="z-table z-pd5 z-h100p">
<tr class="z-h70">
<td><input id="operatorCode" class="z-w100p input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr class="z-h70">
<td><input id="operatorPass" type="password" class="z-w100p input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr class="z-h70">
<td>
<input id="verificationCode" class="input verificationCode" style="width:270px" placeholder="验证码" data-options="type:Numeric;paste:true;" maxlength="4" spellcheck="false" autocomplete="off">
<img class="z-pointer z-bd-rd5 z-mg-t-6" 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()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="z-h40">
<td class="z-px16 z-color-gray">
<input id="rememberCode" type="checkbox" data-role="z-checkbox" data-class="${zmr_color_class}" onclick="doRememberCode(this);" <#if Validates.isNotEmpty(operatorCode)>checked</#if>>&nbsp;&nbsp;记住用户名
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<#if hasRememberPass>
<input id="rememberPass" type="checkbox" data-role="z-checkbox" data-class="${zmr_color_class}" onclick="doRememberPass(this);" <#if Validates.isNotEmpty(operatorPass)>checked</#if>/>&nbsp;&nbsp;记住密码
</#if>
</td>
</tr>
</#if>
<tr class="z-h70">
<td><button id="login" class="z-button z-xlarge z-w100p z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button></td>
</tr>
</table>
</div>
</div>
<div class="footer">${zmr_copyright}</div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 74 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 17 KiB

+149
Dosyayı Görüntüle
@@ -0,0 +1,149 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div class="container">
<!--边导航开始-->
<div id="sidebar" class="${sessionUser.getSidebarClass()}">
<!--顶导航-->
<#var topMenuCode = sessionUser.getSelectedTopMenuCode(request, designatedPath)/>
<ul class="sidebar-top">
<li class="avatar<#if topMenuCode == null> active</#if>" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></li>
<#for topMenu : sessionUser.getTopMenuList()>
<#var childMenuFirst = sessionUser.getChildMenuFirst(topMenu.getMenuCode())/>
<#if childMenuFirst != null || Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<li onclick="Z.L.href('${context.getRootPath(childMenuFirst==null?topMenu.getMenuUrl():childMenuFirst.getMenuUrl())}');" <#if topMenu.getMenuCode() == topMenuCode>class="active"</#if>><i class="z-font ${topMenu.getMenuIcon()}"></i><br>#{topMenu.getMenuNameAbbr()}</li>
</#if>
</#for>
</ul>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#if childMenuCode != null && topMenuCode != null>
<#var topMenu = sessionUser.getMenu(topMenuCode)/>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<!--子导航-->
<div class="sidebar-child">
<div class="info z-float-left z-text-left z-bd-b" >
<span class="z-relative z-px18 z-bold" style="line-height:32px;"><i class="z-font ${topMenu.getMenuIcon()}"></i><span class="z-mg-l10">#{topMenu.getMenuName()}</span></span><br>
</div>
<ul>
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Z.L.href('${context.getRootPath(childMenu.getMenuUrl())}');" class="<#if childMenu.getMenuCode() == childMenuCode> active</#if>"><i class="z-font z-px16 ${childMenu.getMenuIcon()}"></i><span class="z-mg-l5">#{childMenu.getMenuName()}</span></p>
</#for>
</ul>
</div>
</#if>
</#if>
<!--边导航结束-->
</div>
<!--主体-->
<#var mainbodyLeft = 260/>
<#if topMenuCode == null || !sessionUser.hasChildMenu(topMenuCode)>
<#var mainbodyLeft = 60/>
</#if>
<#if !sessionUser.hasSidebar()>
<div id="mainbody" class="mainbody" value="${mainbodyLeft}" style="margin-left:0;">
<#elseif topMenuCode == null || !sessionUser.hasChildMenu(topMenuCode)>
<div id="mainbody" class="mainbody" value="${mainbodyLeft}" style="margin-left:60px;">
<#else>
<div id="mainbody" class="mainbody" value="${mainbodyLeft}">
</#if>
<#include include/>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+98
Dosyayı Görüntüle
@@ -0,0 +1,98 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px; color: #fff;background-color:#00a2eb;height:55px;z-index:99;}
.topnav .logo {float:left;width:260px;height:55px;padding:0 10px;overflow:hidden;font-size:28px;line-height:55px;background-color:#008bd2;word-break:break-all;word-wrap:break-word;}
.topnav .topnavleft {float:left;height:55px;}
.topnav .topnavleft .bar {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .first {border-left:1px solid #008bd2;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only {float:left;height:55px;line-height:55px;border-right:1px solid #008bd2;}
.topnav .topnavleft .nav:hover{background-color:#008bd2; color:#fff;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px;border-left:1px solid #008bd2;}
.topnav .topnavright .nav:hover {background-color:#008bd2; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%; min-height:1000px;overflow:hidden;background-color:#fff;}
.sidebar-top{position:absolute;top:0;left:0;float:left;width:60px;height:100%;overflow:hidden; background-color:#333;z-index:20;}
.sidebar-top li{position:relative;float:left;width:60px;height:70px;display:inline-block;text-align:center;color:#fff;padding:13px 0;line-height:22px;}
.sidebar-top li:hover{background-color:#414750;cursor:pointer;}
.sidebar-top li.active{background-color:#5c5c5c;}
.sidebar-top li i{font-size:22px;}
.sidebar-top .avatar{width: 100%;text-align:center;padding:16px 0;cursor:pointer;}
.sidebar-child{position:absolute;top:0;left:60px;float:left;width:200px;min-height:800px;height:100%;overflow:hidden; background-color:#f2f2f2;border-right:1px solid #d8dce5;z-index:20;}
.sidebar-child li{position:relative;float:left;width:200px; height:40px;line-height:40px;color:#333; padding-left:25px; background-color:#f2f2f2;cursor:pointer;}
.sidebar-child li a{color:#333;}
.sidebar-child li .z-arrow>span{border-color:#eff6fc transparent transparent;}
.sidebar-child li:hover{background-color:#f2f1ed;color:#008bd2;}
.sidebar-child li.active{background-color:#e4e3df;color:#008bd2;}
.sidebar-child li:hover>.z-arrow>span{border-color:#333 transparent transparent;}
.sidebar-child li.active>.z-arrow>span{border-color:#333 transparent transparent;}
.sidebar-child .info{position:relative;width:100%;padding:25px;}
.ueseroperate{position:relative;width:100%;overflow:hidden;padding-top:15px;min-height:200px; padding-left:25px;border-top:1px solid #e5e5e5;}
.ueseroperate .operatemenu{position:relative;cursor: pointer;color: #999;height:40px;line-height:40px;}
.ueseroperate .operatemenu:hover{color:#333;}
/* iframenav */
.iframenav{position:relative;height:40px;line-height:40px;}
/* [iframenav翻页] */
.iframenav-prev,.iframenav-next{position:absolute;top:0;width:50px;height:39px;z-index:1;background:#fff;cursor:pointer;padding:0 22px;text-align:center;line-height:39px;}
.iframenav-prev:hover,.iframenav-next:hover{background-color:#f5f5f5;}
.iframenav-prev{left:0;border-right:1px solid #d3d3d3;}
.iframenav-next{right:100px;border-left:1px solid #d3d3d3;}
.iframenav-prev .z-font,.iframenav-next .z-font{color:#999;margin-left:-8px;}
/* [iframenav控制] */
.iframenav-ctrl{position:absolute;top:0;right:0;}
.iframenav-ctrl-title{position:absolute;top:0;right:0;width:100px;height:39px;z-index:1;border-left:1px solid #d3d3d3;text-align:center;line-height:39px;color:#666;background:#fff;cursor:pointer;}
.iframenav-ctrl-title:hover{background-color:#f5f5f5;}
.iframenav-ctrl-title .z-font{color:#999;margin-left:6px;font-size:10px;}
.iframenav-ctrl-wrap{position:absolute;top:39px;right:0;display:none;width:150px;height:130px;z-index:2;background-color:#fff;border:1px solid #d3d3d3;}
.iframenav-ctrl-wrap ul{padding:10px 0;}
.iframenav-ctrl-wrap ul+ul{border-top:1px solid #ccc;}
.iframenav-ctrl-wrap li{padding:0 25px;line-height:30px;cursor:pointer;}
.iframenav-ctrl-wrap li:hover{background:#f1f1f1;}
/* [iframenav选项卡] */
.iframenav-tab-wrap{height:39px;margin:0 150px 0 50px;overflow:hidden;position:relative;}
.iframenav-tab-list{position:absolute;left:0;top:0;height:39px;background-color:#fff;overflow:hidden;}
.iframenav-tab-item{position:relative;float:left;line-height:39px;border-right:1px solid #d3d3d3;padding:0 35px 0 20px;background:#fff;color:#666;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.iframenav-tab-item.active{background-color:#d4d8db;}
.iframenav-tab-item:hover{color:#222;}
.iframenav-tab-item:first-child{padding-right:23px;}
.iframenav-tab-item .z-font{position:absolute;top:2px;width:25px;line-height:39px;color:#666;font-size:12px;cursor:pointer;text-align:center;}
.iframenav-tab-item .z-error{right:0;padding-right:5px;}
.iframenav-tab-item .z-error:hover{color:#f00;}
/* [iframenav内容页] */
.iframenav-cont{}
.iframenav-cont-item{width:100%;height:100%;display:none;}
.iframenav-cont-item.active{display:block;}
.iframenav-cont-item > iframe{width:100%;height:100%;border:0;margin:0;padding:0;}
/* mainbody */
.mainbody{margin-left:260px;}
.mainbody .content{position:relative;float:left;width:100%;padding:30px;}
/* footer */
.footer {position: absolute !important;bottom:50px;width:100%;z-index:99;}
.footer-wrap {position:relative;line-height:20px;text-align:left;color:#999;padding:25px;font-size:12px;}
+108
Dosyayı Görüntüle
@@ -0,0 +1,108 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.sidebar = function()
{//打开&关闭边导航
var $sidebar = Z("#sidebar");
if ($sidebar.isHide())
{
$sidebar.show();
Z("#logo").show();
Z("#mainbody").css("margin-left", Z("#mainbody").val());
}
else
{
$sidebar.hide();
Z("#logo").hide();
Z("#mainbody").css("margin-left", 0);
}
Z.ajax().setContextPath(Zmr.contextPath)
.setClassName("sessionUser").setMethodName("setSidebar").addParam(!$sidebar.isHide())
.execute();
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height-40);//40为iframenav高度
};
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
Zmr.doClickTopMenu = function(elem, menuCode, hasChild)
{//点击顶级栏目
Z(elem).addClass("active").siblings("li").removeClass("active");
Z("#sidebar-child").find("p").removeClass("active");
if (elem == Z.D.id("menu-avatar") || !hasChild)
{
Z("#sidebar-child").hide();
Z("#mainbody").css("margin-left", 60).val(60);
}
else
{
Z("#sidebar-child").children("div").hide();
Z("#sidebar-child-"+menuCode).show();
Z("#sidebar-child").show();
Z("#mainbody").css("margin-left", 260).val(260);
}
};
//END
})(zhiqim);
+61
Dosyayı Görüntüle
@@ -0,0 +1,61 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/concise_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/concise_2019010101.js")/>
<#var zmr_color_class = "z-blue"/>
<#var zmr_sidebar_width = 260/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#efefef"/>
<#var zmr_thead_bgcolor = "#efefef"/>
<#var zmr_tr_odd_bgcolor = "#f2faff"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f2faff"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">${name}</span>
</div>
</#if>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;padding-top:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+181
Dosyayı Görüntüle
@@ -0,0 +1,181 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Scripts.src(zhiqim_iframenav.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Zin.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
Z(window).resize(Zin.setTranslateForShowActive);
<#if !sessionUser.isWelcomeUrl()>
Z.onload(function()
{
var $elem = Z("#sidebar [data-url]");
if ($elem.length > 0)
{//存在指定主页,主动打开
Zin.doClickChildMenu($elem[0], $elem.attr("data-url"));
}
});
</#if>
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Zin.selectIframeTab('menu_index');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload(mainFrame);">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--边导航开始-->
<div id="sidebar" class="${sessionUser.getSidebarClass()}">
<!--顶导航-->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, sessionUser.getMainUrl())/>
<ul class="sidebar-top">
<li class="avatar" id="menu-avatar" data-text="个人中心" onclick="Zin.doClickChildMenu(this, '${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></li>
<#for topMenu : sessionUser.getTopMenuList()>
<#var childMenuFirst = sessionUser.getChildMenuFirst(topMenu.getMenuCode())/>
<#if childMenuFirst != null || Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<li onclick="Zmr.doClickTopMenu(this, '${topMenu.getMenuCode()}', ${childMenuFirst != null});" <#if topMenu.getMenuCode() == topMenuCode>class="active"</#if>><i class="z-font ${topMenu.getMenuIcon()}"></i><br>#{topMenu.getMenuNameAbbr()}</li>
</#if>
</#for>
</ul>
<!--子导航-->
<div id="sidebar-child" style="display: <#if topMenuCode == null || !sessionUser.hasChildMenu(topMenuCode)>none<#else>block</#if>;">
<#for topMenu : sessionUser.getTopMenuList()>
<!--${topMenu.getMenuName()} - 子栏目列表-->
<div class="sidebar-child" id="sidebar-child-${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<div class="info z-float-left z-text-left z-bd-b" >
<span class="z-relative z-px18 z-bold" style="line-height:32px;"><i class="z-font ${topMenu.getMenuIcon()}"></i><span class="z-mg-l10">#{topMenu.getMenuName()}</span></span><br>
</div>
<ul>
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Zin.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>class="active" data-url="${context.getRootPath(childMenu.getMenuUrl())}"</#if>><i class="z-font z-px16 ${childMenu.getMenuIcon()}"></i><span class="z-mg-l5">#{childMenu.getMenuName()}</span></p>
</#for>
</ul>
</div>
</#for>
</div>
<!--边导航结束-->
</div>
<!-- 框架导航 -->
<div class="iframenav z-h40 z-lh40 z-bg-white z-bd-b" style="margin-left:<#if sessionUser.hasSidebar()>260px<#else>0</#if>">
<div class="iframenav-prev" onclick="Zin.turnIframeTab(false);"><i class="z-font z-arrow-left"></i><i class="z-font z-arrow-left"></i></div>
<div class="iframenav-tab-wrap">
<ul class="iframenav-tab-list">
<li class="iframenav-tab-item active" id="tab_menu_index" onclick="Zin.selectIframeTabEvent(event);"><span>首页</span></li>
</ul>
</div>
<div class="iframenav-next" onclick="Zin.turnIframeTab(true);"><i class="z-font z-arrow-right"></i><i class="z-font z-arrow-right"></i></div>
<div class="iframenav-ctrl">
<div class="iframenav-ctrl-title" onclick="Zin.toggleIframeCtrlWrap();">关闭操作<i class="z-font z-arrow-down"></i></div>
<div class="iframenav-ctrl-wrap">
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.selectIframeTabActive();">定位当前选项卡</li>
</ul>
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabAll();">关闭全部选项卡</li>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabOther();">关闭其他选项卡</li>
</ul>
</div>
</div>
</div>
<!--框架内容-->
<div id="mainbody" class="mainbody iframenav-cont z-h100p" style="margin-left:<#if sessionUser.hasSidebar()>260px<#else>0</#if>">
<div id="iframe_menu_index" class="iframenav-cont-item active">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="welcome.htm"></iframe>
</div>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+179
Dosyayı Görüntüle
@@ -0,0 +1,179 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
<style>
body{color:#333;background-color:#fff;background-image: url(ztmpl/zhiqim_manager/index_bg_01.jpg);background-repeat: no-repeat;background-size:100%;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;height:40px;line-height:40px;background-color:#000; background:rgba(0,0,0,0.2); filter:alpha(opacity=20);}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{background-image: url(ztmpl/zhiqim_manager/02_concise/index_bg_center.png);background-repeat:repeat-y; width:825px;}
.input{background-color:#fff;color:#333;font-size:20px;letter-spacing:1px;border:2px solid #c3c3c3;border-radius:5px;height:45px;line-height:45px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input:focus{border-color:#8c8c8c;}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z("#operatorCode").val() == "")
Z("#operatorCode").focus();
else if (Z("#operatorPass").val() == "")
Z("#operatorPass").focus();
else if (Z("#verificationCode").val() == null)
Z("#verificationCode").focus();
else
Z("#operatorCode").focus();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
<div class="header">
<div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录&nbsp;&nbsp;[&nbsp;${context.getContextName()}&nbsp;]</div>
<div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>
</div>
<div class="z-absolute-center-middle login" style="height:<#if hasVerificationCode && hasRememberCode>410<#elseif hasVerificationCode>360<#elseif hasRememberCode>350<#else>300</#if>px">
<table class="z-table z-h100p">
<tr>
<td width="50%" class="z-text-center"><img src="ztmpl/zhiqim_manager/index_logo_01.png"></td>
<td width="50%" valign="top" rowspan="2">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<table class="z-table z-mg-l30 z-h70-tr z-pd5 z-color-333">
<tr>
<td class="z-px20 z-color-333 z-mg-t10">用户登录</td>
</tr>
<tr>
<td><input id="operatorCode" class="z-w300 input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr>
<td><input id="operatorPass" type="password" class="z-w300 input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr>
<td>
<input id="verificationCode" class="z-w200 input verificationCode" placeholder="验证码" maxlength="4" data-options="type:Numeric;paste:true;" spellcheck="false" autocomplete="off">
<img class="z-pointer z-bd-rd5 z-mg-t-5" title="点击刷新验证码" onclick="this.src='service/vcode.jpg?bgColor=%231299ec&width=95&height=40&fontSize=20&yawp=true&t='+new Date().getTime();" src="service/vcode.jpg?bgColor=%231299ec&width=95&fontSize=20&height=40&yawp=true&t=${DateTimes.getDateTime17String()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="zi-h40">
<td class="z-px16 z-color-333">
<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>>记住用户名
<#if hasRememberPass>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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>/>记住密码
</#if>
</td>
</tr>
</#if>
<tr>
<td>
<button id="login" class="z-button z-w300 z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button>
</td>
</tr>
</table>
</td>
</tr>
<tr class="z-h120" valign="top">
<td class="z-text-center"><img src="ztmpl/zhiqim_manager/index_slogan_01.png"/></td>
</tr>
</table>
</div>
<div class="footer">${zmr_copyright}</div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.1 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 65 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 17 KiB

+136
Dosyayı Görüntüle
@@ -0,0 +1,136 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!--个人中心-->
<div class="user-box">
<div class="avatar-box z-text-center">
<a href="${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}" rel="nofollow">
<img class="z-bd-rd50p z-w70 z-h70" src="${sessionUser.getAvatar50()}">
</a>
</div>
<div class="z-pd-t20 z-text-center z-lh25 z-color-white">
<span class="z-px13 z-bold">${sessionUser.getOperatorName()}</span><br>
</div>
</div>
<!--栏目列表-->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#var topMenu = sessionUser.getTopMenuFirst()/>
<ul id="${topMenu.getMenuCode()}">
<li onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');" <#if childMenuCode == null>class="active"</#if>><i class="z-font z-mg-r10 z-house"></i>首页</li>
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Z.L.href('${context.getRootPath(childMenu.getMenuUrl())}');" <#if childMenu.getMenuCode() == childMenuCode>class="active"</#if>><i class="z-font z-mg-r10 ${childMenu.getMenuIcon()}"></i>#{childMenu.getMenuName()}</li>
</#for>
</ul>
</div>
<!--主体-->
<div id="mainbody" class="mainbody" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<#include include/>
</div>
<!-- 容器结束 -->
</div>
<!--脚注-->
<div class="footer">
<div class="footer-wrap">${zmr_copyright}</div>
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+61
Dosyayı Görüntüle
@@ -0,0 +1,61 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/elegant_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/elegant_2019010101.js")/>
<#var zmr_color_class = "z-blue"/>
<#var zmr_sidebar_width = 200/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#f5f5f5"/>
<#var zmr_thead_bgcolor = "#f5f5f5"/>
<#var zmr_tr_odd_bgcolor = "#f6fafd"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f6fafd"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">${name}</span>
</div>
</#if>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#1e7eec;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l15">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#0280d4;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l15">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#0280d4;">${name}</span></span>
</div>
</#if>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
+102
Dosyayı Görüntüle
@@ -0,0 +1,102 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px;color:#fff;background-color:#00a2eb;height:55px;z-index:99;}
.topnav .logo {float:left;width:200px;height:55px;padding:0 10px;overflow:hidden;font-size:24px;line-height:55px;background-color:#008bd2;word-break:break-all;word-wrap:break-word;}
.topnav a{color: #fff;}
.topnav .topnavleft {float:left;height:55px;}
.topnav .topnavleft .bar {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .first {border-left:1px solid #008bd2;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only {float:left;height:55px;line-height:55px;border-right:1px solid #008bd2;}
.topnav .topnavleft .nav:hover{background-color:#008bd2; color:#fff;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px;border-left:1px solid #008bd2;}
.topnav .topnavright .nav:hover {background-color:#008bd2; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%; min-height:1000px;overflow:hidden;background-color:#fff;}
.sidebar {position:relative; float: left; width:201px;min-height:1000px;height:100%;margin-bottom:-9999px;padding-bottom:9999px;overflow:hidden; background-color: #48525e;border-right:1px solid #d4e1ee;}
.sidebar p{position:relative;float:left;width:200px; height:40px;line-height:40px;color:#fff; padding-left:15px; background-color:#48525e;border-bottom:1px solid #e5e5e5;cursor:pointer;}
.sidebar p a{color:#fff;}
.sidebar p .z-arrow{position:absolute;top:16px;right:10px;}
.sidebar p .z-arrow>span{border-color:#fff transparent transparent;}
.sidebar p:hover{background-color:#e3f0fc;border-top:1px #d1e6fa;border-bottom:1px #d1e6fa;}
.sidebar p.active{background-color:#e3f0fc;border-top:1px #d1e6fa;border-bottom:1px #d1e6fa;}
.sidebar p:hover>.z-arrow>span{border-color:#e3f0fc transparent transparent;}
.sidebar p.active>.z-arrow>span{border-color:#e3f0fc transparent transparent;}
.sidebar ul{position:relative;width:200px;height:auto;border-bottom:1px solid #686f78;padding-top:15px;padding-bottom:20px; overflow:hidden;}
.sidebar ul li{float:left;width:200px;height:40px;color:#fff;border-left:5px solid #48525e;background-color:#48525e;font-size:15px;line-height:40px;padding-left:25px;cursor:pointer;}
.sidebar ul li a{color:#fff;}
.sidebar ul li:hover{color:#bfc1c4;}
.sidebar ul li.active{background-color:#363c41;color:#fff;border-left:5px solid #008bd2;color:#008bd2;}
.sidebar ul li.active i{color:#008bd2;}
.sidebar .user-box {border-bottom:1px solid #686f78;padding-bottom:10px;}
.sidebar .user-box .avatar-box {position: relative;height:80px;background: #3a434c;z-index:2;}
.sidebar .user-box .avatar-box a{position: absolute;width:80px;height:80px;left:60px;bottom:-20px;}
.sidebar .user-box .avatar-box a img {border-radius: 50%;box-shadow: 0 0 0 8px #3a434c;}
.sidebar i{color:#9ba0a7;font-size:18px;}
/* iframenav */
.iframenav{position:relative;margin-left:200px;height:40px;line-height:40px;}
/* [iframenav翻页] */
.iframenav-prev,.iframenav-next{position:absolute;top:0;width:50px;height:39px;z-index:1;background:#fff;cursor:pointer;padding:0 22px;text-align:center;line-height:39px;}
.iframenav-prev:hover,.iframenav-next:hover{background-color:#f5f5f5;}
.iframenav-prev{left:0;border-right:1px solid #d3d3d3;}
.iframenav-next{right:100px;border-left:1px solid #d3d3d3;}
.iframenav-prev .z-font,.iframenav-next .z-font{color:#999;margin-left:-8px;}
/* [iframenav控制] */
.iframenav-ctrl{position:absolute;top:0;right:0;}
.iframenav-ctrl-title{position:absolute;top:0;right:0;width:100px;height:39px;z-index:1;border-left:1px solid #d3d3d3;text-align:center;line-height:39px;color:#666;background:#fff;cursor:pointer;}
.iframenav-ctrl-title:hover{background-color:#f5f5f5;}
.iframenav-ctrl-title .z-font{color:#999;margin-left:6px;font-size:10px;}
.iframenav-ctrl-wrap{position:absolute;top:39px;right:0;display:none;width:150px;height:130px;z-index:2;background-color:#fff;border:1px solid #d3d3d3;}
.iframenav-ctrl-wrap ul{padding:10px 0;}
.iframenav-ctrl-wrap ul+ul{border-top:1px solid #ccc;}
.iframenav-ctrl-wrap li{padding:0 25px;line-height:30px;cursor:pointer;}
.iframenav-ctrl-wrap li:hover{background:#f1f1f1;}
/* [iframenav选项卡] */
.iframenav-tab-wrap{height:39px;margin:0 150px 0 50px;overflow:hidden;position:relative;}
.iframenav-tab-list{position:absolute;left:0;top:0;height:39px;background-color:#fff;overflow:hidden;}
.iframenav-tab-item{position:relative;float:left;line-height:39px;border-right:1px solid #d3d3d3;padding:0 35px 0 20px;background:#fff;color:#666;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.iframenav-tab-item.active{background-color:#d4d8db;}
.iframenav-tab-item:hover{color:#222;}
.iframenav-tab-item:first-child{padding-right:23px;}
.iframenav-tab-item .z-font{position:absolute;top:2px;width:25px;line-height:39px;color:#666;font-size:12px;cursor:pointer;text-align:center;}
.iframenav-tab-item .z-error{right:0;padding-right:5px;}
.iframenav-tab-item .z-error:hover{color:#f00;}
/* [iframenav内容页] */
.iframenav-cont{}
.iframenav-cont-item{width:100%;height:100%;display:none;}
.iframenav-cont-item.active{display:block;}
.iframenav-cont-item > iframe{width:100%;height:100%;border:0;margin:0;padding:0;}
/* mainbody */
.mainbody{margin-left:200px;}
.mainbody .breadcrumb{position:relative;float:left;width: 100%;}
.mainbody .content{position:relative;float:left;width:100%;padding:20px;}
/* footer */
.footer {position:relative;width:100%;height:60px;display:block;overflow:hidden;background-color:#f4f4f4;border-top:1px solid #d3d3d3;z-index:99;}
.footer-wrap {position:relative;margin:0 auto;height:100%;line-height:60px;text-align: center;color:#333;}
+114
Dosyayı Görüntüle
@@ -0,0 +1,114 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.sidebar = function()
{//打开&关闭边导航
var $sidebar = Z("#sidebar");
if ($sidebar.isHide())
{
$sidebar.show();
Z("#logo").show();
Z("#mainbody").css("margin-left", 201);
}
else
{
$sidebar.hide();
Z("#logo").hide();
Z("#mainbody").css("margin-left", 0);
}
Z.ajax().setContextPath(Zmr.contextPath)
.setClassName("sessionUser").setMethodName("setSidebar").addParam(!$sidebar.isHide())
.execute();
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//-55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height-40);//40为iframenav高度
}
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
Zmr.addTopMenuClick = function()
{//增加顶级栏目点击事件
Zmr.doClickTopMenuUp = false;
Zmr.doClickTopMenuDw = false;
Z(".sidebar p").click(function()
{
if (Zmr.doClickTopMenuUp || Zmr.doClickTopMenuDw)
return;
Zmr.doClickTopMenuUp = true;Zmr.doClickTopMenuDw = true;
Z(this).next("ul").slideToggle(200, function(){Zmr.doClickTopMenuDw = false;})
.siblings("ul").slideUp(200, function(){Zmr.doClickTopMenuUp = false;});
});
};
/**************************************************/
//定义初始化滑动菜单
/**************************************************/
Z.onload(function()
{//菜单隐藏展开
Zmr.addTopMenuClick();
});
//END
})(zhiqim);
+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+174
Dosyayı Görüntüle
@@ -0,0 +1,174 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Scripts.src(zhiqim_iframenav.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Zin.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
Z(window).resize(Zin.setTranslateForShowActive);
<#if !sessionUser.isWelcomeUrl()>
Z.onload(function()
{
var $elem = Z("#sidebar [data-url]");
if ($elem.length > 0)
{//存在指定主页,主动打开
Zin.doClickChildMenu($elem[0], $elem.attr("data-url"));
}
});
</#if>
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Zin.selectIframeTab('menu_index');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zin.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Zin.refreshIframeTabActive();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!-- 个人中心 -->
<div class="user-box">
<div class="avatar-box z-text-center">
<a href="javascript:void(0);" onclick="Zin.doClickChildMenu(this, '${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');" data-text="个人中心" rel="nofollow">
<img class="z-bd-rd50p z-w70 z-h70" src="${sessionUser.getAvatar50()}">
</a>
</div>
<div class="z-pd-t20 z-text-center z-lh25 z-color-white">
<span class="z-px14 z-bold">${sessionUser.getOperatorName()}</span><br>
</div>
</div>
<!-- 栏目列表 -->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, sessionUser.getMainUrl())/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, sessionUser.getMainUrl())/>
<#var topMenu = sessionUser.getTopMenuFirst()/>
<ul id="${topMenu.getMenuCode()}">
<li id="menu_index" onclick="Zin.selectIframeTab('menu_index');" <#if childMenuCode == null>class="active"</#if>><i class="z-font z-mg-r10 z-house"></i>首页</li>
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Zin.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>class="active" data-url="${context.getRootPath(childMenu.getMenuUrl())}"</#if>><i class="z-font z-mg-r10 ${childMenu.getMenuIcon()}"></i>#{childMenu.getMenuName()}</li>
</#for>
</ul>
</div>
<!-- 框架导航 -->
<div class="iframenav z-h40 z-lh40 z-bg-white z-bd-b" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div class="iframenav-prev" onclick="Zin.turnIframeTab(false);"><i class="z-font z-arrow-left"></i><i class="z-font z-arrow-left"></i></div>
<div class="iframenav-tab-wrap">
<ul class="iframenav-tab-list">
<li class="iframenav-tab-item active" id="tab_menu_index" onclick="Zin.selectIframeTabEvent(event);"><span>首页</span></li>
</ul>
</div>
<div class="iframenav-next" onclick="Zin.turnIframeTab(true);"><i class="z-font z-arrow-right"></i><i class="z-font z-arrow-right"></i></div>
<div class="iframenav-ctrl">
<div class="iframenav-ctrl-title" onclick="Zin.toggleIframeCtrlWrap();">关闭操作<i class="z-font z-arrow-down"></i></div>
<div class="iframenav-ctrl-wrap">
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.selectIframeTabActive();">定位当前选项卡</li>
</ul>
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabAll();">关闭全部选项卡</li>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabOther();">关闭其他选项卡</li>
</ul>
</div>
</div>
</div>
<!--框架内容-->
<div id="mainbody" class="mainbody iframenav-cont z-h100p" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<div id="iframe_menu_index" class="iframenav-cont-item active">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="welcome.htm"></iframe>
</div>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+174
Dosyayı Görüntüle
@@ -0,0 +1,174 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
${Scripts.src("/ztmpl/zhiqim_manager/zhiqim_webgl_three.js")}
<style>
body{color:#333;background-color:#1d72c0;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;height:40px;line-height:40px;background:rgba(255,255,255,0.2);z-index:20;}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{width:520px;padding:20px;background:rgba(255,255,255,0.6);}
.input{color:#333;font-size:18px;border:2px solid #fffafa;border-radius:5px;height:50px;line-height:50px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z("#operatorCode").val() == "")
Z("#operatorCode").focus();
else if (Z("#operatorPass").val() == "")
Z("#operatorPass").focus();
else if (Z("#verificationCode").val() == null)
Z("#verificationCode").focus();
else
Z("#operatorCode").focus();
var three = new Z.WebGLThree();
three.threePath = "/ztmpl/zhiqim_manager/three.js";
three.elem = "z-webgl-canvas";
three.execute();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
<div class="header">
<div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录&nbsp;&nbsp;[&nbsp;${context.getContextName()}&nbsp;]</div>
<div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>
</div>
<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">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<div class="z-px24 z-color-333 z-pd-b10 z-pd-l20">&nbsp;&nbsp;<i class="z-font z-customer"></i>&nbsp;用户登录</div>
<div style="padding:25px 40px 20px 30px;">
<table class="z-table z-h100p z-h70-tr z-pd5">
<tr>
<td><input id="operatorCode" class="z-w400 input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr>
<td><input id="operatorPass" type="password" class="z-w100p input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr>
<td>
<input id="verificationCode" type="text" class="input verificationCode" style="width:270px" placeholder="验证码" maxlength="4" data-options="type:Numeric;paste:true;" spellcheck="false" autocomplete="off">
<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()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="zi-h40">
<td class="z-px16 z-color-333">
<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>>记住用户名
<#if hasRememberPass>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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>/>记住密码
</#if>
</td>
</tr>
</#if>
<tr>
<td><button id="login" class="z-button z-xlarge z-w100p z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button></td>
</tr>
</table>
</div>
</div>
<div class="footer">${zmr_copyright}</div>
<div id="z-webgl-canvas" class="z-absolute z-w100p z-h100p" style="z-index:-1;"></div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 40 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 22 KiB

+138
Dosyayı Görüntüle
@@ -0,0 +1,138 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/main.htm")}');">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!--个人中心-->
<div class="z-h80 z-pd-t15 z-pd-l15 z-bd-b">
<div class="z-float-left z-w50 z-h50 z-mg-r10"><img class="z-bd-rd50p z-bd z-pd3 z-bg-white z-w50 z-h50" src="${sessionUser.getAvatar50()}"></div>
<div class="z-float-left z-lh25">
<span class="z-px14 z-bold">${sessionUser.getOperatorName()}</span><br>
<span class="z-color-666"><a href="${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}">个人中心</a></span>
</div>
</div>
<!--栏目列表-->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px18 ${topMenu.getMenuIcon()}"></i><span class="z-mg-l5">#{topMenu.getMenuName()}</span><i class="z-arrow z-px5"><span></span></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Z.L.href('${context.getRootPath(ZmlContexts.parseZmlContent(request, childMenu.getMenuUrl()))}');" <#if childMenu.getMenuCode() == childMenuCode>class="active"</#if>>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Z.L.href('${context.getRootPath(ZmlContexts.parseZmlContent(request, topMenu.getMenuUrl()))}');"><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!--主体-->
<div id="mainbody" class="mainbody" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<#include include/>
</div>
<!-- 容器结束 -->
</div>
<!--脚注-->
<div class="footer">
<div class="footer-wrap">${zmr_copyright}</div>
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+53
Dosyayı Görüntüle
@@ -0,0 +1,53 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/fresh_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/fresh_2019010101.js")/>
<#var zmr_color_class = "z-cyan"/>
<#var zmr_sidebar_width = 200/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#f5f5f5"/>
<#var zmr_thead_bgcolor = "#f5f5f5"/>
<#var zmr_tr_odd_bgcolor = "#f6ffff"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f6ffff"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<span class="z-pd-l20">${name}</span>
</div>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<i class="z-font z-house z-pd-l20 z-px18"></i><span class="z-mg-l3"><a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#4bacc6;">${name}</span></span>
</div>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<i class="z-font z-house z-pd-l15 z-px18"></i><span class="z-mg-l3"><a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#4bacc6;">${name}</span></span>
</div>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<div class="breadcrumb z-h40 z-lh40 z-bg-white z-bd-b">
<i class="z-font z-house z-pd-l15 z-px18"></i><span class="z-mg-l3"><a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#4bacc6;">${name}</span></span>
</div>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h40">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
+55
Dosyayı Görüntüle
@@ -0,0 +1,55 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#00ba8b;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px;color:#fff;background-color:#01adae;height:55px;z-index:99;}
.topnav .logo {float:left;width:200px;height:55px;padding:0 10px;overflow:hidden;font-size:24px;line-height:55px;background-color:#01a2a3;word-break:break-all;word-wrap:break-word;}
.topnav a{color: #fff;}
.topnav .topnavleft {float:left;line-height:55px;}
.topnav .topnavleft .bar {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .first {border-left:1px solid #01a2a3;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only {float:left;height:55px;line-height:55px;border-right:1px solid #01a2a3;}
.topnav .topnavleft .nav:hover{background-color:#01a2a3; color:#fff;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px;border-left:1px solid #01a2a3;}
.topnav .topnavright .nav:hover {background-color:#01a2a3; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%; min-height:1000px;overflow:hidden;}
.sidebar {position:relative; float: left; width:200px;min-height:1000px;height:100%;margin-bottom:-9999px;padding-bottom:9999px;overflow:hidden; background-color: #f2f2f2; border-right:1px solid #d8dce5;}
.sidebar p{position:relative;float:left;width:200px; height:40px;line-height:40px;color:#333; padding-left:15px; border-bottom:1px solid #e5e5e5;cursor:pointer;}
.sidebar p a{color:#333;}
.sidebar p .z-arrow{position:absolute;top:16px;right:10px;}
.sidebar p .z-arrow>span{border-color:#f2f2f2 transparent transparent;}
.sidebar p:hover{background-color:#fafafa;border-bottom:1px solid #e5e5e5;}
.sidebar p.active{background-color:#fafafa;border-bottom:1px solid #e5e5e5;}
.sidebar p:hover>.z-arrow>span{border-color:#fafafa transparent transparent;}
.sidebar p.active>.z-arrow>span{border-color:#fafafa transparent transparent;}
.sidebar ul{position:relative;width:200px;height:auto;overflow:hidden;}
.sidebar ul li{float:left;width:200px;height:40px;background-color:#fff;color:#333; line-height:40px;padding-left:35px;border-bottom:1px solid #e5e5e5;border-left:3px solid transparent;cursor:pointer;}
.sidebar ul li a{color:#333;}
.sidebar ul li:hover{background-color:#01adae;border-left:3px solid #ffa000;color:#fff;}
.sidebar ul li.active{background-color:#fff;border-left:3px solid #01adae;color:#01adae;}
/* mainbody */
.mainbody{margin-left:200px;}
.mainbody .breadcrumb{position:relative;float:left;width: 100%;}
.mainbody .content{position:relative;float:left;width:100%;padding:20px;}
/* footer */
.footer {position:relative;width:100%;height:60px;display:block;overflow:hidden;background-color:#f4f4f4;border-top:1px solid #d3d3d3;z-index:99;}
.footer-wrap {position:relative;margin:0 auto;height:100%;line-height:60px;text-align:center;color:#333;}
+120
Dosyayı Görüntüle
@@ -0,0 +1,120 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.sidebar = function()
{//打开&关闭边导航
var $sidebar = Z("#sidebar");
if ($sidebar.isHide())
{
$sidebar.show();
Z("#logo").show();
Z("#mainbody").css("margin-left", 200);
}
else
{
$sidebar.hide();
Z("#logo").hide();
Z("#mainbody").css("margin-left", 0);
}
Z.ajax().setContextPath(Zmr.contextPath)
.setClassName("sessionUser").setMethodName("setSidebar").addParam(!$sidebar.isHide())
.execute();
};
Zmr.addTopMenuClick = function()
{//增加顶级栏目点击事件
Zmr.doClickTopMenuUp = false;
Zmr.doClickTopMenuDw = false;
Z(".sidebar p").click(function()
{
if (Zmr.doClickTopMenuUp || Zmr.doClickTopMenuDw)
return;
Zmr.doClickTopMenuUp = true;Zmr.doClickTopMenuDw = true;
Z(this).next("ul").slideToggle(200, function(){Zmr.doClickTopMenuDw = false;})
.siblings("ul").slideUp(200, function(){Zmr.doClickTopMenuUp = false;});
});
};
Zmr.doClickChildMenu = function(elem, menuUrl)
{//点击二级栏目
Z(elem).parent().parent().find("li").removeClass("active");
Z(elem).addClass("active");
Z.L.href(menuUrl, window.mainFrame);
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//-55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height);
}
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
/**************************************************/
//定义初始化滑动菜单
/**************************************************/
Z.onload(function()
{//菜单隐藏展开
Zmr.addTopMenuClick();
});
//END
})(zhiqim);
+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+138
Dosyayı Görüntüle
@@ -0,0 +1,138 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left ${sessionUser.getSidebarClass()}" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/welcome.htm")}', mainFrame)">${context.getAttribute("name")}</div>
<div class="topnavleft">
<div class="bar z-w60 z-text-center z-pointer" onclick="Zmr.sidebar();"><i class="z-font z-list z-px22"></i></div>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload(mainFrame);">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!--侧边导航 -->
<div id="sidebar" class="sidebar ${sessionUser.getSidebarClass()}">
<!-- 个人中心 -->
<div class="z-h80 z-pd-t15 z-pd-l15 z-bd-b">
<div class="z-float-left z-w50 z-h50 z-mg-r10"><img class="z-bd-rd50p z-bd z-pd3 z-bg-white z-w50 z-h50" src="${sessionUser.getAvatar50()}"></div>
<div class="z-float-left z-lh25">
<span class="z-px14 z-bold">${sessionUser.getOperatorName()}</span><br>
<span class="z-color-666"><a href="${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}" target="mainFrame">个人中心</a></span>
</div>
</div>
<!-- 栏目列表 -->
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<p><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}<i class="z-arrow z-px5"><span></span></i></p>
<ul id="${topMenu.getMenuCode()}" style="display: <#if topMenu.getMenuCode() == topMenuCode>block<#else>none</#if>;">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li onclick="Zmr.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>class="active"</#if>>#{childMenu.getMenuName()}</li>
</#for>
</ul>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<p onclick="Z.L.href('${context.getRootPath(topMenu.getMenuUrl())}', mainFrame);"><i class="z-font z-px18 z-mg-r5 ${topMenu.getMenuIcon()}"></i>#{topMenu.getMenuName()}</p>
</#if>
</#for>
</div>
<!--主体-->
<div id="mainbody" class="mainbody" style="margin-left:<#if sessionUser.hasSidebar()>200px<#else>0</#if>">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="${sessionUser.getMainUrl()}" height="100%" width="100%"></iframe>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+183
Dosyayı Görüntüle
@@ -0,0 +1,183 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
<style>
body{color:#333;background-color:#fff;background-image: url(ztmpl/zhiqim_manager/index_bg_01.jpg);background-repeat: no-repeat;background-size:100%;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;}
.header .toplogobg{width:316px;height:58px;background-image: url(ztmpl/zhiqim_manager/04_fresh/index_toplogobg.png);background-repeat: no-repeat;}
.header .toplogobg span{line-height:55px;color:#fff;font-size:25px;}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{background-color: #ffffff;width:700px;}
.input{color:#666;font-size:20px;border:2px solid #cecfcf;border-radius:5px;height:50px;line-height:50px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input:focus{border-color:#009899;}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z("#operatorCode").val() == "")
Z("#operatorCode").focus();
else if (Z("#operatorPass").val() == "")
Z("#operatorPass").focus();
else if (Z("#verificationCode").val() == null)
Z("#verificationCode").focus();
else
Z("#operatorCode").focus();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
<div class="header">
<div class="z-float-center z-w1200">
<div class="z-float-left"><img src="ztmpl/zhiqim_manager/04_fresh/index_topbgleft.png" style="width:442px;"></div>
<div class="z-float-left toplogobg z-text-center"><span>${context.getContextName()}</span></div>
<div class="z-float-right"><img src="ztmpl/zhiqim_manager/04_fresh/index_topbgright.png" style="width:442px;"></div>
</div>
</div>
<div class="z-absolute-center-middle login" style="height:<#if hasVerificationCode && hasRememberCode>410<#elseif hasVerificationCode>360<#elseif hasRememberCode>350<#else>300</#if>px">
<table class="z-table z-h100p">
<tr>
<td width="187" valign="bottom" class="z-text-center" style="background-color:#01adae;"><img src="ztmpl/zhiqim_manager/index_slogan_02.png"></td>
<td width="513" valign="top">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<div class="z-mg-l40">
<table class="z-table z-h70-tr z-pd5 z-color-white">
<tr>
<td class="z-px20 z-color-666 z-mg-t10">用户登录</td>
</tr>
<tr>
<td><input id="operatorCode" class="z-w400 input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr>
<td><input id="operatorPass" type="password" class="z-w400 input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr>
<td>
<input id="verificationCode" type="text" class="z-w300 input verificationCode" placeholder="验证码" value="" maxlength="4" data-options="type:Numeric;paste:true;" spellcheck="false" autocomplete="off">
<img class="z-pointer z-bd-rd5 z-mg-t-8" title="点击刷新验证码" onclick="this.src='service/vcode.jpg?bgColor=%231299ec&width=95&height=48&fontSize=20&yawp=true&t='+new Date().getTime();" src="service/vcode.jpg?bgColor=%231299ec&width=95&height=48&fontSize=20&yawp=true&t=${DateTimes.getDateTime17String()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="zi-h40">
<td class="z-px16 z-color-gray">
<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>>记住用户名
<#if hasRememberPass>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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>/>记住密码
</#if>
</td>
</tr>
</#if>
<tr>
<td>
<button id="login" class="z-button z-w400 z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
<div class="footer">${zmr_copyright}</div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.6 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.6 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 2.0 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 73 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 17 KiB

+125
Dosyayı Görüntüle
@@ -0,0 +1,125 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
</head>
<body>
${Htmls.toCallFrame()}
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/welcome.htm")}')">${context.getAttribute("name")}</div>
<div class="topnavleft">
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<div class="dropdown nav">#{topMenu.getMenuName()}<i class="z-float-right z-font z-arrowhead-down z-px10"></i>
<ul id="${topMenu.getMenuCode()}" class="subnav">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li class="z-relative<#if childMenu.getMenuCode() == childMenuCode> active</#if>" onclick="location.href='${context.getRootPath(childMenu.getMenuUrl())}'">#{childMenu.getMenuName()}</li>
</#for>
</ul>
</div>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<div class="single nav" onclick="Z.L.href('${context.getRootPath(topMenu.getMenuUrl())}');">#{topMenu.getMenuName()}</div>
</#if>
</#for>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w80 z-text-center z-pointer" onclick="Z.L.href('${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.reload();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器 -->
<div id="container" class="container">
<!--主体-->
<div id="mainbody" class="mainbody">
<#include include/>
<!--内容结束-->
</div>
</div>
<!--脚注-->
<div class="footer">
<div class="footer-wrap">${zmr_copyright}</div>
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+61
Dosyayı Görüntüle
@@ -0,0 +1,61 @@
<#--变量定义-->
<#var zmr_theme.css = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/flatwise_2019010101.css")/>
<#var zmr_theme.js = context.getRootPath("/ztmpl/zhiqim_manager/"+themeMain+"/flatwise_2019010101.js")/>
<#var zmr_color_class = "z-blue"/>
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 55/>
<#var zmr_breadcrumb_height = 40/>
<#var zmr_title_bgcolor = "#f5f5f5"/>
<#var zmr_thead_bgcolor = "#f5f5f5"/>
<#var zmr_tr_odd_bgcolor = "#f6fafd"/>
<#var zmr_tr_even_bgcolor = "#ffffff"/>
<#var zmr_tr_over_bgcolor = "#f6fafd"/>
<#var zmr_tfoot_bgcolor = "#ffffff"/>
<#--面包屑 -->
<#function zhiqim_manager_breadcrumb_name(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bd-b" style="background-color:#eaedf1;">
<span class="z-pd-l20">${name}</span>
</div>
</#if>
</#function>
<#--面包屑一级栏目 -->
<#function zhiqim_manager_breadcrumb(name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bd-b" style="background-color:#eaedf1;">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑二级栏目 -->
<#function zhiqim_manager_breadcrumb_parent(parentUrl, parentName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bd-b" style="background-color:#eaedf1;">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--面包屑三级栏目 -->
<#function zhiqim_manager_breadcrumb_parent_last(parentUrl, parentName, lastUrl, lastName, name)>
<#if !ZmrParamDao.isThemeFrame(context)>
<div class="breadcrumb z-h40 z-lh40 z-bd-b" style="background-color:#eaedf1;">
<span class="z-pd-l20">当前位置:<a href="${context.getRootPath(ZmlContexts.parseZmlContent(request, ZmrParamDao.getMainIndexUrl(context)))}">首页</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${parentUrl}">${parentName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<a href="${lastUrl}">${lastName}</a>&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;<span style="color:#078ce9;">${name}</span></span>
</div>
</#if>
</#function>
<#--显示记录分页-->
<#function zhiqim_manager_paging(result, link)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlLink(result, link)}</div></td>
</tr>
</table>
</#function>
<#--显示记录分页JS-->
<#function zhiqim_manager_paging_jsMethod(result, jsMethod)>
<table class="z-table z-bordered zi-bd-t-none z-bg-white">
<tr class="z-h50">
<td><div class="z-float-right z-mg-r10">${PagingStd.toHtmlClick(result, jsMethod)}</div></td>
</tr>
</table>
</#function>
@@ -0,0 +1,91 @@
@charset "utf-8";
/* ZhiqimUI */
.z-input{color:#333;}
/* global */
body{color:#333;background-color:#fff;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#4bb0af;text-decoration:none;}
a.blue,a.blue:visited{color:#0066cc;text-decoration:none;cursor:pointer;}
a.blue:active,a.blue:hover{color:#0066cc;text-decoration:underline;}
/* topnav */
.topnav {position:relative;width:100%;min-width:680px;color:#fff;background-color:#00a2eb;height:55px;z-index:99;}
.topnav .logo {float:left;width:200px;height:55px;padding:0 10px;overflow:hidden;font-size:24px;line-height:55px;background-color:#2a80b9;word-break:break-all;word-wrap:break-word;}
.topnav a{color: #fff;}
.topnav .topnavleft {float:left;height:55px;line-height:55px;}
.topnav .topnavleft .nav, .topnav .topnavleft .nav-only{float:left;min-width:120px;height:55px;border-right:1px solid #008bd2;padding:0 10px;cursor:pointer;font-size:14px;line-height:55px;text-align:center;}
.topnav .topnavleft .nav.active{background-color:#008bd2;color:#fff;}
.topnav .topnavleft .nav:hover{background-color:#fff;color:#000;}
.topnav .topnavright {float:right;height:55px;}
.topnav .topnavright .nav, .topnav .topnavright .nav-only {float:left;height:55px;line-height:55px;border-left:1px solid #008bd2;}
.topnav .topnavright .nav:hover {background-color:#008bd2; color:#fff;}
/* [下拉] */
.topnav .topnavleft .dropdown{display:inline-block;width:130px;}
.topnav .topnavleft .dropdown:hover .subnav{display: block;}
.topnav .topnavleft .dropdown:hover i:before{content:"\f08b";}
.topnav .topnavleft .subnav{position:absolute;top:55px;margin-left:-10px;width:260px;display:none;background-color:#fff;box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.2);}
.topnav .topnavleft .subnav li{float:left;color:#333;width:130px;padding: 12px 16px;text-decoration:none;display: block;}
.topnav .topnavleft .subnav li:hover,.topnav .topnavleft .subnav li.active{background-color: #f1f1f1;color:#078ce9;}
.topnav .topnavleft .single{display:inline-block;width:130px;}
.topnav .topnavleft .single:hover {background-color:#008bd2; color:#fff;}
/* container */
.container {position:relative;width:100%;height:100%; min-height:1000px;overflow:hidden;}
/*[替换z-tabnav的背景色为容器背景色]*/
.container .z-tabnav>nav li.z-active{border-bottom:1px solid #eaedf1;}
.container .z-tabnav>nav li.z-active:hover{background-color:#eaedf1;}
/* iframenav */
.iframenav{position:relative;height:40px;line-height:40px;}
/* [iframenav翻页] */
.iframenav-prev,.iframenav-next{position:absolute;top:0;width:50px;height:39px;z-index:1;background:#fff;cursor:pointer;padding:0 22px;text-align:center;line-height:39px;}
.iframenav-prev:hover,.iframenav-next:hover{background-color:#f5f5f5;}
.iframenav-prev{left:0;border-right:1px solid #d3d3d3;}
.iframenav-next{right:100px;border-left:1px solid #d3d3d3;}
.iframenav-prev .z-font,.iframenav-next .z-font{color:#999;margin-left:-8px;}
/* [iframenav控制] */
.iframenav-ctrl{position:absolute;top:0;right:0;}
.iframenav-ctrl-title{position:absolute;top:0;right:0;width:100px;height:39px;z-index:1;border-left:1px solid #d3d3d3;text-align:center;line-height:39px;color:#666;background:#fff;cursor:pointer;}
.iframenav-ctrl-title:hover{background-color:#f5f5f5;}
.iframenav-ctrl-title .z-font{color:#999;margin-left:6px;font-size:10px;}
.iframenav-ctrl-wrap{position:absolute;top:39px;right:0;display:none;width:150px;height:130px;z-index:2;background-color:#fff;border:1px solid #d3d3d3;}
.iframenav-ctrl-wrap ul{padding:10px 0;}
.iframenav-ctrl-wrap ul+ul{border-top:1px solid #ccc;}
.iframenav-ctrl-wrap li{padding:0 25px;line-height:30px;cursor:pointer;}
.iframenav-ctrl-wrap li:hover{background:#f1f1f1;}
/* [iframenav选项卡] */
.iframenav-tab-wrap{height:39px;margin:0 150px 0 50px;overflow:hidden;position:relative;}
.iframenav-tab-list{position:absolute;left:0;top:0;height:39px;background-color:#fff;overflow:hidden;}
.iframenav-tab-item{position:relative;float:left;line-height:39px;border-right:1px solid #d3d3d3;padding:0 35px 0 20px;background:#fff;color:#666;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.iframenav-tab-item.active{background-color:#d4d8db;}
.iframenav-tab-item:hover{color:#222;}
.iframenav-tab-item:first-child{padding-right:23px;}
.iframenav-tab-item .z-font{position:absolute;top:2px;width:25px;line-height:39px;color:#666;font-size:12px;cursor:pointer;text-align:center;}
.iframenav-tab-item .z-error{right:0;padding-right:5px;}
.iframenav-tab-item .z-error:hover{color:#f00;}
/* [iframenav内容页] */
.iframenav-cont{}
.iframenav-cont-item{width:100%;height:100%;display:none;}
.iframenav-cont-item.active{display:block;}
.iframenav-cont-item > iframe{width:100%;height:100%;border:0;margin:0;padding:0;}
/* mainbody */
.mainbody{position:relative;}
.mainbody .breadcrumb{position:relative;float:left;width:100%;}
.mainbody .content{position:relative;float:left;width:100%;padding:20px;}
/* footer */
.footer {position:relative;width:100%;height:60px;display:block;overflow:hidden;background-color:#f4f4f4;border-top:1px solid #d3d3d3;z-index:99;}
.footer-wrap {position:relative;margin:0 auto;height:100%;line-height:60px;text-align: center;color:#333;}
+68
Dosyayı Görüntüle
@@ -0,0 +1,68 @@
/*
* 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
*
* 指定登记&发行网站: https://www.zhiqim.com/ 欢迎加盟知启蒙,[编程有你,知启蒙一路随行]。
*
* 本文采用《知启蒙许可证》,除非符合许可证,否则不可使该文件!
* 1、您可以免费使用、修改、合并、出版发行和分发,再授权软件、软件副本及衍生软件;
* 2、您用于商业用途时,必须在原作者指定的登记网站进行实名登记;
* 3、您在使用、修改、合并、出版发行和分发时,必须包含版权声明、许可声明,及保留原作者的著作权、商标和专利等知识产权;
* 4、您在互联网、移动互联网等大众网络下发行和分发再授权软件、软件副本及衍生软件时,必须在原作者指定的发行网站进行发行和分发;
* 5、您可以在以下链接获取一个完整的许可证副本。
*
* 许可证链接:http://zhiqim.org/licenses/LICENSE.htm
*
* 除非法律需要或书面同意,软件由原始码方式提供,无任何明示或暗示的保证和条件。详见完整许可证的权限和限制。
*/
+(function(Z)
{//BEGIN
/**************************************************/
//定义全局的对象,便于所有的页面调用
/**************************************************/
var Zmr = window.Zmr = {};
Zmr.selectOrgDialog = function()
{//弹出组织选择框
var dialog = new Z.Dialog();
dialog.title = "选择组织";
dialog.url = "orgSelector.htm";
dialog.width = 392;
dialog.height = 423;
dialog.fixed = true;
dialog.scroll = true;
dialog.execute();
};
Zmr.calcMainbodyHeight = function()
{//计算主体高度
var height = Z(document).clientHeight()-55;//-55为topnav的高度
Z("#container").css("height", height);
Z("#mainbody").css("height", height-40);//-40为iframenav高度
}
Zmr.treeExpand = function(code)
{//树菜单展开和关闭
var $menu = Z("#menu-"+code);
var $ico = Z("#ico-"+code);
if (!$menu.isHide())
{
$menu.hide();
if ($ico.hasClass("z-mlastnode"))
$ico.removeClass("z-mlastnode").addClass("z-plastnode");
else
$ico.removeClass("z-mnode").addClass("z-pnode");
}
else
{
$menu.show();
if ($ico.hasClass("z-plastnode"))
$ico.removeClass("z-plastnode").addClass("z-mlastnode");
else
$ico.removeClass("z-pnode").addClass("z-mnode");
}
};
//END
})(zhiqim);
+35
Dosyayı Görüntüle
@@ -0,0 +1,35 @@
<#var zmr_sidebar_width = 0/>
<#var zmr_topnav_height = 0/>
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
<#if request.getPathInContext() == "/"+zhiqim_manager+"/param.htm" || request.getPathInContext() == "/"+zhiqim_manager+"/themeMain.htm">
<script>
if (top.location == self.location)
{//从其他主题切换过来的时候
top.location.href = "${context.getRootPath("/"+zhiqim_manager+"/main.htm")}";
}
</script>
</#if>
</head>
<body>
${Htmls.toCallFrame()}
<div class="container">
<div class="mainbody" style="margin-left:0;">
<!-- 主体开始 -->
<#include include/>
<!-- 主体结束 -->
</div>
</div>
</body>
</html>
+164
Dosyayı Görüntüle
@@ -0,0 +1,164 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Styles.src(zmr_theme.css)}
${Scripts.src(zmr_theme.js)}
${Scripts.src(zhiqim_iframenav.js)}
${Styles.htmlOverflowHidden()}
<script>
Zmr.contextPath = "${context.getContextPath()}";
Zin.contextPath = "${context.getContextPath()}";
Z.onload(Zmr.calcMainbodyHeight);
Z(window).resize(Zmr.calcMainbodyHeight);
Z(window).resize(Zin.setTranslateForShowActive);
<#if !sessionUser.isWelcomeUrl()>
Z.onload(function()
{
var $elem = Z("#sidebar [data-url]");
if ($elem.length > 0)
{//存在指定主页,主动打开
Zin.doClickChildMenu($elem[0], $elem.attr("data-url"));
}
});
</#if>
</script>
</head>
<body>
<!--顶部导航 -->
<div class="topnav">
<div id="logo" class="logo z-pointer z-text-left" onclick="Zin.selectIframeTab('menu_index');">${context.getAttribute("name")}</div>
<div class="topnavleft" id="sidebar">
<#var topMenuCode = sessionUser.getSelectedTopMenuCodeOrFirstMenuCode(request, designatedPath)/>
<#var childMenuCode = sessionUser.getSelectedSecondMenuCode(request, designatedPath)/>
<#for topMenu : sessionUser.getTopMenuList()>
<#if sessionUser.hasChildMenu(topMenu.getMenuCode())>
<div class="dropdown nav">#{topMenu.getMenuName()}<i class="z-float-right z-font z-arrowhead-down z-px10"></i>
<ul id="${topMenu.getMenuCode()}" class="subnav">
<#for childMenu : sessionUser.getChildMenuList(topMenu.getMenuCode())>
<li class="z-relative<#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()> active</#if>" onclick="Zin.doClickChildMenu(this, '${context.getRootPath(childMenu.getMenuUrl())}');" <#if context.getRootPath(childMenu.getMenuUrl()) == sessionUser.getMainUrl()>data-url="${context.getRootPath(childMenu.getMenuUrl())}"</#if>>#{childMenu.getMenuName()}</li>
</#for>
</ul>
</div>
<#elseif Validates.isNotEmptyBlank(topMenu.getMenuUrl())>
<div class="single nav" onclick="Zin.doClickChildMenu(this, '${context.getRootPath(topMenu.getMenuUrl())}');" <#if context.getRootPath(topMenu.getMenuUrl()) == sessionUser.getMainUrl()>data-url="${context.getRootPath(topMenu.getMenuUrl())}"</#if>>#{topMenu.getMenuName()}</div>
</#if>
</#for>
${zhiqim_manager_topnav_left_defined()}
</div>
<div class="topnavright">
${zhiqim_manager_topnav_right_defined()}
<#if ZmrOrgDao.getOrgList(request, sessionUser.getOperatorCode()).size() gt 1>
<div class="nav z-text-center z-pointer z-pd-l20 z-pd-r20" style="max-width:200px;" onclick="Zmr.selectOrgDialog();">${ZmrOrgDao.getOrgName(request, sessionUser.getSelectedOrgId())}</div>
</#if>
<div class="nav z-w80 z-text-center z-pointer" onclick="Zin.doClickChildMenu(this, '${context.getRootPath("/"+zhiqim_manager+"/profile.htm")}');"><img class="z-bd-rd50p z-w40 z-h40" src="${sessionUser.getAvatar50()}"></div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Zin.refreshIframeTabActive();">刷新</div>
<div class="nav z-w100 z-text-center z-pointer" onclick="Z.L.confirm('${context.getRootPath("/"+zhiqim_manager+"/logout.htm")}', '确实要退出吗?');">退出系统</div>
</div>
</div>
<!--容器开始 -->
<div id="container" class="container">
<!-- 框架导航 -->
<div class="iframenav z-h40 z-lh40 z-bg-white z-bd-b">
<div class="iframenav-prev" onclick="Zin.turnIframeTab(false);"><i class="z-font z-arrow-left"></i><i class="z-font z-arrow-left"></i></div>
<div class="iframenav-tab-wrap">
<ul class="iframenav-tab-list">
<li class="iframenav-tab-item active" id="tab_menu_index" onclick="Zin.selectIframeTabEvent(event);"><span>首页</span></li>
</ul>
</div>
<div class="iframenav-next" onclick="Zin.turnIframeTab(true);"><i class="z-font z-arrow-right"></i><i class="z-font z-arrow-right"></i></div>
<div class="iframenav-ctrl">
<div class="iframenav-ctrl-title" onclick="Zin.toggleIframeCtrlWrap();">关闭操作<i class="z-font z-arrow-down"></i></div>
<div class="iframenav-ctrl-wrap">
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.selectIframeTabActive();">定位当前选项卡</li>
</ul>
<ul>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabAll();">关闭全部选项卡</li>
<li class="iframenav-ctrl-item" onclick="Zin.closeIframeTabOther();">关闭其他选项卡</li>
</ul>
</div>
</div>
</div>
<!--框架内容-->
<div id="mainbody" class="mainbody iframenav-cont z-h100p">
<div id="iframe_menu_index" class="iframenav-cont-item active">
<iframe id="mainFrame" name="mainFrame" frameborder="0" scrolling="auto" src="welcome.htm"></iframe>
</div>
</div>
<!--容器结束 -->
</div>
<#if Validates.isNotEmptyBlank(sessionUser.getOperator().getInitialPassword()) && sessionUser.getOperator().getInitialPassword().equals(sessionUser.getOperator().getOperatorPass())>
<script>
function doModifyPass(form)
{
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrProfilePresenter");
ajax.setMethodName("doModifyPass");
ajax.setParamForm(form);
ajax.setFailureAlert();
ajax.setSuccessAlertReloadParent("修改成功");
ajax.execute();
}
var dialog = new Z.Dialog();
dialog.title = '<span style="font-weight:bold">初始密码需要修改</span>';
dialog.text = '<div id="dialog_content"></div>';
dialog.width = 650;
dialog.height = 280;
dialog.fixed = true;
dialog.close = function ()
{//关闭
dialog.remove();
dialog = null;
}
dialog.execute();
dialog.$background.remove();//去边框
var text = `
<form>
<input type="text" class="z-hidden-fixed">
<input type="password" class="z-hidden-fixed">
<table class="z-table z-mg-t10 z-mg-b10">
<tr class="z-h60">
<td width="80" class="zi-pd-l10">旧&ensp;密&ensp;码:</td>
<td width="303"><input name="oldPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td width="10" class="z-px14 z-text-red zi-pd-t6">*</td>
<td width="*" class="zi-pd-r10 z-px14 z-color-999">请输入原始密码</td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">新&ensp;密&ensp;码:</td>
<td><input name="newPassword" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px12 z-color-999">6-16位密码,大写字母、小写字母、数字和特殊字符必须四选三,特殊字符支持</span><span class="z-px12 z-color-999 z-samp">.\`_~!@#$%</span></td>
</tr>
<tr class="z-h60">
<td class="zi-pd-l10">确认密码:</td>
<td><input name="newPassword2" type="password" class="z-input z-w300 ${zmr_color_class}" maxlength="16" autocomplete="off"></td>
<td class="z-px14 z-text-red zi-pd-t6">*</td>
<td class="zi-pd-r10 z-px14 z-color-999">再次输入新密码</td>
</tr>
</table>
<div class="z-absolute z-b0 z-l0 z-w100p z-h80 z-pd20 z-text-center z-bg-gray">
<button type="button" class="z-button z-large z-w100 ${zmr_color_class}" onclick="doModifyPass(this.form);">提交</button>
</div>
</form>
`;
Z("#dialog_content").htmlc(text);
dialog.innerAlert = false;
dialog.submit = function(){
}
document.getElementsByClassName("z-font z-error")[0].remove();
</script>
</#if>
</body>
</html>
+166
Dosyayı Görüntüle
@@ -0,0 +1,166 @@
<!DOCTYPE html>
<html>
<head>
<title>${context.getContextName()}</title>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
${Styles.src(zhiqim.css)}
${Scripts.src(zhiqim.js)}
${Scripts.src(jsencrypt.js)}
${Styles.htmlOverflowHidden()}
<style>
body{color:#333;background-color:#fff;background-image: url(ztmpl/zhiqim_manager/index_bg_01.jpg);background-repeat: no-repeat;background-size:100%;}
body,table,td,div{font-size:14px;line-height:120%;}
a,a:visited{color:#333;text-decoration:none;cursor:pointer;}
a:active,a:hover{color:#1e7eec;text-decoration:none;}
.header{position:fixed;width:100%;height:40px;line-height:40px;background-color:#000; background:rgba(0,0,0,0.2); filter:alpha(opacity=20);}
.footer{position:fixed;bottom:0px; width:100%;height:40px;background:rgba(255,255,255,0.2);line-height:40px;text-align:center;color:#fff;}
.login{width:520px;;border:1px solid #ccc;background-color: #ffffff;border-radius:10px;padding:20px;}
.input{color:#666;font-size:20px;border:2px solid #cecfcf;border-radius:5px;height:50px;line-height:50px;text-indent:10px;font-family:Consolas,"微软雅黑";}
.input.verificationCode{letter-spacing:4px;}
</style>
<script>
Z.onload(function()
{//默认焦点
if (Z("#operatorCode").val() == "")
Z("#operatorCode").focus();
else if (Z("#operatorPass").val() == "")
Z("#operatorPass").focus();
else if (Z("#verificationCode").val() == null)
Z("#verificationCode").focus();
else
Z("#operatorCode").focus();
Z(document).keydown(function(e)
{
if (Z.E.key(e) != Z.E.KEY.ENTER)
return;
if (!Z.Dialog.cache.isEmpty())
return;
doLogin();
});
});
function doRememberCode(rememberCode)
{//取消记住账号时,同时取消记住密码
if (!rememberCode.checked)
{
Z("#rememberPass")[0].checked = false;
Z("[data-id=rememberPass]").removeClass("z-active");
}
}
function doRememberPass(rememberPass)
{//记住密码时,同时记住账号
if (rememberPass.checked)
{
Z("#rememberCode")[0].checked = true;
Z("[data-id=rememberCode]").addClass("z-active");
}
}
function doLogin()
{//登陆
var operatorCode = Z("#operatorCode").val();
if (Z.V.isEmptyBlank(operatorCode))
{//用户名和密码必填
Z.failure("用户名不能为空!",function(){
Z("#operatorCode").focus();
});
return;
}
var operatorPass = Z("#operatorPass").val();
if (Z.V.isEmptyBlank(operatorPass))
{//用户名和密码必填
Z.failure("密码不能为空!",function(){
Z("#operatorPass").focus();
});
return;
}
var verificationCode = Z("#verificationCode").val();
if (Z("#verificationCode").length > 0 && verificationCode.length != 4)
{//如果有验证码框的时候,要求值必须是4位(数字在输入时控制)
Z.failure("验证码为4位数字!");
return;
}
//对密码进行RSA加密
var publicKey = "${ZmrParamDao.getPublicKey(context)}";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
operatorPass = encrypt.encrypt(operatorPass);
var ajax = new Z.Ajax();
ajax.setContextPath("${context.getContextPath()}");
ajax.setClassName("ZmrLoginPresenter");
ajax.setMethodName("doLogin");
ajax.addParam("operatorCode", operatorCode);
ajax.addParam("operatorPass", operatorPass);
ajax.addParam("verificationCode", verificationCode);
<#if hasRememberCode>
ajax.addParam("rememberCode", Z("#rememberCode")[0].checked);
</#if>
<#if hasRememberPass>
ajax.addParam("rememberPass", Z("#rememberPass")[0].checked);
</#if>
ajax.setFailureAlertRecovery();
ajax.setSuccessLocationResponse();
ajax.setLoading("login", "正在登录...", {disabled:true,recovery:false});
ajax.execute();
}
</script>
</head>
<body>
<div class="header">
<div class="z-float-left z-w400 z-lh40 z-pd-l10 z-color-white">欢迎登录&nbsp;&nbsp;[&nbsp;${context.getContextName()}&nbsp;]</div>
<div class="z-float-right z-text-right z-w200 z-lh40 z-pd-r10"></div>
</div>
<div class="z-absolute-center-middle login" style="height:<#if hasVerificationCode && hasRememberCode>420<#elseif hasVerificationCode>390<#elseif hasRememberCode>350<#else>320</#if>px">
<input type="text" class="z-hidden-fixed"/>
<input type="password" class="z-hidden-fixed"/>
<div class="z-px24 zi-bd-b z-color-666 z-pd-b10"><i class="z-font z-customer"></i>&nbsp;&nbsp;用户登录</div>
<div style="padding:25px 40px 20px 30px;">
<table class="z-table z-h100p z-h70-tr z-pd5">
<tr>
<td><input id="operatorCode" class="z-w100p input" placeholder="用户名" value="#{operatorCode}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<tr>
<td><input id="operatorPass" type="password" class="z-w100p input" placeholder="密码" value="#{operatorPass}" maxlength="16" spellcheck="false" autocomplete="off"></td>
</tr>
<#if hasVerificationCode>
<tr>
<td>
<input id="verificationCode" class="input verificationCode" style="width:270px" placeholder="验证码" data-options="type:Numeric;paste:true;" maxlength="4" spellcheck="false" autocomplete="off">
<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()}">
</td>
</tr>
</#if>
<#if hasRememberCode>
<tr class="zi-h40">
<td class="z-px16 z-color-gray">
<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>>记住用户名
<#if hasRememberPass>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<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>/>记住密码
</#if>
</td>
</tr>
</#if>
<tr>
<td><button class="z-button z-xlarge z-w100p z-h50 zi-px20 ${zmr_color_class}" onclick="doLogin()">&nbsp;&nbsp;</button></td>
</tr>
</table>
</div>
</div>
<div class="footer">${zmr_copyright}</div>
</body>
</html>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 74 KiB

İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 14 KiB

+1
Dosyayı Görüntüle
@@ -0,0 +1 @@
<#include include/>
+4
Dosyayı Görüntüle
@@ -0,0 +1,4 @@
<#-- 主题变量和函数定义 -->
<#include "/ztmpl/zhiqim_manager/"+themeIndex+"/define.htm"/>
<#-- 主题首页定义 -->
<#include "/ztmpl/zhiqim_manager/"+themeIndex+"/index.htm"/>
İkili dosya gösterilmiyor.

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 270 KiB

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor Daha Fazla Göster