├── .classpath ├── .gitignore ├── .idea ├── misc.xml ├── mlpms.iml ├── modules.xml └── workspace.xml ├── .project ├── .settings ├── .jsdtscope ├── org.eclipse.core.resources.prefs ├── org.eclipse.jdt.core.prefs ├── org.eclipse.wst.common.component ├── org.eclipse.wst.common.project.facet.core.xml ├── org.eclipse.wst.jsdt.ui.superType.container └── org.eclipse.wst.jsdt.ui.superType.name ├── WebContent ├── META-INF │ └── MANIFEST.MF ├── WEB-INF │ ├── applicationContext.xml │ ├── index.jsp │ ├── jsp │ │ ├── common │ │ │ ├── nav.jsp │ │ │ └── navMg.jsp │ │ ├── manager │ │ │ ├── adviceMg.jsp │ │ │ ├── carMg.jsp │ │ │ ├── consumeMg.jsp │ │ │ ├── houseMg.jsp │ │ │ ├── houseTypeMg.jsp │ │ │ ├── noticeMg.jsp │ │ │ ├── repairMg.jsp │ │ │ └── userMg.jsp │ │ └── user │ │ │ ├── about.jsp │ │ │ ├── advice.jsp │ │ │ ├── news_item.jsp │ │ │ ├── pay.jsp │ │ │ ├── repair.jsp │ │ │ └── user_login.jsp │ ├── lib │ │ ├── ant-1.9.6.jar │ │ ├── ant-launcher-1.9.6.jar │ │ ├── aopalliance.jar │ │ ├── asm-5.0.4.jar │ │ ├── aspectjrt.jar │ │ ├── aspectjtools.jar │ │ ├── aspectjweaver.jar │ │ ├── c3p0-0.9.2.1.jar │ │ ├── cglib-3.2.2.jar │ │ ├── commons-logging-1.2.jar │ │ ├── fastjson-1.2.13.jar │ │ ├── hibernate-c3p0-4.3.5.Final.jar │ │ ├── jackson-annotations-2.2.1.jar │ │ ├── jackson-core-2.2.1.jar │ │ ├── jackson-core-asl-1.8.8.jar │ │ ├── jackson-databind-2.2.1.jar │ │ ├── jackson-mapper-asl-1.8.8.jar │ │ ├── jackson-module-jaxb-annotations-2.2.1.jar │ │ ├── javassist-3.20.0-GA.jar │ │ ├── javax.servlet.jsp.jstl-1.2.1.jar │ │ ├── javax.servlet.jsp.jstl-api-1.2.1.jar │ │ ├── log4j-1.2.17.jar │ │ ├── log4j-api-2.3.jar │ │ ├── log4j-core-2.3.jar │ │ ├── mchange-commons-java-0.2.3.4.jar │ │ ├── mybatis-3.4.1.jar │ │ ├── mybatis-spring-1.3.0.jar │ │ ├── mysql-connector-java-5.1.30.jar │ │ ├── ognl-3.1.8.jar │ │ ├── org.aspectj.matcher.jar │ │ ├── slf4j-api-1.7.21.jar │ │ ├── slf4j-log4j12-1.7.21.jar │ │ ├── spring-aop-4.2.0.RELEASE.jar │ │ ├── spring-aspects-4.2.0.RELEASE.jar │ │ ├── spring-beans-4.2.0.RELEASE.jar │ │ ├── spring-context-4.2.0.RELEASE.jar │ │ ├── spring-context-support-4.2.0.RELEASE.jar │ │ ├── spring-core-4.2.0.RELEASE.jar │ │ ├── spring-expression-4.2.0.RELEASE.jar │ │ ├── spring-instrument-4.2.0.RELEASE.jar │ │ ├── spring-instrument-tomcat-4.2.0.RELEASE.jar │ │ ├── spring-jdbc-4.2.0.RELEASE.jar │ │ ├── spring-jms-4.2.0.RELEASE.jar │ │ ├── spring-messaging-4.2.0.RELEASE.jar │ │ ├── spring-orm-4.2.0.RELEASE.jar │ │ ├── spring-oxm-4.2.0.RELEASE.jar │ │ ├── spring-test-4.2.0.RELEASE.jar │ │ ├── spring-tx-4.2.0.RELEASE.jar │ │ ├── spring-web-4.2.0.RELEASE.jar │ │ ├── spring-webmvc-4.2.0.RELEASE.jar │ │ ├── spring-webmvc-portlet-4.2.0.RELEASE.jar │ │ └── spring-websocket-4.2.0.RELEASE.jar │ ├── springmvc-config.xml │ └── web.xml ├── assets │ ├── css │ │ ├── font-awesome.min.css │ │ ├── ie8.css │ │ ├── ie9.css │ │ └── main.css │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 │ ├── js │ │ ├── ie │ │ │ ├── html5shiv.js │ │ │ └── respond.min.js │ │ ├── jquery.min.js │ │ ├── main.js │ │ ├── skel.min.js │ │ └── util.js │ └── sass │ │ ├── base │ │ ├── _page.scss │ │ └── _typography.scss │ │ ├── components │ │ ├── _author.scss │ │ ├── _blurb.scss │ │ ├── _box.scss │ │ ├── _button.scss │ │ ├── _form.scss │ │ ├── _icon.scss │ │ ├── _image.scss │ │ ├── _list.scss │ │ ├── _mini-post.scss │ │ ├── _post.scss │ │ ├── _section.scss │ │ └── _table.scss │ │ ├── ie8.scss │ │ ├── ie9.scss │ │ ├── layout │ │ ├── _footer.scss │ │ ├── _header.scss │ │ ├── _intro.scss │ │ ├── _main.scss │ │ ├── _menu.scss │ │ ├── _sidebar.scss │ │ └── _wrapper.scss │ │ ├── libs │ │ ├── _functions.scss │ │ ├── _mixins.scss │ │ ├── _skel.scss │ │ └── _vars.scss │ │ └── main.scss ├── bootstrap │ ├── bootstrap-theme.min.css │ ├── bootstrap.min.css │ ├── bootstrap.min.js │ ├── bootstrapDatepickr-1.0.0.css │ ├── bootstrapDatepickr-1.0.0.js │ ├── common.js │ ├── jquery-1.7.2.min.js │ ├── jquery.min.js │ └── mine.css ├── css │ ├── bootstrap-theme.css │ ├── bootstrap-theme.css.map │ ├── bootstrap-theme.min.css │ ├── bootstrap-theme.min.css.map │ ├── bootstrap.css │ ├── bootstrap.css.map │ ├── bootstrap.min.css │ ├── bootstrap.min.css.map │ ├── bootstrapDatepickr-1.0.0.min.css │ ├── dcalendar.picker.css │ ├── index_main.css │ ├── main.css │ ├── mine.css │ └── style.css ├── fonts │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ └── glyphicons-halflings-regular.woff2 ├── images │ ├── 007.jpg │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── advice1.jpg │ ├── advice2.png │ ├── ajax.jpg │ ├── android.jpg │ ├── avatar.jpg │ ├── basic.jpg │ ├── bg.jpg │ ├── bg1.png │ ├── bgbg1.jpg │ ├── bgbg11.jpg │ ├── bgbg2.jpg │ ├── bgbg3.jpg │ ├── bgq4.jpg │ ├── bgq5.jpg │ ├── bgq8.jpg │ ├── bgq9.jpg │ ├── bgr1.jpg │ ├── bgr2.jpg │ ├── bgr3.jpg │ ├── bgr4.jpg │ ├── bgr5.jpg │ ├── bgr8.jpg │ ├── bgr9.jpg │ ├── bgt1.jpg │ ├── bgt2.jpg │ ├── bgt3.jpg │ ├── bgt4.jpg │ ├── bgt5.jpg │ ├── bgt6.jpg │ ├── bgt7.jpg │ ├── bgy1.jpg │ ├── c1.jpg │ ├── c2.jpg │ ├── c3.jpg │ ├── c4.jpg │ ├── c5.jpg │ ├── c6.jpg │ ├── coffee.jpg │ ├── ee.jpg │ ├── fkjava.jpg │ ├── framework.jpg │ ├── g.png │ ├── head.jpg │ ├── java.jpg │ ├── javaee.jpg │ ├── logo.jpg │ ├── logo5.png │ ├── news.jpg │ ├── pic01.jpg │ ├── pic011.jpg │ ├── pic02.jpg │ ├── pic021.jpg │ ├── pic03.jpg │ ├── pic031.jpg │ ├── pic04.jpg │ ├── pic05.jpg │ ├── pic06.jpg │ ├── pic07.jpg │ ├── pic08.jpg │ ├── pic09.jpg │ ├── pic10.jpg │ ├── pic11.jpg │ ├── pic12.jpg │ ├── pic20.jpg │ ├── pic3.png │ ├── pic4.jpg │ ├── repair1.jpg │ ├── repair2.png │ ├── struts.jpg │ ├── timg-22.jpeg │ ├── timg-26.jpeg │ ├── timg-27.jpeg │ ├── timg-28.jpeg │ ├── timg-29.jpeg │ ├── timg-3.jpeg │ ├── timg-5.jpeg │ ├── timg-6.jpeg │ └── xml.jpg └── js │ ├── bootstrap.js │ ├── bootstrap.min.js │ ├── bootstrapDatepickr-1.0.0.min.js │ ├── common.js │ ├── dcalendar.picker.js │ ├── jquery-1.11.0.min.js │ ├── jquery.min.js │ ├── json2.js │ └── npm.js ├── pms.sql └── src ├── db.properties ├── log4j.properties └── org └── csu └── pms ├── controller ├── AdviceController.java ├── CarController.java ├── ConsumeController.java ├── FormController.java ├── HouseController.java ├── HouseTypeController.java ├── NoticeController.java ├── RepairController.java └── UserController.java ├── dao ├── AdviceDao.java ├── CarDao.java ├── ConsumeDao.java ├── HouseDao.java ├── HouseTypeDao.java ├── NoticeDao.java ├── RepairDao.java ├── UserDao.java └── provider │ ├── AdviceDynaSqlProvider.java │ ├── CarDynaSqlProvider.java │ ├── ConsumeDynaSqlProvider.java │ ├── HouseDynaSqlProvider.java │ ├── HouseTypeDynaSqlProvider.java │ ├── NoticeDynaSqlProvider.java │ ├── RepairDynaSqlProvider.java │ └── UserDynaSqlProvider.java ├── domain ├── Advice.java ├── Car.java ├── Consume.java ├── House.java ├── HouseType.java ├── Notice.java ├── PageVO.java ├── Repair.java └── User.java ├── interceptor └── AuthorizationIntercepor.java ├── service ├── PmsService.java └── impl │ └── PmsServiceImpl.java └── util ├── common └── PmsConstants.java └── tag ├── PageModel.java └── PagerTag.java /.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | .idea/* -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /.idea/mlpms.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 19 | -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | mlpms 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.wst.common.project.facet.core.builder 15 | 16 | 17 | 18 | 19 | org.eclipse.wst.validation.validationbuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.jem.workbench.JavaEMFNature 26 | org.eclipse.wst.common.modulecore.ModuleCoreNature 27 | org.eclipse.wst.common.project.facet.core.nature 28 | org.eclipse.jdt.core.javanature 29 | org.eclipse.wst.jsdt.core.jsNature 30 | 31 | 32 | -------------------------------------------------------------------------------- /.settings/.jsdtscope: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//WebContent/WEB-INF/jsp/user/about.jsp=UTF-8 3 | encoding//WebContent/WEB-INF/jsp/user/news_item.jsp=UTF-8 4 | -------------------------------------------------------------------------------- /.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 4 | org.eclipse.jdt.core.compiler.compliance=1.8 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.8 8 | -------------------------------------------------------------------------------- /.settings/org.eclipse.wst.common.component: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.settings/org.eclipse.wst.common.project.facet.core.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /.settings/org.eclipse.wst.jsdt.ui.superType.container: -------------------------------------------------------------------------------- 1 | org.eclipse.wst.jsdt.launching.baseBrowserLibrary -------------------------------------------------------------------------------- /.settings/org.eclipse.wst.jsdt.ui.superType.name: -------------------------------------------------------------------------------- 1 | Window -------------------------------------------------------------------------------- /WebContent/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Class-Path: 3 | 4 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/applicationContext.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 35 | 36 | 37 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8"%> 3 | 4 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/jsp/common/navMg.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=utf-8" 2 | pageEncoding="utf-8"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 4 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/jsp/user/about.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 4 | <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="f" %> 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 信息管理 18 | 19 | 20 | <%@ include file="../common/nav.jsp"%> 21 | 22 |
23 |
24 |
25 |

26 | Hello 27 | 28 |

29 | 30 | 31 | 32 |
33 |
34 |
35 |
36 | 37 |
38 |
39 | 40 |
41 |
42 | 43 |
44 |
45 | 46 |
47 |
48 | 49 |
50 |
51 |
52 |
53 | 54 |
55 |
56 | 57 |
58 |
59 |

60 | 胡开阳 61 |

62 |

63 | 一名致力于技术的大佬,作为本系统的项目头头,您可以直接联系胡蜀黍,一切以您的利益为先。 64 |
联系方式:10086 65 |

66 | 67 |
68 |
69 |

70 | 张国铭 71 |

72 |

73 | 一名全身心投入技术的程序猿,实际拥有着较好的审美,我怀疑他是前端的汉子。信不信由你。 74 |
联系方式:10000 75 |

76 | 77 |
78 |
79 |

80 | 兰鹏 81 |

82 |

83 | 一名不知所措的阳光程序猿,用微笑秒杀你,相信你对他绝对没有意见,请替你们的小哥哥疯狂打call。 84 |
联系方式:10010 85 |

86 | 87 |
88 |
89 |

90 | 赵园园 91 |

92 |

93 | 活捉一只美腻的少女,前端,后台,文档,样样都行,就问你服不服,反正我服了,略略略。 94 |
联系方式:12011 95 |

96 | 97 |
98 |
99 |

100 | 李倩 101 |

102 |

103 | 我才不会告诉你左边都是我写的呢,这里没有少女没有美腻,只有一个老阿姨,但是撒浪嘿。 104 |
联系方式:11011 105 |

106 | 107 |
108 |
109 | 110 |
111 |
112 |
113 | 158 |
159 |
160 | 161 |
162 | 163 | 164 | 167 | 168 | 169 | 170 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/jsp/user/news_item.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 4 | <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 小区新闻 14 | 15 | 16 | 17 |
18 | 19 |

${requestScope.notice.noticeTitle}

20 |

21 | 22 |
23 |
24 | 25 | 26 | 27 | 28 |
29 | 30 | First slide 31 | 32 | 33 |
34 |
35 | 发表于   36 | 37 | 38 | 39 |
40 |
41 |
42 |
43 | 44 | ${requestScope.notice.noticeContent} 45 |
46 |
47 |
48 |
49 | 50 | 51 |
52 | Copyright   2017 CSU rights reserved. 53 |
54 |
55 |
56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/ant-1.9.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/ant-1.9.6.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/ant-launcher-1.9.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/ant-launcher-1.9.6.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/aopalliance.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/aopalliance.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/asm-5.0.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/asm-5.0.4.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/aspectjrt.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/aspectjrt.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/aspectjtools.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/aspectjtools.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/aspectjweaver.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/aspectjweaver.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/c3p0-0.9.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/c3p0-0.9.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/cglib-3.2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/cglib-3.2.2.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/commons-logging-1.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/commons-logging-1.2.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/fastjson-1.2.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/fastjson-1.2.13.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/hibernate-c3p0-4.3.5.Final.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/hibernate-c3p0-4.3.5.Final.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-annotations-2.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-annotations-2.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-core-2.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-core-2.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-core-asl-1.8.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-core-asl-1.8.8.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-databind-2.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-databind-2.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-mapper-asl-1.8.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-mapper-asl-1.8.8.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/jackson-module-jaxb-annotations-2.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/jackson-module-jaxb-annotations-2.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/javassist-3.20.0-GA.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/javassist-3.20.0-GA.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/javax.servlet.jsp.jstl-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/javax.servlet.jsp.jstl-1.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/javax.servlet.jsp.jstl-api-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/javax.servlet.jsp.jstl-api-1.2.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/log4j-1.2.17.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/log4j-1.2.17.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/log4j-api-2.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/log4j-api-2.3.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/log4j-core-2.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/log4j-core-2.3.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/mchange-commons-java-0.2.3.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/mchange-commons-java-0.2.3.4.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/mybatis-3.4.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/mybatis-3.4.1.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/mybatis-spring-1.3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/mybatis-spring-1.3.0.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/mysql-connector-java-5.1.30.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/mysql-connector-java-5.1.30.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/ognl-3.1.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/ognl-3.1.8.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/org.aspectj.matcher.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/org.aspectj.matcher.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/slf4j-api-1.7.21.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/slf4j-api-1.7.21.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/slf4j-log4j12-1.7.21.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/slf4j-log4j12-1.7.21.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-aop-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-aop-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-aspects-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-aspects-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-beans-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-beans-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-context-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-context-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-context-support-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-context-support-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-core-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-core-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-expression-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-expression-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-instrument-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-instrument-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-instrument-tomcat-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-instrument-tomcat-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-jdbc-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-jdbc-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-jms-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-jms-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-messaging-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-messaging-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-orm-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-orm-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-oxm-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-oxm-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-test-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-test-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-tx-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-tx-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-web-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-web-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-webmvc-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-webmvc-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-webmvc-portlet-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-webmvc-portlet-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/lib/spring-websocket-4.2.0.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/WEB-INF/lib/spring-websocket-4.2.0.RELEASE.jar -------------------------------------------------------------------------------- /WebContent/WEB-INF/springmvc-config.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 24 | 25 | 26 | /WEB-INF/jsp/ 27 | 28 | 29 | 30 | .jsp 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /WebContent/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | org.springframework.web.context.ContextLoaderListener 5 | 6 | 7 | contextConfigLocation 8 | /WEB-INF/applicationContext.xml 9 | 10 | 11 | springmvc 12 | 13 | org.springframework.web.servlet.DispatcherServlet 14 | 15 | 16 | contextConfigLocation 17 | /WEB-INF/springmvc-config.xml 18 | 19 | 1 20 | 21 | 22 | springmvc 23 | / 24 | 25 | 26 | characterEncodingFilter 27 | org.springframework.web.filter.CharacterEncodingFilter 28 | 29 | encoding 30 | UTF-8 31 | 32 | 33 | 34 | characterEncodingFilter 35 | /* 36 | 37 | -------------------------------------------------------------------------------- /WebContent/assets/css/ie8.css: -------------------------------------------------------------------------------- 1 | /* 2 | Future Imperfect by HTML5 UP 3 | html5up.net | @n33co 4 | Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | */ 6 | 7 | /* Button */ 8 | 9 | input[type="submit"], 10 | input[type="reset"], 11 | input[type="button"], 12 | button, 13 | .button { 14 | border: solid 1px #dedede; 15 | } 16 | 17 | /* Form */ 18 | 19 | input[type="text"], 20 | input[type="password"], 21 | input[type="email"], 22 | input[type="tel"], 23 | select, 24 | textarea { 25 | border: solid 1px #dedede; 26 | } 27 | 28 | /* Post */ 29 | 30 | .post { 31 | border: solid 1px #dedede; 32 | } 33 | 34 | .post > header { 35 | border-bottom: solid 1px #dedede; 36 | } 37 | 38 | /* Mini Post */ 39 | 40 | .mini-post { 41 | border: solid 1px #dedede; 42 | } 43 | 44 | /* Header */ 45 | 46 | #header { 47 | border-bottom: solid 1px #dedede; 48 | } 49 | 50 | #header .links { 51 | border-left: solid 1px #dedede; 52 | } 53 | 54 | #header .main ul li { 55 | border-left: solid 1px #dedede; 56 | } 57 | 58 | /* Sidebar */ 59 | 60 | #sidebar > * { 61 | border-top: solid 1px #dedede; 62 | } 63 | 64 | /* Menu */ 65 | 66 | #menu { 67 | border-left: solid 1px #dedede; 68 | } 69 | 70 | #menu > * { 71 | border-top: solid 1px #dedede; 72 | } -------------------------------------------------------------------------------- /WebContent/assets/css/ie9.css: -------------------------------------------------------------------------------- 1 | /* 2 | Future Imperfect by HTML5 UP 3 | html5up.net | @n33co 4 | Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | */ 6 | 7 | /* List */ 8 | 9 | ul.posts article:after { 10 | clear: both; 11 | content: ''; 12 | display: block; 13 | } 14 | 15 | ul.posts article .image { 16 | display: table-cell; 17 | vertical-align: top; 18 | } 19 | 20 | ul.posts article header { 21 | display: table-cell; 22 | padding-right: 1em; 23 | vertical-align: top; 24 | } 25 | 26 | /* Author */ 27 | 28 | .author .name { 29 | display: inline-block; 30 | vertical-align: middle; 31 | } 32 | 33 | .author img { 34 | display: inline-block; 35 | vertical-align: middle; 36 | } 37 | 38 | /* Post */ 39 | 40 | .post:after { 41 | clear: both; 42 | content: ''; 43 | display: block; 44 | } 45 | 46 | .post > header:after { 47 | clear: both; 48 | content: ''; 49 | display: block; 50 | } 51 | 52 | .post > header .title { 53 | display: table-cell; 54 | vertical-align: top; 55 | width: 65%; 56 | } 57 | 58 | .post > header .meta { 59 | display: table-cell; 60 | vertical-align: top; 61 | width: 30%; 62 | } 63 | 64 | .post > footer:after { 65 | clear: both; 66 | content: ''; 67 | display: block; 68 | } 69 | 70 | .post > footer .actions { 71 | display: inline-block; 72 | } 73 | 74 | .post > footer .stats { 75 | display: inline-block; 76 | margin-left: 2em; 77 | } 78 | 79 | /* Mini Post */ 80 | 81 | .mini-post .image { 82 | display: block; 83 | } 84 | 85 | /* Header */ 86 | 87 | #header:after { 88 | clear: both; 89 | content: ''; 90 | display: block; 91 | } 92 | 93 | #header h1 { 94 | float: left; 95 | } 96 | 97 | #header .links { 98 | float: left; 99 | } 100 | 101 | #header .main { 102 | position: absolute; 103 | right: 0; 104 | top: 0; 105 | } 106 | 107 | /* Wrapper */ 108 | 109 | /* Sidebar */ 110 | 111 | #sidebar { 112 | display: table-cell; 113 | margin-right: 0; 114 | padding-right: 3em; 115 | vertical-align: top; 116 | } 117 | 118 | /* Main */ 119 | 120 | #main { 121 | display: table-cell; 122 | vertical-align: top; 123 | } -------------------------------------------------------------------------------- /WebContent/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /WebContent/assets/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/assets/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /WebContent/assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /WebContent/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /WebContent/assets/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/assets/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /WebContent/assets/js/ie/html5shiv.js: -------------------------------------------------------------------------------- 1 | /* 2 | HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed 3 | */ 4 | (function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag(); 5 | a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x"; 6 | c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode|| 7 | "undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video",version:"3.6.2",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment(); 8 | for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d #mq-test-1 { width: 42px; }',c.insertBefore(e,d),b=42===f.offsetWidth,c.removeChild(e),{matches:b,media:a}}}(a.document)}(this),function(a){"use strict";function b(){v(!0)}var c={};a.respond=c,c.update=function(){};var d=[],e=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}(),f=function(a,b){var c=e();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))},g=function(a){return a.replace(c.regex.minmaxwh,"").match(c.regex.other)};if(c.ajax=f,c.queue=d,c.unsupportedmq=g,c.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,comments:/\/\*[^*]*\*+([^/][^*]*\*+)*\//gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,maxw:/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,minmaxwh:/\(\s*m(in|ax)\-(height|width)\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/gi,other:/\([^\)]*\)/g},c.mediaQueriesSupported=a.matchMedia&&null!==a.matchMedia("only all")&&a.matchMedia("only all").matches,!c.mediaQueriesSupported){var h,i,j,k=a.document,l=k.documentElement,m=[],n=[],o=[],p={},q=30,r=k.getElementsByTagName("head")[0]||l,s=k.getElementsByTagName("base")[0],t=r.getElementsByTagName("link"),u=function(){var a,b=k.createElement("div"),c=k.body,d=l.style.fontSize,e=c&&c.style.fontSize,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",c||(c=f=k.createElement("body"),c.style.background="none"),l.style.fontSize="100%",c.style.fontSize="100%",c.appendChild(b),f&&l.insertBefore(c,l.firstChild),a=b.offsetWidth,f?l.removeChild(c):c.removeChild(b),l.style.fontSize=d,e&&(c.style.fontSize=e),a=j=parseFloat(a)},v=function(b){var c="clientWidth",d=l[c],e="CSS1Compat"===k.compatMode&&d||k.body[c]||d,f={},g=t[t.length-1],p=(new Date).getTime();if(b&&h&&q>p-h)return a.clearTimeout(i),i=a.setTimeout(v,q),void 0;h=p;for(var s in m)if(m.hasOwnProperty(s)){var w=m[s],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?j||u():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?j||u():1)),w.hasquery&&(z&&A||!(z||e>=x)||!(A||y>=e))||(f[w.media]||(f[w.media]=[]),f[w.media].push(n[w.rules]))}for(var C in o)o.hasOwnProperty(C)&&o[C]&&o[C].parentNode===r&&r.removeChild(o[C]);o.length=0;for(var D in f)if(f.hasOwnProperty(D)){var E=k.createElement("style"),F=f[D].join("\n");E.type="text/css",E.media=D,r.insertBefore(E,g.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(k.createTextNode(F)),o.push(E)}},w=function(a,b,d){var e=a.replace(c.regex.comments,"").replace(c.regex.keyframes,"").match(c.regex.media),f=e&&e.length||0;b=b.substring(0,b.lastIndexOf("/"));var h=function(a){return a.replace(c.regex.urls,"$1"+b+"$2$3")},i=!f&&d;b.length&&(b+="/"),i&&(f=1);for(var j=0;f>j;j++){var k,l,o,p;i?(k=d,n.push(h(a))):(k=e[j].match(c.regex.findStyles)&&RegExp.$1,n.push(RegExp.$2&&h(RegExp.$2))),o=k.split(","),p=o.length;for(var q=0;p>q;q++)l=o[q],g(l)||m.push({media:l.split("(")[0].match(c.regex.only)&&RegExp.$2||"all",rules:n.length-1,hasquery:l.indexOf("(")>-1,minw:l.match(c.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:l.match(c.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}v()},x=function(){if(d.length){var b=d.shift();f(b.href,function(c){w(c,b.href,b.media),p[b.href]=!0,a.setTimeout(function(){x()},0)})}},y=function(){for(var b=0;blarge. 105 | skel 106 | .on('+large', function() { 107 | $intro.prependTo($main); 108 | }) 109 | .on('-large', function() { 110 | $intro.prependTo($sidebar); 111 | }); 112 | 113 | }); 114 | 115 | })(jQuery); -------------------------------------------------------------------------------- /WebContent/assets/sass/base/_page.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Basic */ 8 | 9 | // MSIE: Required for IEMobile. 10 | @-ms-viewport { 11 | width: device-width; 12 | } 13 | 14 | // MSIE: Prevents scrollbar from overlapping content. 15 | body { 16 | -ms-overflow-style: scrollbar; 17 | } 18 | 19 | // Ensures page width is always >=320px. 20 | @include breakpoint(xsmall) { 21 | html, body { 22 | min-width: 320px; 23 | } 24 | } 25 | 26 | body { 27 | background: _palette(bg-alt); 28 | 29 | // Prevents animation/transition "flicker" on page load. 30 | // Automatically added/removed by js/main.js. 31 | &.is-loading { 32 | *, *:before, *:after { 33 | @include vendor('animation', 'none !important'); 34 | @include vendor('transition', 'none !important'); 35 | } 36 | } 37 | 38 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/base/_typography.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Type */ 8 | 9 | body, input, select, textarea { 10 | color: _palette(fg); 11 | font-family: _font(family); 12 | font-size: 14pt; 13 | font-weight: _font(weight); 14 | line-height: 1.75; 15 | 16 | @include breakpoint(xlarge) { 17 | font-size: 12pt; 18 | } 19 | 20 | @include breakpoint(large) { 21 | font-size: 12pt; 22 | } 23 | 24 | @include breakpoint(medium) { 25 | font-size: 12pt; 26 | } 27 | 28 | @include breakpoint(small) { 29 | font-size: 12pt; 30 | } 31 | 32 | @include breakpoint(xsmall) { 33 | font-size: 12pt; 34 | } 35 | } 36 | 37 | a { 38 | @include vendor('transition', ( 39 | 'color #{_duration(transition)} ease', 40 | 'border-bottom-color #{_duration(transition)} ease' 41 | )); 42 | border-bottom: dotted 1px _palette(border-alt); 43 | color: inherit; 44 | text-decoration: none; 45 | 46 | &:before { 47 | @include vendor('transition', ( 48 | 'color #{_duration(transition)} ease' 49 | )); 50 | } 51 | 52 | &:hover { 53 | border-bottom-color: transparent; 54 | color: _palette(accent) !important; 55 | 56 | &:before { 57 | color: _palette(accent) !important; 58 | } 59 | } 60 | } 61 | 62 | strong, b { 63 | color: _palette(fg-bold); 64 | font-weight: _font(weight-bold); 65 | } 66 | 67 | em, i { 68 | font-style: italic; 69 | } 70 | 71 | p { 72 | margin: 0 0 _size(element-margin) 0; 73 | } 74 | 75 | h1, h2, h3, h4, h5, h6 { 76 | color: _palette(fg-bold); 77 | font-family: _font(family-heading); 78 | font-weight: _font(weight-heading-bold); 79 | letter-spacing: _font(kerning-heading); 80 | line-height: 1.65; 81 | margin: 0 0 (_size(element-margin) * 0.5) 0; 82 | text-transform: uppercase; 83 | 84 | a { 85 | color: inherit; 86 | border-bottom: 0; 87 | } 88 | } 89 | 90 | h2 { 91 | font-size: 1.1em; 92 | } 93 | 94 | h3 { 95 | font-size: 0.9em; 96 | } 97 | 98 | h4 { 99 | font-size: 0.7em; 100 | } 101 | 102 | h5 { 103 | font-size: 0.7em; 104 | } 105 | 106 | h6 { 107 | font-size: 0.7em; 108 | } 109 | 110 | sub { 111 | font-size: 0.8em; 112 | position: relative; 113 | top: 0.5em; 114 | } 115 | 116 | sup { 117 | font-size: 0.8em; 118 | position: relative; 119 | top: -0.5em; 120 | } 121 | 122 | blockquote { 123 | border-left: solid 4px _palette(border); 124 | font-style: italic; 125 | margin: 0 0 _size(element-margin) 0; 126 | padding: (_size(element-margin) / 4) 0 (_size(element-margin) / 4) _size(element-margin); 127 | } 128 | 129 | code { 130 | background: _palette(border-bg); 131 | border: solid 1px _palette(border); 132 | font-family: _font(family-fixed); 133 | font-size: 0.9em; 134 | margin: 0 0.25em; 135 | padding: 0.25em 0.65em; 136 | } 137 | 138 | pre { 139 | -webkit-overflow-scrolling: touch; 140 | font-family: _font(family-fixed); 141 | font-size: 0.9em; 142 | margin: 0 0 _size(element-margin) 0; 143 | 144 | code { 145 | display: block; 146 | line-height: 1.75em; 147 | padding: 1em 1.5em; 148 | overflow-x: auto; 149 | } 150 | } 151 | 152 | hr { 153 | border: 0; 154 | border-bottom: solid 1px _palette(border); 155 | margin: _size(element-margin) 0; 156 | 157 | &.major { 158 | margin: (_size(element-margin) * 1.5) 0; 159 | } 160 | } 161 | 162 | .align-left { 163 | text-align: left; 164 | } 165 | 166 | .align-center { 167 | text-align: center; 168 | } 169 | 170 | .align-right { 171 | text-align: right; 172 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_author.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Author */ 8 | 9 | .author { 10 | @include vendor('display', 'flex'); 11 | @include vendor('flex-direction', 'row'); 12 | @include vendor('align-items', 'center'); 13 | @include vendor('justify-content', 'flex-end'); 14 | border-bottom: 0; 15 | font-family: _font(family-heading); 16 | font-size: 0.6em; 17 | font-weight: _font(weight-heading); 18 | letter-spacing: _font(kerning-heading); 19 | text-transform: uppercase; 20 | white-space: nowrap; 21 | 22 | .name { 23 | @include vendor('transition', 'border-bottom-color #{_duration(transition)} ease'); 24 | border-bottom: dotted 1px _palette(border-alt); 25 | display: block; 26 | margin: 0 1.5em 0 0; 27 | } 28 | 29 | img { 30 | border-radius: 100%; 31 | display: block; 32 | width: 4em; 33 | } 34 | 35 | &:hover { 36 | .name { 37 | border-bottom-color: transparent; 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_blurb.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Blurb */ 8 | 9 | .blurb { 10 | h2 { 11 | font-size: 0.8em; 12 | margin: 0 0 (_size(element-margin) * 0.75) 0; 13 | } 14 | 15 | h3 { 16 | font-size: 0.7em; 17 | } 18 | 19 | p { 20 | font-size: 0.9em; 21 | } 22 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_box.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Box */ 8 | 9 | .box { 10 | border: solid 1px _palette(border); 11 | margin-bottom: _size(element-margin); 12 | padding: 1.5em; 13 | 14 | > :last-child, 15 | > :last-child > :last-child, 16 | > :last-child > :last-child > :last-child { 17 | margin-bottom: 0; 18 | } 19 | 20 | &.alt { 21 | border: 0; 22 | border-radius: 0; 23 | padding: 0; 24 | } 25 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_button.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Button */ 8 | 9 | input[type="submit"], 10 | input[type="reset"], 11 | input[type="button"], 12 | button, 13 | .button { 14 | @include vendor('appearance', 'none'); 15 | @include vendor('transition', ( 16 | 'background-color #{_duration(transition)} ease', 17 | 'box-shadow #{_duration(transition)} ease', 18 | 'color #{_duration(transition)} ease' 19 | )); 20 | background-color: transparent; 21 | border: 0; 22 | box-shadow: inset 0 0 0 1px _palette(border); 23 | color: _palette(fg-bold) !important; 24 | cursor: pointer; 25 | display: inline-block; 26 | font-family: _font(family-heading); 27 | font-size: 0.6em; 28 | font-weight: _font(weight-heading-bold); 29 | height: _size(element-height) * 1.75; 30 | letter-spacing: _font(kerning-heading); 31 | line-height: _size(element-height) * 1.75; 32 | padding: 0 2.5em; 33 | text-align: center; 34 | text-decoration: none; 35 | text-transform: uppercase; 36 | white-space: nowrap; 37 | 38 | &:hover { 39 | box-shadow: inset 0 0 0 1px _palette(accent); 40 | color: _palette(accent) !important; 41 | 42 | &:active { 43 | background-color: transparentize(_palette(accent), 0.95); 44 | } 45 | } 46 | 47 | &:before, &:after { 48 | color: _palette(fg-light); 49 | position: relative; 50 | } 51 | 52 | &:before { 53 | left: -1em; 54 | padding: 0 0 0 0.75em; 55 | } 56 | 57 | &:after { 58 | left: 1em; 59 | padding: 0 0.75em 0 0; 60 | } 61 | 62 | &.fit { 63 | display: block; 64 | margin: 0 0 (_size(element-margin) * 0.5) 0; 65 | width: 100%; 66 | } 67 | 68 | &.big { 69 | font-size: 0.7em; 70 | padding: 0 3em; 71 | } 72 | 73 | &.small { 74 | font-size: 0.5em; 75 | } 76 | 77 | &.disabled, 78 | &:disabled { 79 | @include vendor('pointer-events', 'none'); 80 | color: _palette(border) !important; 81 | 82 | &:before { 83 | color: _palette(border) !important; 84 | } 85 | } 86 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_form.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Form */ 8 | 9 | form { 10 | margin: 0 0 _size(element-margin) 0; 11 | 12 | &.search { 13 | @include icon; 14 | position: relative; 15 | 16 | &:before { 17 | color: _palette(fg-light); 18 | content: '\f002'; 19 | display: block; 20 | height: _size(element-height); 21 | left: 0; 22 | line-height: _size(element-height); 23 | position: absolute; 24 | text-align: center; 25 | top: 0; 26 | width: 2.5em; 27 | } 28 | 29 | > input:first-child { 30 | padding-left: 2.5em; 31 | } 32 | } 33 | } 34 | 35 | label { 36 | color: _palette(fg-bold); 37 | display: block; 38 | font-size: 0.9em; 39 | font-weight: _font(weight-bold); 40 | margin: 0 0 (_size(element-margin) * 0.5) 0; 41 | } 42 | 43 | input[type="text"], 44 | input[type="password"], 45 | input[type="email"], 46 | input[type="tel"], 47 | select, 48 | textarea { 49 | @include vendor('appearance', 'none'); 50 | background: _palette(border-bg); 51 | border: none; 52 | border: solid 1px _palette(border); 53 | border-radius: 0; 54 | color: inherit; 55 | display: block; 56 | outline: 0; 57 | padding: 0 1em; 58 | text-decoration: none; 59 | width: 100%; 60 | 61 | &:invalid { 62 | box-shadow: none; 63 | } 64 | 65 | &:focus { 66 | border-color: _palette(accent); 67 | box-shadow: inset 0 0 0 1px _palette(accent); 68 | } 69 | } 70 | 71 | .select-wrapper { 72 | @include icon; 73 | display: block; 74 | position: relative; 75 | 76 | &:before { 77 | color: _palette(border); 78 | content: '\f078'; 79 | display: block; 80 | height: _size(element-height); 81 | line-height: _size(element-height); 82 | pointer-events: none; 83 | position: absolute; 84 | right: 0; 85 | text-align: center; 86 | top: 0; 87 | width: _size(element-height); 88 | } 89 | 90 | select::-ms-expand { 91 | display: none; 92 | } 93 | } 94 | 95 | input[type="text"], 96 | input[type="password"], 97 | input[type="email"], 98 | select { 99 | height: _size(element-height); 100 | } 101 | 102 | textarea { 103 | padding: 0.75em 1em; 104 | } 105 | 106 | input[type="checkbox"], 107 | input[type="radio"], { 108 | @include vendor('appearance', 'none'); 109 | display: block; 110 | float: left; 111 | margin-right: -2em; 112 | opacity: 0; 113 | width: 1em; 114 | z-index: -1; 115 | 116 | & + label { 117 | @include icon; 118 | color: _palette(fg); 119 | cursor: pointer; 120 | display: inline-block; 121 | font-size: 1em; 122 | font-weight: _font(weight); 123 | padding-left: (_size(element-height) * 0.6) + 0.75em; 124 | padding-right: 0.75em; 125 | position: relative; 126 | 127 | &:before { 128 | background: _palette(border-bg); 129 | border: solid 1px _palette(border); 130 | content: ''; 131 | display: inline-block; 132 | height: (_size(element-height) * 0.6); 133 | left: 0; 134 | line-height: (_size(element-height) * 0.575); 135 | position: absolute; 136 | text-align: center; 137 | top: 0; 138 | width: (_size(element-height) * 0.6); 139 | } 140 | } 141 | 142 | &:checked + label { 143 | &:before { 144 | background: _palette(fg-bold); 145 | border-color: _palette(fg-bold); 146 | color: _palette(bg); 147 | content: '\f00c'; 148 | } 149 | } 150 | 151 | &:focus + label { 152 | &:before { 153 | border-color: _palette(accent); 154 | box-shadow: 0 0 0 1px _palette(accent); 155 | } 156 | } 157 | } 158 | 159 | input[type="checkbox"] { 160 | & + label { 161 | &:before { 162 | } 163 | } 164 | } 165 | 166 | input[type="radio"] { 167 | & + label { 168 | &:before { 169 | border-radius: 100%; 170 | } 171 | } 172 | } 173 | 174 | ::-webkit-input-placeholder { 175 | color: _palette(fg-light) !important; 176 | opacity: 1.0; 177 | } 178 | 179 | :-moz-placeholder { 180 | color: _palette(fg-light) !important; 181 | opacity: 1.0; 182 | } 183 | 184 | ::-moz-placeholder { 185 | color: _palette(fg-light) !important; 186 | opacity: 1.0; 187 | } 188 | 189 | :-ms-input-placeholder { 190 | color: _palette(fg-light) !important; 191 | opacity: 1.0; 192 | } 193 | 194 | .formerize-placeholder { 195 | color: _palette(fg-light) !important; 196 | opacity: 1.0; 197 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_icon.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Icon */ 8 | 9 | .icon { 10 | @include icon; 11 | border-bottom: none; 12 | position: relative; 13 | 14 | > .label { 15 | display: none; 16 | } 17 | 18 | &.prefix { 19 | } 20 | 21 | &.suffix { 22 | &:before { 23 | float: right; 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_image.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Image */ 8 | 9 | .image { 10 | border: 0; 11 | display: inline-block; 12 | position: relative; 13 | 14 | img { 15 | display: block; 16 | } 17 | 18 | &.left, 19 | &.right { 20 | max-width: 40%; 21 | 22 | img { 23 | width: 100%; 24 | } 25 | } 26 | 27 | &.left { 28 | float: left; 29 | padding: 0 1.5em 1em 0; 30 | top: 0.25em; 31 | } 32 | 33 | &.right { 34 | float: right; 35 | padding: 0 0 1em 1.5em; 36 | top: 0.25em; 37 | } 38 | 39 | &.fit { 40 | display: block; 41 | margin: 0 0 _size(element-margin) 0; 42 | width: 100%; 43 | 44 | img { 45 | width: 100%; 46 | } 47 | } 48 | 49 | &.featured { 50 | display: block; 51 | margin: 0 0 _size(section-spacing) 0; 52 | width: 100%; 53 | 54 | img { 55 | width: 100%; 56 | } 57 | 58 | @include breakpoint(small) { 59 | margin: 0 0 _size(section-spacing-small) 0; 60 | } 61 | } 62 | 63 | &.main { 64 | display: block; 65 | margin: 0 0 (_size(element-margin) * 1.5) 0; 66 | width: 100%; 67 | 68 | img { 69 | width: 100%; 70 | } 71 | } 72 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_mini-post.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Mini Post */ 8 | 9 | .mini-post { 10 | @include vendor('display', 'flex'); 11 | @include vendor('flex-direction', 'column-reverse'); 12 | background: _palette(bg); 13 | border: solid 1px _palette(border); 14 | margin: 0 0 _size(element-margin) 0; 15 | 16 | .image { 17 | overflow: hidden; 18 | width: 100%; 19 | 20 | img { 21 | @include vendor('transition', 'transform #{_duration(transition)} ease-out'); 22 | width: 100%; 23 | } 24 | 25 | &:hover { 26 | img { 27 | @include vendor('transform', 'scale(1.05)'); 28 | } 29 | } 30 | } 31 | 32 | header { 33 | @include padding(1.25em, 1.25em, (0, 3em, 0, 0)); 34 | min-height: 4em; 35 | position: relative; 36 | @include vendor('flex-grow', '1'); 37 | 38 | h3 { 39 | font-size: 0.7em; 40 | } 41 | 42 | .published { 43 | display: block; 44 | font-family: _font(family-heading); 45 | font-size: 0.6em; 46 | font-weight: _font(weight-heading); 47 | letter-spacing: _font(kerning-heading); 48 | margin: -0.625em 0 (_size(element-margin) * 0.85) 0; 49 | text-transform: uppercase; 50 | } 51 | 52 | .author { 53 | position: absolute; 54 | right: 2em; 55 | top: 2em; 56 | } 57 | } 58 | } 59 | 60 | .mini-posts { 61 | margin: 0 0 _size(element-margin) 0; 62 | 63 | @include breakpoint(large) { 64 | @include vendor('display', 'flex'); 65 | @include vendor('flex-wrap', 'wrap'); 66 | width: calc(100% + #{_size(element-margin)}); 67 | 68 | > * { 69 | margin: _size(element-margin) _size(element-margin) 0 0; 70 | width: calc(50% - #{_size(element-margin)}); 71 | } 72 | 73 | > :nth-child(-n + 2) { 74 | margin-top: 0; 75 | } 76 | } 77 | 78 | @include breakpoint(xsmall) { 79 | display: block; 80 | width: 100%; 81 | 82 | > * { 83 | margin: 0 0 _size(element-margin) 0; 84 | width: 100%; 85 | } 86 | } 87 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_section.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Section/Article */ 8 | 9 | section, article { 10 | &.special { 11 | text-align: center; 12 | } 13 | } 14 | 15 | header { 16 | p { 17 | font-family: _font(family-heading); 18 | font-size: 0.7em; 19 | font-weight: _font(weight-heading); 20 | letter-spacing: _font(kerning-heading); 21 | line-height: 2.5; 22 | margin-top: -1em; 23 | text-transform: uppercase; 24 | } 25 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/components/_table.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Table */ 8 | 9 | .table-wrapper { 10 | -webkit-overflow-scrolling: touch; 11 | overflow-x: auto; 12 | } 13 | 14 | table { 15 | margin: 0 0 _size(element-margin) 0; 16 | width: 100%; 17 | 18 | tbody { 19 | tr { 20 | border: solid 1px _palette(border); 21 | border-left: 0; 22 | border-right: 0; 23 | 24 | &:nth-child(2n + 1) { 25 | background-color: _palette(border-bg); 26 | } 27 | } 28 | } 29 | 30 | td { 31 | padding: 0.75em 0.75em; 32 | } 33 | 34 | th { 35 | color: _palette(fg-bold); 36 | font-size: 0.9em; 37 | font-weight: _font(weight-bold); 38 | padding: 0 0.75em 0.75em 0.75em; 39 | text-align: left; 40 | } 41 | 42 | thead { 43 | border-bottom: solid 2px _palette(border); 44 | } 45 | 46 | tfoot { 47 | border-top: solid 2px _palette(border); 48 | } 49 | 50 | &.alt { 51 | border-collapse: separate; 52 | 53 | tbody { 54 | tr { 55 | td { 56 | border: solid 1px _palette(border); 57 | border-left-width: 0; 58 | border-top-width: 0; 59 | 60 | &:first-child { 61 | border-left-width: 1px; 62 | } 63 | } 64 | 65 | &:first-child { 66 | td { 67 | border-top-width: 1px; 68 | } 69 | } 70 | } 71 | } 72 | 73 | thead { 74 | border-bottom: 0; 75 | } 76 | 77 | tfoot { 78 | border-top: 0; 79 | } 80 | } 81 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/ie8.scss: -------------------------------------------------------------------------------- 1 | @import 'libs/vars'; 2 | @import 'libs/functions'; 3 | @import 'libs/mixins'; 4 | @import 'libs/skel'; 5 | 6 | /* 7 | Future Imperfect by HTML5 UP 8 | html5up.net | @n33co 9 | Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 10 | */ 11 | 12 | $palette-border: #dedede; 13 | 14 | /* Button */ 15 | 16 | input[type="submit"], 17 | input[type="reset"], 18 | input[type="button"], 19 | button, 20 | .button { 21 | border: solid 1px $palette-border; 22 | } 23 | 24 | /* Form */ 25 | 26 | input[type="text"], 27 | input[type="password"], 28 | input[type="email"], 29 | input[type="tel"], 30 | select, 31 | textarea { 32 | border: solid 1px $palette-border; 33 | } 34 | 35 | /* Post */ 36 | 37 | .post { 38 | border: solid 1px $palette-border; 39 | 40 | > header { 41 | border-bottom: solid 1px $palette-border; 42 | } 43 | } 44 | 45 | /* Mini Post */ 46 | 47 | .mini-post { 48 | border: solid 1px $palette-border; 49 | } 50 | 51 | /* Header */ 52 | 53 | #header { 54 | border-bottom: solid 1px $palette-border; 55 | 56 | .links { 57 | border-left: solid 1px $palette-border; 58 | } 59 | 60 | .main { 61 | ul { 62 | li { 63 | border-left: solid 1px $palette-border; 64 | } 65 | } 66 | } 67 | } 68 | 69 | /* Sidebar */ 70 | 71 | #sidebar { 72 | > * { 73 | border-top: solid 1px $palette-border; 74 | } 75 | } 76 | 77 | /* Menu */ 78 | 79 | #menu { 80 | border-left: solid 1px $palette-border; 81 | 82 | > * { 83 | border-top: solid 1px $palette-border; 84 | } 85 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/ie9.scss: -------------------------------------------------------------------------------- 1 | @import 'libs/vars'; 2 | @import 'libs/functions'; 3 | @import 'libs/mixins'; 4 | @import 'libs/skel'; 5 | 6 | /* 7 | Future Imperfect by HTML5 UP 8 | html5up.net | @n33co 9 | Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 10 | */ 11 | 12 | /* List */ 13 | 14 | ul { 15 | &.posts { 16 | article { 17 | &:after { 18 | clear: both; 19 | content: ''; 20 | display: block; 21 | } 22 | 23 | .image { 24 | display: table-cell; 25 | vertical-align: top; 26 | } 27 | 28 | header { 29 | display: table-cell; 30 | padding-right: 1em; 31 | vertical-align: top; 32 | } 33 | } 34 | } 35 | } 36 | 37 | /* Author */ 38 | 39 | .author { 40 | .name { 41 | display: inline-block; 42 | vertical-align: middle; 43 | } 44 | 45 | img { 46 | display: inline-block; 47 | vertical-align: middle; 48 | } 49 | } 50 | 51 | /* Post */ 52 | 53 | .post { 54 | &:after { 55 | clear: both; 56 | content: ''; 57 | display: block; 58 | } 59 | 60 | > header { 61 | &:after { 62 | clear: both; 63 | content: ''; 64 | display: block; 65 | } 66 | 67 | .title { 68 | display: table-cell; 69 | vertical-align: top; 70 | width: 65%; 71 | } 72 | 73 | .meta { 74 | display: table-cell; 75 | vertical-align: top; 76 | width: 30%; 77 | } 78 | } 79 | 80 | > footer { 81 | &:after { 82 | clear: both; 83 | content: ''; 84 | display: block; 85 | } 86 | 87 | .actions { 88 | display: inline-block; 89 | } 90 | 91 | .stats { 92 | display: inline-block; 93 | margin-left: 2em; 94 | } 95 | } 96 | } 97 | 98 | /* Mini Post */ 99 | 100 | .mini-post { 101 | .image { 102 | display: block; 103 | } 104 | } 105 | 106 | /* Header */ 107 | 108 | #header { 109 | &:after { 110 | clear: both; 111 | content: ''; 112 | display: block; 113 | } 114 | 115 | h1 { 116 | float: left; 117 | } 118 | 119 | .links { 120 | float: left; 121 | } 122 | 123 | .main { 124 | position: absolute; 125 | right: 0; 126 | top: 0; 127 | } 128 | } 129 | 130 | /* Wrapper */ 131 | 132 | #wrapper { 133 | } 134 | 135 | /* Sidebar */ 136 | 137 | #sidebar { 138 | display: table-cell; 139 | margin-right: 0; 140 | padding-right: _size(section-spacing); 141 | vertical-align: top; 142 | } 143 | 144 | /* Main */ 145 | 146 | #main { 147 | display: table-cell; 148 | vertical-align: top; 149 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_footer.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Footer */ 8 | 9 | #footer { 10 | .icons { 11 | color: _palette(fg-light); 12 | } 13 | 14 | .copyright { 15 | color: _palette(fg-light); 16 | font-family: _font(family-heading); 17 | font-size: 0.5em; 18 | font-weight: _font(weight-heading); 19 | letter-spacing: _font(kerning-heading); 20 | text-transform: uppercase; 21 | } 22 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_header.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Header */ 8 | 9 | body { 10 | padding-top: 3.5em; 11 | } 12 | 13 | #header { 14 | @include vendor('display', 'flex'); 15 | @include vendor('justify-content', 'space-between'); 16 | background-color: _palette(bg); 17 | border-bottom: solid 1px _palette(border); 18 | height: 3.5em; 19 | left: 0; 20 | line-height: 3.5em; 21 | position: fixed; 22 | top: 0; 23 | width: 100%; 24 | z-index: _misc(z-index-base); 25 | 26 | a { 27 | color: inherit; 28 | text-decoration: none; 29 | } 30 | 31 | ul { 32 | list-style: none; 33 | margin: 0; 34 | padding-left: 0; 35 | 36 | li { 37 | display: inline-block; 38 | padding-left: 0; 39 | } 40 | } 41 | 42 | h1 { 43 | height: inherit; 44 | line-height: inherit; 45 | padding: 0 0 0 1.5em; 46 | white-space: nowrap; 47 | 48 | a { 49 | font-size: 0.7em; 50 | } 51 | } 52 | 53 | .links { 54 | @include vendor('flex', '1'); 55 | border-left: solid 1px _palette(border); 56 | height: inherit; 57 | line-height: inherit; 58 | margin-left: 1.5em; 59 | overflow: hidden; 60 | padding-left: 1.5em; 61 | 62 | ul { 63 | li { 64 | border-left: solid 1px _palette(border); 65 | line-height: 1; 66 | margin-left: 1em; 67 | padding-left: 1em; 68 | 69 | &:first-child { 70 | border-left: 0; 71 | margin-left: 0; 72 | padding-left: 0; 73 | } 74 | 75 | a { 76 | border-bottom: 0; 77 | font-family: _font(family-heading); 78 | font-size: 0.7em; 79 | font-weight: _font(weight-heading); 80 | letter-spacing: _font(kerning-heading); 81 | text-transform: uppercase; 82 | } 83 | } 84 | } 85 | } 86 | 87 | .main { 88 | height: inherit; 89 | line-height: inherit; 90 | text-align: right; 91 | 92 | ul { 93 | height: inherit; 94 | line-height: inherit; 95 | 96 | li { 97 | border-left: solid 1px _palette(border); 98 | height: inherit; 99 | line-height: inherit; 100 | white-space: nowrap; 101 | 102 | > * { 103 | display: block; 104 | float: left; 105 | } 106 | 107 | > a { 108 | @include icon; 109 | border-bottom: 0; 110 | color: _palette(fg-light); 111 | overflow: hidden; 112 | position: relative; 113 | text-indent: 4em; 114 | width: 4em; 115 | 116 | &:before { 117 | display: block; 118 | height: inherit; 119 | left: 0; 120 | line-height: inherit; 121 | position: absolute; 122 | text-align: center; 123 | text-indent: 0; 124 | top: 0; 125 | width: inherit; 126 | } 127 | } 128 | } 129 | } 130 | } 131 | 132 | form { 133 | margin: 0; 134 | 135 | input { 136 | display: inline-block; 137 | height: 2.5em; 138 | position: relative; 139 | top: -2px; 140 | vertical-align: middle; 141 | } 142 | } 143 | 144 | #search { 145 | @include vendor('transition', 'all 0.5s ease'); 146 | max-width: 0; 147 | opacity: 0; 148 | overflow: hidden; 149 | padding: 0; 150 | white-space: nowrap; 151 | 152 | input { 153 | width: 12em; 154 | } 155 | 156 | &.visible { 157 | max-width: 12.5em; 158 | opacity: 1; 159 | padding: 0 0.5em 0 0; 160 | } 161 | } 162 | 163 | @include breakpoint(medium) { 164 | .links { 165 | display: none; 166 | } 167 | } 168 | 169 | @include breakpoint(small) { 170 | height: 2.75em; 171 | line-height: 2.75em; 172 | 173 | h1 { 174 | padding: 0 0 0 1em; 175 | } 176 | 177 | .main { 178 | .search { 179 | display: none; 180 | } 181 | } 182 | } 183 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_intro.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Intro */ 8 | 9 | #intro { 10 | .logo { 11 | border-bottom: 0; 12 | display: inline-block; 13 | margin: 0 0 (_size(element-margin) * 0.5) 0; 14 | overflow: hidden; 15 | position: relative; 16 | width: 4em; 17 | 18 | &:before { 19 | background-image: svg-url(''); 20 | background-position: top left; 21 | background-repeat: no-repeat; 22 | background-size: 100% 100%; 23 | content: ''; 24 | display: block; 25 | height: 100%; 26 | left: 0; 27 | position: absolute; 28 | top: 0; 29 | width: 100%; 30 | } 31 | 32 | img { 33 | display: block; 34 | margin-left: -0.25em; 35 | width: 4.5em; 36 | } 37 | } 38 | 39 | header { 40 | h2 { 41 | font-size: 2em; 42 | font-weight: _font(weight-heading-extrabold); 43 | } 44 | 45 | p { 46 | font-size: 0.8em; 47 | } 48 | } 49 | 50 | @include breakpoint(large) { 51 | margin: 0 0 _size(section-spacing) 0; 52 | text-align: center; 53 | 54 | header { 55 | h2 { 56 | font-size: 2em; 57 | } 58 | 59 | p { 60 | font-size: 0.7em; 61 | } 62 | } 63 | } 64 | 65 | @include breakpoint(small) { 66 | margin: 0 0 _size(section-spacing-small) 0; 67 | padding: 1.25em 0; 68 | 69 | > :last-child { 70 | margin-bottom: 0; 71 | } 72 | 73 | .logo { 74 | margin: 0 0 (_size(element-margin) * 0.25) 0; 75 | } 76 | 77 | header { 78 | h2 { 79 | font-size: 1.25em; 80 | } 81 | 82 | > :last-child { 83 | margin-bottom: 0; 84 | } 85 | } 86 | } 87 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_main.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Main */ 8 | 9 | #main { 10 | @include vendor('flex-grow', '1'); 11 | -ms-flex: 1; 12 | width: 100%; 13 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_menu.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Menu */ 8 | 9 | #menu { 10 | @include vendor('transform', 'translateX(#{_size(menu)})'); 11 | @include vendor('transition', ( 12 | 'transform #{_duration(menu)} ease', 13 | 'visibility #{_duration(menu)}' 14 | )); 15 | -webkit-overflow-scrolling: touch; 16 | background: _palette(bg); 17 | border-left: solid 1px _palette(border); 18 | box-shadow: none; 19 | height: 100%; 20 | max-width: 80%; 21 | overflow-y: auto; 22 | position: fixed; 23 | right: 0; 24 | top: 0; 25 | visibility: hidden; 26 | width: _size(menu); 27 | z-index: _misc(z-index-base) + 2; 28 | 29 | > * { 30 | border-top: solid 1px _palette(border); 31 | padding: _size(section-spacing); 32 | 33 | > :last-child { 34 | margin-bottom: 0; 35 | } 36 | } 37 | 38 | > :first-child { 39 | border-top: 0; 40 | } 41 | 42 | .links { 43 | list-style: none; 44 | padding: 0; 45 | 46 | > li { 47 | border: 0; 48 | border-top: dotted 1px _palette(border); 49 | margin: 1.5em 0 0 0; 50 | padding: 1.5em 0 0 0; 51 | 52 | a { 53 | display: block; 54 | border-bottom: 0; 55 | 56 | h3 { 57 | @include vendor('transition', 'color #{_duration(transition)} ease'); 58 | font-size: 0.7em; 59 | } 60 | 61 | p { 62 | font-family: _font(family-heading); 63 | font-size: 0.6em; 64 | font-weight: _font(weight-heading); 65 | letter-spacing: _font(kerning-heading); 66 | letter-spacing: _size(letter-spacing-alt); 67 | margin-bottom: 0; 68 | text-decoration: none; 69 | text-transform: uppercase; 70 | } 71 | 72 | &:hover { 73 | h3 { 74 | color: _palette(accent); 75 | } 76 | } 77 | } 78 | 79 | &:first-child { 80 | border-top: 0; 81 | margin-top: 0; 82 | padding-top: 0; 83 | } 84 | } 85 | } 86 | 87 | body.is-menu-visible & { 88 | @include vendor('transform', 'translateX(0)'); 89 | visibility: visible; 90 | } 91 | 92 | @include breakpoint(small) { 93 | > * { 94 | padding: _size(section-spacing-small); 95 | } 96 | } 97 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_sidebar.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Sidebar */ 8 | 9 | #sidebar { 10 | margin-right: _size(section-spacing); 11 | min-width: 22em; 12 | width: 22em; 13 | 14 | > * { 15 | border-top: solid 1px _palette(border); 16 | margin: _size(section-spacing) 0 0 0; 17 | padding: _size(section-spacing) 0 0 0; 18 | } 19 | 20 | > :first-child { 21 | border-top: 0; 22 | margin-top: 0; 23 | padding-top: 0; 24 | } 25 | 26 | @include breakpoint(large) { 27 | border-top: solid 1px _palette(border); 28 | margin: _size(section-spacing) 0 0 0; 29 | min-width: 0; 30 | padding: _size(section-spacing) 0 0 0; 31 | width: 100%; 32 | } 33 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/layout/_wrapper.scss: -------------------------------------------------------------------------------- 1 | /// 2 | /// Future Imperfect by HTML5 UP 3 | /// html5up.net | @n33co 4 | /// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 5 | /// 6 | 7 | /* Wrapper */ 8 | 9 | #wrapper { 10 | @include vendor('display', 'flex'); 11 | @include vendor('flex-direction', 'row-reverse'); 12 | @include vendor('transition', 'opacity #{_duration(menu)} ease'); 13 | margin: 0 auto; 14 | max-width: 100%; 15 | opacity: 1; 16 | padding: (_size(section-spacing) * 1.5); 17 | width: 90em; 18 | 19 | body.is-menu-visible & { 20 | opacity: 0.15; 21 | } 22 | 23 | @include breakpoint(xlarge) { 24 | padding: _size(section-spacing); 25 | } 26 | 27 | @include breakpoint(large) { 28 | display: block; 29 | } 30 | 31 | @include breakpoint(small) { 32 | padding: _size(section-spacing-small); 33 | } 34 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/libs/_functions.scss: -------------------------------------------------------------------------------- 1 | /// Gets a duration value. 2 | /// @param {string} $keys Key(s). 3 | /// @return {string} Value. 4 | @function _duration($keys...) { 5 | @return val($duration, $keys...); 6 | } 7 | 8 | /// Gets a font value. 9 | /// @param {string} $keys Key(s). 10 | /// @return {string} Value. 11 | @function _font($keys...) { 12 | @return val($font, $keys...); 13 | } 14 | 15 | /// Gets a misc value. 16 | /// @param {string} $keys Key(s). 17 | /// @return {string} Value. 18 | @function _misc($keys...) { 19 | @return val($misc, $keys...); 20 | } 21 | 22 | /// Gets a palette value. 23 | /// @param {string} $keys Key(s). 24 | /// @return {string} Value. 25 | @function _palette($keys...) { 26 | @return val($palette, $keys...); 27 | } 28 | 29 | /// Gets a size value. 30 | /// @param {string} $keys Key(s). 31 | /// @return {string} Value. 32 | @function _size($keys...) { 33 | @return val($size, $keys...); 34 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/libs/_mixins.scss: -------------------------------------------------------------------------------- 1 | /// Makes an element's :before pseudoelement a FontAwesome icon. 2 | /// @param {string} $content Optional content value to use. 3 | /// @param {string} $where Optional pseudoelement to target (before or after). 4 | @mixin icon($content: false, $where: before) { 5 | 6 | text-decoration: none; 7 | 8 | &:#{$where} { 9 | 10 | @if $content { 11 | content: $content; 12 | } 13 | 14 | -moz-osx-font-smoothing: grayscale; 15 | -webkit-font-smoothing: antialiased; 16 | font-family: FontAwesome; 17 | font-style: normal; 18 | font-weight: normal; 19 | text-transform: none !important; 20 | 21 | } 22 | 23 | } 24 | 25 | /// Applies padding to an element, taking the current element-margin value into account. 26 | /// @param {mixed} $tb Top/bottom padding. 27 | /// @param {mixed} $lr Left/right padding. 28 | /// @param {list} $pad Optional extra padding (in the following order top, right, bottom, left) 29 | /// @param {bool} $important If true, adds !important. 30 | @mixin padding($tb, $lr, $pad: (0,0,0,0), $important: null) { 31 | 32 | @if $important { 33 | $important: '!important'; 34 | } 35 | 36 | padding: ($tb + nth($pad,1)) ($lr + nth($pad,2)) max(0.1em, $tb - _size(element-margin) + nth($pad,3)) ($lr + nth($pad,4)) #{$important}; 37 | 38 | } 39 | 40 | /// Encodes a SVG data URL so IE doesn't choke (via codepen.io/jakob-e/pen/YXXBrp). 41 | /// @param {string} $svg SVG data URL. 42 | /// @return {string} Encoded SVG data URL. 43 | @function svg-url($svg) { 44 | 45 | $svg: str-replace($svg, '"', '\''); 46 | $svg: str-replace($svg, '<', '%3C'); 47 | $svg: str-replace($svg, '>', '%3E'); 48 | $svg: str-replace($svg, '&', '%26'); 49 | $svg: str-replace($svg, '#', '%23'); 50 | 51 | @return url("data:image/svg+xml;charset=utf8,#{$svg}"); 52 | 53 | } -------------------------------------------------------------------------------- /WebContent/assets/sass/libs/_vars.scss: -------------------------------------------------------------------------------- 1 | // Misc. 2 | $misc: ( 3 | z-index-base: 10000 4 | ); 5 | 6 | // Duration. 7 | $duration: ( 8 | menu: 0.5s, 9 | transition: 0.2s 10 | ); 11 | 12 | // Size. 13 | $size: ( 14 | element-height: 2.75em, 15 | element-margin: 2em, 16 | section-spacing: 3em, 17 | section-spacing-small: 1.5em, 18 | menu: 25em 19 | ); 20 | 21 | // Font. 22 | $font: ( 23 | family: ('Source Sans Pro', Helvetica, sans-serif), 24 | family-fixed: ('Courier New', monospace), 25 | family-heading: ('Raleway', Helvetica, sans-serif), 26 | weight: 400, 27 | weight-bold: 700, 28 | weight-heading: 400, 29 | weight-heading-bold: 800, 30 | weight-heading-extrabold: 900, 31 | kerning-heading: 0.25em 32 | ); 33 | 34 | // Palette. 35 | $palette: ( 36 | bg: #ffffff, 37 | bg-alt: #f4f4f4, 38 | fg: #646464, 39 | fg-bold: #3c3b3b, 40 | fg-light: #aaaaaa, 41 | border: rgba(160,160,160,0.3), 42 | border-bg: rgba(160,160,160,0.075), 43 | border-alt: rgba(160,160,160,0.65), 44 | accent: #2ebaae 45 | ); -------------------------------------------------------------------------------- /WebContent/assets/sass/main.scss: -------------------------------------------------------------------------------- 1 | @import 'libs/vars'; 2 | @import 'libs/functions'; 3 | @import 'libs/mixins'; 4 | @import 'libs/skel'; 5 | @import 'font-awesome.min.css'; 6 | @import url('http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700|Raleway:400,800,900'); 7 | 8 | /* 9 | Future Imperfect by HTML5 UP 10 | html5up.net | @n33co 11 | Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) 12 | */ 13 | 14 | @include skel-breakpoints(( 15 | xlarge: '(max-width: 1680px)', 16 | large: '(max-width: 1280px)', 17 | medium: '(max-width: 980px)', 18 | small: '(max-width: 736px)', 19 | xsmall: '(max-width: 480px)' 20 | )); 21 | 22 | @include skel-layout(( 23 | reset: 'full', 24 | boxModel: 'border', 25 | grid: ( gutters: 1em ) 26 | )); 27 | 28 | // Base. 29 | 30 | @import 'base/page'; 31 | @import 'base/typography'; 32 | 33 | // Component. 34 | 35 | @import 'components/author'; 36 | @import 'components/blurb'; 37 | @import 'components/box'; 38 | @import 'components/button'; 39 | @import 'components/form'; 40 | @import 'components/icon'; 41 | @import 'components/image'; 42 | @import 'components/list'; 43 | @import 'components/mini-post'; 44 | @import 'components/post'; 45 | @import 'components/section'; 46 | @import 'components/table'; 47 | 48 | // Layout. 49 | 50 | @import 'layout/header'; 51 | @import 'layout/wrapper'; 52 | @import 'layout/main'; 53 | @import 'layout/sidebar'; 54 | @import 'layout/intro'; 55 | @import 'layout/footer'; 56 | @import 'layout/menu'; -------------------------------------------------------------------------------- /WebContent/bootstrap/bootstrapDatepickr-1.0.0.css: -------------------------------------------------------------------------------- 1 | .bootstrapDatepickr-cal{ 2 | z-index: 1000; 3 | position:absolute; 4 | width: 100%; 5 | } 6 | 7 | .bootstrapDatepickr-today{ 8 | background-color: #f0ad4e; 9 | border-color: #eea236; 10 | color: #fff; 11 | cursor: pointer; 12 | } 13 | 14 | .bootstrapDatepickr-day{ 15 | cursor: pointer; 16 | } 17 | 18 | .bootstrapDatepickr-days{ 19 | font-weight: 700; 20 | } 21 | 22 | .bootstrapDatepickr-next-month, .bootstrapDatepickr-prev-month{ 23 | cursor: pointer; 24 | } 25 | 26 | .bootstrapDatepickr-selected_date{ 27 | color: #fff; 28 | background-color: #337ab7; 29 | border-color: #2e6da4; 30 | } 31 | 32 | .bootstrapDatepickr-next-month:hover, .bootstrapDatepickr-prev-month:hover, .bootstrapDatepickr-day:hover{ 33 | background-color: #f5f5f5; 34 | } 35 | 36 | .bootstrapDatepickr-hidden{ 37 | display: none; 38 | } 39 | 40 | #bootstrapDatepickr-table{ 41 | background-color: #fff; 42 | text-align: center; 43 | } 44 | 45 | .bootstrapDatepickr-header th{ 46 | text-align: center; 47 | font-weight: 700; 48 | } -------------------------------------------------------------------------------- /WebContent/bootstrap/common.js: -------------------------------------------------------------------------------- 1 | function dateToString(date){ 2 | // 年月日 3 | var month = date.getMonth() + 1; 4 | var createtime = date.getFullYear(); 5 | if (parseInt(month) < 10) { 6 | createtime += "-0"+month; 7 | } else { 8 | createtime += "-"+month; 9 | } 10 | if (parseInt(date.getDate()) < 10) { 11 | createtime += "-0"+date.getDate(); 12 | } else { 13 | createtime += "-"+date.getDate(); 14 | } 15 | 16 | // 时分秒 17 | createtime +=" "; 18 | if (parseInt(date.getHours()) < 10) { 19 | createtime += "0"+date.getHours(); 20 | } else { 21 | createtime += ""+date.getHours(); 22 | } 23 | if (parseInt(date.getMinutes()) < 10) { 24 | createtime += ":0"+date.getMinutes(); 25 | } else { 26 | createtime += ":"+date.getMinutes(); 27 | } 28 | if (parseInt(date.getSeconds()) < 10) { 29 | createtime += ":0"+date.getSeconds(); 30 | } else { 31 | createtime += ":"+date.getSeconds(); 32 | } 33 | return createtime; 34 | } 35 | 36 | function dateToString_YMD(date){ 37 | // 年月日 38 | var month = date.getMonth() + 1; 39 | var createtime = date.getFullYear(); 40 | if (parseInt(month) < 10) { 41 | createtime += "-0"+month; 42 | } else { 43 | createtime += "-"+month; 44 | } 45 | if (parseInt(date.getDate()) < 10) { 46 | createtime += "-0"+date.getDate(); 47 | } else { 48 | createtime += "-"+date.getDate(); 49 | } 50 | return createtime; 51 | } -------------------------------------------------------------------------------- /WebContent/bootstrap/mine.css: -------------------------------------------------------------------------------- 1 | /*body { 2 | margin: 0; 3 | padding: 0; 4 | font-family:"Microsoft YaHei", "微软雅黑", "consolas"; 5 | } */ 6 | /*a { 7 | text-decoration: none; 8 | color: #000; 9 | } */ 10 | 11 | .clearfix { 12 | *zoom: 1; 13 | } 14 | .clearfix:before, .clearfix:after { 15 | display: table; 16 | line-height: 0; 17 | content: ""; 18 | } 19 | .clearfix:after { 20 | clear: both; 21 | } 22 | 23 | .navbar { 24 | background: url(../images/index/header_shadow.png) no-repeat left top; 25 | background-size: 100% 54px; 26 | } 27 | .container { 28 | width: 1000px; 29 | margin: 0 auto; 30 | } 31 | .navbar .navbar-content a { 32 | color: #FFF; 33 | line-height: 54px; 34 | display: inline-block; 35 | width: 100px; 36 | text-align: center; 37 | } 38 | .navbar .navbar-content a:hover { 39 | color: #CCC; 40 | } 41 | 42 | .index-bg { 43 | width: 180%; 44 | /* height: 100%; */ 45 | background-size: 100%; 46 | height: 180%; 47 | overflow: hidden; 48 | position: absolute; 49 | top: -50px; 50 | z-index: -10; 51 | } 52 | 53 | .news-list { 54 | margin: 50px 0; 55 | background-color: #FFF; 56 | border-radius: 5px; 57 | border: 1px solid #DDD; 58 | padding: 30px 20px; 59 | 60 | min-height: 300px; 61 | } 62 | .news-list:hover { 63 | box-shadow: 0 0 5px 3px #CCC; 64 | } 65 | 66 | .about .about-des { 67 | border-left: 5px solid #CCC; 68 | margin-top: 15px; 69 | } 70 | 71 | .about .about-des p { 72 | padding-left: 10px; 73 | line-height: 28px; 74 | text-indent: 2em; 75 | } 76 | 77 | .news-list-left { 78 | float: left; 79 | width: 960px; 80 | margin-bottom: 50px; 81 | } 82 | /* /* /* 83 | .news-list-right { 84 | top:5px; 85 | float: right; 86 | width: 229px; 87 | } 88 | */ 89 | .news-list-item { 90 | padding: 20px 30px; 91 | } 92 | 93 | .author-time { 94 | font-size: 18px; 95 | 96 | } 97 | .author-time2 { 98 | font-size: 18px; 99 | text-align: center; 100 | } 101 | .news-des { 102 | padding-bottom: 20px; 103 | border-bottom: 2px solid #CCC; 104 | } 105 | .news-des2 { 106 | padding-bottom: 20px; 107 | /* border-bottom: 2px solid #CCC;*/ 108 | } 109 | .news-title { 110 | font-size: 23px; 111 | } 112 | 113 | .news-title i { 114 | display: inline-block; 115 | width: 47px; 116 | height: 43px; 117 | margin-right: 10px; 118 | background: url('../images/index/news-icon.png') left center no-repeat; 119 | vertical-align: middle; 120 | } 121 | .news-title a { 122 | color: green; 123 | } 124 | .news-title a:hover { 125 | text-decoration: underline; 126 | } 127 | .news-content-des { 128 | line-height: 28px; 129 | overflow: hidden; 130 | text-overflow: ellipsis; 131 | white-space: nowrap; 132 | 133 | } 134 | .content-single-article{ 135 | line-height: 58px; 136 | font-size: 24px; 137 | text-indent: 2em; 138 | } 139 | 140 | .copyright { 141 | clear: both; 142 | text-align: center; 143 | color: gray; 144 | border-top: 2px solid #CCC; 145 | margin-top: 50px; 146 | padding: 20px 0; 147 | } 148 | -------------------------------------------------------------------------------- /WebContent/css/bootstrapDatepickr-1.0.0.min.css: -------------------------------------------------------------------------------- 1 | .bootstrapDatepickr-day,.bootstrapDatepickr-next-month,.bootstrapDatepickr-prev-month{cursor:pointer}.bootstrapDatepickr-cal{z-index:1000;position:absolute;width:100%}.bootstrapDatepickr-today{background-color:#f0ad4e;border-color:#eea236;color:#fff;cursor:pointer}.bootstrapDatepickr-days{font-weight:700}.bootstrapDatepickr-selected_date{color:#fff;background-color:#337ab7;border-color:#2e6da4}.bootstrapDatepickr-day:hover,.bootstrapDatepickr-next-month:hover,.bootstrapDatepickr-prev-month:hover{background-color:#f5f5f5}.bootstrapDatepickr-hidden{display:none}#bootstrapDatepickr-table{background-color:#fff;text-align:center}.bootstrapDatepickr-header th{text-align:center;font-weight:700} -------------------------------------------------------------------------------- /WebContent/css/dcalendar.picker.css: -------------------------------------------------------------------------------- 1 | /*!Don't remove this! 2 | * jQuery DCalendar and DCalendar Picker plugin styles 3 | * 4 | * Author: Dionlee Uy 5 | * Email: dionleeuy@gmail.com 6 | * 7 | * Date: Mon Mar 2 2013 8 | */ 9 | .calendar { 10 | position: relative; 11 | font-family: 'Century Gothic','Segoe UI', Calibri, Arial; 12 | font-size: 12px; 13 | border-collapse: collapse; 14 | margin: 0; padding: 0; 15 | z-index: 4; 16 | border:1px solid rgba(0,0,0,0.08); 17 | width: 250px; 18 | color: #000; 19 | text-align: center; 20 | background-color: #FFF; 21 | } 22 | .calendar th, 23 | .calendar td { 24 | text-align: center; 25 | -webki-ttransition: all 0.3s ease; 26 | -moz-transition: all 0.3s ease; 27 | transition: all 0.3s ease; 28 | } 29 | .calendar th:first-child, 30 | .calendar td:first-child { 31 | margin-left: 5px; 32 | } 33 | .calendar span { 34 | padding: 6px 4px; 35 | display: block; 36 | } 37 | .calendar .month { 38 | padding: 15px; 39 | } 40 | 41 | .calendar .pMDate, .calendar .nMDate { color: #AAA; } 42 | .calendar .date, .calendar .pMDate, .calendar .nMDate, .calendar .month { cursor: pointer; } 43 | .calendar .date.disabled, .calendar .pMDate.disabled, .calendar .nMDate.disabled { cursor: not-allowed; } 44 | .calendar .date:not(.disabled):hover, .calendar .pMDate:not(.disabled):hover, .calendar .nMDate:not(.disabled):hover, .calendar .month:hover { background-color: #E2E2E2; } 45 | .calendar .date:not(.disabled):active, .calendar .pMDate:not(.disabled):active, .calendar .nMDate:not(.disabled):active, .calendar .month:active { background-color: #22A7F0; color: #FFF; } 46 | .calendar .selected { 47 | background-color: #22A7F0 !important; 48 | color: #FFF !important; 49 | } 50 | 51 | .calendar tr:first-child th { 52 | background-color: #FFF; 53 | padding: 4px; 54 | padding-top: 8px; 55 | font-size: 14px; 56 | } 57 | .calendar tr:first-child th { cursor: pointer; color:#000; } 58 | .calendar tr:first-child th:hover { color:#22A7F0; } 59 | .calendar tr:first-child th:active { color: #22A7F0; } 60 | .calendar thead tr:nth-child(2) th { color: #555; padding: 8px 3px; } 61 | .calendar #prev, .calendar #next { 62 | font-family: 'Times New Roman'; 63 | font-size: 20px; 64 | padding: 0; 65 | } 66 | .calendar #today { 67 | text-align: center; cursor: pointer; 68 | color: #22A7F0; padding: 10px 6px; 69 | } 70 | .calendar #today:hover { color: #80A7DD; } 71 | .calendar #today:active { color: #000; } 72 | .calendar #currDay { color:#22A7F0; } 73 | .datepicker { 74 | background: url('./icon.png') transparent right no-repeat; 75 | background-size: contain; 76 | } -------------------------------------------------------------------------------- /WebContent/css/mine.css: -------------------------------------------------------------------------------- 1 | /*body { 2 | margin: 0; 3 | padding: 0; 4 | font-family:"Microsoft YaHei", "微软雅黑", "consolas"; 5 | } */ 6 | /*a { 7 | text-decoration: none; 8 | color: #000; 9 | } */ 10 | 11 | .clearfix { 12 | *zoom: 1; 13 | } 14 | .clearfix:before, .clearfix:after { 15 | display: table; 16 | line-height: 0; 17 | content: ""; 18 | } 19 | .clearfix:after { 20 | clear: both; 21 | } 22 | 23 | .navbar { 24 | background: url(../images/index/header_shadow.png) no-repeat left top; 25 | background-size: 100% 54px; 26 | } 27 | .container { 28 | width: 1000px; 29 | margin: 0 auto; 30 | } 31 | .navbar .navbar-content a { 32 | color: #FFF; 33 | line-height: 54px; 34 | display: inline-block; 35 | width: 100px; 36 | text-align: center; 37 | } 38 | .navbar .navbar-content a:hover { 39 | color: #CCC; 40 | } 41 | 42 | .index-bg { 43 | width: 180%; 44 | /* height: 100%; */ 45 | background-size: 100%; 46 | height: 180%; 47 | overflow: hidden; 48 | position: absolute; 49 | top: -50px; 50 | z-index: -10; 51 | } 52 | 53 | .news-list { 54 | margin: 50px 0; 55 | background-color: #FFF; 56 | border-radius: 5px; 57 | border: 1px solid #DDD; 58 | padding: 30px 20px; 59 | 60 | min-height: 300px; 61 | } 62 | .news-list:hover { 63 | box-shadow: 0 0 5px 3px #CCC; 64 | } 65 | 66 | .about .about-des { 67 | border-left: 5px solid #CCC; 68 | margin-top: 15px; 69 | } 70 | 71 | .about .about-des p { 72 | padding-left: 10px; 73 | line-height: 28px; 74 | text-indent: 2em; 75 | } 76 | 77 | .news-list-left { 78 | float: left; 79 | width: 960px; 80 | margin-bottom: 50px; 81 | } 82 | /* /* /* 83 | .news-list-right { 84 | top:5px; 85 | float: right; 86 | width: 229px; 87 | } 88 | */ 89 | .news-list-item { 90 | padding: 20px 30px; 91 | } 92 | 93 | .author-time { 94 | font-size: 18px; 95 | 96 | } 97 | .author-time2 { 98 | font-size: 18px; 99 | text-align: center; 100 | } 101 | .news-des { 102 | padding-bottom: 20px; 103 | border-bottom: 2px solid #CCC; 104 | } 105 | .news-des2 { 106 | padding-bottom: 20px; 107 | /* border-bottom: 2px solid #CCC;*/ 108 | } 109 | .news-title { 110 | font-size: 23px; 111 | } 112 | 113 | .news-title i { 114 | display: inline-block; 115 | width: 47px; 116 | height: 43px; 117 | margin-right: 10px; 118 | background: url('../images/index/news-icon.png') left center no-repeat; 119 | vertical-align: middle; 120 | } 121 | .news-title a { 122 | color: green; 123 | } 124 | .news-title a:hover { 125 | text-decoration: underline; 126 | } 127 | .news-content-des { 128 | line-height: 28px; 129 | overflow: hidden; 130 | text-overflow: ellipsis; 131 | white-space: nowrap; 132 | 133 | } 134 | .content-single-article{ 135 | line-height: 58px; 136 | font-size: 24px; 137 | text-indent: 2em; 138 | } 139 | 140 | .copyright { 141 | clear: both; 142 | text-align: center; 143 | color: gray; 144 | border-top: 2px solid #CCC; 145 | margin-top: 50px; 146 | padding: 20px 0; 147 | } 148 | -------------------------------------------------------------------------------- /WebContent/css/style.css: -------------------------------------------------------------------------------- 1 | *{ 2 | margin: 0px; 3 | padding: 0px; 4 | } 5 | 6 | ul{ 7 | list-style: none; 8 | } 9 | 10 | body{ 11 | background: #d9d7cb; 12 | font-size: 12px; 13 | } 14 | 15 | #top,#vi,#nav,#main,#bt{ 16 | width: 779px; 17 | margin: 0px auto; 18 | } 19 | 20 | #top,#bt{ 21 | background: #000; 22 | } 23 | 24 | #top{ 25 | height: 18px; 26 | padding-top:5px ; 27 | text-align:right; 28 | color: #fff; 29 | } 30 | 31 | #top_txt{ 32 | margin-right:5px; 33 | } 34 | 35 | #vi{ 36 | height: 85px; 37 | background: #98a363; 38 | } 39 | #tt{ 40 | margin-left:120px; 41 | padding-top: 20px; 42 | text-indent: -40px; 43 | line-height: 14px; 44 | font-size: 16px; 45 | font-weight: bold; 46 | } 47 | 48 | #nav{ 49 | height: 35px; 50 | background: #e6e4db; 51 | } 52 | 53 | #nav ul{ 54 | margin-left:30px ; 55 | } 56 | #nav ul li{ 57 | float:left; 58 | } 59 | 60 | #nav ul a{display:block; 61 | width:85px; 62 | padding-top: 10px; 63 | text-decoration: none; 64 | letter-spacing:15px; 65 | text-align:center; 66 | color:#000; 67 | font-size:15px; 68 | font-weight:bold; 69 | } 70 | #nav ul a:visited{color:#000;} 71 | #nav ul a:hover{color:#98a363; 72 | background: #fff; 73 | } 74 | #nav ul li.bar{width: 6px; 75 | padding-top: 12px; 76 | } 77 | #main{ 78 | height: 560px; 79 | background: #fff; 80 | } 81 | #bt{height:46px; 82 | padding-top: 34px; 83 | text-align: center; 84 | color: #fff; 85 | } 86 | -------------------------------------------------------------------------------- /WebContent/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /WebContent/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /WebContent/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /WebContent/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /WebContent/images/007.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/007.jpg -------------------------------------------------------------------------------- /WebContent/images/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/1.jpg -------------------------------------------------------------------------------- /WebContent/images/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/2.jpg -------------------------------------------------------------------------------- /WebContent/images/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/3.jpg -------------------------------------------------------------------------------- /WebContent/images/advice1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/advice1.jpg -------------------------------------------------------------------------------- /WebContent/images/advice2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/advice2.png -------------------------------------------------------------------------------- /WebContent/images/ajax.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/ajax.jpg -------------------------------------------------------------------------------- /WebContent/images/android.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/android.jpg -------------------------------------------------------------------------------- /WebContent/images/avatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/avatar.jpg -------------------------------------------------------------------------------- /WebContent/images/basic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/basic.jpg -------------------------------------------------------------------------------- /WebContent/images/bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bg.jpg -------------------------------------------------------------------------------- /WebContent/images/bg1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bg1.png -------------------------------------------------------------------------------- /WebContent/images/bgbg1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgbg1.jpg -------------------------------------------------------------------------------- /WebContent/images/bgbg11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgbg11.jpg -------------------------------------------------------------------------------- /WebContent/images/bgbg2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgbg2.jpg -------------------------------------------------------------------------------- /WebContent/images/bgbg3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgbg3.jpg -------------------------------------------------------------------------------- /WebContent/images/bgq4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgq4.jpg -------------------------------------------------------------------------------- /WebContent/images/bgq5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgq5.jpg -------------------------------------------------------------------------------- /WebContent/images/bgq8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgq8.jpg -------------------------------------------------------------------------------- /WebContent/images/bgq9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgq9.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr1.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr2.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr3.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr4.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr5.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr8.jpg -------------------------------------------------------------------------------- /WebContent/images/bgr9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgr9.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt1.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt2.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt3.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt4.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt5.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt6.jpg -------------------------------------------------------------------------------- /WebContent/images/bgt7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgt7.jpg -------------------------------------------------------------------------------- /WebContent/images/bgy1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/bgy1.jpg -------------------------------------------------------------------------------- /WebContent/images/c1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c1.jpg -------------------------------------------------------------------------------- /WebContent/images/c2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c2.jpg -------------------------------------------------------------------------------- /WebContent/images/c3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c3.jpg -------------------------------------------------------------------------------- /WebContent/images/c4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c4.jpg -------------------------------------------------------------------------------- /WebContent/images/c5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c5.jpg -------------------------------------------------------------------------------- /WebContent/images/c6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/c6.jpg -------------------------------------------------------------------------------- /WebContent/images/coffee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/coffee.jpg -------------------------------------------------------------------------------- /WebContent/images/ee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/ee.jpg -------------------------------------------------------------------------------- /WebContent/images/fkjava.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/fkjava.jpg -------------------------------------------------------------------------------- /WebContent/images/framework.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/framework.jpg -------------------------------------------------------------------------------- /WebContent/images/g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/g.png -------------------------------------------------------------------------------- /WebContent/images/head.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/head.jpg -------------------------------------------------------------------------------- /WebContent/images/java.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/java.jpg -------------------------------------------------------------------------------- /WebContent/images/javaee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/javaee.jpg -------------------------------------------------------------------------------- /WebContent/images/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/logo.jpg -------------------------------------------------------------------------------- /WebContent/images/logo5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/logo5.png -------------------------------------------------------------------------------- /WebContent/images/news.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/news.jpg -------------------------------------------------------------------------------- /WebContent/images/pic01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic01.jpg -------------------------------------------------------------------------------- /WebContent/images/pic011.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic011.jpg -------------------------------------------------------------------------------- /WebContent/images/pic02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic02.jpg -------------------------------------------------------------------------------- /WebContent/images/pic021.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic021.jpg -------------------------------------------------------------------------------- /WebContent/images/pic03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic03.jpg -------------------------------------------------------------------------------- /WebContent/images/pic031.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic031.jpg -------------------------------------------------------------------------------- /WebContent/images/pic04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic04.jpg -------------------------------------------------------------------------------- /WebContent/images/pic05.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic05.jpg -------------------------------------------------------------------------------- /WebContent/images/pic06.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic06.jpg -------------------------------------------------------------------------------- /WebContent/images/pic07.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic07.jpg -------------------------------------------------------------------------------- /WebContent/images/pic08.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic08.jpg -------------------------------------------------------------------------------- /WebContent/images/pic09.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic09.jpg -------------------------------------------------------------------------------- /WebContent/images/pic10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic10.jpg -------------------------------------------------------------------------------- /WebContent/images/pic11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic11.jpg -------------------------------------------------------------------------------- /WebContent/images/pic12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic12.jpg -------------------------------------------------------------------------------- /WebContent/images/pic20.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic20.jpg -------------------------------------------------------------------------------- /WebContent/images/pic3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic3.png -------------------------------------------------------------------------------- /WebContent/images/pic4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/pic4.jpg -------------------------------------------------------------------------------- /WebContent/images/repair1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/repair1.jpg -------------------------------------------------------------------------------- /WebContent/images/repair2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/repair2.png -------------------------------------------------------------------------------- /WebContent/images/struts.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/struts.jpg -------------------------------------------------------------------------------- /WebContent/images/timg-22.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-22.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-26.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-26.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-27.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-27.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-28.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-28.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-29.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-29.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-3.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-3.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-5.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-5.jpeg -------------------------------------------------------------------------------- /WebContent/images/timg-6.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/timg-6.jpeg -------------------------------------------------------------------------------- /WebContent/images/xml.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/guomzh/mlpms/7862dad968254419f3fb44e72e92b551cfcc0b26/WebContent/images/xml.jpg -------------------------------------------------------------------------------- /WebContent/js/common.js: -------------------------------------------------------------------------------- 1 | function dateToString(date){ 2 | // 年月日 3 | var month = date.getMonth() + 1; 4 | var createtime = date.getFullYear(); 5 | if (parseInt(month) < 10) { 6 | createtime += "-0"+month; 7 | } else { 8 | createtime += "-"+month; 9 | } 10 | if (parseInt(date.getDate()) < 10) { 11 | createtime += "-0"+date.getDate(); 12 | } else { 13 | createtime += "-"+date.getDate(); 14 | } 15 | 16 | // 时分秒 17 | createtime +=" "; 18 | if (parseInt(date.getHours()) < 10) { 19 | createtime += "0"+date.getHours(); 20 | } else { 21 | createtime += ""+date.getHours(); 22 | } 23 | if (parseInt(date.getMinutes()) < 10) { 24 | createtime += ":0"+date.getMinutes(); 25 | } else { 26 | createtime += ":"+date.getMinutes(); 27 | } 28 | if (parseInt(date.getSeconds()) < 10) { 29 | createtime += ":0"+date.getSeconds(); 30 | } else { 31 | createtime += ":"+date.getSeconds(); 32 | } 33 | return createtime; 34 | } 35 | 36 | function dateToString_YMD(date){ 37 | // 年月日 38 | var month = date.getMonth() + 1; 39 | var createtime = date.getFullYear(); 40 | if (parseInt(month) < 10) { 41 | createtime += "-0"+month; 42 | } else { 43 | createtime += "-"+month; 44 | } 45 | if (parseInt(date.getDate()) < 10) { 46 | createtime += "-0"+date.getDate(); 47 | } else { 48 | createtime += "-"+date.getDate(); 49 | } 50 | return createtime; 51 | } -------------------------------------------------------------------------------- /WebContent/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /src/db.properties: -------------------------------------------------------------------------------- 1 | dataSource.driverClass=com.mysql.jdbc.Driver 2 | dataSource.jdbcUrl=jdbc:mysql://localhost:3306/pms 3 | dataSource.user=root 4 | dataSource.password=123456 5 | dataSource.maxPoolSize=20 6 | dataSource.maxIdleTime=1000 7 | dataSource.minPoolSize=6 8 | dataSource.initialPoolSize=5 -------------------------------------------------------------------------------- /src/log4j.properties: -------------------------------------------------------------------------------- 1 | # Global logging configuration 2 | log4j.rootLogger=ERROR, stdout 3 | # MyBatis logging configuration... 4 | log4j.logger.org.fkit.mapper.UserMapper=DEBUG 5 | log4j.logger.org.fkit.mapper.BookMapper=DEBUG 6 | # Console output... 7 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 8 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 9 | log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/org/csu/pms/controller/CarController.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.controller; 2 | 3 | import java.io.IOException; 4 | 5 | import javax.servlet.ServletException; 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | 9 | import org.csu.pms.domain.Car; 10 | 11 | import org.csu.pms.domain.PageVO; 12 | import org.csu.pms.service.PmsService; 13 | import org.springframework.beans.factory.annotation.Autowired; 14 | import org.springframework.beans.factory.annotation.Qualifier; 15 | import org.springframework.stereotype.Controller; 16 | import org.springframework.web.bind.annotation.ModelAttribute; 17 | import org.springframework.web.bind.annotation.RequestBody; 18 | import org.springframework.web.bind.annotation.RequestMapping; 19 | import org.springframework.web.bind.annotation.RequestParam; 20 | import org.springframework.web.bind.annotation.ResponseBody; 21 | 22 | import com.alibaba.fastjson.JSON; 23 | @Controller 24 | public class CarController { 25 | @Autowired 26 | @Qualifier("pmsService") 27 | private PmsService pmsService; 28 | 29 | @RequestMapping(value= {"/carMg"}) 30 | public String carMg(@ModelAttribute("car") Car car) { 31 | 32 | return "manager/carMg"; 33 | } 34 | 35 | @RequestMapping(value="/manager/car-list") 36 | public void selectRepair( 37 | HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{ 38 | request.setCharacterEncoding("UTF-8"); 39 | String key = request.getParameter("key"); 40 | String pageNoStr = request.getParameter("pageNo"); 41 | String rowMaxStr = request.getParameter("rowMax"); 42 | 43 | int pageNo = Integer.valueOf(pageNoStr); 44 | int rowMax = Integer.valueOf(rowMaxStr); 45 | 46 | Car car = new Car(); 47 | car.setUserId(key); 48 | 49 | 50 | PageVO page = pmsService.listCar(car, pageNo, rowMax); 51 | 52 | response.reset(); 53 | response.setContentType("text/plain;charset=UTF-8"); 54 | response.getWriter().print(JSON.toJSONString(page)); 55 | response.flushBuffer(); 56 | } 57 | @RequestMapping(value="/manager/addCar") 58 | public void addCar(@ModelAttribute("car") Car car){ 59 | pmsService.addCar(car); 60 | System.out.println("add car :"+ car.getCarNum()); 61 | car = null; 62 | } 63 | 64 | @RequestMapping(value="/manager/updateCar") 65 | public void updateCar(@ModelAttribute("car") Car car){ 66 | pmsService.modifyCar(car); 67 | System.out.println("modify Car :"+ car.getCarNum()); 68 | } 69 | 70 | 71 | @RequestMapping(value="/manager/deleteCar") 72 | public void deleteCar(@RequestBody Car car, HttpServletResponse response){ 73 | String carNum = car.getCarNum(); 74 | 75 | 76 | pmsService.removeCarById(carNum); 77 | 78 | 79 | System.out.println("delete Car :"+ carNum); 80 | 81 | } 82 | 83 | @RequestMapping(value="/manager/loadEditCar") 84 | @ResponseBody 85 | public Object loadEditCar(@RequestParam(value="carNum",required=false) String carNum){ 86 | 87 | Car car = new Car(); 88 | car = pmsService.findCarById(carNum); 89 | System.out.println("load Car :"+ carNum); 90 | return car; 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /src/org/csu/pms/controller/ConsumeController.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.controller; 2 | 3 | import java.io.IOException; 4 | import java.sql.Timestamp; 5 | import java.text.SimpleDateFormat; 6 | import java.util.Date; 7 | import java.util.HashMap; 8 | import java.util.Map; 9 | 10 | import javax.servlet.ServletException; 11 | import javax.servlet.http.HttpServletRequest; 12 | import javax.servlet.http.HttpServletResponse; 13 | import javax.servlet.http.HttpSession; 14 | 15 | import org.csu.pms.domain.Consume; 16 | import org.csu.pms.domain.PageVO; 17 | import org.csu.pms.domain.User; 18 | import org.csu.pms.service.PmsService; 19 | import org.springframework.beans.factory.annotation.Autowired; 20 | import org.springframework.beans.factory.annotation.Qualifier; 21 | import org.springframework.stereotype.Controller; 22 | import org.springframework.web.bind.annotation.ModelAttribute; 23 | import org.springframework.web.bind.annotation.RequestMapping; 24 | 25 | import com.alibaba.fastjson.JSON; 26 | 27 | @Controller 28 | public class ConsumeController { 29 | @Autowired 30 | @Qualifier("pmsService") 31 | private PmsService pmsService; 32 | 33 | @RequestMapping(value= {"/consumeMg"}) 34 | public String consumeMg(@ModelAttribute("consume") Consume consume) { 35 | 36 | return "manager/consumeMg"; 37 | } 38 | 39 | @RequestMapping(value="/manager/consume-list") 40 | public void selectConsume( 41 | HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{ 42 | request.setCharacterEncoding("UTF-8"); 43 | String key = request.getParameter("key"); 44 | String pageNoStr = request.getParameter("pageNo"); 45 | String rowMaxStr = request.getParameter("rowMax"); 46 | String consumeType1 = request.getParameter("consumeType"); 47 | String consumeState1 = request.getParameter("consumeState"); 48 | 49 | int pageNo = Integer.valueOf(pageNoStr); 50 | int rowMax = Integer.valueOf(rowMaxStr); 51 | int consumeType = Integer.valueOf(consumeType1); 52 | int consumeState = Integer.valueOf(consumeState1); 53 | 54 | Consume consume = new Consume(); 55 | consume.setUserId(key); 56 | consume.setConsumeState(consumeState); 57 | consume.setConsumeType(consumeType); 58 | 59 | System.out.println(consume.getConsumeState()); 60 | 61 | PageVO page = pmsService.listConsume(consume, pageNo, rowMax); 62 | 63 | response.reset(); 64 | response.setContentType("text/plain;charset=UTF-8"); 65 | response.getWriter().print(JSON.toJSONString(page)); 66 | response.flushBuffer(); 67 | 68 | } 69 | 70 | 71 | @RequestMapping(value="/manager/addConsume") 72 | public void addConsume(@ModelAttribute("consume") Consume consume){ 73 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 74 | String dateStr = consume.getDate()+ " 00:00:00"; 75 | Date date = Timestamp.valueOf(dateStr); 76 | consume.setConsumeDate(date); 77 | System.out.println("add consume :"+ consume.getUserId()); 78 | consume.setConsumeType(consume.getTypeId()); 79 | consume.setCreateDate(new Timestamp(System.currentTimeMillis())); 80 | consume.setPrice(consume.getCount() * consume.getUnitPrice()); 81 | consume.setConsumeState(0); 82 | pmsService.addConsume(consume); 83 | 84 | } 85 | 86 | @RequestMapping(value="/pay") 87 | public String pay() { 88 | return "user/pay"; 89 | } 90 | 91 | @RequestMapping(value="/list_consume") 92 | public void selectConsume( 93 | HttpServletRequest request, HttpServletResponse response,HttpSession session)throws ServletException, IOException{ 94 | request.setCharacterEncoding("UTF-8"); 95 | String pageNoStr = request.getParameter("pageNo"); 96 | String rowMaxStr = request.getParameter("rowMax"); 97 | String consumeType = request.getParameter("consumeType"); 98 | int pageNo = Integer.valueOf(pageNoStr); 99 | int rowMax = Integer.valueOf(rowMaxStr); 100 | String select=request.getParameter("select"); 101 | User user=(User)session.getAttribute("user"); 102 | Map map=new HashMap<>(); 103 | 104 | String calendar=request.getParameter("calendar"); 105 | String calendar1=request.getParameter("calendar1"); 106 | 107 | map.put("calendar", calendar); 108 | map.put("calendar1", calendar1); 109 | System.out.println(calendar+"9"); 110 | System.out.println(calendar1+"10"); 111 | map.put("consumeType", consumeType); 112 | map.put("user", user); 113 | map.put("select", select); 114 | 115 | PageVO page = pmsService.listConsumeUser(map, pageNo, rowMax); 116 | 117 | response.reset(); 118 | response.setContentType("text/plain;charset=UTF-8"); 119 | response.getWriter().print(JSON.toJSONString(page)); 120 | response.flushBuffer(); 121 | 122 | } 123 | 124 | @RequestMapping(value="/payconsume") 125 | public void payconsume(HttpServletRequest request, HttpServletResponse response) { 126 | String[] list = request.getParameterValues("list"); 127 | 128 | for (String item : list) { 129 | int consumeId=Integer.valueOf(item); 130 | pmsService.payOneItem(consumeId); 131 | } 132 | 133 | } 134 | } 135 | -------------------------------------------------------------------------------- /src/org/csu/pms/controller/FormController.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.PathVariable; 5 | import org.springframework.web.bind.annotation.RequestMapping; 6 | 7 | 8 | public class FormController { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/org/csu/pms/controller/HouseController.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.controller; 2 | 3 | import java.io.IOException; 4 | 5 | import javax.servlet.ServletException; 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | 9 | import org.csu.pms.domain.House; 10 | import org.csu.pms.domain.PageVO; 11 | import org.csu.pms.domain.User; 12 | import org.csu.pms.service.PmsService; 13 | import org.springframework.beans.factory.annotation.Autowired; 14 | import org.springframework.beans.factory.annotation.Qualifier; 15 | import org.springframework.stereotype.Controller; 16 | import org.springframework.web.bind.annotation.ModelAttribute; 17 | import org.springframework.web.bind.annotation.RequestBody; 18 | import org.springframework.web.bind.annotation.RequestMapping; 19 | import org.springframework.web.bind.annotation.RequestParam; 20 | import org.springframework.web.bind.annotation.ResponseBody; 21 | 22 | import com.alibaba.fastjson.JSON; 23 | @Controller 24 | public class HouseController { 25 | @Autowired 26 | @Qualifier("pmsService") 27 | private PmsService pmsService; 28 | 29 | @RequestMapping(value= {"/houseMg"}) 30 | public String houseMg(@ModelAttribute("house") House house) { 31 | 32 | return "manager/houseMg"; 33 | } 34 | 35 | @RequestMapping(value="/manager/house-list") 36 | public void selectRepair( 37 | HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{ 38 | request.setCharacterEncoding("UTF-8"); 39 | String key = request.getParameter("key"); 40 | String pageNoStr = request.getParameter("pageNo"); 41 | String rowMaxStr = request.getParameter("rowMax"); 42 | //String type1 = request.getParameter("type"); 43 | int pageNo = Integer.valueOf(pageNoStr); 44 | int rowMax = Integer.valueOf(rowMaxStr); 45 | //int type = Integer.valueOf(type1); 46 | 47 | House house = new House(); 48 | house.setUserId(key); 49 | //house.setHouseType(type); 50 | 51 | 52 | PageVO page = pmsService.listHouse(house, pageNo, rowMax); 53 | 54 | response.reset(); 55 | response.setContentType("text/plain;charset=UTF-8"); 56 | response.getWriter().print(JSON.toJSONString(page)); 57 | response.flushBuffer(); 58 | } 59 | @RequestMapping(value="/manager/addHouse") 60 | public void addUser(@ModelAttribute("house") House house){ 61 | 62 | pmsService.addHouse(house); 63 | 64 | System.out.println("add house :"+ house.getUserId()); 65 | house = null; 66 | } 67 | 68 | @RequestMapping(value="/manager/updateHouse") 69 | public void updateHouse(@ModelAttribute("house") House house){ 70 | //User user = new User(); 71 | 72 | pmsService.modifyHouse(house); 73 | 74 | System.out.println("modify House :"+ house.getBuildingNum()+" "+ house.getRoomNum()); 75 | 76 | 77 | } 78 | 79 | 80 | @RequestMapping(value="/manager/deleteHouse") 81 | public void deleteHouse(@RequestBody House house, HttpServletResponse response){ 82 | int buildingNum = house.getBuildingNum(); 83 | int roomNum = house.getRoomNum(); 84 | 85 | pmsService.removeHouse(buildingNum,roomNum); 86 | 87 | 88 | System.out.println("delete house :"+ buildingNum + " " + roomNum); 89 | 90 | } 91 | 92 | @RequestMapping(value="/manager/loadEditHouse") 93 | @ResponseBody 94 | public Object loadEditHouse( 95 | @RequestParam(value="buildingNum",required=false) String buildingNum, 96 | @RequestParam(value="roomNum",required=false) String roomNum){ 97 | House house = new House(); 98 | int bNum = Integer.valueOf(buildingNum); 99 | int rNum = Integer.valueOf(roomNum); 100 | house = pmsService.findHouse(bNum, rNum); 101 | System.out.println("load House :"+ buildingNum + " "+roomNum); 102 | return house; 103 | } 104 | } 105 | -------------------------------------------------------------------------------- /src/org/csu/pms/controller/HouseTypeController.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.controller; 2 | 3 | import java.io.IOException; 4 | 5 | import javax.servlet.ServletException; 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | 9 | import org.csu.pms.domain.HouseType; 10 | import org.csu.pms.domain.PageVO; 11 | import org.csu.pms.service.PmsService; 12 | import org.springframework.beans.factory.annotation.Autowired; 13 | import org.springframework.beans.factory.annotation.Qualifier; 14 | import org.springframework.stereotype.Controller; 15 | import org.springframework.web.bind.annotation.ModelAttribute; 16 | import org.springframework.web.bind.annotation.RequestBody; 17 | import org.springframework.web.bind.annotation.RequestMapping; 18 | import org.springframework.web.bind.annotation.RequestParam; 19 | import org.springframework.web.bind.annotation.ResponseBody; 20 | 21 | import com.alibaba.fastjson.JSON; 22 | @Controller 23 | public class HouseTypeController { 24 | @Autowired 25 | @Qualifier("pmsService") 26 | private PmsService pmsService; 27 | 28 | @RequestMapping(value= {"/houseTypeMg"}) 29 | public String houseTypeMg(@ModelAttribute("houseType") HouseType houseType) { 30 | 31 | return "manager/houseTypeMg"; 32 | } 33 | 34 | @RequestMapping(value="/manager/houseType-list") 35 | public void selectRepair( 36 | HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{ 37 | request.setCharacterEncoding("UTF-8"); 38 | String key = request.getParameter("key"); 39 | String pageNoStr = request.getParameter("pageNo"); 40 | String rowMaxStr = request.getParameter("rowMax"); 41 | 42 | int pageNo = Integer.valueOf(pageNoStr); 43 | int rowMax = Integer.valueOf(rowMaxStr); 44 | 45 | 46 | HouseType houseType = new HouseType(); 47 | houseType.setDescription(key);; 48 | //house.setHouseType(type); 49 | 50 | 51 | PageVO page = pmsService.listHouseType(houseType, pageNo, rowMax); 52 | 53 | response.reset(); 54 | response.setContentType("text/plain;charset=UTF-8"); 55 | response.getWriter().print(JSON.toJSONString(page)); 56 | response.flushBuffer(); 57 | } 58 | 59 | @RequestMapping(value="/manager/addHouseType") 60 | public void addHouseType(@ModelAttribute("houseType") HouseType houseType){ 61 | pmsService.addHouseType(houseType); 62 | System.out.println("add HouseType :"+ houseType.getHouseType()); 63 | houseType = null; 64 | } 65 | 66 | @RequestMapping(value="/manager/updateHouseType") 67 | public void updateHouseType(@ModelAttribute("houseType") HouseType houseType){ 68 | pmsService.modifyHouseType(houseType); 69 | System.out.println("modify HouseType :"+ houseType.getHouseType()); 70 | } 71 | 72 | 73 | @RequestMapping(value="/manager/deleteHouseType") 74 | public void deleteHouseType(@RequestBody HouseType houseType, HttpServletResponse response){ 75 | int houseType1 = houseType.getHouseType(); 76 | pmsService.removeHouseType(houseType1);; 77 | System.out.println("delete HouseType :"+ houseType1); 78 | 79 | } 80 | 81 | @RequestMapping(value="/manager/loadEditHouseType") 82 | @ResponseBody 83 | public Object loadEditHouseType(@RequestParam(value="houseType",required=false) String houseType){ 84 | 85 | HouseType houseType1 = new HouseType(); 86 | int houseTypeNum = Integer.valueOf(houseType); 87 | houseType1 = pmsService.findHouseType(houseTypeNum); 88 | System.out.println("load HouseType :"+ houseType); 89 | return houseType1; 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/AdviceDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.ADVICETABLE; 4 | 5 | 6 | import java.sql.Date; 7 | import java.util.List; 8 | import java.util.Map; 9 | 10 | import org.apache.ibatis.annotations.Delete; 11 | import org.apache.ibatis.annotations.InsertProvider; 12 | import org.apache.ibatis.annotations.Param; 13 | import org.apache.ibatis.annotations.Select; 14 | import org.apache.ibatis.annotations.SelectProvider; 15 | import org.apache.ibatis.annotations.UpdateProvider; 16 | import org.csu.pms.dao.provider.AdviceDynaSqlProvider; 17 | 18 | import org.csu.pms.domain.Advice; 19 | import org.csu.pms.domain.House; 20 | 21 | 22 | public interface AdviceDao { 23 | 24 | 25 | // 根据id查询投诉 26 | @Select("select * from "+ADVICETABLE+" where adviceId = #{adviceId}") 27 | Advice selectByAdviceId(@Param("adviceId")int adviceId); 28 | 29 | // 根据id删除投诉 30 | @Delete(" delete from "+ADVICETABLE+" where adviceId = #{adviceId}") 31 | void deleteByAdviceId(@Param("adviceId")int adviceId); 32 | 33 | // 动态修改投诉 34 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="updateAdvice") 35 | void update(Advice advice); 36 | 37 | // 动态查询 38 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="selectWhitParam") 39 | List selectByPage(Map params); 40 | 41 | // 根据参数查询用户总数 42 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="count") 43 | Integer count(Map params); 44 | 45 | // 动态插入用户 46 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="insertAdvice") 47 | void save(Advice advice); 48 | 49 | //业主 50 | // 动态查询 51 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="selectWhitParamUser") 52 | List selectByPageUser(Map params); 53 | 54 | // 根据参数查询用户总数 55 | @SelectProvider(type=AdviceDynaSqlProvider.class,method="countUser") 56 | Integer countUser(Map params); 57 | } 58 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/CarDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.CARTABLE; 4 | 5 | import java.util.List; 6 | import java.util.Map; 7 | 8 | import org.apache.ibatis.annotations.Delete; 9 | import org.apache.ibatis.annotations.Param; 10 | import org.apache.ibatis.annotations.Select; 11 | import org.apache.ibatis.annotations.SelectProvider; 12 | import org.csu.pms.dao.provider.CarDynaSqlProvider; 13 | import org.csu.pms.domain.Car; 14 | 15 | 16 | public interface CarDao { 17 | // 根据车牌号查询车辆 18 | @Select("select * from "+CARTABLE+" where carNum = #{carNum} ") 19 | Car selectByCarNum(@Param("carNum") String carNum); 20 | 21 | 22 | // 根据车牌号删除车辆 23 | @Delete(" delete from "+CARTABLE+" where carNum = #{carNum}") 24 | void deleteByCarNum(@Param("carNum")String carNum); 25 | 26 | // 动态修改车辆 27 | @SelectProvider(type=CarDynaSqlProvider.class,method="updateCar") 28 | void update(Car car); 29 | 30 | // 动态查询 31 | @SelectProvider(type=CarDynaSqlProvider.class,method="selectWhitParam") 32 | List selectByPage(Map params); 33 | 34 | // 根据参数查询车辆总数 35 | @SelectProvider(type=CarDynaSqlProvider.class,method="count") 36 | Integer count(Map params); 37 | 38 | // 动态插入车辆 39 | @SelectProvider(type=CarDynaSqlProvider.class,method="insertCar") 40 | void save(Car car); 41 | } 42 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/ConsumeDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.CONSUMETABLE; 4 | 5 | import java.util.List; 6 | import java.util.Map; 7 | 8 | import org.apache.ibatis.annotations.Param; 9 | import org.apache.ibatis.annotations.SelectProvider; 10 | import org.apache.ibatis.annotations.Update; 11 | import org.apache.ibatis.annotations.UpdateProvider; 12 | import org.csu.pms.dao.provider.ConsumeDynaSqlProvider; 13 | 14 | import org.csu.pms.domain.Consume; 15 | 16 | 17 | public interface ConsumeDao { 18 | 19 | @SelectProvider(type=ConsumeDynaSqlProvider.class, method="insertConsume") 20 | void insertConsume(Consume consume); 21 | 22 | @UpdateProvider(type=ConsumeDynaSqlProvider.class, method="updateConsume") 23 | void updateConsume(Consume consume); 24 | 25 | // 动态查询 26 | @SelectProvider(type=ConsumeDynaSqlProvider.class,method="selectWithParam") 27 | List selectByPage(Map params); 28 | 29 | // 根据参数查询用户总数 30 | @SelectProvider(type=ConsumeDynaSqlProvider.class,method="count") 31 | Integer count(Map params); 32 | 33 | // 动态插入用户 34 | @SelectProvider(type=ConsumeDynaSqlProvider.class,method="insertConsume") 35 | void save(Consume consume); 36 | 37 | //业主 38 | // 动态查询 39 | @SelectProvider(type=ConsumeDynaSqlProvider.class,method="selectConsumeWhitParamUser") 40 | List selectConsumeByPageUser(Map params); 41 | 42 | // 根据参数查询总数 43 | @SelectProvider(type=ConsumeDynaSqlProvider.class,method="countUser") 44 | Integer countConsumeUser(Map params); 45 | 46 | //支付一项消费 47 | @Update("update "+CONSUMETABLE+" set consumeState = 1 where consumeId=#{consumeId} ") 48 | void updateConsumeUser(@Param("consumeId") int consumeId ); 49 | 50 | } 51 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/HouseDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.HOUSETABLE; 4 | 5 | 6 | import java.util.List; 7 | import java.util.Map; 8 | 9 | import org.apache.ibatis.annotations.Delete; 10 | 11 | import org.apache.ibatis.annotations.Param; 12 | import org.apache.ibatis.annotations.Select; 13 | import org.apache.ibatis.annotations.SelectProvider; 14 | 15 | import org.csu.pms.dao.provider.HouseDynaSqlProvider; 16 | 17 | import org.csu.pms.domain.House; 18 | 19 | 20 | public interface HouseDao { 21 | //查找住房 22 | 23 | @Select(" select * from "+HOUSETABLE+" where buildingNum = #{buildingNum} and roomNum = #{roomNum}") 24 | House findHouseByBuildingNumAndRoomNum( 25 | @Param("buildingNum") int buildingNum, 26 | @Param("roomNum") int roomNum); 27 | 28 | // 根据楼栋号和住房号删除住房 29 | @Delete(" delete from "+HOUSETABLE+" where buildingNum = #{buildingNum} and roomNum = #{roomNum}") 30 | void deleteByBuildingNumAndRoomNum( 31 | @Param("buildingNum") int buildingNum, 32 | @Param("roomNum") int roomNum); 33 | 34 | // 动态修改住房 35 | @SelectProvider(type=HouseDynaSqlProvider.class,method="updateHouse") 36 | void update(House house); 37 | 38 | // 动态查询 39 | @SelectProvider(type=HouseDynaSqlProvider.class,method="selectWhitParam") 40 | List selectByPage(Map params); 41 | 42 | // 根据参数查询住房总数 43 | @SelectProvider(type=HouseDynaSqlProvider.class,method="count") 44 | Integer count(Map params); 45 | 46 | // 动态插入住房 47 | @SelectProvider(type=HouseDynaSqlProvider.class,method="insertHouse") 48 | void save(House house); 49 | } 50 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/HouseTypeDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | 4 | import static org.csu.pms.util.common.PmsConstants.HOUSETYPETABLE; 5 | 6 | import java.util.List; 7 | import java.util.Map; 8 | 9 | import org.apache.ibatis.annotations.Delete; 10 | import org.apache.ibatis.annotations.Param; 11 | import org.apache.ibatis.annotations.Select; 12 | import org.apache.ibatis.annotations.SelectProvider; 13 | 14 | import org.csu.pms.dao.provider.HouseTypeDynaSqlProvider; 15 | 16 | import org.csu.pms.domain.HouseType; 17 | 18 | public interface HouseTypeDao { 19 | // 根据户型id查询户型 20 | @Select("select * from "+HOUSETYPETABLE+" where houseType = #{houseType} ") 21 | HouseType selectByHouseType(@Param("houseType") int houseType); 22 | 23 | 24 | // 根据户型id删除户型 25 | @Delete(" delete from "+HOUSETYPETABLE+" where houseType = #{houseType}") 26 | void deleteByHouseType(int houseType); 27 | 28 | // 动态修改户型 29 | @SelectProvider(type=HouseTypeDynaSqlProvider.class,method="updateHouseType") 30 | void update(HouseType houseType); 31 | 32 | // 动态查询 33 | @SelectProvider(type=HouseTypeDynaSqlProvider.class,method="selectWhitParam") 34 | List selectByPage(Map params); 35 | 36 | // 根据参数查询户型总数 37 | @SelectProvider(type=HouseTypeDynaSqlProvider.class,method="count") 38 | Integer count(Map params); 39 | 40 | // 动态插入住房 41 | @SelectProvider(type=HouseTypeDynaSqlProvider.class,method="insertHouseType") 42 | void save(HouseType houseType); 43 | } 44 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/NoticeDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.NOTICETABLE; 4 | import static org.csu.pms.util.common.PmsConstants.USERTABLE; 5 | 6 | import java.util.List; 7 | import java.util.Map; 8 | 9 | import org.apache.ibatis.annotations.Delete; 10 | import org.apache.ibatis.annotations.Param; 11 | 12 | import org.apache.ibatis.annotations.Select; 13 | import org.apache.ibatis.annotations.SelectProvider; 14 | import org.csu.pms.dao.provider.NoticeDynaSqlProvider; 15 | import org.csu.pms.domain.Notice; 16 | 17 | 18 | public interface NoticeDao { 19 | 20 | @Select("select * from "+ NOTICETABLE+" where noticeType = 0 "+" limit #{start},#{rowMax}") 21 | List selectAll( @Param("start")int start, @Param("rowMax")int rowMax); 22 | 23 | @Select("select count(*) as count from "+NOTICETABLE+" where noticeType = 0 ") 24 | int countAll() ; 25 | 26 | @Select("select *from "+NOTICETABLE+" where noticeType=0 and noticeTitle = #{noticeTitle}") 27 | Notice selectNewsItem( @Param("noticeTitle")String noticeTitle); 28 | 29 | @Select("select * from "+NOTICETABLE+" where noticeType=0 order by noticeId desc limit 3") 30 | List selectTopThree(); 31 | @Select("select * from "+NOTICETABLE+" where noticeType=1 order by noticeId desc limit 2") 32 | List getNoticeTwo(); 33 | 34 | @Select("select * from "+NOTICETABLE+" where noticeType=2 order by noticeId desc limit 1") 35 | Notice getMissing(); 36 | 37 | //根据id查找 38 | @Select("select * from "+NOTICETABLE+" where noticeId = #{noticeId}") 39 | Notice selectById(@Param("noticeId")int noticeId); 40 | 41 | // 根据id删除通知 42 | @Delete(" delete from "+NOTICETABLE+" where noticeId = #{noticeId}") 43 | void deleteByNoticeId(@Param("noticeId")int noticeId); 44 | 45 | // 动态修改通知 46 | @SelectProvider(type=NoticeDynaSqlProvider.class,method="updateNotice") 47 | void update(Notice notice); 48 | 49 | // 动态查询 50 | @SelectProvider(type=NoticeDynaSqlProvider.class,method="selectWithParam") 51 | List selectByPage(Map params); 52 | 53 | // 根据参数查询通知总数 54 | @SelectProvider(type=NoticeDynaSqlProvider.class,method="count") 55 | Integer count(Map params); 56 | 57 | // 动态插入用户 58 | @SelectProvider(type=NoticeDynaSqlProvider.class,method="insertNotice") 59 | void save(Notice notice); 60 | } 61 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/RepairDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | 4 | import static org.csu.pms.util.common.PmsConstants.REPAIRTABLE; 5 | 6 | import java.util.List; 7 | import java.util.Map; 8 | 9 | import org.apache.ibatis.annotations.Delete; 10 | import org.apache.ibatis.annotations.Param; 11 | import org.apache.ibatis.annotations.Select; 12 | import org.apache.ibatis.annotations.SelectProvider; 13 | import org.csu.pms.dao.provider.RepairDynaSqlProvider; 14 | import org.csu.pms.domain.Repair; 15 | 16 | 17 | public interface RepairDao { 18 | 19 | //查询 20 | @Select("select * from "+REPAIRTABLE+" where repairId = #{repairId} ") 21 | Repair selectByRepairId(@Param("repairId") int repairId); 22 | 23 | 24 | // 根据车牌号删除车辆 25 | @Delete(" delete from "+REPAIRTABLE+" where repairId = #{repairId}") 26 | void deleteByRepairId(@Param("repairId")int repairId); 27 | 28 | // 动态修改报修 29 | @SelectProvider(type=RepairDynaSqlProvider.class,method="updateRepair") 30 | void update(Repair repair); 31 | 32 | // 动态查询 33 | @SelectProvider(type=RepairDynaSqlProvider.class,method="selectWhitParam") 34 | List selectByPage(Map params); 35 | 36 | // 根据参数查询报修总数 37 | @SelectProvider(type=RepairDynaSqlProvider.class,method="count") 38 | Integer count(Map params); 39 | 40 | // 动态插入报修 41 | @SelectProvider(type=RepairDynaSqlProvider.class,method="insertRepair") 42 | void save(Repair repair); 43 | //业主 44 | // 动态查询 45 | @SelectProvider(type=RepairDynaSqlProvider.class,method="selectWhitParamUser") 46 | List selectByPageUser(Map params); 47 | 48 | // 根据参数查询用户总数 49 | @SelectProvider(type=RepairDynaSqlProvider.class,method="countUser") 50 | Integer countUser(Map params); 51 | 52 | // 动态插入用户 53 | @SelectProvider(type=RepairDynaSqlProvider.class,method="insertRepairUser") 54 | void saveUser(Repair repair); 55 | } 56 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/UserDao.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao; 2 | 3 | import java.util.List; 4 | import java.util.Map; 5 | import org.apache.ibatis.annotations.Delete; 6 | import org.apache.ibatis.annotations.Param; 7 | import org.apache.ibatis.annotations.Select; 8 | import org.apache.ibatis.annotations.SelectProvider; 9 | import org.apache.ibatis.annotations.Update; 10 | import org.csu.pms.domain.User; 11 | import org.csu.pms.dao.provider.UserDynaSqlProvider; 12 | import static org.csu.pms.util.common.PmsConstants.USERTABLE; 13 | 14 | 15 | 16 | public interface UserDao{ 17 | // 根据登录名和密码查询业主 18 | @Select("select * from "+USERTABLE+" where userId = #{userId} and password = #{password}") 19 | User selectByUserIdAndPassword( 20 | @Param("userId") String userId, 21 | @Param("password") String password); 22 | 23 | // 根据id查询用户 24 | @Select("select * from "+USERTABLE+" where userId = #{userId}") 25 | User selectByUserId(String userId); 26 | 27 | /* // 根据用户名查询用户 28 | @Select("select * from "+USERTABLE+" where userName = #{userName}") 29 | List selectByPage(Map params); 42 | 43 | // 根据参数查询用户总数 44 | @SelectProvider(type=UserDynaSqlProvider.class,method="count") 45 | Integer count(Map params); 46 | 47 | // 动态插入用户 48 | @SelectProvider(type=UserDynaSqlProvider.class,method="insertUser") 49 | void save(User user); 50 | 51 | @Update("update "+USERTABLE+" set password=#{password} , phone=#{phone} where userId=#{userId}") 52 | void change( @Param("password")String password, @Param("phone")String phone,@Param("userId")String userId); 53 | } -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/AdviceDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.ADVICETABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.Advice; 9 | 10 | 11 | public class AdviceDynaSqlProvider { 12 | // 分页动态查询 13 | public String selectWhitParam(Map params){ 14 | String sql = new SQL(){ 15 | { 16 | SELECT("*"); 17 | FROM(ADVICETABLE); 18 | if(params.get("advice") != null){ 19 | Advice advice = (Advice)params.get("advice"); 20 | if(advice.getUserId() != null && !advice.getUserId().equals("")){ 21 | WHERE(" userId LIKE CONCAT ('%',#{advice.userId},'%') "); 22 | } 23 | if(advice.getAdviceState() != 2) { 24 | WHERE(" adviceState = #{advice.adviceState} "); 25 | } 26 | } 27 | } 28 | }.toString(); 29 | 30 | sql += " limit #{start} , #{rowMax} "; 31 | 32 | 33 | return sql; 34 | } 35 | // 动态查询总数量 36 | public String count(Map params){ 37 | return new SQL(){ 38 | { 39 | SELECT("count(*)"); 40 | FROM(ADVICETABLE); 41 | if(params.get("advice") != null){ 42 | Advice advice = (Advice)params.get("advice"); 43 | if(advice.getUserId() != null && !advice.getUserId().equals("")){ 44 | WHERE(" userId LIKE CONCAT ('%',#{advice.userId},'%') "); 45 | } 46 | } 47 | } 48 | }.toString(); 49 | } 50 | 51 | // 动态插入 52 | public String insertAdvice(Advice advice){ 53 | return new SQL(){ 54 | { 55 | INSERT_INTO(ADVICETABLE); 56 | VALUES("userId", "#{userId}"); 57 | VALUES("adviceDate", "#{adviceDate}"); 58 | VALUES("adviceContent", "#{adviceContent}"); 59 | VALUES("adviceState", "#{adviceState}"); 60 | VALUES("adviceResponse", "#{adviceResponse}"); 61 | } 62 | }.toString(); 63 | } 64 | // 动态更新 65 | public String updateAdvice(Advice advice){ 66 | 67 | return new SQL(){ 68 | { 69 | UPDATE(ADVICETABLE); 70 | if(advice.getAdviceContent() != null){ 71 | SET(" adviceContent = #{adviceContent} "); 72 | } 73 | if(advice.getUserId() != null){ 74 | SET(" userId = #{userId} "); 75 | } 76 | if(advice.getAdviceDate()!= null){ 77 | SET(" adviceDate = #{adviceDate} "); 78 | } 79 | if(advice.getAdviceResponse()!= null){ 80 | SET(" adviceResponse = #{adviceResponse} "); 81 | } 82 | if(advice.getAdviceState()!= 2){ 83 | SET(" adviceState = #{adviceState} "); 84 | } 85 | WHERE(" adviceId = #{adviceId} "); 86 | } 87 | }.toString(); 88 | } 89 | 90 | //业主 91 | // 分页动态查询 92 | public String selectWhitParamUser(Map params){ 93 | String sql = new SQL(){ 94 | { 95 | SELECT("*"); 96 | FROM(ADVICETABLE); 97 | if(params.get("advice") != null){ 98 | Advice advice = (Advice)params.get("advice"); 99 | if(advice.getUserId() != null && !advice.getUserId().trim().equals("")) { 100 | WHERE(" userId = #{advice.userId} "); 101 | } 102 | if(advice.getAdviceState() != 2) { 103 | WHERE(" adviceState = #{advice.adviceState} "); 104 | } 105 | } 106 | } 107 | }.toString(); 108 | 109 | // if(params.get("pageModel") != null){ 110 | // sql += " limit #{pageModel.firstLimitParam} , #{pageModel.pageSize} "; 111 | // } 112 | 113 | sql += " limit #{start} , #{rowMax} "; 114 | return sql; 115 | } 116 | 117 | // 动态查询总数量 118 | public String countUser(Map params){ 119 | return new SQL(){ 120 | { 121 | SELECT("count(*)"); 122 | FROM(ADVICETABLE); 123 | 124 | } 125 | }.toString(); 126 | } 127 | } 128 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/CarDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.CARTABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.Car; 9 | 10 | public class CarDynaSqlProvider { 11 | // 分页动态查询 12 | public String selectWhitParam(Map params){ 13 | String sql = new SQL(){ 14 | { 15 | SELECT("*"); 16 | FROM(CARTABLE); 17 | if(params.get("car") != null){ 18 | Car car = (Car)params.get("car"); 19 | if(car.getUserId() != null && !car.getUserId().equals("")){ 20 | WHERE(" userId LIKE CONCAT ('%',#{car.userId},'%') "); 21 | } 22 | if(car.getCarNum() != null && !car.getCarNum().equals("")) { 23 | WHERE(" carNum = #{car.carNum} "); 24 | } 25 | 26 | } 27 | } 28 | }.toString(); 29 | 30 | sql += " limit #{start} , #{rowMax} "; 31 | 32 | 33 | return sql; 34 | } 35 | // 动态查询总数量 36 | public String count(Map params){ 37 | return new SQL(){ 38 | { 39 | SELECT("count(*)"); 40 | FROM(CARTABLE); 41 | if(params.get("car") != null){ 42 | Car car = (Car)params.get("car"); 43 | if(car.getUserId() != null && !car.getUserId().equals("")){ 44 | WHERE(" userId LIKE CONCAT ('%',#{car.userId},'%') "); 45 | } 46 | if(car.getCarNum() != null && !car.getCarNum().equals("")) { 47 | WHERE(" carNum LIKE CONCAT ('%',#{car.carNum},'%') "); 48 | } 49 | } 50 | } 51 | }.toString(); 52 | } 53 | 54 | // 动态插入 55 | public String insertCar(Car car){ 56 | 57 | return new SQL(){ 58 | { 59 | INSERT_INTO(CARTABLE); 60 | if(car.getUserId() != null && !car.getUserId().equals("")){ 61 | VALUES("userId", "#{userId}"); 62 | } 63 | 64 | VALUES("carNum", "#{carNum}"); 65 | VALUES("color", "#{color}"); 66 | VALUES("brand", "#{brand}"); 67 | VALUES("description", "#{description}"); 68 | 69 | 70 | } 71 | }.toString(); 72 | } 73 | // 动态更新 74 | public String updateCar(Car car){ 75 | 76 | return new SQL(){ 77 | { 78 | UPDATE(CARTABLE); 79 | if(car.getUserId() != null){ 80 | SET(" userId = #{userId} "); 81 | } 82 | if(car.getDescription()!= null){ 83 | SET(" description = #{description} "); 84 | } 85 | if(car.getBrand()!= null){ 86 | SET(" brand = #{brand} "); 87 | } 88 | if(car.getColor()!= null){ 89 | SET(" color = #{color} "); 90 | } 91 | 92 | WHERE(" carNum = #{carNum} "); 93 | } 94 | }.toString(); 95 | } 96 | } 97 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/HouseDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.HOUSETABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.House; 9 | 10 | public class HouseDynaSqlProvider { 11 | // 分页动态查询 12 | public String selectWhitParam(Map params){ 13 | String sql = new SQL(){ 14 | { 15 | SELECT("*"); 16 | FROM(HOUSETABLE); 17 | if(params.get("house") != null){ 18 | House house = (House)params.get("house"); 19 | if(house.getUserId() != null && !house.getUserId().equals("")){ 20 | WHERE(" userId LIKE CONCAT ('%',#{house.userId},'%') "); 21 | } 22 | if(house.getHouseType() != 0) { 23 | WHERE(" houseType = #{house.houseType} "); 24 | } 25 | if(house.getBuildingNum() != 0) { 26 | WHERE(" buildingNum = #{house.buildingNum} "); 27 | } 28 | if(house.getRoomNum() != 0) { 29 | WHERE(" roomNum = #{house.roomNum} "); 30 | } 31 | } 32 | } 33 | }.toString(); 34 | 35 | sql += " limit #{start} , #{rowMax} "; 36 | 37 | 38 | return sql; 39 | } 40 | // 动态查询总数量 41 | public String count(Map params){ 42 | return new SQL(){ 43 | { 44 | SELECT("count(*)"); 45 | FROM(HOUSETABLE); 46 | if(params.get("house") != null){ 47 | House house = (House)params.get("house"); 48 | if(house.getUserId() != null && !house.getUserId().equals("")){ 49 | WHERE(" userId LIKE CONCAT ('%',#{house.userId},'%') "); 50 | } 51 | } 52 | } 53 | }.toString(); 54 | } 55 | 56 | // 动态插入 57 | public String insertHouse(House house){ 58 | 59 | return new SQL(){ 60 | { 61 | INSERT_INTO(HOUSETABLE); 62 | if(house.getUserId() != null && !house.getUserId().equals("")){ 63 | VALUES("userId", "#{userId}"); 64 | } 65 | 66 | VALUES("buildingNum", "#{buildingNum}"); 67 | VALUES("roomNum", "#{roomNum}"); 68 | VALUES("houseType", "#{houseType}"); 69 | 70 | 71 | } 72 | }.toString(); 73 | } 74 | // 动态更新 75 | public String updateHouse(House house){ 76 | 77 | return new SQL(){ 78 | { 79 | UPDATE(HOUSETABLE); 80 | if(house.getUserId() != null){ 81 | SET(" userId = #{userId} "); 82 | } 83 | if(house.getHouseType()!= 0){ 84 | SET(" houseType = #{houseType} "); 85 | } 86 | 87 | 88 | WHERE(" buildingNum = #{buildingNum} and roomNum = #{roomNum} "); 89 | } 90 | }.toString(); 91 | } 92 | } 93 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/HouseTypeDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.HOUSETYPETABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.HouseType; 9 | 10 | public class HouseTypeDynaSqlProvider { 11 | // 分页动态查询 12 | public String selectWhitParam(Map params){ 13 | String sql = new SQL(){ 14 | { 15 | SELECT("*"); 16 | FROM(HOUSETYPETABLE); 17 | if(params.get("houseType") != null){ 18 | HouseType houseType = (HouseType)params.get("houseType"); 19 | if(houseType.getDescription() != null && !houseType.getDescription().equals("")){ 20 | WHERE(" description LIKE CONCAT ('%',#{houseType.description},'%') "); 21 | } 22 | if(houseType.getHouseType() != 0) { 23 | WHERE(" houseType = #{houseType.houseType} "); 24 | } 25 | 26 | } 27 | } 28 | }.toString(); 29 | 30 | sql += " limit #{start} , #{rowMax} "; 31 | 32 | 33 | return sql; 34 | } 35 | // 动态查询总数量 36 | public String count(Map params){ 37 | return new SQL(){ 38 | { 39 | SELECT("count(*)"); 40 | FROM(HOUSETYPETABLE); 41 | if(params.get("houseType") != null){ 42 | HouseType houseType = (HouseType)params.get("houseType"); 43 | if(houseType.getDescription() != null && !houseType.getDescription().equals("")){ 44 | WHERE(" description LIKE CONCAT ('%',#{houseType.description},'%') "); 45 | } 46 | } 47 | } 48 | }.toString(); 49 | } 50 | 51 | // 动态插入 52 | public String insertHouseType(HouseType houseType){ 53 | 54 | return new SQL(){ 55 | { 56 | INSERT_INTO(HOUSETYPETABLE); 57 | if(houseType.getDescription() != null && !houseType.getDescription().equals("")){ 58 | VALUES("description", "#{description}"); 59 | } 60 | VALUES("area", "#{area}"); 61 | VALUES("houseType", "#{houseType}"); 62 | } 63 | }.toString(); 64 | } 65 | // 动态更新 66 | public String updateHouseType(HouseType houseType){ 67 | 68 | return new SQL(){ 69 | { 70 | UPDATE(HOUSETYPETABLE); 71 | if(houseType.getDescription() != null){ 72 | SET(" description = #{description} "); 73 | } 74 | SET(" area = #{area} "); 75 | 76 | 77 | WHERE(" houseType = #{houseType} "); 78 | } 79 | }.toString(); 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/NoticeDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.NOTICETABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.Notice; 9 | 10 | public class NoticeDynaSqlProvider { 11 | 12 | public String insertNotice(Notice notice){ 13 | return new SQL(){ 14 | { 15 | INSERT_INTO(NOTICETABLE); 16 | VALUES(" noticeType", "#{noticeType} "); 17 | VALUES(" noticeDate", "#{noticeDate} "); 18 | VALUES(" changeDate", "#{changeDate} "); 19 | VALUES(" noticeTitle", "#{noticeTitle} "); 20 | VALUES(" noticeContent", "#{noticeContent} "); 21 | if(notice.getPictureAddress() != null && !notice.getPictureAddress().equals("")) 22 | VALUES(" pictureAddress", "#{pictureAddress} "); 23 | } 24 | }.toString(); 25 | } 26 | 27 | public String updateNotice(Notice notice){ 28 | return new SQL(){ 29 | { 30 | UPDATE(NOTICETABLE); 31 | if(notice.getNoticeType() != 3) { 32 | SET(" noticeType = #{noticeType} "); 33 | } 34 | if(notice.getNoticeDate() != null) { 35 | SET(" noticeDate = #{noticeDate} "); 36 | } 37 | if(notice.getChangeDate() != null) { 38 | SET(" changeDate = #{changeDate} "); 39 | } 40 | if(notice.getNoticeTitle() != null && !notice.getNoticeTitle().equals("")) { 41 | SET(" noticeTitle = #{noticeTitle} "); 42 | } 43 | if(notice.getNoticeContent() != null && !notice.getNoticeContent().equals("")) { 44 | SET(" noticeContent = #{noticeContent} "); 45 | } 46 | if(notice.getPictureAddress() != null && !notice.getPictureAddress().equals("")) { 47 | SET(" pictureAddress = #{notice.pictureAddress} "); 48 | } 49 | WHERE(" noticeId = #{noticeId} "); 50 | } 51 | }.toString(); 52 | } 53 | 54 | // 动态查询总数量 55 | public String count(Map params){ 56 | return new SQL(){ 57 | { 58 | SELECT("count(*)"); 59 | FROM(NOTICETABLE); 60 | if(params.get("notice") != null){ 61 | Notice notice = (Notice)params.get("notice"); 62 | if(notice.getNoticeTitle() != null && !notice.getNoticeTitle().equals("")){ 63 | WHERE(" noticeTitle LIKE CONCAT ('%',#{notice.noticeTitle},'%') "); 64 | } 65 | } 66 | } 67 | }.toString(); 68 | } 69 | 70 | public String selectWithParam(Map params){ 71 | String sql = new SQL(){ 72 | { 73 | SELECT("*"); 74 | FROM(NOTICETABLE); 75 | if(params.get("notice") != null){ 76 | Notice notice = (Notice)params.get("notice"); 77 | if(notice.getNoticeTitle() != null && !notice.getNoticeTitle().equals("")){ 78 | WHERE(" noticeTitle LIKE CONCAT ('%',#{notice.noticeTitle},'%') "); 79 | } 80 | if(notice.getNoticeType() != 3){ 81 | WHERE(" noticeType = #{notice.noticeType} "); 82 | } 83 | if(notice.getNoticeDate() != null) { 84 | WHERE(" noticeDate = #{notice.noticeDate}"); 85 | } 86 | } 87 | } 88 | }.toString(); 89 | 90 | sql += " limit #{start} , #{rowMax} "; 91 | 92 | return sql; 93 | } 94 | } 95 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/RepairDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import static org.csu.pms.util.common.PmsConstants.REPAIRTABLE; 4 | 5 | import java.util.Map; 6 | 7 | import org.apache.ibatis.jdbc.SQL; 8 | import org.csu.pms.domain.Repair; 9 | 10 | 11 | public class RepairDynaSqlProvider { 12 | // 分页动态查询 13 | public String selectWhitParam(Map params){ 14 | String sql = new SQL(){ 15 | { 16 | SELECT("*"); 17 | FROM(REPAIRTABLE); 18 | if(params.get("repair") != null){ 19 | Repair repair = (Repair)params.get("repair"); 20 | if(repair.getUserId() != null && !repair.getUserId().equals("")){ 21 | WHERE(" userId LIKE CONCAT ('%',#{repair.userId},'%') "); 22 | } 23 | if(repair.getRepairState() != 3) { 24 | WHERE(" repairState = #{repair.repairState} "); 25 | } 26 | } 27 | } 28 | }.toString(); 29 | 30 | 31 | sql += " limit #{start} , #{rowMax} "; 32 | 33 | 34 | return sql; 35 | } 36 | // 动态查询总数量 37 | public String count(Map params){ 38 | return new SQL(){ 39 | { 40 | SELECT("count(*)"); 41 | FROM(REPAIRTABLE); 42 | if(params.get("repair") != null){ 43 | Repair repair = (Repair)params.get("repair"); 44 | if(repair.getUserId() != null && !repair.getUserId().equals("")){ 45 | WHERE(" userId LIKE CONCAT ('%',#{repair.userId},'%') "); 46 | } 47 | } 48 | } 49 | }.toString(); 50 | } 51 | 52 | // 动态插入 53 | public String insertRepair(Repair repair){ 54 | 55 | return new SQL(){ 56 | { 57 | INSERT_INTO(REPAIRTABLE); 58 | VALUES(" repairId", "#{repairId} "); 59 | VALUES(" userId", "#{userId} "); 60 | VALUES(" buildingNum", "#{buildingNum} "); 61 | VALUES(" roomNum", "#{roomNum} "); 62 | VALUES(" repairDate", "#{repairDate} "); 63 | VALUES(" repairContent", "#{repairContent} "); 64 | VALUES(" repairState", "#{repairState} "); 65 | VALUES(" repairResponse", "#{repairResponse} "); 66 | } 67 | }.toString(); 68 | } 69 | // 动态更新 70 | public String updateRepair(Repair repair){ 71 | 72 | return new SQL(){ 73 | { 74 | UPDATE(REPAIRTABLE); 75 | SET(" repairResponse = #{repairResponse} "); 76 | SET(" repairState = #{repairState}"); 77 | WHERE(" repairId = #{repairId} "); 78 | } 79 | }.toString(); 80 | } 81 | //业主 82 | // 分页动态查询 83 | public String selectWhitParamUser(Map params){ 84 | String sql = new SQL(){ 85 | { 86 | SELECT("*"); 87 | FROM(REPAIRTABLE); 88 | if(params.get("repair") != null){ 89 | Repair repair = (Repair)params.get("repair"); 90 | if(repair.getUserId() != null && !repair.getUserId().trim().equals("")) { 91 | WHERE(" userId = #{repair.userId} "); 92 | } 93 | if(repair.getRepairState() != 3) { 94 | WHERE(" repairState = #{repair.repairState} "); 95 | } 96 | } 97 | } 98 | }.toString(); 99 | 100 | sql += " limit #{start} , #{rowMax} "; 101 | return sql; 102 | } 103 | 104 | // 动态查询总数量 105 | public String countUser(Map params){ 106 | return new SQL(){ 107 | { 108 | SELECT("count(*)"); 109 | FROM(REPAIRTABLE); 110 | 111 | } 112 | }.toString(); 113 | } 114 | 115 | // 动态插入 116 | public String insertRepairUser(Repair repair){ 117 | return new SQL(){ 118 | { 119 | INSERT_INTO(REPAIRTABLE); 120 | VALUES("userId", "#{userId}"); 121 | VALUES("buildingNum", "#{buildingNum}"); 122 | VALUES("roomNum", "#{roomNum}"); 123 | VALUES("repairDate", "#{repairDate}"); 124 | VALUES("repairContent", "#{repairContent}"); 125 | VALUES("repairState", "#{repairState}"); 126 | VALUES("repairResponse", "#{repairResponse}"); 127 | } 128 | }.toString(); 129 | } 130 | } 131 | -------------------------------------------------------------------------------- /src/org/csu/pms/dao/provider/UserDynaSqlProvider.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.dao.provider; 2 | 3 | import java.util.Map; 4 | import org.apache.ibatis.jdbc.SQL; 5 | import org.csu.pms.domain.User; 6 | import static org.csu.pms.util.common.PmsConstants.USERTABLE; 7 | 8 | 9 | public class UserDynaSqlProvider { 10 | // 分页动态查询 11 | public String selectWhitParam(Map params){ 12 | String sql = new SQL(){ 13 | { 14 | SELECT("*"); 15 | FROM(USERTABLE); 16 | if(params.get("user") != null){ 17 | User user = (User)params.get("user"); 18 | if(user.getUserName() != null && !user.getUserName().equals("")){ 19 | WHERE(" userName LIKE CONCAT ('%',#{user.userName},'%') "); 20 | } 21 | if(user.getRoleType() != 3) { 22 | WHERE(" roleType = #{user.roleType} "); 23 | } 24 | } 25 | } 26 | }.toString(); 27 | 28 | 29 | sql += " limit #{start} , #{rowMax} "; 30 | 31 | 32 | return sql; 33 | } 34 | // 动态查询总数量 35 | public String count(Map params){ 36 | return new SQL(){ 37 | { 38 | SELECT("count(*)"); 39 | FROM(USERTABLE); 40 | if(params.get("user") != null){ 41 | User user = (User)params.get("user"); 42 | if(user.getUserName() != null && !user.getUserName().equals("")){ 43 | WHERE(" username LIKE CONCAT ('%',#{user.userName},'%') "); 44 | } 45 | } 46 | } 47 | }.toString(); 48 | } 49 | 50 | // 动态插入 51 | public String insertUser(User user){ 52 | 53 | return new SQL(){ 54 | { 55 | INSERT_INTO(USERTABLE); 56 | if(user.getUserId() != null && !user.getUserId().equals("")){ 57 | VALUES("userId", "#{userId}"); 58 | } 59 | if(user.getUserName() != null && !user.getUserName().equals("")){ 60 | VALUES("userName", "#{userName}"); 61 | } 62 | 63 | if(user.getPassword() != null && !user.getPassword().equals("")){ 64 | VALUES("password", "#{password}"); 65 | } 66 | if(user.getSex() != null && !user.getSex().equals("")){ 67 | VALUES("sex", "#{sex}"); 68 | } 69 | if(user.getPhone() != null && !user.getPhone().equals("")){ 70 | VALUES("phone", "#{phone}"); 71 | } 72 | if(user.getRoleType() == 0 || user.getRoleType() == 1 || user.getRoleType() == 2){ 73 | VALUES("roleType", "#{roleType}"); 74 | } 75 | } 76 | }.toString(); 77 | } 78 | // 动态更新 79 | public String updateUser(User user){ 80 | 81 | return new SQL(){ 82 | { 83 | UPDATE(USERTABLE); 84 | if(user.getUserName() != null){ 85 | SET(" userName = #{userName} "); 86 | } 87 | if(user.getPassword()!= null){ 88 | SET(" password = #{password} "); 89 | } 90 | if(user.getSex()!= null){ 91 | SET(" sex = #{sex} "); 92 | } 93 | if(user.getPhone()!= null){ 94 | SET(" phone = #{phone} "); 95 | } 96 | if(user.getRoleType() == 0 || user.getRoleType() == 1 || user.getRoleType() == 2){ 97 | SET(" roleType = #{roleType} "); 98 | } 99 | WHERE(" userId = #{userId} "); 100 | } 101 | }.toString(); 102 | } 103 | } 104 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/Advice.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | import java.util.Date; 5 | 6 | import org.springframework.format.annotation.DateTimeFormat; 7 | 8 | public class Advice implements Serializable{ 9 | /** 10 | * 11 | */ 12 | private static final long serialVersionUID = 1L; 13 | 14 | private int adviceId; 15 | 16 | private String userId; 17 | @DateTimeFormat(pattern="yyyy-MM-dd") 18 | private Date adviceDate; 19 | 20 | private String adviceContent; 21 | 22 | private int adviceState; 23 | 24 | private String adviceResponse; 25 | 26 | private int typeId; 27 | 28 | public int getAdviceId() { 29 | return adviceId; 30 | } 31 | 32 | public void setAdviceId(int adviceId) { 33 | this.adviceId = adviceId; 34 | } 35 | 36 | public String getUserId() { 37 | return userId; 38 | } 39 | 40 | public void setUserId(String userId) { 41 | this.userId = userId; 42 | } 43 | 44 | public Date getAdviceDate() { 45 | return adviceDate; 46 | } 47 | 48 | public void setAdviceDate(Date adviceDate) { 49 | this.adviceDate = adviceDate; 50 | } 51 | 52 | public String getAdviceContent() { 53 | return adviceContent; 54 | } 55 | 56 | public void setAdviceContent(String adviceContent) { 57 | this.adviceContent = adviceContent; 58 | } 59 | 60 | public int getAdviceState() { 61 | return adviceState; 62 | } 63 | 64 | public void setAdviceState(int adviceState) { 65 | this.adviceState = adviceState; 66 | } 67 | 68 | public String getAdviceResponse() { 69 | return adviceResponse; 70 | } 71 | 72 | public void setAdviceResponse(String adviceResponse) { 73 | this.adviceResponse = adviceResponse; 74 | } 75 | 76 | public int getTypeId() { 77 | return typeId; 78 | } 79 | 80 | public void setTypeId(int typeId) { 81 | this.typeId = typeId; 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/Car.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | 5 | public class Car implements Serializable{ 6 | /** 7 | * 8 | */ 9 | private static final long serialVersionUID = 1L; 10 | 11 | private String carNum; 12 | 13 | private String userId; 14 | 15 | private String color; 16 | 17 | private String brand; 18 | 19 | private String description; 20 | 21 | public String getCarNum() { 22 | return carNum; 23 | } 24 | 25 | public void setCarNum(String carNum) { 26 | this.carNum = carNum; 27 | } 28 | 29 | public String getUserId() { 30 | return userId; 31 | } 32 | 33 | public void setUserId(String userId) { 34 | this.userId = userId; 35 | } 36 | 37 | public String getColor() { 38 | return color; 39 | } 40 | 41 | public void setColor(String color) { 42 | this.color = color; 43 | } 44 | 45 | public String getBrand() { 46 | return brand; 47 | } 48 | 49 | public void setBrand(String brand) { 50 | this.brand = brand; 51 | } 52 | 53 | public String getDescription() { 54 | return description; 55 | } 56 | 57 | public void setDescription(String description) { 58 | this.description = description; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/Consume.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | import java.io.Serializable; 3 | import java.util.Date; 4 | import java.sql.Timestamp; 5 | 6 | import org.springframework.format.annotation.DateTimeFormat; 7 | 8 | public class Consume implements Serializable{ 9 | /** 10 | * 11 | */ 12 | private static final long serialVersionUID = 1L; 13 | 14 | private int consumeId; 15 | 16 | private int buildingNum; 17 | 18 | private int roomNum; 19 | 20 | private String userId; 21 | @DateTimeFormat(pattern="yyyy-MM-dd") 22 | private Timestamp createDate; 23 | @DateTimeFormat(pattern="yyyy-MM-dd") 24 | private Date consumeDate; 25 | 26 | private int consumeType; 27 | 28 | private double unitPrice; 29 | 30 | private double count; 31 | 32 | private double price; 33 | 34 | private int consumeState; 35 | 36 | private int typeId; 37 | 38 | private String date; 39 | 40 | public int getConsumeId() { 41 | return consumeId; 42 | } 43 | 44 | public void setConsumeId(int consumeId) { 45 | this.consumeId = consumeId; 46 | } 47 | 48 | public int getBuildingNum() { 49 | return buildingNum; 50 | } 51 | 52 | public void setBuildingNum(int buildingNum) { 53 | this.buildingNum = buildingNum; 54 | } 55 | 56 | public int getRoomNum() { 57 | return roomNum; 58 | } 59 | 60 | public void setRoomNum(int roomNum) { 61 | this.roomNum = roomNum; 62 | } 63 | 64 | public String getUserId() { 65 | return userId; 66 | } 67 | 68 | public void setUserId(String userId) { 69 | this.userId = userId; 70 | } 71 | 72 | public Timestamp getCreateDate() { 73 | return createDate; 74 | } 75 | 76 | public void setCreateDate(Timestamp createDate) { 77 | this.createDate = createDate; 78 | } 79 | 80 | public int getConsumeType() { 81 | return consumeType; 82 | } 83 | 84 | public void setConsumeType(int consumeType) { 85 | this.consumeType = consumeType; 86 | } 87 | 88 | public double getUnitPrice() { 89 | return unitPrice; 90 | } 91 | 92 | public void setUnitPrice(double unitPrice) { 93 | this.unitPrice = unitPrice; 94 | } 95 | 96 | public double getCount() { 97 | return count; 98 | } 99 | 100 | public void setCount(double count) { 101 | this.count = count; 102 | } 103 | 104 | public double getPrice() { 105 | return price; 106 | } 107 | 108 | public void setPrice(double price) { 109 | this.price = unitPrice*count; 110 | } 111 | 112 | public int getConsumeState() { 113 | return consumeState; 114 | } 115 | 116 | public void setConsumeState(int consumeState) { 117 | this.consumeState = consumeState; 118 | } 119 | 120 | public Date getConsumeDate() { 121 | return consumeDate; 122 | } 123 | 124 | public void setConsumeDate(Date consumeDate) { 125 | this.consumeDate = consumeDate; 126 | } 127 | 128 | public int getTypeId() { 129 | return typeId; 130 | } 131 | 132 | public void setTypeId(int typeId) { 133 | this.typeId = typeId; 134 | } 135 | 136 | public String getDate() { 137 | return date; 138 | } 139 | 140 | public void setDate(String date) { 141 | this.date = date; 142 | } 143 | } 144 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/House.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | 5 | public class House implements Serializable{ 6 | /** 7 | * 8 | */ 9 | private static final long serialVersionUID = 1L; 10 | 11 | private int buildingNum; 12 | 13 | private int roomNum; 14 | 15 | private String userId; 16 | 17 | private int houseType; 18 | 19 | private double area; 20 | 21 | private String description; 22 | 23 | public int getBuildingNum() { 24 | return buildingNum; 25 | } 26 | 27 | public void setBuildingNum(int buildingNum) { 28 | this.buildingNum = buildingNum; 29 | } 30 | 31 | public int getRoomNum() { 32 | return roomNum; 33 | } 34 | 35 | public void setRoomNum(int roomNum) { 36 | this.roomNum = roomNum; 37 | } 38 | 39 | public String getUserId() { 40 | return userId; 41 | } 42 | 43 | public void setUserId(String userId) { 44 | this.userId = userId; 45 | } 46 | 47 | public int getHouseType() { 48 | return houseType; 49 | } 50 | 51 | public void setHouseType(int houseType) { 52 | this.houseType = houseType; 53 | } 54 | 55 | public double getArea() { 56 | return area; 57 | } 58 | 59 | public void setArea(double area) { 60 | this.area = area; 61 | } 62 | 63 | public String getDescription() { 64 | return description; 65 | } 66 | 67 | public void setDescription(String description) { 68 | this.description = description; 69 | } 70 | 71 | } 72 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/HouseType.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | 5 | public class HouseType implements Serializable{ 6 | private int houseType; 7 | private double area; 8 | private String description; 9 | public int getHouseType() { 10 | return houseType; 11 | } 12 | public double getArea() { 13 | return area; 14 | } 15 | public String getDescription() { 16 | return description; 17 | } 18 | public void setHouseType(int houseType) { 19 | this.houseType = houseType; 20 | } 21 | public void setArea(double area) { 22 | this.area = area; 23 | } 24 | public void setDescription(String description) { 25 | this.description = description; 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/Notice.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | import java.util.Date; 5 | 6 | import org.springframework.format.annotation.DateTimeFormat; 7 | 8 | 9 | public class Notice implements Serializable{ 10 | /** 11 | * 12 | */ 13 | private static final long serialVersionUID = 1L; 14 | 15 | private int noticeId; 16 | 17 | private int noticeType; 18 | 19 | @DateTimeFormat(pattern="yyyy-MM-dd") 20 | private Date noticeDate; 21 | @DateTimeFormat(pattern="yyyy-MM-dd") 22 | private Date changeDate; 23 | 24 | private String noticeTitle; 25 | 26 | private String noticeContent; 27 | 28 | private String pictureAddress; 29 | 30 | private int typeId; 31 | 32 | public int getNoticeId() { 33 | return noticeId; 34 | } 35 | 36 | public void setNoticeId(int noticeId) { 37 | this.noticeId = noticeId; 38 | } 39 | 40 | public int getNoticeType() { 41 | return noticeType; 42 | } 43 | 44 | public void setNoticeType(int noticeType) { 45 | this.noticeType = noticeType; 46 | } 47 | 48 | public Date getNoticeDate() { 49 | return noticeDate; 50 | } 51 | 52 | public void setNoticeDate(Date noticeDate) { 53 | this.noticeDate = noticeDate; 54 | } 55 | 56 | public Date getChangeDate() { 57 | return changeDate; 58 | } 59 | 60 | public void setChangeDate(Date changeDate) { 61 | this.changeDate = changeDate; 62 | } 63 | 64 | public String getNoticeTitle() { 65 | return noticeTitle; 66 | } 67 | 68 | public void setNoticeTitle(String noticeTitle) { 69 | this.noticeTitle = noticeTitle; 70 | } 71 | 72 | public String getNoticeContent() { 73 | return noticeContent; 74 | } 75 | 76 | public void setNoticeContent(String noticeContent) { 77 | this.noticeContent = noticeContent; 78 | } 79 | 80 | public String getPictureAddress() { 81 | return pictureAddress; 82 | } 83 | 84 | public void setPictureAddress(String pictureAddress) { 85 | this.pictureAddress = pictureAddress; 86 | } 87 | 88 | public int getTypeId() { 89 | return typeId; 90 | } 91 | 92 | public void setTypeId(int typeId) { 93 | this.typeId = typeId; 94 | } 95 | 96 | } 97 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/PageVO.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * 分页结果存放数据模型 7 | * @param 8 | */ 9 | public class PageVO { 10 | 11 | /** 12 | * 当前页码 13 | */ 14 | private int current = 1; 15 | 16 | /** 17 | * 每页最大数 18 | */ 19 | private int rowMax = 10; 20 | 21 | /** 22 | * 最大页码 23 | */ 24 | private int pageMax; 25 | 26 | /** 27 | * 总计数量 28 | */ 29 | private int total; 30 | /** 31 | * 当前页的数据 32 | */ 33 | private List rows; 34 | 35 | 36 | public int getCurrent() { 37 | return current; 38 | } 39 | 40 | public void setCurrent(int current) { 41 | this.current = current; 42 | } 43 | 44 | public int getRowMax() { 45 | return rowMax; 46 | } 47 | 48 | public void setRowMax(int rowMax) { 49 | this.rowMax = rowMax; 50 | } 51 | 52 | public int getTotal() { 53 | return total; 54 | } 55 | 56 | public void setTotal(int total) { 57 | this.total = total; 58 | } 59 | 60 | public List getRows() { 61 | return rows; 62 | } 63 | 64 | public void setRows(List rows) { 65 | this.rows = rows; 66 | } 67 | 68 | public int getPageMax() { 69 | return pageMax; 70 | } 71 | 72 | public void setPageMax(int pageMax) { 73 | this.pageMax = pageMax; 74 | } 75 | 76 | } 77 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/Repair.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | import java.util.Date; 5 | 6 | import org.springframework.format.annotation.DateTimeFormat; 7 | 8 | public class Repair implements Serializable{ 9 | /** 10 | * 11 | */ 12 | private static final long serialVersionUID = 1L; 13 | 14 | private int repairId; 15 | 16 | private int buildingNum; 17 | 18 | private int roomNum; 19 | 20 | private String userId; 21 | 22 | @DateTimeFormat(pattern="yyyy-MM-dd") 23 | private Date repairDate; 24 | 25 | private String repairContent; 26 | 27 | private int repairState; 28 | 29 | private String repairResponse; 30 | 31 | private int typeId; 32 | 33 | public int getRepairId() { 34 | return repairId; 35 | } 36 | 37 | public void setRepairId(int repairId) { 38 | this.repairId = repairId; 39 | } 40 | 41 | public int getBuildingNum() { 42 | return buildingNum; 43 | } 44 | 45 | public void setBuildingNum(int buildingNum) { 46 | this.buildingNum = buildingNum; 47 | } 48 | 49 | public int getRoomNum() { 50 | return roomNum; 51 | } 52 | 53 | public void setRoomNum(int roomNum) { 54 | this.roomNum = roomNum; 55 | } 56 | 57 | public String getUserId() { 58 | return userId; 59 | } 60 | 61 | public void setUserId(String userId) { 62 | this.userId = userId; 63 | } 64 | 65 | public Date getRepairDate() { 66 | return repairDate; 67 | } 68 | 69 | public void setRepairDate(Date repairDate) { 70 | this.repairDate = repairDate; 71 | } 72 | 73 | public String getRepairContent() { 74 | return repairContent; 75 | } 76 | 77 | public void setRepairContent(String repairContent) { 78 | this.repairContent = repairContent; 79 | } 80 | 81 | public int getRepairState() { 82 | return repairState; 83 | } 84 | 85 | public void setRepairState(int repairState) { 86 | this.repairState = repairState; 87 | } 88 | 89 | public String getRepairResponse() { 90 | return repairResponse; 91 | } 92 | 93 | public void setRepairResponse(String repairResponse) { 94 | this.repairResponse = repairResponse; 95 | } 96 | 97 | public int getTypeId() { 98 | return typeId; 99 | } 100 | 101 | public void setTypeId(int typeId) { 102 | this.typeId = typeId; 103 | } 104 | 105 | } 106 | -------------------------------------------------------------------------------- /src/org/csu/pms/domain/User.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.domain; 2 | 3 | import java.io.Serializable; 4 | 5 | public class User implements Serializable{ 6 | /** 7 | * 8 | */ 9 | private static final long serialVersionUID = 1L; 10 | 11 | private String userId; 12 | 13 | private String password; 14 | 15 | private String userName; 16 | 17 | private String sex; 18 | 19 | private String phone; 20 | 21 | private int roleType; 22 | 23 | private int sexId; 24 | 25 | private int typeId; 26 | 27 | public int getSexId() { 28 | return sexId; 29 | } 30 | 31 | public int getTypeId() { 32 | return typeId; 33 | } 34 | 35 | public void setSexId(int sexId) { 36 | this.sexId = sexId; 37 | } 38 | 39 | public void setTypeId(int typeId) { 40 | this.typeId = typeId; 41 | } 42 | 43 | public String getUserId() { 44 | return userId; 45 | } 46 | 47 | public void setUserId(String userId) { 48 | this.userId = userId; 49 | } 50 | 51 | public String getPassword() { 52 | return password; 53 | } 54 | 55 | public void setPassword(String password) { 56 | this.password = password; 57 | } 58 | 59 | public String getUserName() { 60 | return userName; 61 | } 62 | 63 | public void setUserName(String userName) { 64 | this.userName = userName; 65 | } 66 | 67 | public String getSex() { 68 | return sex; 69 | } 70 | 71 | public void setSex(String sex) { 72 | this.sex = sex; 73 | } 74 | 75 | public String getPhone() { 76 | return phone; 77 | } 78 | 79 | public void setPhone(String phone) { 80 | this.phone = phone; 81 | } 82 | 83 | public int getRoleType() { 84 | return roleType; 85 | } 86 | 87 | public void setRoleType(int roleType) { 88 | this.roleType = roleType; 89 | } 90 | 91 | } 92 | -------------------------------------------------------------------------------- /src/org/csu/pms/interceptor/AuthorizationIntercepor.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.interceptor; 2 | import org.csu.pms.domain.User; 3 | import org.springframework.web.servlet.HandlerInterceptor; 4 | import org.springframework.web.servlet.ModelAndView; 5 | 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | 9 | /** 10 | * Created by zgm on 2017/8/28. 11 | */ 12 | public class AuthorizationIntercepor implements HandlerInterceptor { 13 | /*private static final String[]Ignore={"/loginForm","/login"};*/ 14 | @Override 15 | public boolean preHandle(HttpServletRequest request , HttpServletResponse response, Object handler)throws Exception{ 16 | boolean flag=false; 17 | /* String servletPath=request.getServletPath(); 18 | for(String s:Ignore){ 19 | if(servletPath.contains(s)){ 20 | flag=true; 21 | break; 22 | } 23 | }*/ 24 | if(!flag){ 25 | User user=(User)request.getSession().getAttribute("user"); 26 | if(user==null){ 27 | request.setAttribute("errorMessage","请先登录,才能为您服务"); 28 | request.getRequestDispatcher("index").forward(request,response); 29 | } 30 | else { 31 | flag=true; 32 | } 33 | } 34 | return flag; 35 | } 36 | 37 | @Override 38 | public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { 39 | 40 | } 41 | 42 | @Override 43 | public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { 44 | 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /src/org/csu/pms/service/PmsService.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.service; 2 | 3 | import java.util.List; 4 | import java.util.Map; 5 | 6 | import org.csu.pms.domain.Advice; 7 | import org.csu.pms.domain.Car; 8 | import org.csu.pms.domain.Consume; 9 | import org.csu.pms.domain.House; 10 | import org.csu.pms.domain.HouseType; 11 | import org.csu.pms.domain.Notice; 12 | import org.csu.pms.domain.PageVO; 13 | import org.csu.pms.domain.Repair; 14 | import org.csu.pms.domain.User; 15 | 16 | 17 | 18 | public interface PmsService { 19 | 20 | //user 21 | User login(String userId ,String password); 22 | PageVO listUser(User user, int pageNo, int rowMax); 23 | 24 | User findUserById(String userId); 25 | void removeUserById(String userId); 26 | void modifyUser(User user); 27 | void addUser(User user); 28 | 29 | //notice 30 | PageVO listNotice(int pageNO, int rowMax); 31 | Notice selectNewsItem(String noticeTitle); 32 | List selectTopThree(); 33 | List getNoticeTwo(); 34 | Notice getMissing(); 35 | PageVO listNotice(Notice notice,int pageNo, int rowMax); 36 | void addNotice(Notice notice); 37 | void removeNotice(int noticeId); 38 | void modifyNotice(Notice notice); 39 | Notice findNotice(int noticeId); 40 | 41 | //consume 42 | PageVO listConsume(Consume consume, int pageNo, int rowMax); 43 | void addConsume(Consume consume); 44 | public PageVO listConsumeUser(Map map, int pageNo, int rowMax); 45 | void payOneItem(int consumeId); 46 | 47 | //repair 48 | PageVO listRepair(Repair repair, int pageNo, int rowMax); 49 | void addRepair(Repair repair); 50 | void removeRepair(int repairId); 51 | void modifyRepair(Repair repair); 52 | Repair findRepair(int repairId); 53 | public Repair selectRepairByIdUser(int repairId); 54 | public PageVO listRepairUser(Repair repair, int pageNo, int rowMax); 55 | 56 | //advice 57 | PageVO listAdvice(Advice advice, int pageNo, int rowMax); 58 | public PageVO listAdviceUser(Advice advice, int pageNo, int rowMax); 59 | void addAdvice(Advice advice); 60 | void removeAdvice(int adviceId); 61 | void modifyAdvice(Advice advice); 62 | Advice findAdvice(int adviceId); 63 | 64 | //house 65 | PageVO listHouse(House house, int pageNo, int rowMax); 66 | void addHouse(House house); 67 | void removeHouse(int buildingNum,int roomNum); 68 | void modifyHouse(House house); 69 | House findHouse(int buildingNum, int roomNum); 70 | 71 | //car 72 | PageVO listCar(Car car, int pageNo, int rowMax); 73 | void addCar(Car car); 74 | Car findCarById(String carNum); 75 | void removeCarById(String carNum); 76 | void modifyCar(Car car); 77 | 78 | //houseType 79 | PageVO listHouseType(HouseType houseType, int pageNo, int rowMax); 80 | void addHouseType(HouseType houseType); 81 | HouseType findHouseType(int houseType); 82 | void removeHouseType(int houseType); 83 | void modifyHouseType(HouseType houseType); 84 | void change(String userId, String password, String phone); 85 | 86 | } -------------------------------------------------------------------------------- /src/org/csu/pms/util/common/PmsConstants.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.util.common; 2 | 3 | public class PmsConstants { 4 | public static final String USERTABLE = "userinfo"; 5 | public static final String REPAIRTABLE = "repairtable"; 6 | public static final String NOTICETABLE = "noticetable"; 7 | public static final String HOUSETYPETABLE = "housetypeinfo"; 8 | public static final String HOUSETABLE = "houseinfo"; 9 | public static final String CONSUMETABLE = "consumeinfo"; 10 | public static final String CARTABLE = "carinfo"; 11 | public static final String ADVICETABLE = "advicetable"; 12 | //登录 13 | public static final String LOGIN = "loginForm"; 14 | //用户的session对象 15 | public static final String USER_SESSION = "user_session"; 16 | //默认每页五条数据 17 | public static int PAGE_DEFAULT_SIZE = 4; 18 | 19 | } 20 | -------------------------------------------------------------------------------- /src/org/csu/pms/util/tag/PageModel.java: -------------------------------------------------------------------------------- 1 | package org.csu.pms.util.tag; 2 | 3 | import org.csu.pms.util.common.PmsConstants; 4 | 5 | /** 6 | * 分页实体 7 | */ 8 | public class PageModel { 9 | /** 分页总数据条数 */ 10 | private int recordCount; 11 | /** 当前页面 */ 12 | private int pageIndex ; 13 | /** 每页分多少条数据 */ 14 | private int pageSize = PmsConstants.PAGE_DEFAULT_SIZE = 4; 15 | 16 | /** 总页数 */ 17 | private int totalSize; 18 | 19 | public int getRecordCount() { 20 | this.recordCount = this.recordCount <= 0 ? 0:this.recordCount; 21 | return recordCount; 22 | } 23 | public void setRecordCount(int recordCount) { 24 | this.recordCount = recordCount; 25 | } 26 | public int getPageIndex() { 27 | this.pageIndex = this.pageIndex <= 0?1:this.pageIndex; 28 | /** 判断当前页面是否超过了总页数:如果超过了默认给最后一页作为当前页 */ 29 | this.pageIndex = this.pageIndex>=this.getTotalSize()?this.getTotalSize():this.pageIndex; 30 | 31 | return pageIndex; 32 | } 33 | public void setPageIndex(int pageIndex) { 34 | this.pageIndex = pageIndex; 35 | } 36 | public int getPageSize() { 37 | this.pageSize = this.pageSize <= PmsConstants.PAGE_DEFAULT_SIZE?PmsConstants.PAGE_DEFAULT_SIZE:this.pageSize; 38 | return pageSize; 39 | } 40 | public void setPageSize(int pageSize) { 41 | this.pageSize = pageSize; 42 | } 43 | 44 | public int getTotalSize() { 45 | if(this.getRecordCount() <=0){ 46 | totalSize = 0 ; 47 | }else{ 48 | totalSize = (this.getRecordCount() -1)/this.getPageSize() + 1; 49 | } 50 | return totalSize; 51 | } 52 | 53 | 54 | public int getFirstLimitParam(){ 55 | return (this.getPageIndex()-1)*this.getPageSize() ; 56 | } 57 | 58 | 59 | 60 | 61 | } 62 | --------------------------------------------------------------------------------