suochencheng 7 lat temu
rodzic
commit
a8b1824b83
37 zmienionych plików z 4898 dodań i 3540 usunięć
  1. 282 0
      awesome-admin.iml
  2. 79 60
      src/main/java/com/izouma/awesomeadmin/dao/HouseInfoMapper.xml
  3. 136 126
      src/main/java/com/izouma/awesomeadmin/dao/MetroInfoMapper.xml
  4. 150 138
      src/main/java/com/izouma/awesomeadmin/dao/MetroStationMapper.xml
  5. 31 23
      src/main/java/com/izouma/awesomeadmin/model/HouseInfo.java
  6. 1 1
      src/main/java/com/izouma/awesomeadmin/service/OSSFileService.java
  7. 1 1
      src/main/java/com/izouma/awesomeadmin/web/AssetsController.java
  8. 1561 0
      src/main/java/test/com/izouma/admintemplate/datasource/MetroServiceTest.java
  9. 71 66
      src/main/vue/src/pages/BusinessCircle.vue
  10. 148 223
      src/main/vue/src/pages/BusinessCircles.vue
  11. 61 49
      src/main/vue/src/pages/ContactRecord.vue
  12. 112 163
      src/main/vue/src/pages/ContactRecords.vue
  13. 64 49
      src/main/vue/src/pages/Feedback.vue
  14. 118 173
      src/main/vue/src/pages/Feedbacks.vue
  15. 2 1
      src/main/vue/src/pages/GenCode.vue
  16. 55 49
      src/main/vue/src/pages/HotSearch.vue
  17. 102 123
      src/main/vue/src/pages/HotSearchs.vue
  18. 59 60
      src/main/vue/src/pages/HouseFeature.vue
  19. 106 153
      src/main/vue/src/pages/HouseFeatures.vue
  20. 59 53
      src/main/vue/src/pages/HouseImage.vue
  21. 118 143
      src/main/vue/src/pages/HouseImages.vue
  22. 0 2
      src/main/vue/src/pages/HouseInfo.vue
  23. 337 479
      src/main/vue/src/pages/HouseInfos.vue
  24. 0 2
      src/main/vue/src/pages/HouseKeeper.vue
  25. 128 183
      src/main/vue/src/pages/HouseKeepers.vue
  26. 62 63
      src/main/vue/src/pages/HousePart.vue
  27. 116 163
      src/main/vue/src/pages/HouseParts.vue
  28. 0 2
      src/main/vue/src/pages/HousingDistrict.vue
  29. 154 233
      src/main/vue/src/pages/HousingDistricts.vue
  30. 72 66
      src/main/vue/src/pages/MetroStation.vue
  31. 0 2
      src/main/vue/src/pages/NewsInfo.vue
  32. 140 203
      src/main/vue/src/pages/NewsInfos.vue
  33. 79 83
      src/main/vue/src/pages/SeeOrder.vue
  34. 153 214
      src/main/vue/src/pages/SeeOrders.vue
  35. 60 58
      src/main/vue/src/pages/UserCollection.vue
  36. 101 133
      src/main/vue/src/pages/UserCollections.vue
  37. 180 0
      src/main/vue/src/router/index.js

+ 282 - 0
awesome-admin.iml

@@ -0,0 +1,282 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
+  <component name="FacetManager">
+    <facet type="Spring" name="Spring">
+      <configuration />
+    </facet>
+    <facet type="web" name="Web">
+      <configuration>
+        <descriptors>
+          <deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/src/main/webapp/WEB-INF/web.xml" />
+        </descriptors>
+        <webroots>
+          <root url="file://$MODULE_DIR$/src/main/webapp" relative="/" />
+        </webroots>
+      </configuration>
+    </facet>
+  </component>
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
+    <output url="file://$MODULE_DIR$/target/classes" />
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
+      <excludeFolder url="file://$MODULE_DIR$/target" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-core:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-context:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-test:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-websocket:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-messaging:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.4.0.Final" level="project" />
+    <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.aspectj:aspectjrt:1.7.4" level="project" />
+    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.7.4" level="project" />
+    <orderEntry type="library" name="Maven: cglib:cglib:3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.ow2.asm:asm:4.2" level="project" />
+    <orderEntry type="library" name="Maven: org.mybatis:mybatis:3.3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:1.2.2" level="project" />
+    <orderEntry type="library" name="Maven: com.alibaba:druid:1.0.31" level="project" />
+    <orderEntry type="module-library">
+      <library name="Maven: com.alibaba:jconsole:1.8.0">
+        <CLASSES>
+          <root url="jar://C:/Program Files/Java/jdk1.8.0_141/lib/jconsole.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library name="Maven: com.alibaba:tools:1.8.0">
+        <CLASSES>
+          <root url="jar://C:/Program Files/Java/jdk1.8.0_141/lib/tools.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.30" level="project" />
+    <orderEntry type="library" name="Maven: com.microsoft.sqlserver:mssql-jdbc:6.4.0.jre8" level="project" />
+    <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.1" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-web:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-webmvc:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-oxm:4.3.5.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: opensymphony:sitemesh:2.4.2" level="project" />
+    <orderEntry type="library" scope="PROVIDED" name="Maven: javax:javaee-api:7.0" level="project" />
+    <orderEntry type="library" name="Maven: com.sun.mail:javax.mail:1.5.0" level="project" />
+    <orderEntry type="library" name="Maven: javax.servlet:jstl:1.2" level="project" />
+    <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" />
+    <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.1" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.11" level="project" />
+    <orderEntry type="library" name="Maven: org.jgroups:jgroups:3.6.6.Final" level="project" />
+    <orderEntry type="library" name="Maven: redis.clients:jedis:2.8.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.4.2" level="project" />
+    <orderEntry type="library" name="Maven: de.ruedigermoeller:fst:2.42" level="project" />
+    <orderEntry type="library" name="Maven: org.javassist:javassist:3.19.0-GA" level="project" />
+    <orderEntry type="library" name="Maven: org.objenesis:objenesis:2.1" level="project" />
+    <orderEntry type="library" name="Maven: com.esotericsoftware:kryo-shaded:3.0.0" level="project" />
+    <orderEntry type="library" name="Maven: com.esotericsoftware:minlog:1.3.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-lang:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-cache:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-hash:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-core:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-cipher:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-core:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-ogdl:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-event:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-spring:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-cas:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.jasig.cas.client:cas-client-core:3.2.2" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-web:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.shiro:shiro-ehcache:1.4.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-engine:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-bpmn-converter:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-process-validation:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-image-generator:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-email:1.4" level="project" />
+    <orderEntry type="library" name="Maven: joda-time:joda-time:2.6" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-spring:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: commons-dbcp:commons-dbcp:1.4" level="project" />
+    <orderEntry type="library" name="Maven: commons-pool:commons-pool:1.5.4" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-explorer:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-crystalball:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: com.h2database:h2:1.3.176" level="project" />
+    <orderEntry type="library" name="Maven: org.imgscalr:imgscalr-lib:4.2" level="project" />
+    <orderEntry type="library" name="Maven: org.codehaus.groovy:groovy-all:2.4.5" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-modeler:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-common-rest:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-config:3.2.3.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:3.2.3.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-web:3.2.3.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-parser:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-awt-util:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-util:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-xml:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-transcoder:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:fop:0.94" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:xmlgraphics-commons:1.2" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.avalon.framework:avalon-framework-api:4.3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.avalon.framework:avalon-framework-impl:4.3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-dom:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-gvt:1.7" level="project" />
+    <orderEntry type="library" name="Maven: xml-apis:xml-apis-ext:1.3.04" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-bridge:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-anim:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-ext:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-script:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-js:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-codec:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-css:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-svg-dom:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlgraphics:batik-svggen:1.7" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-rest:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-simple-workflow:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-bpmn-layout:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.tinyjee.jgraphx:jgraphx:1.10.4.1" level="project" />
+    <orderEntry type="library" name="Maven: javax.annotation:jsr250-api:1.0" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-core:3.2.3.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-diagram-rest:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-json-converter:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-bpmn-model:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: math.geom2d:javaGeom:0.11.1" level="project" />
+    <orderEntry type="library" name="Maven: org.activiti:activiti-cxf:5.22.0" level="project" />
+    <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.11" level="project" />
+    <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-xjc:2.2.11" level="project" />
+    <orderEntry type="library" name="Maven: xerces:xercesImpl:2.11.0" level="project" />
+    <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.4.01" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-api:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.2.0" level="project" />
+    <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.0.3" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.geronimo.specs:geronimo-javamail_1.4_spec:1.7.1" level="project" />
+    <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.3" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" />
+    <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-core:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.2" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.apache.cxf:cxf-rt-transports-http-jetty:2.7.6" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-server:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-continuation:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-http:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-io:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-util:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.eclipse.jetty:jetty-security:8.1.7.v20120910" level="project" />
+    <orderEntry type="library" scope="TEST" name="Maven: org.apache.geronimo.specs:geronimo-servlet_3.0_spec:1.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:2.7.6" level="project" />
+    <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.11" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.25" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.7.25" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.7.25" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.25" level="project" />
+    <orderEntry type="library" name="Maven: log4j:log4j:1.2.17" level="project" />
+    <orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
+    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" />
+    <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" />
+    <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" />
+    <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-text:1.3" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.1" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.8.6" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.8.6" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.8.6" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.8.6" level="project" />
+    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.40" level="project" />
+    <orderEntry type="library" name="Maven: com.thoughtworks.xstream:xstream:1.4" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.kxml:kxml2-min:2.3.0" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.dozer:dozer:5.5.1" level="project" />
+    <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.25-incubating" level="project" />
+    <orderEntry type="library" name="Maven: com.ibeetl:beetl:2.7.5" level="project" />
+    <orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.2" level="project" />
+    <orderEntry type="library" name="Maven: org.abego.treelayout:org.abego.treelayout.core:1.0.1" level="project" />
+    <orderEntry type="library" name="Maven: org.antlr:antlr4-annotations:4.2" level="project" />
+    <orderEntry type="library" name="Maven: javax.mail:mail:1.4.7" level="project" />
+    <orderEntry type="library" name="Maven: javax.activation:activation:1.1.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.poi:poi:3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.3.0" level="project" />
+    <orderEntry type="library" name="Maven: com.drewnoakes:metadata-extractor:2.10.1" level="project" />
+    <orderEntry type="library" name="Maven: com.google.zxing:core:3.3.0" level="project" />
+    <orderEntry type="library" name="Maven: batik:batik-util:1.6-1" level="project" />
+    <orderEntry type="library" name="Maven: batik:batik-gui-util:1.6-1" level="project" />
+    <orderEntry type="library" name="Maven: batik:batik-ext:1.6-1" level="project" />
+    <orderEntry type="library" name="Maven: xml-apis:xmlParserAPIs:2.0.2" level="project" />
+    <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.3" level="project" />
+    <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz-jobs:2.2.3" level="project" />
+    <orderEntry type="library" name="Maven: org.fusesource:sigar:1.6.4" level="project" />
+    <orderEntry type="library" name="Maven: net.coobird:thumbnailator:0.4.8" level="project" />
+    <orderEntry type="library" name="Maven: com.github.abel533:ECharts:3.0.0.2" level="project" />
+    <orderEntry type="library" name="Maven: com.google.code.gson:gson:2.6.2" level="project" />
+    <orderEntry type="library" name="Maven: junit:junit:4.12" level="project" />
+    <orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
+    <orderEntry type="library" name="Maven: eu.bitwalker:UserAgentUtils:1.20" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.4" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.13" level="project" />
+    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.13" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-core:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.6.14" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: org.reflections:reflections:0.9.11" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.1.0.Final" level="project" />
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.7.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
+    <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
+    <orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.5" level="project" />
+    <orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-core:3.2.2" level="project" />
+    <orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-vod:2.2.0" level="project" />
+    <orderEntry type="library" name="Maven: com.aliyun.oss:aliyun-sdk-oss:2.0.6" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:jdk15:2.4" level="project" />
+    <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" />
+    <orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.ezmorph:ezmorph:1.0.6" level="project" />
+    <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.3" level="project" />
+    <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.0.Final" level="project" />
+    <orderEntry type="library" name="Maven: org.jboss:jboss-vfs:3.2.12.Final" level="project" />
+    <orderEntry type="library" name="Maven: org.jdom:jdom:1.1" level="project" />
+    <orderEntry type="library" name="Maven: org.codehaus.jettison:jettison:1.1" level="project" />
+    <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" />
+    <orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:2.4" level="project" />
+    <orderEntry type="library" name="Maven: org.json:json:20160810" level="project" />
+    <orderEntry type="library" name="Maven: com.adobe.xmp:xmpcore:5.1.3" level="project" />
+    <orderEntry type="library" name="Maven: xpp3:xpp3_min:1.1.4c" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.velocity:velocity-engine-core:2.0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.velocity:velocity-tools:2.0" level="project" />
+    <orderEntry type="library" name="Maven: commons-digester:commons-digester:1.8" level="project" />
+    <orderEntry type="library" name="Maven: commons-chain:commons-chain:1.1" level="project" />
+    <orderEntry type="library" name="Maven: commons-validator:commons-validator:1.3.1" level="project" />
+    <orderEntry type="library" name="Maven: oro:oro:2.0.8" level="project" />
+    <orderEntry type="library" name="Maven: sslext:sslext:1.2-0" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.struts:struts-core:1.3.8" level="project" />
+    <orderEntry type="library" name="Maven: antlr:antlr:2.7.2" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.struts:struts-taglib:1.3.8" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.struts:struts-tiles:1.3.8" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.velocity:velocity:1.6.2" level="project" />
+    <orderEntry type="library" name="Maven: com.fasterxml.uuid:java-uuid-generator:3.1.3" level="project" />
+    <orderEntry type="library" name="Maven: com.baidu:ueditor:1.1.2" level="project" />
+  </component>
+</module>

+ 79 - 60
src/main/java/com/izouma/awesomeadmin/dao/HouseInfoMapper.xml

@@ -24,7 +24,7 @@
                                 <result column="housekeeper" property="housekeeper" jdbcType="INTEGER" />
                                 <result column="retrieval" property="retrieval" jdbcType="VARCHAR" />
                                 <result column="housing_district" property="housingDistrict" jdbcType="VARCHAR" />
-                                <result column="street" property="street" jdbcType="VARCHAR" />
+                                <result column="street_code" property="streetCode" jdbcType="VARCHAR" />
                                 <result column="business_circle_code" property="businessCircleCode" jdbcType="VARCHAR" />
                                 <result column="district_code" property="districtCode" jdbcType="VARCHAR" />
                                 <result column="city_code" property="cityCode" jdbcType="VARCHAR" />
@@ -33,16 +33,17 @@
                                 <result column="remark" property="remark" jdbcType="VARCHAR" />
                                 <result column="rank" property="rank" jdbcType="INTEGER" />
                                 <result column="hot" property="hot" jdbcType="INTEGER" />
-                                <result column="recommend" property="recommend" jdbcType="CHAR" />
-                                <result column="selected" property="selected" jdbcType="CHAR" />
+                                <result column="recommend_flag" property="recommendFlag" jdbcType="CHAR" />
+                                <result column="selected_flag" property="selectedFlag" jdbcType="CHAR" />
                                 <result column="address" property="address" jdbcType="VARCHAR" />
                                 <result column="address_detail" property="addressDetail" jdbcType="VARCHAR" />
+                                <result column="status_flag" property="statusFlag" jdbcType="INTEGER" />
+                                <result column="build_year" property="buildYear" jdbcType="VARCHAR" />
                                 <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
                                 <result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
-                                <result column="status_flag" property="statusFlag" jdbcType="INTEGER" />
             </resultMap>
     <sql id="Base_Column_List" >
-            id,            del_flag,            title,            price,            pay_mode,            feature_code,            house_area,            room,            hall,            guard,            total_floor,            house_floor,            faced,            decoration,            check_in,            elevator,            renting_type,            part_code,            house_introduce,            housekeeper,            retrieval,            housing_district,            street,            business_circle_code,            district_code,            city_code,            lat,            lng,            remark,            rank,            hot,            recommend,            selected,            address,            address_detail,            create_time,            update_time,            status_flag        </sql>
+            id,            del_flag,            title,            price,            pay_mode,            feature_code,            house_area,            room,            hall,            guard,            total_floor,            house_floor,            faced,            decoration,            check_in,            elevator,            renting_type,            part_code,            house_introduce,            housekeeper,            retrieval,            housing_district,            street_code,            business_circle_code,            district_code,            city_code,            lat,            lng,            remark,            rank,            hot,            recommend_flag,            selected_flag,            address,            address_detail,            status_flag,            build_year,            create_time,            update_time        </sql>
     <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
         select
         <include refid="Base_Column_List" />
@@ -122,8 +123,8 @@
                 <if test="housingDistrict!= null" >
                 housing_district,
             </if>
-                <if test="street!= null" >
-                street,
+                <if test="streetCode!= null" >
+                street_code,
             </if>
                 <if test="businessCircleCode!= null" >
                 business_circle_code,
@@ -149,26 +150,29 @@
                 <if test="hot!= null" >
                 hot,
             </if>
-                <if test="recommend!= null" >
-                recommend,
+                <if test="recommendFlag!= null" >
+                recommend_flag,
             </if>
-                <if test="selected!= null" >
-                selected,
+                <if test="selectedFlag!= null" >
+                selected_flag,
             </if>
                 <if test="address!= null" >
                 address,
             </if>
                 <if test="addressDetail!= null" >
                 address_detail,
+            </if>
+                <if test="statusFlag!= null" >
+                status_flag,
+            </if>
+                <if test="buildYear!= null" >
+                build_year,
             </if>
                 <if test="createTime!= null" >
                 create_time,
             </if>
                 <if test="updateTime!= null" >
                 update_time,
-            </if>
-                <if test="statusFlag!= null" >
-                status_flag,
             </if>
             </trim>
         <trim prefix="values (" suffix=")" suffixOverrides="," >
@@ -238,8 +242,8 @@
                     <if test="housingDistrict != null" >
                 #{housingDistrict,jdbcType=VARCHAR},
             </if>
-                    <if test="street != null" >
-                #{street,jdbcType=VARCHAR},
+                    <if test="streetCode != null" >
+                #{streetCode,jdbcType=VARCHAR},
             </if>
                     <if test="businessCircleCode != null" >
                 #{businessCircleCode,jdbcType=VARCHAR},
@@ -265,26 +269,29 @@
                     <if test="hot != null" >
                 #{hot,jdbcType=INTEGER},
             </if>
-                    <if test="recommend != null" >
-                #{recommend,jdbcType=CHAR},
+                    <if test="recommendFlag != null" >
+                #{recommendFlag,jdbcType=CHAR},
             </if>
-                    <if test="selected != null" >
-                #{selected,jdbcType=CHAR},
+                    <if test="selectedFlag != null" >
+                #{selectedFlag,jdbcType=CHAR},
             </if>
                     <if test="address != null" >
                 #{address,jdbcType=VARCHAR},
             </if>
                     <if test="addressDetail != null" >
                 #{addressDetail,jdbcType=VARCHAR},
+            </if>
+                    <if test="statusFlag != null" >
+                #{statusFlag,jdbcType=INTEGER},
+            </if>
+                    <if test="buildYear != null" >
+                #{buildYear,jdbcType=VARCHAR},
             </if>
                     <if test="createTime != null" >
                 #{createTime,jdbcType=TIMESTAMP},
             </if>
                     <if test="updateTime != null" >
                 #{updateTime,jdbcType=TIMESTAMP},
-            </if>
-                    <if test="statusFlag != null" >
-                #{statusFlag,jdbcType=INTEGER},
             </if>
                 </trim>
     </insert>
@@ -357,8 +364,8 @@
                      <if test="housingDistrict != null" >
                housing_district= #{housingDistrict,jdbcType=VARCHAR},
             </if>
-                     <if test="street != null" >
-               street= #{street,jdbcType=VARCHAR},
+                     <if test="streetCode != null" >
+               street_code= #{streetCode,jdbcType=VARCHAR},
             </if>
                      <if test="businessCircleCode != null" >
                business_circle_code= #{businessCircleCode,jdbcType=VARCHAR},
@@ -384,26 +391,29 @@
                      <if test="hot != null" >
                hot= #{hot,jdbcType=INTEGER},
             </if>
-                     <if test="recommend != null" >
-               recommend= #{recommend,jdbcType=CHAR},
+                     <if test="recommendFlag != null" >
+               recommend_flag= #{recommendFlag,jdbcType=CHAR},
             </if>
-                     <if test="selected != null" >
-               selected= #{selected,jdbcType=CHAR},
+                     <if test="selectedFlag != null" >
+               selected_flag= #{selectedFlag,jdbcType=CHAR},
             </if>
                      <if test="address != null" >
                address= #{address,jdbcType=VARCHAR},
             </if>
                      <if test="addressDetail != null" >
                address_detail= #{addressDetail,jdbcType=VARCHAR},
+            </if>
+                     <if test="statusFlag != null" >
+               status_flag= #{statusFlag,jdbcType=INTEGER},
+            </if>
+                     <if test="buildYear != null" >
+               build_year= #{buildYear,jdbcType=VARCHAR},
             </if>
                      <if test="createTime != null" >
                create_time= #{createTime,jdbcType=TIMESTAMP},
             </if>
                      <if test="updateTime != null" >
                update_time= #{updateTime,jdbcType=TIMESTAMP},
-            </if>
-                     <if test="statusFlag != null" >
-               status_flag= #{statusFlag,jdbcType=INTEGER},
             </if>
                  </set>
         where id = #{id,jdbcType=INTEGER}
@@ -478,8 +488,8 @@
                      <if test="record.housingDistrict != null and !&quot;&quot;.equals(record.housingDistrict)">
                 and  housing_district = #{record.housingDistrict}
             </if>
-                     <if test="record.street != null and !&quot;&quot;.equals(record.street)">
-                and  street = #{record.street}
+                     <if test="record.streetCode != null and !&quot;&quot;.equals(record.streetCode)">
+                and  street_code = #{record.streetCode}
             </if>
                      <if test="record.businessCircleCode != null and !&quot;&quot;.equals(record.businessCircleCode)">
                 and  business_circle_code = #{record.businessCircleCode}
@@ -505,26 +515,29 @@
                      <if test="record.hot != null and !&quot;&quot;.equals(record.hot)">
                 and  hot = #{record.hot}
             </if>
-                     <if test="record.recommend != null and !&quot;&quot;.equals(record.recommend)">
-                and  recommend = #{record.recommend}
+                     <if test="record.recommendFlag != null and !&quot;&quot;.equals(record.recommendFlag)">
+                and  recommend_flag = #{record.recommendFlag}
             </if>
-                     <if test="record.selected != null and !&quot;&quot;.equals(record.selected)">
-                and  selected = #{record.selected}
+                     <if test="record.selectedFlag != null and !&quot;&quot;.equals(record.selectedFlag)">
+                and  selected_flag = #{record.selectedFlag}
             </if>
                      <if test="record.address != null and !&quot;&quot;.equals(record.address)">
                 and  address = #{record.address}
             </if>
                      <if test="record.addressDetail != null and !&quot;&quot;.equals(record.addressDetail)">
                 and  address_detail = #{record.addressDetail}
+            </if>
+                     <if test="record.statusFlag != null and !&quot;&quot;.equals(record.statusFlag)">
+                and  status_flag = #{record.statusFlag}
+            </if>
+                     <if test="record.buildYear != null and !&quot;&quot;.equals(record.buildYear)">
+                and  build_year = #{record.buildYear}
             </if>
                      <if test="record.createTime != null and !&quot;&quot;.equals(record.createTime)">
                 and  create_time = #{record.createTime}
             </if>
                      <if test="record.updateTime != null and !&quot;&quot;.equals(record.updateTime)">
                 and  update_time = #{record.updateTime}
-            </if>
-                     <if test="record.statusFlag != null and !&quot;&quot;.equals(record.statusFlag)">
-                and  status_flag = #{record.statusFlag}
             </if>
                  </where>
         order by id desc
@@ -599,8 +612,8 @@
                     <if test="housingDistrict != null and !&quot;&quot;.equals(housingDistrict)">
                 and  housing_district = #{housingDistrict}
             </if>
-                    <if test="street != null and !&quot;&quot;.equals(street)">
-                and  street = #{street}
+                    <if test="streetCode != null and !&quot;&quot;.equals(streetCode)">
+                and  street_code = #{streetCode}
             </if>
                     <if test="businessCircleCode != null and !&quot;&quot;.equals(businessCircleCode)">
                 and  business_circle_code = #{businessCircleCode}
@@ -626,26 +639,29 @@
                     <if test="hot != null and !&quot;&quot;.equals(hot)">
                 and  hot = #{hot}
             </if>
-                    <if test="recommend != null and !&quot;&quot;.equals(recommend)">
-                and  recommend = #{recommend}
+                    <if test="recommendFlag != null and !&quot;&quot;.equals(recommendFlag)">
+                and  recommend_flag = #{recommendFlag}
             </if>
-                    <if test="selected != null and !&quot;&quot;.equals(selected)">
-                and  selected = #{selected}
+                    <if test="selectedFlag != null and !&quot;&quot;.equals(selectedFlag)">
+                and  selected_flag = #{selectedFlag}
             </if>
                     <if test="address != null and !&quot;&quot;.equals(address)">
                 and  address = #{address}
             </if>
                     <if test="addressDetail != null and !&quot;&quot;.equals(addressDetail)">
                 and  address_detail = #{addressDetail}
+            </if>
+                    <if test="statusFlag != null and !&quot;&quot;.equals(statusFlag)">
+                and  status_flag = #{statusFlag}
+            </if>
+                    <if test="buildYear != null and !&quot;&quot;.equals(buildYear)">
+                and  build_year = #{buildYear}
             </if>
                     <if test="createTime != null and !&quot;&quot;.equals(createTime)">
                 and  create_time = #{createTime}
             </if>
                     <if test="updateTime != null and !&quot;&quot;.equals(updateTime)">
                 and  update_time = #{updateTime}
-            </if>
-                    <if test="statusFlag != null and !&quot;&quot;.equals(statusFlag)">
-                and  status_flag = #{statusFlag}
             </if>
                 </where>
         order by id desc
@@ -720,8 +736,8 @@
                      <if test="housingDistrict != null and !&quot;&quot;.equals(housingDistrict)">
                 and housing_district = #{housingDistrict}
             </if>
-                     <if test="street != null and !&quot;&quot;.equals(street)">
-                and street = #{street}
+                     <if test="streetCode != null and !&quot;&quot;.equals(streetCode)">
+                and street_code = #{streetCode}
             </if>
                      <if test="businessCircleCode != null and !&quot;&quot;.equals(businessCircleCode)">
                 and business_circle_code = #{businessCircleCode}
@@ -747,26 +763,29 @@
                      <if test="hot != null and !&quot;&quot;.equals(hot)">
                 and hot = #{hot}
             </if>
-                     <if test="recommend != null and !&quot;&quot;.equals(recommend)">
-                and recommend = #{recommend}
+                     <if test="recommendFlag != null and !&quot;&quot;.equals(recommendFlag)">
+                and recommend_flag = #{recommendFlag}
             </if>
-                     <if test="selected != null and !&quot;&quot;.equals(selected)">
-                and selected = #{selected}
+                     <if test="selectedFlag != null and !&quot;&quot;.equals(selectedFlag)">
+                and selected_flag = #{selectedFlag}
             </if>
                      <if test="address != null and !&quot;&quot;.equals(address)">
                 and address = #{address}
             </if>
                      <if test="addressDetail != null and !&quot;&quot;.equals(addressDetail)">
                 and address_detail = #{addressDetail}
+            </if>
+                     <if test="statusFlag != null and !&quot;&quot;.equals(statusFlag)">
+                and status_flag = #{statusFlag}
+            </if>
+                     <if test="buildYear != null and !&quot;&quot;.equals(buildYear)">
+                and build_year = #{buildYear}
             </if>
                      <if test="createTime != null and !&quot;&quot;.equals(createTime)">
                 and create_time = #{createTime}
             </if>
                      <if test="updateTime != null and !&quot;&quot;.equals(updateTime)">
                 and update_time = #{updateTime}
-            </if>
-                     <if test="statusFlag != null and !&quot;&quot;.equals(statusFlag)">
-                and status_flag = #{statusFlag}
             </if>
          
         </where>
@@ -782,7 +801,7 @@
         select <include refid="Base_Column_List"/> from house_info
         <where>
             and del_flag = 'N'
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </where>
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </where>
         order by id desc
     </select>
 </mapper>

+ 136 - 126
src/main/java/com/izouma/awesomeadmin/dao/MetroInfoMapper.xml

@@ -1,242 +1,250 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.izouma.awesomeadmin.dao.MetroInfoMapper" >
-    <resultMap id="BaseResultMap" type="com.izouma.awesomeadmin.model.MetroInfo" >
-                <id column="id" property="id" jdbcType="INTEGER" />
-                                        <result column="del_flag" property="delFlag" jdbcType="CHAR" />
-                                <result column="metro_name" property="metroName" jdbcType="VARCHAR" />
-                                <result column="code" property="code" jdbcType="VARCHAR" />
-                                <result column="lat" property="lat" jdbcType="VARCHAR" />
-                                <result column="lng" property="lng" jdbcType="VARCHAR" />
-                                <result column="remark" property="remark" jdbcType="VARCHAR" />
-                                <result column="city_code" property="cityCode" jdbcType="VARCHAR" />
-                                <result column="rank" property="rank" jdbcType="INTEGER" />
-                                <result column="hot" property="hot" jdbcType="INTEGER" />
-            </resultMap>
-    <sql id="Base_Column_List" >
+<mapper namespace="com.izouma.awesomeadmin.dao.MetroInfoMapper">
+    <resultMap id="BaseResultMap" type="com.izouma.awesomeadmin.model.MetroInfo">
+        <id column="id" property="id" jdbcType="INTEGER"/>
+        <result column="del_flag" property="delFlag" jdbcType="CHAR"/>
+        <result column="metro_name" property="metroName" jdbcType="VARCHAR"/>
+        <result column="code" property="code" jdbcType="VARCHAR"/>
+        <result column="lat" property="lat" jdbcType="VARCHAR"/>
+        <result column="lng" property="lng" jdbcType="VARCHAR"/>
+        <result column="remark" property="remark" jdbcType="VARCHAR"/>
+        <result column="city_code" property="cityCode" jdbcType="VARCHAR"/>
+        <result column="rank" property="rank" jdbcType="INTEGER"/>
+        <result column="hot" property="hot" jdbcType="INTEGER"/>
+    </resultMap>
+    <sql id="Base_Column_List">
             id,            del_flag,            metro_name,            code,            lat,            lng,            remark,            city_code,            rank,            hot        </sql>
-    <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+    <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
         select
-        <include refid="Base_Column_List" />
+        <include refid="Base_Column_List"/>
         from metro_info
         where id = #{id,jdbcType=INTEGER}
     </select>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
+    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
         delete from metro_info
         where id = #{id,jdbcType=INTEGER}
     </delete>
-    <insert id="insertSelective" parameterType="com.izouma.awesomeadmin.model.MetroInfo" useGeneratedKeys="true" keyProperty="id">
+    <insert id="insertSelective" parameterType="com.izouma.awesomeadmin.model.MetroInfo" useGeneratedKeys="true"
+            keyProperty="id">
         insert into metro_info
-        <trim prefix="(" suffix=")" suffixOverrides="," >
-                <if test="id!= null" >
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id!= null">
                 id,
             </if>
-                <if test="delFlag!= null" >
+            <if test="delFlag!= null">
                 del_flag,
             </if>
-                <if test="metroName!= null" >
+            <if test="metroName!= null">
                 metro_name,
             </if>
-                <if test="code!= null" >
+            <if test="code!= null">
                 code,
             </if>
-                <if test="lat!= null" >
+            <if test="lat!= null">
                 lat,
             </if>
-                <if test="lng!= null" >
+            <if test="lng!= null">
                 lng,
             </if>
-                <if test="remark!= null" >
+            <if test="remark!= null">
                 remark,
             </if>
-                <if test="cityCode!= null" >
+            <if test="cityCode!= null">
                 city_code,
             </if>
-                <if test="rank!= null" >
+            <if test="rank!= null">
                 rank,
             </if>
-                <if test="hot!= null" >
+            <if test="hot!= null">
                 hot,
             </if>
-            </trim>
-        <trim prefix="values (" suffix=")" suffixOverrides="," >
-                    <if test="id != null" >
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">
                 #{id,jdbcType=INTEGER},
             </if>
-                    <if test="delFlag != null" >
+            <if test="delFlag != null">
                 #{delFlag,jdbcType=CHAR},
             </if>
-                    <if test="metroName != null" >
+            <if test="metroName != null">
                 #{metroName,jdbcType=VARCHAR},
             </if>
-                    <if test="code != null" >
+            <if test="code != null">
                 #{code,jdbcType=VARCHAR},
             </if>
-                    <if test="lat != null" >
+            <if test="lat != null">
                 #{lat,jdbcType=VARCHAR},
             </if>
-                    <if test="lng != null" >
+            <if test="lng != null">
                 #{lng,jdbcType=VARCHAR},
             </if>
-                    <if test="remark != null" >
+            <if test="remark != null">
                 #{remark,jdbcType=VARCHAR},
             </if>
-                    <if test="cityCode != null" >
+            <if test="cityCode != null">
                 #{cityCode,jdbcType=VARCHAR},
             </if>
-                    <if test="rank != null" >
+            <if test="rank != null">
                 #{rank,jdbcType=INTEGER},
             </if>
-                    <if test="hot != null" >
+            <if test="hot != null">
                 #{hot,jdbcType=INTEGER},
             </if>
-                </trim>
+        </trim>
     </insert>
-    <update id="updateByPrimaryKeySelective" parameterType="com.izouma.awesomeadmin.model.MetroInfo" >
+    <update id="updateByPrimaryKeySelective" parameterType="com.izouma.awesomeadmin.model.MetroInfo">
         update metro_info
-        <set >
-                    <if test="id != null" >
-               id= #{id,jdbcType=INTEGER},
+        <set>
+            <if test="id != null">
+                id= #{id,jdbcType=INTEGER},
             </if>
-                     <if test="delFlag != null" >
-               del_flag= #{delFlag,jdbcType=CHAR},
+            <if test="delFlag != null">
+                del_flag= #{delFlag,jdbcType=CHAR},
             </if>
-                     <if test="metroName != null" >
-               metro_name= #{metroName,jdbcType=VARCHAR},
+            <if test="metroName != null">
+                metro_name= #{metroName,jdbcType=VARCHAR},
             </if>
-                     <if test="code != null" >
-               code= #{code,jdbcType=VARCHAR},
+            <if test="code != null">
+                code= #{code,jdbcType=VARCHAR},
             </if>
-                     <if test="lat != null" >
-               lat= #{lat,jdbcType=VARCHAR},
+            <if test="lat != null">
+                lat= #{lat,jdbcType=VARCHAR},
             </if>
-                     <if test="lng != null" >
-               lng= #{lng,jdbcType=VARCHAR},
+            <if test="lng != null">
+                lng= #{lng,jdbcType=VARCHAR},
             </if>
-                     <if test="remark != null" >
-               remark= #{remark,jdbcType=VARCHAR},
+            <if test="remark != null">
+                remark= #{remark,jdbcType=VARCHAR},
             </if>
-                     <if test="cityCode != null" >
-               city_code= #{cityCode,jdbcType=VARCHAR},
+            <if test="cityCode != null">
+                city_code= #{cityCode,jdbcType=VARCHAR},
             </if>
-                     <if test="rank != null" >
-               rank= #{rank,jdbcType=INTEGER},
+            <if test="rank != null">
+                rank= #{rank,jdbcType=INTEGER},
             </if>
-                     <if test="hot != null" >
-               hot= #{hot,jdbcType=INTEGER},
+            <if test="hot != null">
+                hot= #{hot,jdbcType=INTEGER},
             </if>
-                 </set>
+        </set>
         where id = #{id,jdbcType=INTEGER}
     </update>
-    <select id="queryMetroInfoByPage" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroInfo">
-        select <include refid="Base_Column_List"/> from metro_info
+    <select id="queryMetroInfoByPage" parameterType="java.util.Map"
+            resultType="com.izouma.awesomeadmin.model.MetroInfo">
+        select
+        <include refid="Base_Column_List"/>
+        from metro_info
         <where>
             and del_flag = 'N'
-                    <if test="record.id != null and !&quot;&quot;.equals(record.id)">
-                and  id = #{record.id}
+            <if test="record.id != null and !&quot;&quot;.equals(record.id)">
+                and id = #{record.id}
             </if>
-                     <if test="record.delFlag != null and !&quot;&quot;.equals(record.delFlag)">
-                and  del_flag = #{record.delFlag}
+            <if test="record.delFlag != null and !&quot;&quot;.equals(record.delFlag)">
+                and del_flag = #{record.delFlag}
             </if>
-                     <if test="record.metroName != null and !&quot;&quot;.equals(record.metroName)">
-                and  metro_name = #{record.metroName}
+            <if test="record.metroName != null and !&quot;&quot;.equals(record.metroName)">
+                and metro_name = #{record.metroName}
             </if>
-                     <if test="record.code != null and !&quot;&quot;.equals(record.code)">
-                and  code = #{record.code}
+            <if test="record.code != null and !&quot;&quot;.equals(record.code)">
+                and code = #{record.code}
             </if>
-                     <if test="record.lat != null and !&quot;&quot;.equals(record.lat)">
-                and  lat = #{record.lat}
+            <if test="record.lat != null and !&quot;&quot;.equals(record.lat)">
+                and lat = #{record.lat}
             </if>
-                     <if test="record.lng != null and !&quot;&quot;.equals(record.lng)">
-                and  lng = #{record.lng}
+            <if test="record.lng != null and !&quot;&quot;.equals(record.lng)">
+                and lng = #{record.lng}
             </if>
-                     <if test="record.remark != null and !&quot;&quot;.equals(record.remark)">
-                and  remark = #{record.remark}
+            <if test="record.remark != null and !&quot;&quot;.equals(record.remark)">
+                and remark = #{record.remark}
             </if>
-                     <if test="record.cityCode != null and !&quot;&quot;.equals(record.cityCode)">
-                and  city_code = #{record.cityCode}
+            <if test="record.cityCode != null and !&quot;&quot;.equals(record.cityCode)">
+                and city_code = #{record.cityCode}
             </if>
-                     <if test="record.rank != null and !&quot;&quot;.equals(record.rank)">
-                and  rank = #{record.rank}
+            <if test="record.rank != null and !&quot;&quot;.equals(record.rank)">
+                and rank = #{record.rank}
             </if>
-                     <if test="record.hot != null and !&quot;&quot;.equals(record.hot)">
-                and  hot = #{record.hot}
+            <if test="record.hot != null and !&quot;&quot;.equals(record.hot)">
+                and hot = #{record.hot}
             </if>
-                 </where>
-        order by id desc
+        </where>
+        order by city_code, rank
     </select>
     <select id="queryAllMetroInfo" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroInfo">
-        select <include refid="Base_Column_List"/> from metro_info
+        select
+        <include refid="Base_Column_List"/>
+        from metro_info
         <where>
             and del_flag = 'N'
-                    <if test="id != null and !&quot;&quot;.equals(id)">
-                and  id = #{id}
+            <if test="id != null and !&quot;&quot;.equals(id)">
+                and id = #{id}
             </if>
-                    <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
-                and  del_flag = #{delFlag}
+            <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
+                and del_flag = #{delFlag}
             </if>
-                    <if test="metroName != null and !&quot;&quot;.equals(metroName)">
-                and  metro_name = #{metroName}
+            <if test="metroName != null and !&quot;&quot;.equals(metroName)">
+                and metro_name = #{metroName}
             </if>
-                    <if test="code != null and !&quot;&quot;.equals(code)">
-                and  code = #{code}
+            <if test="code != null and !&quot;&quot;.equals(code)">
+                and code = #{code}
             </if>
-                    <if test="lat != null and !&quot;&quot;.equals(lat)">
-                and  lat = #{lat}
+            <if test="lat != null and !&quot;&quot;.equals(lat)">
+                and lat = #{lat}
             </if>
-                    <if test="lng != null and !&quot;&quot;.equals(lng)">
-                and  lng = #{lng}
+            <if test="lng != null and !&quot;&quot;.equals(lng)">
+                and lng = #{lng}
             </if>
-                    <if test="remark != null and !&quot;&quot;.equals(remark)">
-                and  remark = #{remark}
+            <if test="remark != null and !&quot;&quot;.equals(remark)">
+                and remark = #{remark}
             </if>
-                    <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
-                and  city_code = #{cityCode}
+            <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
+                and city_code = #{cityCode}
             </if>
-                    <if test="rank != null and !&quot;&quot;.equals(rank)">
-                and  rank = #{rank}
+            <if test="rank != null and !&quot;&quot;.equals(rank)">
+                and rank = #{rank}
             </if>
-                    <if test="hot != null and !&quot;&quot;.equals(hot)">
-                and  hot = #{hot}
+            <if test="hot != null and !&quot;&quot;.equals(hot)">
+                and hot = #{hot}
             </if>
-                </where>
-        order by id desc
+        </where>
+         order by city_code, rank
     </select>
     <select id="queryMetroInfo" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroInfo">
-        select <include refid="Base_Column_List"/> from metro_info
+        select
+        <include refid="Base_Column_List"/>
+        from metro_info
         <where>
             and del_flag = 'N'
-                    <if test="id != null and !&quot;&quot;.equals(id)">
+            <if test="id != null and !&quot;&quot;.equals(id)">
                 and id = #{id}
             </if>
-                     <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
+            <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
                 and del_flag = #{delFlag}
             </if>
-                     <if test="metroName != null and !&quot;&quot;.equals(metroName)">
+            <if test="metroName != null and !&quot;&quot;.equals(metroName)">
                 and metro_name = #{metroName}
             </if>
-                     <if test="code != null and !&quot;&quot;.equals(code)">
+            <if test="code != null and !&quot;&quot;.equals(code)">
                 and code = #{code}
             </if>
-                     <if test="lat != null and !&quot;&quot;.equals(lat)">
+            <if test="lat != null and !&quot;&quot;.equals(lat)">
                 and lat = #{lat}
             </if>
-                     <if test="lng != null and !&quot;&quot;.equals(lng)">
+            <if test="lng != null and !&quot;&quot;.equals(lng)">
                 and lng = #{lng}
             </if>
-                     <if test="remark != null and !&quot;&quot;.equals(remark)">
+            <if test="remark != null and !&quot;&quot;.equals(remark)">
                 and remark = #{remark}
             </if>
-                     <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
+            <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
                 and city_code = #{cityCode}
             </if>
-                     <if test="rank != null and !&quot;&quot;.equals(rank)">
+            <if test="rank != null and !&quot;&quot;.equals(rank)">
                 and rank = #{rank}
             </if>
-                     <if test="hot != null and !&quot;&quot;.equals(hot)">
+            <if test="hot != null and !&quot;&quot;.equals(hot)">
                 and hot = #{hot}
             </if>
-         
+
         </where>
         LIMIT 1
     </select>
@@ -247,10 +255,12 @@
         </where>
     </update>
     <select id="query" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroInfo">
-        select <include refid="Base_Column_List"/> from metro_info
+        select
+        <include refid="Base_Column_List"/>
+        from metro_info
         <where>
             and del_flag = 'N'
-                                                                                                                                                                                                                                                                                                            </where>
+        </where>
         order by id desc
     </select>
 </mapper>

+ 150 - 138
src/main/java/com/izouma/awesomeadmin/dao/MetroStationMapper.xml

@@ -1,261 +1,271 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.izouma.awesomeadmin.dao.MetroStationMapper" >
-    <resultMap id="BaseResultMap" type="com.izouma.awesomeadmin.model.MetroStation" >
-                <id column="id" property="id" jdbcType="INTEGER" />
-                                        <result column="del_flag" property="delFlag" jdbcType="CHAR" />
-                                <result column="station_name" property="stationName" jdbcType="VARCHAR" />
-                                <result column="code" property="code" jdbcType="VARCHAR" />
-                                <result column="lat" property="lat" jdbcType="VARCHAR" />
-                                <result column="lng" property="lng" jdbcType="VARCHAR" />
-                                <result column="remark" property="remark" jdbcType="VARCHAR" />
-                                <result column="city_code" property="cityCode" jdbcType="VARCHAR" />
-                                <result column="rank" property="rank" jdbcType="INTEGER" />
-                                <result column="hot" property="hot" jdbcType="INTEGER" />
-                                <result column="metro_code" property="metroCode" jdbcType="VARCHAR" />
-            </resultMap>
-    <sql id="Base_Column_List" >
+<mapper namespace="com.izouma.awesomeadmin.dao.MetroStationMapper">
+    <resultMap id="BaseResultMap" type="com.izouma.awesomeadmin.model.MetroStation">
+        <id column="id" property="id" jdbcType="INTEGER"/>
+        <result column="del_flag" property="delFlag" jdbcType="CHAR"/>
+        <result column="station_name" property="stationName" jdbcType="VARCHAR"/>
+        <result column="code" property="code" jdbcType="VARCHAR"/>
+        <result column="lat" property="lat" jdbcType="VARCHAR"/>
+        <result column="lng" property="lng" jdbcType="VARCHAR"/>
+        <result column="remark" property="remark" jdbcType="VARCHAR"/>
+        <result column="city_code" property="cityCode" jdbcType="VARCHAR"/>
+        <result column="rank" property="rank" jdbcType="INTEGER"/>
+        <result column="hot" property="hot" jdbcType="INTEGER"/>
+        <result column="metro_code" property="metroCode" jdbcType="VARCHAR"/>
+    </resultMap>
+    <sql id="Base_Column_List">
             id,            del_flag,            station_name,            code,            lat,            lng,            remark,            city_code,            rank,            hot,            metro_code        </sql>
-    <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+    <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
         select
-        <include refid="Base_Column_List" />
+        <include refid="Base_Column_List"/>
         from metro_station
         where id = #{id,jdbcType=INTEGER}
     </select>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
+    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
         delete from metro_station
         where id = #{id,jdbcType=INTEGER}
     </delete>
-    <insert id="insertSelective" parameterType="com.izouma.awesomeadmin.model.MetroStation" useGeneratedKeys="true" keyProperty="id">
+    <insert id="insertSelective" parameterType="com.izouma.awesomeadmin.model.MetroStation" useGeneratedKeys="true"
+            keyProperty="id">
         insert into metro_station
-        <trim prefix="(" suffix=")" suffixOverrides="," >
-                <if test="id!= null" >
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id!= null">
                 id,
             </if>
-                <if test="delFlag!= null" >
+            <if test="delFlag!= null">
                 del_flag,
             </if>
-                <if test="stationName!= null" >
+            <if test="stationName!= null">
                 station_name,
             </if>
-                <if test="code!= null" >
+            <if test="code!= null">
                 code,
             </if>
-                <if test="lat!= null" >
+            <if test="lat!= null">
                 lat,
             </if>
-                <if test="lng!= null" >
+            <if test="lng!= null">
                 lng,
             </if>
-                <if test="remark!= null" >
+            <if test="remark!= null">
                 remark,
             </if>
-                <if test="cityCode!= null" >
+            <if test="cityCode!= null">
                 city_code,
             </if>
-                <if test="rank!= null" >
+            <if test="rank!= null">
                 rank,
             </if>
-                <if test="hot!= null" >
+            <if test="hot!= null">
                 hot,
             </if>
-                <if test="metroCode!= null" >
+            <if test="metroCode!= null">
                 metro_code,
             </if>
-            </trim>
-        <trim prefix="values (" suffix=")" suffixOverrides="," >
-                    <if test="id != null" >
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">
                 #{id,jdbcType=INTEGER},
             </if>
-                    <if test="delFlag != null" >
+            <if test="delFlag != null">
                 #{delFlag,jdbcType=CHAR},
             </if>
-                    <if test="stationName != null" >
+            <if test="stationName != null">
                 #{stationName,jdbcType=VARCHAR},
             </if>
-                    <if test="code != null" >
+            <if test="code != null">
                 #{code,jdbcType=VARCHAR},
             </if>
-                    <if test="lat != null" >
+            <if test="lat != null">
                 #{lat,jdbcType=VARCHAR},
             </if>
-                    <if test="lng != null" >
+            <if test="lng != null">
                 #{lng,jdbcType=VARCHAR},
             </if>
-                    <if test="remark != null" >
+            <if test="remark != null">
                 #{remark,jdbcType=VARCHAR},
             </if>
-                    <if test="cityCode != null" >
+            <if test="cityCode != null">
                 #{cityCode,jdbcType=VARCHAR},
             </if>
-                    <if test="rank != null" >
+            <if test="rank != null">
                 #{rank,jdbcType=INTEGER},
             </if>
-                    <if test="hot != null" >
+            <if test="hot != null">
                 #{hot,jdbcType=INTEGER},
             </if>
-                    <if test="metroCode != null" >
+            <if test="metroCode != null">
                 #{metroCode,jdbcType=VARCHAR},
             </if>
-                </trim>
+        </trim>
     </insert>
-    <update id="updateByPrimaryKeySelective" parameterType="com.izouma.awesomeadmin.model.MetroStation" >
+    <update id="updateByPrimaryKeySelective" parameterType="com.izouma.awesomeadmin.model.MetroStation">
         update metro_station
-        <set >
-                    <if test="id != null" >
-               id= #{id,jdbcType=INTEGER},
+        <set>
+            <if test="id != null">
+                id= #{id,jdbcType=INTEGER},
             </if>
-                     <if test="delFlag != null" >
-               del_flag= #{delFlag,jdbcType=CHAR},
+            <if test="delFlag != null">
+                del_flag= #{delFlag,jdbcType=CHAR},
             </if>
-                     <if test="stationName != null" >
-               station_name= #{stationName,jdbcType=VARCHAR},
+            <if test="stationName != null">
+                station_name= #{stationName,jdbcType=VARCHAR},
             </if>
-                     <if test="code != null" >
-               code= #{code,jdbcType=VARCHAR},
+            <if test="code != null">
+                code= #{code,jdbcType=VARCHAR},
             </if>
-                     <if test="lat != null" >
-               lat= #{lat,jdbcType=VARCHAR},
+            <if test="lat != null">
+                lat= #{lat,jdbcType=VARCHAR},
             </if>
-                     <if test="lng != null" >
-               lng= #{lng,jdbcType=VARCHAR},
+            <if test="lng != null">
+                lng= #{lng,jdbcType=VARCHAR},
             </if>
-                     <if test="remark != null" >
-               remark= #{remark,jdbcType=VARCHAR},
+            <if test="remark != null">
+                remark= #{remark,jdbcType=VARCHAR},
             </if>
-                     <if test="cityCode != null" >
-               city_code= #{cityCode,jdbcType=VARCHAR},
+            <if test="cityCode != null">
+                city_code= #{cityCode,jdbcType=VARCHAR},
             </if>
-                     <if test="rank != null" >
-               rank= #{rank,jdbcType=INTEGER},
+            <if test="rank != null">
+                rank= #{rank,jdbcType=INTEGER},
             </if>
-                     <if test="hot != null" >
-               hot= #{hot,jdbcType=INTEGER},
+            <if test="hot != null">
+                hot= #{hot,jdbcType=INTEGER},
             </if>
-                     <if test="metroCode != null" >
-               metro_code= #{metroCode,jdbcType=VARCHAR},
+            <if test="metroCode != null">
+                metro_code= #{metroCode,jdbcType=VARCHAR},
             </if>
-                 </set>
+        </set>
         where id = #{id,jdbcType=INTEGER}
     </update>
-    <select id="queryMetroStationByPage" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroStation">
-        select <include refid="Base_Column_List"/> from metro_station
+    <select id="queryMetroStationByPage" parameterType="java.util.Map"
+            resultType="com.izouma.awesomeadmin.model.MetroStation">
+        select
+        <include refid="Base_Column_List"/>
+        from metro_station
         <where>
             and del_flag = 'N'
-                    <if test="record.id != null and !&quot;&quot;.equals(record.id)">
-                and  id = #{record.id}
+            <if test="record.id != null and !&quot;&quot;.equals(record.id)">
+                and id = #{record.id}
             </if>
-                     <if test="record.delFlag != null and !&quot;&quot;.equals(record.delFlag)">
-                and  del_flag = #{record.delFlag}
+            <if test="record.delFlag != null and !&quot;&quot;.equals(record.delFlag)">
+                and del_flag = #{record.delFlag}
             </if>
-                     <if test="record.stationName != null and !&quot;&quot;.equals(record.stationName)">
-                and  station_name = #{record.stationName}
+            <if test="record.stationName != null and !&quot;&quot;.equals(record.stationName)">
+                and station_name = #{record.stationName}
             </if>
-                     <if test="record.code != null and !&quot;&quot;.equals(record.code)">
-                and  code = #{record.code}
+            <if test="record.code != null and !&quot;&quot;.equals(record.code)">
+                and code = #{record.code}
             </if>
-                     <if test="record.lat != null and !&quot;&quot;.equals(record.lat)">
-                and  lat = #{record.lat}
+            <if test="record.lat != null and !&quot;&quot;.equals(record.lat)">
+                and lat = #{record.lat}
             </if>
-                     <if test="record.lng != null and !&quot;&quot;.equals(record.lng)">
-                and  lng = #{record.lng}
+            <if test="record.lng != null and !&quot;&quot;.equals(record.lng)">
+                and lng = #{record.lng}
             </if>
-                     <if test="record.remark != null and !&quot;&quot;.equals(record.remark)">
-                and  remark = #{record.remark}
+            <if test="record.remark != null and !&quot;&quot;.equals(record.remark)">
+                and remark = #{record.remark}
             </if>
-                     <if test="record.cityCode != null and !&quot;&quot;.equals(record.cityCode)">
-                and  city_code = #{record.cityCode}
+            <if test="record.cityCode != null and !&quot;&quot;.equals(record.cityCode)">
+                and city_code = #{record.cityCode}
             </if>
-                     <if test="record.rank != null and !&quot;&quot;.equals(record.rank)">
-                and  rank = #{record.rank}
+            <if test="record.rank != null and !&quot;&quot;.equals(record.rank)">
+                and rank = #{record.rank}
             </if>
-                     <if test="record.hot != null and !&quot;&quot;.equals(record.hot)">
-                and  hot = #{record.hot}
+            <if test="record.hot != null and !&quot;&quot;.equals(record.hot)">
+                and hot = #{record.hot}
             </if>
-                     <if test="record.metroCode != null and !&quot;&quot;.equals(record.metroCode)">
-                and  metro_code = #{record.metroCode}
+            <if test="record.metroCode != null and !&quot;&quot;.equals(record.metroCode)">
+                and metro_code = #{record.metroCode}
             </if>
-                 </where>
-        order by id desc
+        </where>
+        order by city_code,metro_code,rank
     </select>
-    <select id="queryAllMetroStation" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroStation">
-        select <include refid="Base_Column_List"/> from metro_station
+    <select id="queryAllMetroStation" parameterType="java.util.Map"
+            resultType="com.izouma.awesomeadmin.model.MetroStation">
+        select
+        <include refid="Base_Column_List"/>
+        from metro_station
         <where>
             and del_flag = 'N'
-                    <if test="id != null and !&quot;&quot;.equals(id)">
-                and  id = #{id}
+            <if test="id != null and !&quot;&quot;.equals(id)">
+                and id = #{id}
             </if>
-                    <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
-                and  del_flag = #{delFlag}
+            <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
+                and del_flag = #{delFlag}
             </if>
-                    <if test="stationName != null and !&quot;&quot;.equals(stationName)">
-                and  station_name = #{stationName}
+            <if test="stationName != null and !&quot;&quot;.equals(stationName)">
+                and station_name = #{stationName}
             </if>
-                    <if test="code != null and !&quot;&quot;.equals(code)">
-                and  code = #{code}
+            <if test="code != null and !&quot;&quot;.equals(code)">
+                and code = #{code}
             </if>
-                    <if test="lat != null and !&quot;&quot;.equals(lat)">
-                and  lat = #{lat}
+            <if test="lat != null and !&quot;&quot;.equals(lat)">
+                and lat = #{lat}
             </if>
-                    <if test="lng != null and !&quot;&quot;.equals(lng)">
-                and  lng = #{lng}
+            <if test="lng != null and !&quot;&quot;.equals(lng)">
+                and lng = #{lng}
             </if>
-                    <if test="remark != null and !&quot;&quot;.equals(remark)">
-                and  remark = #{remark}
+            <if test="remark != null and !&quot;&quot;.equals(remark)">
+                and remark = #{remark}
             </if>
-                    <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
-                and  city_code = #{cityCode}
+            <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
+                and city_code = #{cityCode}
             </if>
-                    <if test="rank != null and !&quot;&quot;.equals(rank)">
-                and  rank = #{rank}
+            <if test="rank != null and !&quot;&quot;.equals(rank)">
+                and rank = #{rank}
             </if>
-                    <if test="hot != null and !&quot;&quot;.equals(hot)">
-                and  hot = #{hot}
+            <if test="hot != null and !&quot;&quot;.equals(hot)">
+                and hot = #{hot}
             </if>
-                    <if test="metroCode != null and !&quot;&quot;.equals(metroCode)">
-                and  metro_code = #{metroCode}
+            <if test="metroCode != null and !&quot;&quot;.equals(metroCode)">
+                and metro_code = #{metroCode}
             </if>
-                </where>
-        order by id desc
+        </where>
+        order by city_code,metro_code,rank
     </select>
-    <select id="queryMetroStation" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroStation">
-        select <include refid="Base_Column_List"/> from metro_station
+    <select id="queryMetroStation" parameterType="java.util.Map"
+            resultType="com.izouma.awesomeadmin.model.MetroStation">
+        select
+        <include refid="Base_Column_List"/>
+        from metro_station
         <where>
             and del_flag = 'N'
-                    <if test="id != null and !&quot;&quot;.equals(id)">
+            <if test="id != null and !&quot;&quot;.equals(id)">
                 and id = #{id}
             </if>
-                     <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
+            <if test="delFlag != null and !&quot;&quot;.equals(delFlag)">
                 and del_flag = #{delFlag}
             </if>
-                     <if test="stationName != null and !&quot;&quot;.equals(stationName)">
+            <if test="stationName != null and !&quot;&quot;.equals(stationName)">
                 and station_name = #{stationName}
             </if>
-                     <if test="code != null and !&quot;&quot;.equals(code)">
+            <if test="code != null and !&quot;&quot;.equals(code)">
                 and code = #{code}
             </if>
-                     <if test="lat != null and !&quot;&quot;.equals(lat)">
+            <if test="lat != null and !&quot;&quot;.equals(lat)">
                 and lat = #{lat}
             </if>
-                     <if test="lng != null and !&quot;&quot;.equals(lng)">
+            <if test="lng != null and !&quot;&quot;.equals(lng)">
                 and lng = #{lng}
             </if>
-                     <if test="remark != null and !&quot;&quot;.equals(remark)">
+            <if test="remark != null and !&quot;&quot;.equals(remark)">
                 and remark = #{remark}
             </if>
-                     <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
+            <if test="cityCode != null and !&quot;&quot;.equals(cityCode)">
                 and city_code = #{cityCode}
             </if>
-                     <if test="rank != null and !&quot;&quot;.equals(rank)">
+            <if test="rank != null and !&quot;&quot;.equals(rank)">
                 and rank = #{rank}
             </if>
-                     <if test="hot != null and !&quot;&quot;.equals(hot)">
+            <if test="hot != null and !&quot;&quot;.equals(hot)">
                 and hot = #{hot}
             </if>
-                     <if test="metroCode != null and !&quot;&quot;.equals(metroCode)">
+            <if test="metroCode != null and !&quot;&quot;.equals(metroCode)">
                 and metro_code = #{metroCode}
             </if>
-         
+
         </where>
         LIMIT 1
     </select>
@@ -266,10 +276,12 @@
         </where>
     </update>
     <select id="query" parameterType="java.util.Map" resultType="com.izouma.awesomeadmin.model.MetroStation">
-        select <include refid="Base_Column_List"/> from metro_station
+        select
+        <include refid="Base_Column_List"/>
+        from metro_station
         <where>
             and del_flag = 'N'
-                                                                                                                                                                                                                                                                                                                                        </where>
+        </where>
         order by id desc
     </select>
 </mapper>

+ 31 - 23
src/main/java/com/izouma/awesomeadmin/model/HouseInfo.java

@@ -30,7 +30,7 @@ public class HouseInfo{
     private Integer housekeeper;
     private String retrieval;
     private String housingDistrict;
-    private String street;
+    private String streetCode;
     private String businessCircleCode;
     private String districtCode;
     private String cityCode;
@@ -39,13 +39,14 @@ public class HouseInfo{
     private String remark;
     private Integer rank;
     private Integer hot;
-    private String recommend;
-    private String selected;
+    private String recommendFlag;
+    private String selectedFlag;
     private String address;
     private String addressDetail;
+    private Integer statusFlag;
+    private String buildYear;
     private Date createTime;
     private Date updateTime;
-    private Integer statusFlag;
 
     public Integer getId(){
         return this.id;
@@ -201,12 +202,12 @@ public class HouseInfo{
     public void setHousingDistrict(String housingDistrict){
         this.housingDistrict = housingDistrict;
     }
-    public String getStreet(){
-        return this.street;
+    public String getStreetCode(){
+        return this.streetCode;
     }
 
-    public void setStreet(String street){
-        this.street = street;
+    public void setStreetCode(String streetCode){
+        this.streetCode = streetCode;
     }
     public String getBusinessCircleCode(){
         return this.businessCircleCode;
@@ -264,19 +265,19 @@ public class HouseInfo{
     public void setHot(Integer hot){
         this.hot = hot;
     }
-    public String getRecommend(){
-        return this.recommend;
+    public String getRecommendFlag(){
+        return this.recommendFlag;
     }
 
-    public void setRecommend(String recommend){
-        this.recommend = recommend;
+    public void setRecommendFlag(String recommendFlag){
+        this.recommendFlag = recommendFlag;
     }
-    public String getSelected(){
-        return this.selected;
+    public String getSelectedFlag(){
+        return this.selectedFlag;
     }
 
-    public void setSelected(String selected){
-        this.selected = selected;
+    public void setSelectedFlag(String selectedFlag){
+        this.selectedFlag = selectedFlag;
     }
     public String getAddress(){
         return this.address;
@@ -292,6 +293,20 @@ public class HouseInfo{
     public void setAddressDetail(String addressDetail){
         this.addressDetail = addressDetail;
     }
+    public Integer getStatusFlag(){
+        return this.statusFlag;
+    }
+
+    public void setStatusFlag(Integer statusFlag){
+        this.statusFlag = statusFlag;
+    }
+    public String getBuildYear(){
+        return this.buildYear;
+    }
+
+    public void setBuildYear(String buildYear){
+        this.buildYear = buildYear;
+    }
     public Date getCreateTime(){
         return this.createTime;
     }
@@ -306,13 +321,6 @@ public class HouseInfo{
     public void setUpdateTime(Date updateTime){
         this.updateTime = updateTime;
     }
-    public Integer getStatusFlag(){
-        return this.statusFlag;
-    }
-
-    public void setStatusFlag(Integer statusFlag){
-        this.statusFlag = statusFlag;
-    }
 
 
 }

+ 1 - 1
src/main/java/com/izouma/awesomeadmin/service/OSSFileService.java

@@ -69,7 +69,7 @@ public class OSSFileService {
 
     public String uploadImg(String base64) throws UnsupportedEncodingException {
 
-        String path = "izouma/application/";
+        String path = "xiangjuwu/application/";
 
         try {
             logger.info("uploadIcon:上传图片");

+ 1 - 1
src/main/java/com/izouma/awesomeadmin/web/AssetsController.java

@@ -63,7 +63,7 @@ public class AssetsController extends BaseController{
                 MultipartFile file = multiRequest.getFile(iter.next().toString());
                 if (file != null) {
                     try {
-                        String path = OSSFileService.upload(file.getInputStream(), "izouma/application/" + System.currentTimeMillis()
+                        String path = OSSFileService.upload(file.getInputStream(), "xiangjuwu/application/" + System.currentTimeMillis()
                                 + file.getOriginalFilename().replaceAll(".+\\.", "."));
                         paths += path + ";";
 

+ 1561 - 0
src/main/java/test/com/izouma/admintemplate/datasource/MetroServiceTest.java

@@ -0,0 +1,1561 @@
+package test.com.izouma.admintemplate.datasource;
+
+
+import com.izouma.awesomeadmin.model.MetroStation;
+import com.izouma.awesomeadmin.service.MetroStationService;
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+/**
+ * 配置spring和junit整合,junit启动时加载springIOC容器
+ * spring-test,junit
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration({"classpath:spring/applicationContext.xml"})
+public class MetroServiceTest {
+
+    @Autowired
+    MetroStationService metroStationService;
+
+
+    /**
+     * 一号线
+     */
+    @Test
+    public void test1() {
+
+        String stationStr = " [{\n" +
+                "\t\t\"station_id\": 100021144,\n" +
+                "\t\t\"station_name\": \"中国药科大学\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.920491,\n" +
+                "\t\t\"latitude\": 31.904084,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021145,\n" +
+                "\t\t\"station_name\": \"南京交院\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.911077,\n" +
+                "\t\t\"latitude\": 31.919259,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021146,\n" +
+                "\t\t\"station_name\": \"南医大·江苏经贸学院\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.896598,\n" +
+                "\t\t\"latitude\": 31.939698,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021147,\n" +
+                "\t\t\"station_name\": \"龙眠大道\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.883576,\n" +
+                "\t\t\"latitude\": 31.945734,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021148,\n" +
+                "\t\t\"station_name\": \"天印大道\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.870062,\n" +
+                "\t\t\"latitude\": 31.943381,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021149,\n" +
+                "\t\t\"station_name\": \"竹山路\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.851092,\n" +
+                "\t\t\"latitude\": 31.937761,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021150,\n" +
+                "\t\t\"station_name\": \"小龙湾\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.839381,\n" +
+                "\t\t\"latitude\": 31.935698,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021151,\n" +
+                "\t\t\"station_name\": \"百家湖\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.827721,\n" +
+                "\t\t\"latitude\": 31.938066,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021152,\n" +
+                "\t\t\"station_name\": \"胜太路\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.828062,\n" +
+                "\t\t\"latitude\": 31.94997,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021153,\n" +
+                "\t\t\"station_name\": \"河定桥\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.82664,\n" +
+                "\t\t\"latitude\": 31.958253,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021154,\n" +
+                "\t\t\"station_name\": \"双龙大道\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.823612,\n" +
+                "\t\t\"latitude\": 31.970204,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021155,\n" +
+                "\t\t\"station_name\": \"南京南站\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.804722,\n" +
+                "\t\t\"latitude\": 31.975004,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021156,\n" +
+                "\t\t\"station_name\": \"花神庙\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.792022,\n" +
+                "\t\t\"latitude\": 31.984143,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021157,\n" +
+                "\t\t\"station_name\": \"软件大道\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.781038,\n" +
+                "\t\t\"latitude\": 31.98327,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021158,\n" +
+                "\t\t\"station_name\": \"天隆寺\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.769449,\n" +
+                "\t\t\"latitude\": 31.985103,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021159,\n" +
+                "\t\t\"station_name\": \"安德门\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.768632,\n" +
+                "\t\t\"latitude\": 31.996661,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021160,\n" +
+                "\t\t\"station_name\": \"中华门\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.781161,\n" +
+                "\t\t\"latitude\": 32.013023,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021161,\n" +
+                "\t\t\"station_name\": \"三山街\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.788135,\n" +
+                "\t\t\"latitude\": 32.029064,\n" +
+                "\t\t\"sorted\": 18,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021162,\n" +
+                "\t\t\"station_name\": \"张府园\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790427,\n" +
+                "\t\t\"latitude\": 32.03722,\n" +
+                "\t\t\"sorted\": 19,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021163,\n" +
+                "\t\t\"station_name\": \"新街口\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790599,\n" +
+                "\t\t\"latitude\": 32.047251,\n" +
+                "\t\t\"sorted\": 20,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021164,\n" +
+                "\t\t\"station_name\": \"珠江路\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790662,\n" +
+                "\t\t\"latitude\": 32.057327,\n" +
+                "\t\t\"sorted\": 21,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021165,\n" +
+                "\t\t\"station_name\": \"鼓楼\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790271,\n" +
+                "\t\t\"latitude\": 32.065134,\n" +
+                "\t\t\"sorted\": 22,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021166,\n" +
+                "\t\t\"station_name\": \"玄武门\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790617,\n" +
+                "\t\t\"latitude\": 32.076336,\n" +
+                "\t\t\"sorted\": 23,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021167,\n" +
+                "\t\t\"station_name\": \"新模范马路\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790488,\n" +
+                "\t\t\"latitude\": 32.086151,\n" +
+                "\t\t\"sorted\": 24,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021168,\n" +
+                "\t\t\"station_name\": \"南京站\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.802398,\n" +
+                "\t\t\"latitude\": 32.092751,\n" +
+                "\t\t\"sorted\": 25,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021169,\n" +
+                "\t\t\"station_name\": \"红山动物园\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.808457,\n" +
+                "\t\t\"latitude\": 32.102101,\n" +
+                "\t\t\"sorted\": 26,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021170,\n" +
+                "\t\t\"station_name\": \"迈皋桥\",\n" +
+                "\t\t\"line_id\": 110460689,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.816053,\n" +
+                "\t\t\"latitude\": 32.108986,\n" +
+                "\t\t\"sorted\": 27,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    /**
+     * 二号线
+     */
+    @Test
+    public void test2() {
+
+        String stationStr = " [{\n" +
+                "\t\t\"station_id\": 100021171,\n" +
+                "\t\t\"station_name\": \"经天路\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.983258,\n" +
+                "\t\t\"latitude\": 32.121835,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021172,\n" +
+                "\t\t\"station_name\": \"南大仙林校区\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.965855,\n" +
+                "\t\t\"latitude\": 32.114588,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021173,\n" +
+                "\t\t\"station_name\": \"羊山公园\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.965855,\n" +
+                "\t\t\"latitude\": 32.114626,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021174,\n" +
+                "\t\t\"station_name\": \"仙林中心\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.936854,\n" +
+                "\t\t\"latitude\": 32.105107,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021175,\n" +
+                "\t\t\"station_name\": \"学则路\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.923278,\n" +
+                "\t\t\"latitude\": 32.097712,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021176,\n" +
+                "\t\t\"station_name\": \"仙鹤门\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.911331,\n" +
+                "\t\t\"latitude\": 32.091148,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021177,\n" +
+                "\t\t\"station_name\": \"金马路\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.912494,\n" +
+                "\t\t\"latitude\": 32.077912,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021178,\n" +
+                "\t\t\"station_name\": \"马群\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.901053,\n" +
+                "\t\t\"latitude\": 32.055735,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021179,\n" +
+                "\t\t\"station_name\": \"钟灵街\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.87598,\n" +
+                "\t\t\"latitude\": 32.044872,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021180,\n" +
+                "\t\t\"station_name\": \"孝陵卫\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.864929,\n" +
+                "\t\t\"latitude\": 32.041124,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021181,\n" +
+                "\t\t\"station_name\": \"下马坊\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.855049,\n" +
+                "\t\t\"latitude\": 32.043208,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021182,\n" +
+                "\t\t\"station_name\": \"苜蓿园\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.841625,\n" +
+                "\t\t\"latitude\": 32.045951,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021183,\n" +
+                "\t\t\"station_name\": \"明故宫\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.825883,\n" +
+                "\t\t\"latitude\": 32.045374,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021184,\n" +
+                "\t\t\"station_name\": \"西安门\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.812128,\n" +
+                "\t\t\"latitude\": 32.046538,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021185,\n" +
+                "\t\t\"station_name\": \"大行宫\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.801151,\n" +
+                "\t\t\"latitude\": 32.047343,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021163,\n" +
+                "\t\t\"station_name\": \"新街口\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790599,\n" +
+                "\t\t\"latitude\": 32.047251,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021186,\n" +
+                "\t\t\"station_name\": \"上海路\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.782521,\n" +
+                "\t\t\"latitude\": 32.048316,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021187,\n" +
+                "\t\t\"station_name\": \"汉中门\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.77355,\n" +
+                "\t\t\"latitude\": 32.048671,\n" +
+                "\t\t\"sorted\": 18,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021188,\n" +
+                "\t\t\"station_name\": \"莫愁湖\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.765195,\n" +
+                "\t\t\"latitude\": 32.043606,\n" +
+                "\t\t\"sorted\": 19,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021189,\n" +
+                "\t\t\"station_name\": \"云锦路\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.753993,\n" +
+                "\t\t\"latitude\": 32.04072,\n" +
+                "\t\t\"sorted\": 20,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021190,\n" +
+                "\t\t\"station_name\": \"集庆门大街\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.746134,\n" +
+                "\t\t\"latitude\": 32.034166,\n" +
+                "\t\t\"sorted\": 21,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021191,\n" +
+                "\t\t\"station_name\": \"兴隆大街\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.742628,\n" +
+                "\t\t\"latitude\": 32.021183,\n" +
+                "\t\t\"sorted\": 22,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021192,\n" +
+                "\t\t\"station_name\": \"奥体东\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.735757,\n" +
+                "\t\t\"latitude\": 32.010439,\n" +
+                "\t\t\"sorted\": 23,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021193,\n" +
+                "\t\t\"station_name\": \"元通\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.728019,\n" +
+                "\t\t\"latitude\": 32.001636,\n" +
+                "\t\t\"sorted\": 24,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021194,\n" +
+                "\t\t\"station_name\": \"雨润大街\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.729209,\n" +
+                "\t\t\"latitude\": 31.989406,\n" +
+                "\t\t\"sorted\": 25,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021195,\n" +
+                "\t\t\"station_name\": \"油坊桥\",\n" +
+                "\t\t\"line_id\": 110460690,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.727901,\n" +
+                "\t\t\"latitude\": 31.972224,\n" +
+                "\t\t\"sorted\": 26,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    /**
+     * 三号线
+     */
+    @Test
+    public void test3() {
+
+        String stationStr = "[{\n" +
+                "\t\t\"station_id\": 1416663329123803,\n" +
+                "\t\t\"station_name\": \"上元门\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.776208,\n" +
+                "\t\t\"latitude\": 32.121794,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021185,\n" +
+                "\t\t\"station_name\": \"大行宫\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.801151,\n" +
+                "\t\t\"latitude\": 32.047343,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99666724,\n" +
+                "\t\t\"station_name\": \"林场\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.678009,\n" +
+                "\t\t\"latitude\": 32.170109,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99666913,\n" +
+                "\t\t\"station_name\": \"星火路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.703346,\n" +
+                "\t\t\"latitude\": 32.163858,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99666971,\n" +
+                "\t\t\"station_name\": \"东大成贤学院\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.714507,\n" +
+                "\t\t\"latitude\": 32.162517,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99666973,\n" +
+                "\t\t\"station_name\": \"泰冯路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.72596,\n" +
+                "\t\t\"latitude\": 32.159767,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667088,\n" +
+                "\t\t\"station_name\": \"天润城\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.740576,\n" +
+                "\t\t\"latitude\": 32.156557,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667023,\n" +
+                "\t\t\"station_name\": \"柳洲东路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.752861,\n" +
+                "\t\t\"latitude\": 32.145751,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667024,\n" +
+                "\t\t\"station_name\": \"五塘广场\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.784107,\n" +
+                "\t\t\"latitude\": 32.116701,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667028,\n" +
+                "\t\t\"station_name\": \"小市\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.791824,\n" +
+                "\t\t\"latitude\": 32.101623,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021168,\n" +
+                "\t\t\"station_name\": \"南京站\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.802398,\n" +
+                "\t\t\"latitude\": 32.092751,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667760,\n" +
+                "\t\t\"station_name\": \"南京林业大学.新庄\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.816711,\n" +
+                "\t\t\"latitude\": 32.083043,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539574,\n" +
+                "\t\t\"station_name\": \"鸡鸣寺\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.80445,\n" +
+                "\t\t\"latitude\": 32.063573,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539685,\n" +
+                "\t\t\"station_name\": \"浮桥\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.802714,\n" +
+                "\t\t\"latitude\": 32.055384,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46540171,\n" +
+                "\t\t\"station_name\": \"常府街\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.798849,\n" +
+                "\t\t\"latitude\": 32.040268,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539590,\n" +
+                "\t\t\"station_name\": \"夫子庙\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.797506,\n" +
+                "\t\t\"latitude\": 32.030021,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539815,\n" +
+                "\t\t\"station_name\": \"武定门\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.80108,\n" +
+                "\t\t\"latitude\": 32.020041,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667857,\n" +
+                "\t\t\"station_name\": \"雨花门\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.798682,\n" +
+                "\t\t\"latitude\": 32.010274,\n" +
+                "\t\t\"sorted\": 18,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539845,\n" +
+                "\t\t\"station_name\": \"卡子门\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.801871,\n" +
+                "\t\t\"latitude\": 32.001903,\n" +
+                "\t\t\"sorted\": 19,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667881,\n" +
+                "\t\t\"station_name\": \"大明路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.806435,\n" +
+                "\t\t\"latitude\": 31.99243,\n" +
+                "\t\t\"sorted\": 20,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667884,\n" +
+                "\t\t\"station_name\": \"明发广场\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.80696,\n" +
+                "\t\t\"latitude\": 31.983525,\n" +
+                "\t\t\"sorted\": 21,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021155,\n" +
+                "\t\t\"station_name\": \"南京南站\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.804722,\n" +
+                "\t\t\"latitude\": 31.975004,\n" +
+                "\t\t\"sorted\": 22,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46541477,\n" +
+                "\t\t\"station_name\": \"宏运大道\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.810189,\n" +
+                "\t\t\"latitude\": 31.965805,\n" +
+                "\t\t\"sorted\": 23,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46541544,\n" +
+                "\t\t\"station_name\": \"胜太西路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.813814,\n" +
+                "\t\t\"latitude\": 31.950338,\n" +
+                "\t\t\"sorted\": 24,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99668002,\n" +
+                "\t\t\"station_name\": \"天元西路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.814964,\n" +
+                "\t\t\"latitude\": 31.934669,\n" +
+                "\t\t\"sorted\": 25,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667889,\n" +
+                "\t\t\"station_name\": \"九龙湖\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.827217,\n" +
+                "\t\t\"latitude\": 31.922074,\n" +
+                "\t\t\"sorted\": 26,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46541678,\n" +
+                "\t\t\"station_name\": \"诚信大道\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.836335,\n" +
+                "\t\t\"latitude\": 31.914028,\n" +
+                "\t\t\"sorted\": 27,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99668045,\n" +
+                "\t\t\"station_name\": \"东大九龙湖校区\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.837063,\n" +
+                "\t\t\"latitude\": 31.902089,\n" +
+                "\t\t\"sorted\": 28,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99667890,\n" +
+                "\t\t\"station_name\": \"秣周东路\",\n" +
+                "\t\t\"line_id\": 99666695,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.837673,\n" +
+                "\t\t\"latitude\": 31.876029,\n" +
+                "\t\t\"sorted\": 29,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    /**
+     * 四号线
+     */
+    @Test
+    public void test4() {
+
+        String stationStr = " [{\n" +
+                "\t\t\"station_id\": 1417112302629627,\n" +
+                "\t\t\"station_name\": \"仙林湖\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.999391,\n" +
+                "\t\t\"latitude\": 32.130829,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112574757499,\n" +
+                "\t\t\"station_name\": \"西岗桦墅\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 119.00322,\n" +
+                "\t\t\"latitude\": 32.104636,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112574757501,\n" +
+                "\t\t\"station_name\": \"孟北\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.994057,\n" +
+                "\t\t\"latitude\": 32.089972,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629649,\n" +
+                "\t\t\"station_name\": \"东流\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.971256,\n" +
+                "\t\t\"latitude\": 32.082913,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629664,\n" +
+                "\t\t\"station_name\": \"灵山\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.95042,\n" +
+                "\t\t\"latitude\": 32.083713,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629671,\n" +
+                "\t\t\"station_name\": \"汇通路\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.937461,\n" +
+                "\t\t\"latitude\": 32.084233,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021177,\n" +
+                "\t\t\"station_name\": \"金马路\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.912494,\n" +
+                "\t\t\"latitude\": 32.077912,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629747,\n" +
+                "\t\t\"station_name\": \"苏宁总部·徐庄\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.89492,\n" +
+                "\t\t\"latitude\": 32.090792,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112574757615,\n" +
+                "\t\t\"station_name\": \"聚宝山\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.871214,\n" +
+                "\t\t\"latitude\": 32.099156,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629803,\n" +
+                "\t\t\"station_name\": \"王家湾\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.844541,\n" +
+                "\t\t\"latitude\": 32.091116,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112302629813,\n" +
+                "\t\t\"station_name\": \"蒋王庙\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.836796,\n" +
+                "\t\t\"latitude\": 32.083634,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112574757732,\n" +
+                "\t\t\"station_name\": \"岗子村\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.822312,\n" +
+                "\t\t\"latitude\": 32.071738,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417113184481296,\n" +
+                "\t\t\"station_name\": \"九华山\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.81235,\n" +
+                "\t\t\"latitude\": 32.063722,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46539574,\n" +
+                "\t\t\"station_name\": \"鸡鸣寺\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.80445,\n" +
+                "\t\t\"latitude\": 32.063573,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021165,\n" +
+                "\t\t\"station_name\": \"鼓楼\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.790271,\n" +
+                "\t\t\"latitude\": 32.065134,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417112574757744,\n" +
+                "\t\t\"station_name\": \"云南路\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.78099,\n" +
+                "\t\t\"latitude\": 32.065183,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417113109507482,\n" +
+                "\t\t\"station_name\": \"南艺·二师·草场门\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.762454,\n" +
+                "\t\t\"latitude\": 32.066219,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1417113109507838,\n" +
+                "\t\t\"station_name\": \"龙江\",\n" +
+                "\t\t\"line_id\": 1417124675302304,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.74636,\n" +
+                "\t\t\"latitude\": 32.063672,\n" +
+                "\t\t\"sorted\": 18,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    /**
+     * 10号线
+     */
+    @Test
+    public void test10() {
+
+        String stationStr = "[{\n" +
+                "\t\t\"station_id\": 100021196,\n" +
+                "\t\t\"station_name\": \"雨山路\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.62186,\n" +
+                "\t\t\"latitude\": 32.050221,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021197,\n" +
+                "\t\t\"station_name\": \"文德路\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.633406,\n" +
+                "\t\t\"latitude\": 32.063193,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021198,\n" +
+                "\t\t\"station_name\": \"龙华路\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.641906,\n" +
+                "\t\t\"latitude\": 32.07041,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021199,\n" +
+                "\t\t\"station_name\": \"南京工业大学\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.654624,\n" +
+                "\t\t\"latitude\": 32.072823,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021200,\n" +
+                "\t\t\"station_name\": \"浦口万汇城\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.663185,\n" +
+                "\t\t\"latitude\": 32.068183,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021201,\n" +
+                "\t\t\"station_name\": \"临江\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.671513,\n" +
+                "\t\t\"latitude\": 32.063605,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021202,\n" +
+                "\t\t\"station_name\": \"江心洲\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.710073,\n" +
+                "\t\t\"latitude\": 32.038541,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021203,\n" +
+                "\t\t\"station_name\": \"绿博园\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.723864,\n" +
+                "\t\t\"latitude\": 32.030042,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021204,\n" +
+                "\t\t\"station_name\": \"梦都大街\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.728496,\n" +
+                "\t\t\"latitude\": 32.021622,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021205,\n" +
+                "\t\t\"station_name\": \"奥体中心\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.724648,\n" +
+                "\t\t\"latitude\": 32.014641,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021193,\n" +
+                "\t\t\"station_name\": \"元通\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.728019,\n" +
+                "\t\t\"latitude\": 32.001636,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021206,\n" +
+                "\t\t\"station_name\": \"中胜\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.740078,\n" +
+                "\t\t\"latitude\": 31.993863,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021207,\n" +
+                "\t\t\"station_name\": \"小行\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.750965,\n" +
+                "\t\t\"latitude\": 31.988061,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021159,\n" +
+                "\t\t\"station_name\": \"安德门\",\n" +
+                "\t\t\"line_id\": 110460691,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.768632,\n" +
+                "\t\t\"latitude\": 31.996661,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    /**
+     * S1号线
+     */
+    @Test
+    public void testS1() {
+
+        String stationStr = "[{\n" +
+                "\t\t\"station_id\": 100021155,\n" +
+                "\t\t\"station_name\": \"南京南站\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.804722,\n" +
+                "\t\t\"latitude\": 31.975004,\n" +
+                "\t\t\"sorted\": 0,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783702,\n" +
+                "\t\t\"station_name\": \"翠屏山\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.791108,\n" +
+                "\t\t\"latitude\": 31.948814,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783728,\n" +
+                "\t\t\"station_name\": \"河海大学.佛城西路\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.79776,\n" +
+                "\t\t\"latitude\": 31.920599,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783824,\n" +
+                "\t\t\"station_name\": \"吉印大道\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.801964,\n" +
+                "\t\t\"latitude\": 31.892513,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783825,\n" +
+                "\t\t\"station_name\": \"正方中路\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.812258,\n" +
+                "\t\t\"latitude\": 31.851706,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783829,\n" +
+                "\t\t\"station_name\": \"翔宇路北\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.828123,\n" +
+                "\t\t\"latitude\": 31.797892,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783830,\n" +
+                "\t\t\"station_name\": \"翔宇路南\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.835632,\n" +
+                "\t\t\"latitude\": 31.760843,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99783831,\n" +
+                "\t\t\"station_name\": \"禄口机场\",\n" +
+                "\t\t\"line_id\": 99785159,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.879815,\n" +
+                "\t\t\"latitude\": 31.736101,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    @Test
+    public void testS3() {
+
+        String stationStr = "[{\n" +
+                "\t\t\"station_id\": 100021155,\n" +
+                "\t\t\"station_name\": \"南京南站\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.804722,\n" +
+                "\t\t\"latitude\": 31.975004,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027175385041,\n" +
+                "\t\t\"station_name\": \"景明佳园\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.785341,\n" +
+                "\t\t\"latitude\": 31.968209,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027175385785,\n" +
+                "\t\t\"station_name\": \"铁心桥\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.7702,\n" +
+                "\t\t\"latitude\": 31.970368,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176446752,\n" +
+                "\t\t\"station_name\": \"春江路\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.755041,\n" +
+                "\t\t\"latitude\": 31.968155,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176432444,\n" +
+                "\t\t\"station_name\": \"贾西\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.740448,\n" +
+                "\t\t\"latitude\": 31.964981,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 100021195,\n" +
+                "\t\t\"station_name\": \"油坊桥\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.727901,\n" +
+                "\t\t\"latitude\": 31.972224,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176432943,\n" +
+                "\t\t\"station_name\": \"永初路\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.718659,\n" +
+                "\t\t\"latitude\": 31.98025,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177492538,\n" +
+                "\t\t\"station_name\": \"平良大街\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.709088,\n" +
+                "\t\t\"latitude\": 31.983814,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177492773,\n" +
+                "\t\t\"station_name\": \"吴侯街\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.699579,\n" +
+                "\t\t\"latitude\": 31.981759,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176433621,\n" +
+                "\t\t\"station_name\": \"高庙路\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.694796,\n" +
+                "\t\t\"latitude\": 31.974775,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177480342,\n" +
+                "\t\t\"station_name\": \"天保\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.684165,\n" +
+                "\t\t\"latitude\": 31.959624,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177495094,\n" +
+                "\t\t\"station_name\": \"刘村\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.671548,\n" +
+                "\t\t\"latitude\": 31.950551,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177494786,\n" +
+                "\t\t\"station_name\": \"马骡圩\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.594765,\n" +
+                "\t\t\"latitude\": 31.979205,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177494725,\n" +
+                "\t\t\"station_name\": \"兰花塘\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.581223,\n" +
+                "\t\t\"latitude\": 31.964291,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176433534,\n" +
+                "\t\t\"station_name\": \"双垅\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.573677,\n" +
+                "\t\t\"latitude\": 31.954358,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176433459,\n" +
+                "\t\t\"station_name\": \"石碛河\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.564461,\n" +
+                "\t\t\"latitude\": 31.944331,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176433631,\n" +
+                "\t\t\"station_name\": \"桥林新城\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.554517,\n" +
+                "\t\t\"latitude\": 31.936564,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027177492516,\n" +
+                "\t\t\"station_name\": \"林山\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.537584,\n" +
+                "\t\t\"latitude\": 31.924643,\n" +
+                "\t\t\"sorted\": 18,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 1420027176447875,\n" +
+                "\t\t\"station_name\": \"高家冲\",\n" +
+                "\t\t\"line_id\": 1420027174350126,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.523732,\n" +
+                "\t\t\"latitude\": 31.914598,\n" +
+                "\t\t\"sorted\": 19,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+    @Test
+    public void testS8() {
+
+        String stationStr = " [{\n" +
+                "\t\t\"station_id\": 46541927,\n" +
+                "\t\t\"station_name\": \"泰山新村\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.722583,\n" +
+                "\t\t\"latitude\": 32.150451,\n" +
+                "\t\t\"sorted\": 1,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99666973,\n" +
+                "\t\t\"station_name\": \"泰冯路\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.72596,\n" +
+                "\t\t\"latitude\": 32.159767,\n" +
+                "\t\t\"sorted\": 2,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46542360,\n" +
+                "\t\t\"station_name\": \"高新开发区\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.726225,\n" +
+                "\t\t\"latitude\": 32.183652,\n" +
+                "\t\t\"sorted\": 3,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46542362,\n" +
+                "\t\t\"station_name\": \"信息工程大学\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.73361,\n" +
+                "\t\t\"latitude\": 32.208513,\n" +
+                "\t\t\"sorted\": 4,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784182,\n" +
+                "\t\t\"station_name\": \"卸甲甸\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.737412,\n" +
+                "\t\t\"latitude\": 32.220884,\n" +
+                "\t\t\"sorted\": 5,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784185,\n" +
+                "\t\t\"station_name\": \"大厂\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.746628,\n" +
+                "\t\t\"latitude\": 32.234637,\n" +
+                "\t\t\"sorted\": 6,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46542364,\n" +
+                "\t\t\"station_name\": \"葛塘\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.760236,\n" +
+                "\t\t\"latitude\": 32.250232,\n" +
+                "\t\t\"sorted\": 7,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784276,\n" +
+                "\t\t\"station_name\": \"长芦\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.782938,\n" +
+                "\t\t\"latitude\": 32.279767,\n" +
+                "\t\t\"sorted\": 8,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784277,\n" +
+                "\t\t\"station_name\": \"化工园\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.792047,\n" +
+                "\t\t\"latitude\": 32.292244,\n" +
+                "\t\t\"sorted\": 9,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 46542370,\n" +
+                "\t\t\"station_name\": \"六合开发区\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.811511,\n" +
+                "\t\t\"latitude\": 32.311525,\n" +
+                "\t\t\"sorted\": 10,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784387,\n" +
+                "\t\t\"station_name\": \"龙池\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.826842,\n" +
+                "\t\t\"latitude\": 32.325214,\n" +
+                "\t\t\"sorted\": 11,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784549,\n" +
+                "\t\t\"station_name\": \"雄州\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.843299,\n" +
+                "\t\t\"latitude\": 32.340529,\n" +
+                "\t\t\"sorted\": 12,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784646,\n" +
+                "\t\t\"station_name\": \"凤凰山公园\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.851725,\n" +
+                "\t\t\"latitude\": 32.352716,\n" +
+                "\t\t\"sorted\": 13,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784721,\n" +
+                "\t\t\"station_name\": \"方州广场\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.856504,\n" +
+                "\t\t\"latitude\": 32.364885,\n" +
+                "\t\t\"sorted\": 14,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784427,\n" +
+                "\t\t\"station_name\": \"沈桥\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.898163,\n" +
+                "\t\t\"latitude\": 32.405964,\n" +
+                "\t\t\"sorted\": 15,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784801,\n" +
+                "\t\t\"station_name\": \"八百桥\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.939598,\n" +
+                "\t\t\"latitude\": 32.433281,\n" +
+                "\t\t\"sorted\": 16,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}, {\n" +
+                "\t\t\"station_id\": 99784966,\n" +
+                "\t\t\"station_name\": \"金牛湖\",\n" +
+                "\t\t\"line_id\": 99785188,\n" +
+                "\t\t\"city_id\": 320100,\n" +
+                "\t\t\"longitude\": 118.970625,\n" +
+                "\t\t\"latitude\": 32.470921,\n" +
+                "\t\t\"sorted\": 17,\n" +
+                "\t\t\"is_transfer_station\": 0\n" +
+                "\t}]";
+
+        genStation(stationStr);
+
+    }
+
+    private void genStation(String stationStr) {
+        JSONArray jsonArray = JSONArray.fromObject(stationStr);
+
+        for (int i = 0; i < jsonArray.size(); i++) {
+            JSONObject jobInfo = jsonArray.getJSONObject(i);
+
+            MetroStation metroStation = new MetroStation();
+            metroStation.setStationName(jobInfo.getString("station_name"));
+            metroStation.setCode(jobInfo.getString("station_id"));
+            metroStation.setCityCode(jobInfo.getString("city_id"));
+            metroStation.setLat(jobInfo.getString("latitude"));
+            metroStation.setLng(jobInfo.getString("longitude"));
+            metroStation.setRank(jobInfo.getInt("sorted"));
+            metroStation.setMetroCode(jobInfo.getString("line_id"));
+            metroStationService.createMetroStation(metroStation);
+
+
+        }
+    }
+
+
+}
+
+
+

+ 71 - 66
src/main/vue/src/pages/BusinessCircle.vue

@@ -1,32 +1,37 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="shortName" label="简称">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="shortName" label="简称">
                 <el-input v-model="formData.shortName"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="code" label="code">
+            <el-form-item prop="fullName" label="全称">
+                <el-input v-model="formData.fullName"></el-input>
+            </el-form-item>
+            <el-form-item prop="code" label="code">
                 <el-input v-model="formData.code"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="lat" label="纬度">
+            <el-form-item prop="lat" label="纬度">
                 <el-input type="number" v-model="formData.lat"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="lng" label="经度">
+            <el-form-item prop="lng" label="经度">
                 <el-input type="number" v-model="formData.lng"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                <el-form-item prop="remark" label="备注">
+            <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="cityCode" label="城市CODE">
+            <el-form-item prop="cityCode" label="城市CODE">
                 <el-input v-model="formData.cityCode"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="rank" label="排序">
+            <el-form-item prop="districtCode" label="区域CODE">
+                <el-input v-model="formData.districtCode"></el-input>
+            </el-form-item>
+            <el-form-item prop="rank" label="排序">
                 <el-input type="number" v-model="formData.rank"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="hot" label="热度">
+            <el-form-item prop="hot" label="热度">
                 <el-input type="number" v-model="formData.hot"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -34,69 +39,69 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/businessCircle/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        shortName:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/businessCircle/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                shortName:
                     [
-                        {required: true, message: '请输入 简称', trigger: 'blur'},
-                                            ],
-                                                                code:
+                        { required: true, message: '请输入 简称', trigger: 'blur' },
+                    ],
+                code:
                     [
-                        {required: true, message: '请输入 code', trigger: 'blur'},
-                                            ],
-                                                                                                                                                    cityCode:
+                        { required: true, message: '请输入 code', trigger: 'blur' },
+                    ],
+                cityCode:
                     [
-                        {required: true, message: '请输入 城市CODE', trigger: 'blur'},
-                                            ],
-                                                                                                                                                                                                            },
+                        { required: true, message: '请输入 城市CODE', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/businessCircle/update' : '/businessCircle/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/businessCircle/update' : '/businessCircle/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 148 - 223
src/main/vue/src/pages/BusinessCircles.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/businessCircle')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/businessCircle')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,98 +25,36 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('shortName')"
-                    prop="shortName"
-                    label="简称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('shortName')" prop="shortName" label="简称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('code')"
-                    prop="code"
-                    label="code"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('code')" prop="code" label="code" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lat')"
-                    prop="lat"
-                    label="纬度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('lat')" prop="lat" label="纬度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lng')"
-                    prop="lng"
-                    label="经度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('lng')" prop="lng" label="经度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('cityCode')"
-                    prop="cityCode"
-                    label="城市CODE"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('cityCode')" prop="cityCode" label="城市CODE" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label="排序"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排序" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('districtCode')"
-                    prop="districtCode"
-                    label="区域CODE"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('districtCode')" prop="districtCode" label="区域CODE" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('createTime')"
-                    prop="createTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('updateTime')"
-                    prop="updateTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('fullName')"
-                    prop="fullName"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('fullName')" prop="fullName" label="名称" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -135,159 +69,150 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '简称',
+                    value: 'shortName',
+                    show: true
+                },
+                {
+                    label: 'code',
+                    value: 'code',
+                    show: true
+                },
+                {
+                    label: '纬度',
+                    value: 'lat',
+                    show: true
+                },
+                {
+                    label: '经度',
+                    value: 'lng',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '城市CODE',
+                    value: 'cityCode',
+                    show: true
+                },
+                {
+                    label: '排序',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '区域CODE',
+                    value: 'districtCode',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'createTime',
+                    show: false
+                },
+                {
+                    label: '',
+                    value: 'updateTime',
+                    show: false
+                },
+                {
+                    label: '名称',
+                    value: 'fullName',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '简称',
-                        value: 'shortName',
-                        show: true
-                    },
-                                                    {
-                        label: 'code',
-                        value: 'code',
-                        show: true
-                    },
-                                                    {
-                        label: '纬度',
-                        value: 'lat',
-                        show: true
-                    },
-                                                    {
-                        label: '经度',
-                        value: 'lng',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '城市CODE',
-                        value: 'cityCode',
-                        show: true
-                    },
-                                                    {
-                        label: '排序',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                    {
-                        label: '区域CODE',
-                        value: 'districtCode',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'createTime',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'updateTime',
-                        show: true
-                    },
-                                                    {
-                        label: '名称',
-                        value: 'fullName',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/businessCircle/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/businessCircle',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/businessCircle',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 61 - 49
src/main/vue/src/pages/ContactRecord.vue

@@ -1,8 +1,20 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <el-form-item>
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="userId" label="用户">
+                <el-input v-model="formData.userId"></el-input>
+            </el-form-item>
+            <el-form-item prop="houseId" label="房源">
+                <el-input v-model="formData.houseId"></el-input>
+            </el-form-item>
+            <el-form-item prop="housekeeper" label="管家">
+                <el-input v-model="formData.housekeeper"></el-input>
+            </el-form-item>
+            <el-form-item prop="showFlag" label="用户显示">
+                <el-input v-model="formData.showFlag"></el-input>
+            </el-form-item>
+           
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -10,57 +22,57 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/contactRecord/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                                                                                                                                                                    },
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/contactRecord/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
         }
-        },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
             },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/contactRecord/update' : '/contactRecord/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/contactRecord/update' : '/contactRecord/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 112 - 163
src/main/vue/src/pages/ContactRecords.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/contactRecord')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/contactRecord')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,62 +25,24 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('userId')"
-                    prop="userId"
-                    label="用户"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('userId')" prop="userId" label="用户" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseId')"
-                    prop="houseId"
-                    label="房源"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('houseId')" prop="houseId" label="房源" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('housekeeper')"
-                    prop="housekeeper"
-                    label="管家"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('housekeeper')" prop="housekeeper" label="管家" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('showFlag')"
-                    prop="showFlag"
-                    label="用户显示"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('showFlag')" prop="showFlag" label="用户显示" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('createTime')"
-                    prop="createTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('updateTime')"
-                    prop="updateTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -99,129 +57,120 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '用户',
+                    value: 'userId',
+                    show: true
+                },
+                {
+                    label: '房源',
+                    value: 'houseId',
+                    show: true
+                },
+                {
+                    label: '管家',
+                    value: 'housekeeper',
+                    show: true
+                },
+                {
+                    label: '用户显示',
+                    value: 'showFlag',
+                    show: true
+                },
+                {
+                    label: '创建时间',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '更新时间',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '用户',
-                        value: 'userId',
-                        show: true
-                    },
-                                                    {
-                        label: '房源',
-                        value: 'houseId',
-                        show: true
-                    },
-                                                    {
-                        label: '管家',
-                        value: 'housekeeper',
-                        show: true
-                    },
-                                                    {
-                        label: '用户显示',
-                        value: 'showFlag',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'createTime',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'updateTime',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/contactRecord/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/contactRecord',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/contactRecord',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 64 - 49
src/main/vue/src/pages/Feedback.vue

@@ -1,8 +1,23 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <el-form-item>
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="userId" label="用户ID">
+                <el-input v-model="formData.userId"></el-input>
+            </el-form-item>
+            <el-form-item prop="userName" label="用户名">
+                <el-input v-model="formData.userName"></el-input>
+            </el-form-item>
+            <el-form-item prop="remark" label="描述">
+                <el-input v-model="formData.remark"></el-input>
+            </el-form-item>
+            <el-form-item prop="image" label="图片">
+                <multi-upload v-model="formData.image"></multi-upload>
+            </el-form-item>
+            <el-form-item prop="telephone" label="联系电话">
+                <el-input v-model="formData.telephone"></el-input>
+            </el-form-item>
+            
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -10,57 +25,57 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/feedback/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                                                                                                                                                                                                },
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/feedback/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
         }
-        },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
             },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/feedback/update' : '/feedback/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/feedback/update' : '/feedback/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 118 - 173
src/main/vue/src/pages/Feedbacks.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/feedback')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/feedback')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,68 +25,26 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('userId')"
-                    prop="userId"
-                    label="用户ID"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('userId')" prop="userId" label="用户ID" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('userName')"
-                    prop="userName"
-                    label="用户名"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('userName')" prop="userName" label="用户名" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="描述"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="描述" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('image')"
-                    prop="image"
-                    label="图片"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('image')" prop="image" label="图片" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('telephone')"
-                    prop="telephone"
-                    label="电话"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('telephone')" prop="telephone" label="联系电话" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('createTime')"
-                    prop="createTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('updateTime')"
-                    prop="updateTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -105,134 +59,125 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '用户ID',
+                    value: 'userId',
+                    show: true
+                },
+                {
+                    label: '用户名',
+                    value: 'userName',
+                    show: true
+                },
+                {
+                    label: '描述',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '图片',
+                    value: 'image',
+                    show: true
+                },
+                {
+                    label: '联系电话',
+                    value: 'telephone',
+                    show: true
+                },
+                {
+                    label: '创建时间',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '更新时间',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '用户ID',
-                        value: 'userId',
-                        show: true
-                    },
-                                                    {
-                        label: '用户名',
-                        value: 'userName',
-                        show: true
-                    },
-                                                    {
-                        label: '描述',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '图片',
-                        value: 'image',
-                        show: true
-                    },
-                                                    {
-                        label: '电话',
-                        value: 'telephone',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'createTime',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'updateTime',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/feedback/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/feedback',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/feedback',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 2 - 1
src/main/vue/src/pages/GenCode.vue

@@ -314,7 +314,8 @@
                     remark: '',
                     showInList: true,
                     showInForm: true,
-                    searchable: false
+                    searchable: false,
+                    formType:'singleLineText'
                 });
             },
             removeField(i) {

+ 55 - 49
src/main/vue/src/pages/HotSearch.vue

@@ -1,8 +1,14 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <el-form-item>
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="keyWord" label="关键词">
+                <el-input v-model="formData.keyWord"></el-input>
+            </el-form-item>
+            <el-form-item prop="hot" label="热度">
+                <el-input v-model="formData.hot"></el-input>
+            </el-form-item>
+            
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -10,57 +16,57 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/hotSearch/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                                                                                                            },
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/hotSearch/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
         }
-        },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
             },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/hotSearch/update' : '/hotSearch/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/hotSearch/update' : '/hotSearch/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 102 - 123
src/main/vue/src/pages/HotSearchs.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/hotSearch')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/hotSearch')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,38 +25,20 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
+            </el-table-column>
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column v-if="isColumnShow('keyWord')" prop="keyWord" label="关键词" min-width="100">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('keyWord')"
-                    prop="keyWord"
-                    label="关键词"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
             </el-table-column>
-                                                                                                <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
+            </el-table-column>
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -75,109 +53,110 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '关键词',
+                    value: 'keyWord',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '创建时间',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '更新时间',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '关键词',
-                        value: 'keyWord',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                                            ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/hotSearch/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/hotSearch',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/hotSearch',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 59 - 60
src/main/vue/src/pages/HouseFeature.vue

@@ -1,23 +1,22 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="name" label="名称">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="name" label="名称">
                 <el-input v-model="formData.name"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="code" label="code">
+            <el-form-item prop="code" label="code">
                 <el-input v-model="formData.code"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="remark" label="备注">
+            <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="rank" label="排序">
+            <el-form-item prop="rank" label="排序">
                 <el-input type="number" v-model="formData.rank"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="hot" label="热度">
+            <el-form-item prop="hot" label="热度">
                 <el-input type="number" v-model="formData.hot"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                    <el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -25,65 +24,65 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/houseFeature/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        name:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/houseFeature/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                name:
                     [
-                        {required: true, message: '请输入 名称', trigger: 'blur'},
-                                            ],
-                                                                code:
+                        { required: true, message: '请输入 名称', trigger: 'blur' },
+                    ],
+                code:
                     [
-                        {required: true, message: '请输入 code', trigger: 'blur'},
-                                            ],
-                                                                                                                                                                                },
+                        { required: true, message: '请输入 code', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/houseFeature/update' : '/houseFeature/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/houseFeature/update' : '/houseFeature/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 106 - 153
src/main/vue/src/pages/HouseFeatures.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/houseFeature')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/houseFeature')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,56 +25,22 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('name')"
-                    prop="name"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('name')" prop="name" label="名称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('code')"
-                    prop="code"
-                    label="code"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('code')" prop="code" label="code" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label="排序"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排序" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                                                                <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -93,124 +55,115 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '名称',
+                    value: 'name',
+                    show: true
+                },
+                {
+                    label: 'code',
+                    value: 'code',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '排序',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '名称',
-                        value: 'name',
-                        show: true
-                    },
-                                                    {
-                        label: 'code',
-                        value: 'code',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '排序',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                                            ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/houseFeature/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/houseFeature',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/houseFeature',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 59 - 53
src/main/vue/src/pages/HouseImage.vue

@@ -1,14 +1,20 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <el-form-item prop="imageName" label="名称">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="houseId" label="房源id">
+                <el-input v-model="formData.houseId"></el-input>
+            </el-form-item>
+            <el-form-item prop="imageType" label="类型">
+                <el-input v-model="formData.imageType"></el-input>
+            </el-form-item>
+            <el-form-item prop="imageName" label="名称">
                 <el-input v-model="formData.imageName"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                                                                                 <el-form-item prop="imageUrl" label="地址">
-                 <single-upload v-model="formData.imageUrl"></single-upload>
-             </el-form-item>
-                                                                                                                                                                                                    <el-form-item>
+            <el-form-item prop="imageUrl" label="地址">
+                <single-upload v-model="formData.imageUrl"></single-upload>
+            </el-form-item>
+
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -16,57 +22,57 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/houseImage/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                                                                                                                                                                    },
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/houseImage/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
         }
-        },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
             },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/houseImage/update' : '/houseImage/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
+        },
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/houseImage/update' : '/houseImage/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 118 - 143
src/main/vue/src/pages/HouseImages.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/houseImage')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/houseImage')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,50 +25,28 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('houseId')"
-                    prop="houseId"
-                    label="房源id"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('houseId')" prop="houseId" label="房源id" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('imageType')"
-                    prop="imageType"
-                    label="类型"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('imageType')" prop="imageType" label="类型" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('imageName')"
-                    prop="imageName"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('imageName')" prop="imageName" label="名称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('imageUrl')"
-                    prop="imageUrl"
-                    label="地址"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('imageUrl')" prop="imageUrl" label="地址" min-width="100">
+                <template slot-scope="scope">
+                    <img :src="scope.row.imageUrl"
+                         style="width: 100px;height: 100px;vertical-align: middle;"/>
+                </template>
             </el-table-column>
-                                                                                                <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <!-- <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="" min-width="100">
+            </el-table-column> -->
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -87,119 +61,120 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '房源id',
+                    value: 'houseId',
+                    show: true
+                },
+                {
+                    label: '类型',
+                    value: 'imageType',
+                    show: true
+                },
+                {
+                    label: '名称',
+                    value: 'imageName',
+                    show: true
+                },
+                {
+                    label: '地址',
+                    value: 'imageUrl',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '房源id',
-                        value: 'houseId',
-                        show: true
-                    },
-                                                    {
-                        label: '类型',
-                        value: 'imageType',
-                        show: true
-                    },
-                                                    {
-                        label: '名称',
-                        value: 'imageName',
-                        show: true
-                    },
-                                                    {
-                        label: '地址',
-                        value: 'imageUrl',
-                        show: true
-                    },
-                                                                            ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/houseImage/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/houseImage',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/houseImage',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

Plik diff jest za duży
+ 0 - 2
src/main/vue/src/pages/HouseInfo.vue


+ 337 - 479
src/main/vue/src/pages/HouseInfos.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/houseInfo')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/houseInfo')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,230 +25,86 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
-            </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
-            </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('title')"
-                    prop="title"
-                    label="标题"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('price')"
-                    prop="price"
-                    label="价格"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('payMode')"
-                    prop="payMode"
-                    label="付款方式"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('featureCode')"
-                    prop="featureCode"
-                    label="房源特色"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseArea')"
-                    prop="houseArea"
-                    label="面积"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('room')"
-                    prop="room"
-                    label="室"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hall')"
-                    prop="hall"
-                    label="厅"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('guard')"
-                    prop="guard"
-                    label="卫"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('totalFloor')"
-                    prop="totalFloor"
-                    label="总楼层"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseFloor')"
-                    prop="houseFloor"
-                    label="层"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('faced')"
-                    prop="faced"
-                    label="朝向"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('decoration')"
-                    prop="decoration"
-                    label="装修"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('checkIn')"
-                    prop="checkIn"
-                    label="入住"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('elevator')"
-                    prop="elevator"
-                    label="电梯"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rentingType')"
-                    prop="rentingType"
-                    label="出租类型"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('partCode')"
-                    prop="partCode"
-                    label="房源配置"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseIntroduce')"
-                    prop="houseIntroduce"
-                    label="房源介绍"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('housekeeper')"
-                    prop="housekeeper"
-                    label="管家"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('retrieval')"
-                    prop="retrieval"
-                    label="检索关键字"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('housingDistrict')"
-                    prop="housingDistrict"
-                    label="小区"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('street')"
-                    prop="street"
-                    label="街道"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('businessCircleCode')"
-                    prop="businessCircleCode"
-                    label="商圈"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('districtCode')"
-                    prop="districtCode"
-                    label="区"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('cityCode')"
-                    prop="cityCode"
-                    label="市"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lat')"
-                    prop="lat"
-                    label="经度"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lng')"
-                    prop="lng"
-                    label="纬度"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label="排序"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('recommend')"
-                    prop="recommend"
-                    label="推荐"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('selected')"
-                    prop="selected"
-                    label="精选"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('address')"
-                    prop="address"
-                    label="地址"
-                    min-width="100">
-            </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('addressDetail')"
-                    prop="addressDetail"
-                    label="详细地址"
-                    min-width="100">
-            </el-table-column>
-                                                                                                                <el-table-column
-                    v-if="isColumnShow('statusFlag')"
-                    prop="statusFlag"
-                    label="状态"
-                    min-width="100">
-            </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
+            </el-table-column>
+            <el-table-column type="index" min-width="50" align="center">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('title')" prop="title" label="标题" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('price')" prop="price" label="价格" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('payMode')" prop="payMode" label="付款方式" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('featureCode')" prop="featureCode" label="房源特色" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('houseArea')" prop="houseArea" label="面积" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('room')" prop="room" label="室" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('hall')" prop="hall" label="厅" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('guard')" prop="guard" label="卫" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('totalFloor')" prop="totalFloor" label="总楼层" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('houseFloor')" prop="houseFloor" label="层" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('faced')" prop="faced" label="朝向" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('decoration')" prop="decoration" label="装修" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('checkIn')" prop="checkIn" label="入住" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('elevator')" prop="elevator" label="电梯" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('rentingType')" prop="rentingType" label="出租类型" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('partCode')" prop="partCode" label="房源配置" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('houseIntroduce')" prop="houseIntroduce" label="房源介绍" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('housekeeper')" prop="housekeeper" label="管家" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('retrieval')" prop="retrieval" label="检索关键字" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('housingDistrict')" prop="housingDistrict" label="小区" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('streetCode')" prop="streetCode" label="街道" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('businessCircleCode')" prop="businessCircleCode" label="商圈" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('districtCode')" prop="districtCode" label="区" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('cityCode')" prop="cityCode" label="市" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('lat')" prop="lat" label="纬度" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('lng')" prop="lng" label="经度" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排序" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('recommendFlag')" prop="recommendFlag" label="推荐" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('selectedFlag')" prop="selectedFlag" label="精选" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('address')" prop="address" label="地址" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('addressDetail')" prop="addressDetail" label="详细地址" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('statusFlag')" prop="statusFlag" label="状态" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('buildYear')" prop="buildYear" label="建造年" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
+            </el-table-column>
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
+            </el-table-column>
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -267,269 +119,275 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '标题',
+                    value: 'title',
+                    show: true
+                },
+                {
+                    label: '价格',
+                    value: 'price',
+                    show: true
+                },
+                {
+                    label: '付款方式',
+                    value: 'payMode',
+                    show: true
+                },
+                {
+                    label: '房源特色',
+                    value: 'featureCode',
+                    show: true
+                },
+                {
+                    label: '面积',
+                    value: 'houseArea',
+                    show: true
+                },
+                {
+                    label: '室',
+                    value: 'room',
+                    show: true
+                },
+                {
+                    label: '厅',
+                    value: 'hall',
+                    show: true
+                },
+                {
+                    label: '卫',
+                    value: 'guard',
+                    show: true
+                },
+                {
+                    label: '总楼层',
+                    value: 'totalFloor',
+                    show: true
+                },
+                {
+                    label: '层',
+                    value: 'houseFloor',
+                    show: true
+                },
+                {
+                    label: '朝向',
+                    value: 'faced',
+                    show: true
+                },
+                {
+                    label: '装修',
+                    value: 'decoration',
+                    show: true
+                },
+                {
+                    label: '入住',
+                    value: 'checkIn',
+                    show: true
+                },
+                {
+                    label: '电梯',
+                    value: 'elevator',
+                    show: true
+                },
+                {
+                    label: '出租类型',
+                    value: 'rentingType',
+                    show: true
+                },
+                {
+                    label: '房源配置',
+                    value: 'partCode',
+                    show: true
+                },
+                {
+                    label: '房源介绍',
+                    value: 'houseIntroduce',
+                    show: true
+                },
+                {
+                    label: '管家',
+                    value: 'housekeeper',
+                    show: true
+                },
+                {
+                    label: '检索关键字',
+                    value: 'retrieval',
+                    show: true
+                },
+                {
+                    label: '小区',
+                    value: 'housingDistrict',
+                    show: true
+                },
+                {
+                    label: '街道',
+                    value: 'streetCode',
+                    show: true
+                },
+                {
+                    label: '商圈',
+                    value: 'businessCircleCode',
+                    show: true
+                },
+                {
+                    label: '区',
+                    value: 'districtCode',
+                    show: true
+                },
+                {
+                    label: '市',
+                    value: 'cityCode',
+                    show: true
+                },
+                {
+                    label: '纬度',
+                    value: 'lat',
+                    show: true
+                },
+                {
+                    label: '经度',
+                    value: 'lng',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '排序',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '推荐',
+                    value: 'recommendFlag',
+                    show: true
+                },
+                {
+                    label: '精选',
+                    value: 'selectedFlag',
+                    show: true
+                },
+                {
+                    label: '地址',
+                    value: 'address',
+                    show: true
+                },
+                {
+                    label: '详细地址',
+                    value: 'addressDetail',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'statusFlag',
+                    show: true
+                },
+                {
+                    label: '建造年',
+                    value: 'buildYear',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '标题',
-                        value: 'title',
-                        show: true
-                    },
-                                                    {
-                        label: '价格',
-                        value: 'price',
-                        show: true
-                    },
-                                                    {
-                        label: '付款方式',
-                        value: 'payMode',
-                        show: true
-                    },
-                                                    {
-                        label: '房源特色',
-                        value: 'featureCode',
-                        show: true
-                    },
-                                                    {
-                        label: '面积',
-                        value: 'houseArea',
-                        show: true
-                    },
-                                                    {
-                        label: '室',
-                        value: 'room',
-                        show: true
-                    },
-                                                    {
-                        label: '厅',
-                        value: 'hall',
-                        show: true
-                    },
-                                                    {
-                        label: '卫',
-                        value: 'guard',
-                        show: true
-                    },
-                                                    {
-                        label: '总楼层',
-                        value: 'totalFloor',
-                        show: true
-                    },
-                                                    {
-                        label: '层',
-                        value: 'houseFloor',
-                        show: true
-                    },
-                                                    {
-                        label: '朝向',
-                        value: 'faced',
-                        show: true
-                    },
-                                                    {
-                        label: '装修',
-                        value: 'decoration',
-                        show: true
-                    },
-                                                    {
-                        label: '入住',
-                        value: 'checkIn',
-                        show: true
-                    },
-                                                    {
-                        label: '电梯',
-                        value: 'elevator',
-                        show: true
-                    },
-                                                    {
-                        label: '出租类型',
-                        value: 'rentingType',
-                        show: true
-                    },
-                                                    {
-                        label: '房源配置',
-                        value: 'partCode',
-                        show: true
-                    },
-                                                    {
-                        label: '房源介绍',
-                        value: 'houseIntroduce',
-                        show: true
-                    },
-                                                    {
-                        label: '管家',
-                        value: 'housekeeper',
-                        show: true
-                    },
-                                                    {
-                        label: '检索关键字',
-                        value: 'retrieval',
-                        show: true
-                    },
-                                                    {
-                        label: '小区',
-                        value: 'housingDistrict',
-                        show: true
-                    },
-                                                    {
-                        label: '街道',
-                        value: 'street',
-                        show: true
-                    },
-                                                    {
-                        label: '商圈',
-                        value: 'businessCircleCode',
-                        show: true
-                    },
-                                                    {
-                        label: '区',
-                        value: 'districtCode',
-                        show: true
-                    },
-                                                    {
-                        label: '市',
-                        value: 'cityCode',
-                        show: true
-                    },
-                                                    {
-                        label: '经度',
-                        value: 'lat',
-                        show: true
-                    },
-                                                    {
-                        label: '纬度',
-                        value: 'lng',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '排序',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                    {
-                        label: '推荐',
-                        value: 'recommend',
-                        show: true
-                    },
-                                                    {
-                        label: '精选',
-                        value: 'selected',
-                        show: true
-                    },
-                                                    {
-                        label: '地址',
-                        value: 'address',
-                        show: true
-                    },
-                                                    {
-                        label: '详细地址',
-                        value: 'addressDetail',
-                        show: true
-                    },
-                                                                                            {
-                        label: '状态',
-                        value: 'statusFlag',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/houseInfo/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/houseInfo',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/houseInfo',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

Plik diff jest za duży
+ 0 - 2
src/main/vue/src/pages/HouseKeeper.vue


+ 128 - 183
src/main/vue/src/pages/HouseKeepers.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/houseKeeper')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/houseKeeper')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,74 +25,32 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('keepName')"
-                    prop="keepName"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('keepName')" prop="keepName" label="名称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('position')"
-                    prop="position"
-                    label="职位"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('position')" prop="position" label="职位" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('icon')"
-                    prop="icon"
-                    label="头像"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('icon')" prop="icon" label="头像" min-width="100">
+            <template slot-scope="scope">
+                    <img :src="scope.row.icon"
+                         style="width: 32px;height: 32px;border-radius: 50%;vertical-align: middle;"/>
+                </template>
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('telephone')"
-                    prop="telephone"
-                    label="电话"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('telephone')" prop="telephone" label="电话" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('sex')"
-                    prop="sex"
-                    label="sex"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('sex')" prop="sex" label="性别" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('introduce')"
-                    prop="introduce"
-                    label="介绍"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('introduce')" prop="introduce" label="介绍" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('createTime')"
-                    prop="createTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('updateTime')"
-                    prop="updateTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -111,139 +65,130 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '名称',
+                    value: 'keepName',
+                    show: true
+                },
+                {
+                    label: '职位',
+                    value: 'position',
+                    show: true
+                },
+                {
+                    label: '头像',
+                    value: 'icon',
+                    show: true
+                },
+                {
+                    label: '电话',
+                    value: 'telephone',
+                    show: true
+                },
+                {
+                    label: '性别',
+                    value: 'sex',
+                    show: true
+                },
+                {
+                    label: '介绍',
+                    value: 'introduce',
+                    show: true
+                },
+                {
+                    label: '创建时间',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '更新时间',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '名称',
-                        value: 'keepName',
-                        show: true
-                    },
-                                                    {
-                        label: '职位',
-                        value: 'position',
-                        show: true
-                    },
-                                                    {
-                        label: '头像',
-                        value: 'icon',
-                        show: true
-                    },
-                                                    {
-                        label: '电话',
-                        value: 'telephone',
-                        show: true
-                    },
-                                                    {
-                        label: 'sex',
-                        value: 'sex',
-                        show: true
-                    },
-                                                    {
-                        label: '介绍',
-                        value: 'introduce',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'createTime',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'updateTime',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/houseKeeper/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/houseKeeper',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/houseKeeper',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 62 - 63
src/main/vue/src/pages/HousePart.vue

@@ -1,26 +1,25 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="name" label="名称">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="name" label="名称">
                 <el-input v-model="formData.name"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="code" label="code">
+            <el-form-item prop="code" label="code">
                 <el-input v-model="formData.code"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="remark" label="备注">
+            <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="rank" label="排序">
+            <el-form-item prop="rank" label="排序">
                 <el-input type="number" v-model="formData.rank"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="hot" label="热度">
+            <el-form-item prop="hot" label="热度">
                 <el-input type="number" v-model="formData.hot"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                                                                                                 <el-form-item prop="image" label="图标">
-                 <single-upload v-model="formData.image"></single-upload>
-             </el-form-item>
-                                                                                                                                            <el-form-item>
+            <el-form-item prop="image" label="图标">
+                <single-upload v-model="formData.image"></single-upload>
+            </el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -28,65 +27,65 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/housePart/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        name:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/housePart/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                name:
                     [
-                        {required: true, message: '请输入 名称', trigger: 'blur'},
-                                            ],
-                                                                code:
+                        { required: true, message: '请输入 名称', trigger: 'blur' },
+                    ],
+                code:
                     [
-                        {required: true, message: '请输入 code', trigger: 'blur'},
-                                            ],
-                                                                                                                                                                                                            },
+                        { required: true, message: '请输入 code', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/housePart/update' : '/housePart/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/housePart/update' : '/housePart/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 116 - 163
src/main/vue/src/pages/HouseParts.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/housePart')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/housePart')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,62 +25,28 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('name')"
-                    prop="name"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('name')" prop="name" label="名称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('code')"
-                    prop="code"
-                    label="code"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('code')" prop="code" label="code" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label="排序"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排序" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                                                                                <el-table-column
-                    v-if="isColumnShow('image')"
-                    prop="image"
-                    label="图标"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('image')" prop="image" label="图标" min-width="100">
+                <template slot-scope="scope">
+                    <img :src="scope.row.image"
+                         style="width: 32px;height: 32px;vertical-align: middle;"/>
+                </template>
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -99,129 +61,120 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '名称',
+                    value: 'name',
+                    show: true
+                },
+                {
+                    label: 'code',
+                    value: 'code',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '排序',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '图标',
+                    value: 'image',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '名称',
-                        value: 'name',
-                        show: true
-                    },
-                                                    {
-                        label: 'code',
-                        value: 'code',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '排序',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                                                            {
-                        label: '图标',
-                        value: 'image',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/housePart/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/housePart',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/housePart',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

Plik diff jest za duży
+ 0 - 2
src/main/vue/src/pages/HousingDistrict.vue


+ 154 - 233
src/main/vue/src/pages/HousingDistricts.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/housingDistrict')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/housingDistrict')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,104 +25,38 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('fullName')"
-                    prop="fullName"
-                    label="全程"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('fullName')" prop="fullName" label="全称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('shortName')"
-                    prop="shortName"
-                    label="名称"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('shortName')" prop="shortName" label="简称" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('street')"
-                    prop="street"
-                    label="街道"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('street')" prop="street" label="街道" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('businessCircleCode')"
-                    prop="businessCircleCode"
-                    label="商圈"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('businessCircleCode')" prop="businessCircleCode" label="商圈" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('districtCode')"
-                    prop="districtCode"
-                    label="区"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('districtCode')" prop="districtCode" label="区" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('cityCode')"
-                    prop="cityCode"
-                    label="市"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('cityCode')" prop="cityCode" label="市" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lat')"
-                    prop="lat"
-                    label="经度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('lat')" prop="lat" label="纬度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('lng')"
-                    prop="lng"
-                    label="纬度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('lng')" prop="lng" label="经度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排行" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('address')"
-                    prop="address"
-                    label="地址"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('address')" prop="address" label="地址" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('addressDetail')"
-                    prop="addressDetail"
-                    label="详细地址"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('addressDetail')" prop="addressDetail" label="详细地址" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -141,164 +71,155 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '全称',
+                    value: 'fullName',
+                    show: true
+                },
+                {
+                    label: '简称',
+                    value: 'shortName',
+                    show: true
+                },
+                {
+                    label: '街道',
+                    value: 'street',
+                    show: true
+                },
+                {
+                    label: '商圈',
+                    value: 'businessCircleCode',
+                    show: true
+                },
+                {
+                    label: '区',
+                    value: 'districtCode',
+                    show: true
+                },
+                {
+                    label: '市',
+                    value: 'cityCode',
+                    show: true
+                },
+                {
+                    label: '纬度',
+                    value: 'lat',
+                    show: true
+                },
+                {
+                    label: '经度',
+                    value: 'lng',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '排行',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '地址',
+                    value: 'address',
+                    show: true
+                },
+                {
+                    label: '详细地址',
+                    value: 'addressDetail',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '全程',
-                        value: 'fullName',
-                        show: true
-                    },
-                                                    {
-                        label: '名称',
-                        value: 'shortName',
-                        show: true
-                    },
-                                                    {
-                        label: '街道',
-                        value: 'street',
-                        show: true
-                    },
-                                                    {
-                        label: '商圈',
-                        value: 'businessCircleCode',
-                        show: true
-                    },
-                                                    {
-                        label: '区',
-                        value: 'districtCode',
-                        show: true
-                    },
-                                                    {
-                        label: '市',
-                        value: 'cityCode',
-                        show: true
-                    },
-                                                    {
-                        label: '经度',
-                        value: 'lat',
-                        show: true
-                    },
-                                                    {
-                        label: '纬度',
-                        value: 'lng',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'hot',
-                        show: true
-                    },
-                                                    {
-                        label: '地址',
-                        value: 'address',
-                        show: true
-                    },
-                                                    {
-                        label: '详细地址',
-                        value: 'addressDetail',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/housingDistrict/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/housingDistrict',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/housingDistrict',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 72 - 66
src/main/vue/src/pages/MetroStation.vue

@@ -1,32 +1,34 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="stationName" label="简称">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="stationName" label="简称">
                 <el-input v-model="formData.stationName"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="code" label="code">
+            <el-form-item prop="code" label="code">
                 <el-input v-model="formData.code"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="lat" label="纬度">
+            <el-form-item prop="lat" label="纬度">
                 <el-input type="number" v-model="formData.lat"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="lng" label="经度">
+            <el-form-item prop="lng" label="经度">
                 <el-input type="number" v-model="formData.lng"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                <el-form-item prop="remark" label="备注">
+            <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="cityCode" label="城市CODE">
+            <el-form-item prop="cityCode" label="城市CODE">
                 <el-input v-model="formData.cityCode"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="rank" label="排序">
+            <el-form-item prop="rank" label="排序">
                 <el-input type="number" v-model="formData.rank"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="hot" label="热度">
+            <el-form-item prop="hot" label="热度">
                 <el-input type="number" v-model="formData.hot"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <el-form-item>
+            <el-form-item prop="metroCode" label="地铁CODE">
+                <el-input v-model="formData.metroCode"></el-input>
+            </el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -34,69 +36,73 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/metroStation/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        stationName:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/metroStation/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                stationName:
                     [
-                        {required: true, message: '请输入 简称', trigger: 'blur'},
-                                            ],
-                                                                code:
+                        { required: true, message: '请输入 简称', trigger: 'blur' },
+                    ],
+                code:
                     [
-                        {required: true, message: '请输入 code', trigger: 'blur'},
-                                            ],
-                                                                                                                                                    cityCode:
+                        { required: true, message: '请输入 code', trigger: 'blur' },
+                    ],
+                cityCode:
                     [
-                        {required: true, message: '请输入 城市CODE', trigger: 'blur'},
-                                            ],
-                                                                                                                        },
+                        { required: true, message: '请输入 城市CODE', trigger: 'blur' },
+                    ],
+                metroCode:
+                    [
+                        { required: true, message: '请输入 地铁CODE', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/metroStation/update' : '/metroStation/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/metroStation/update' : '/metroStation/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

Plik diff jest za duży
+ 0 - 2
src/main/vue/src/pages/NewsInfo.vue


+ 140 - 203
src/main/vue/src/pages/NewsInfos.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/newsInfo')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/newsInfo')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,86 +25,36 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('newsType')"
-                    prop="newsType"
-                    label="类型"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('newsType')" prop="newsType" label="类型" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('title')"
-                    prop="title"
-                    label="标题"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('title')" prop="title" label="标题" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('subtitle')"
-                    prop="subtitle"
-                    label="副标题"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('subtitle')" prop="subtitle" label="副标题" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('image')"
-                    prop="image"
-                    label="图片"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('image')" prop="image" label="图片" min-width="100">
+                <template slot-scope="scope">
+                    <img :src="scope.row.image"
+                         style="width: 100px;height: 100px;vertical-align: middle;"/>
+                </template>
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('newsUrl')"
-                    prop="newsUrl"
-                    label="地址"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('newsUrl')" prop="newsUrl" label="地址" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('rank')"
-                    prop="rank"
-                    label="排序"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('rank')" prop="rank" label="排序" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('hot')"
-                    prop="hot"
-                    label="热度"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('hot')" prop="hot" label="热度" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('recommend')"
-                    prop="recommend"
-                    label="推荐"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('recommend')" prop="recommend" label="推荐" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('createTime')"
-                    prop="createTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('createTime')" prop="createTime" label="创建时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('updateTime')"
-                    prop="updateTime"
-                    label=""
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('updateTime')" prop="updateTime" label="更新时间" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -123,149 +69,140 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '类型',
+                    value: 'newsType',
+                    show: true
+                },
+                {
+                    label: '标题',
+                    value: 'title',
+                    show: true
+                },
+                {
+                    label: '副标题',
+                    value: 'subtitle',
+                    show: true
+                },
+                {
+                    label: '图片',
+                    value: 'image',
+                    show: true
+                },
+                {
+                    label: '地址',
+                    value: 'newsUrl',
+                    show: true
+                },
+                {
+                    label: '排序',
+                    value: 'rank',
+                    show: true
+                },
+                {
+                    label: '热度',
+                    value: 'hot',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'recommend',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'createTime',
+                    show: true
+                },
+                {
+                    label: '',
+                    value: 'updateTime',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '类型',
-                        value: 'newsType',
-                        show: true
-                    },
-                                                    {
-                        label: '标题',
-                        value: 'title',
-                        show: true
-                    },
-                                                    {
-                        label: '副标题',
-                        value: 'subtitle',
-                        show: true
-                    },
-                                                    {
-                        label: '图片',
-                        value: 'image',
-                        show: true
-                    },
-                                                    {
-                        label: '地址',
-                        value: 'newsUrl',
-                        show: true
-                    },
-                                                    {
-                        label: '排序',
-                        value: 'rank',
-                        show: true
-                    },
-                                                    {
-                        label: '热度',
-                        value: 'hot',
-                        show: true
-                    },
-                                                    {
-                        label: '推荐',
-                        value: 'recommend',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'createTime',
-                        show: true
-                    },
-                                                    {
-                        label: '',
-                        value: 'updateTime',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/newsInfo/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/newsInfo',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/newsInfo',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 79 - 83
src/main/vue/src/pages/SeeOrder.vue

@@ -1,66 +1,50 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="userId" label="用户ID">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="userId" label="用户ID">
                 <el-input v-model="formData.userId"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="houseId" label="房源">
+            <el-form-item prop="houseId" label="房源">
                 <el-input v-model="formData.houseId"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="housekeeper" label="管家ID">
+            <el-form-item prop="housekeeper" label="管家ID">
                 <el-input v-model="formData.housekeeper"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="contact" label="联系人">
+            <el-form-item prop="contact" label="联系人">
                 <el-input v-model="formData.contact"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="telephone" label="手机号">
+            <el-form-item prop="telephone" label="手机号">
                 <el-input v-model="formData.telephone"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="leaveMessage" label="留言">
+            <el-form-item prop="leaveMessage" label="留言">
                 <el-input v-model="formData.leaveMessage"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                                    <el-form-item prop="orderTime" label="预约时间">
+            <el-form-item prop="orderTime" label="预约时间">
                 <template>
                     <div class="block">
-                        <el-date-picker
-                                v-model="formData.orderTime"
-                                type="datetime"
-                                placeholder="选择日期">
+                        <el-date-picker v-model="formData.orderTime" type="datetime" placeholder="选择日期">
                         </el-date-picker>
                     </div>
                 </template>
             </el-form-item>
-                                                                                                                                                                                                                                            <el-form-item prop="timeInterval" label="预约时段">
+            <el-form-item prop="timeInterval" label="预约时段">
                 <el-input v-model="formData.timeInterval"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                <el-form-item prop="orderStatus" label="状态">
+            <el-form-item prop="orderStatus" label="状态">
                 <el-input type="number" v-model="formData.orderStatus"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                            <el-form-item prop="seeTime" label="看房时间">
+            <el-form-item prop="seeTime" label="看房时间">
                 <template>
                     <div class="block">
-                        <el-date-picker
-                                v-model="formData.seeTime"
-                                type="datetime"
-                                placeholder="选择日期">
+                        <el-date-picker v-model="formData.seeTime" type="datetime" placeholder="选择日期">
                         </el-date-picker>
                     </div>
                 </template>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                            <el-form-item prop="showFlag" label="用户查看">
-                <template>
-                    <el-select v-model="formData.showFlag" placeholder="请选择">
-                        <el-option
-                                v-for="item in options"
-                                :key="item.value"
-                                :label="item.label"
-                                :value="item.value">
-                        </el-option>
-                    </el-select>
-                </template>
+            <el-form-item prop="showFlag" label="用户查看">
+                <el-input v-model="formData.showFlag"></el-input>
             </el-form-item>
-                                                                                                                                                                                    <el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -68,65 +52,77 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/seeOrder/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        userId:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/seeOrder/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                userId:
                     [
-                        {required: true, message: '请输入 用户ID', trigger: 'blur'},
-                                            ],
-                                                                houseId:
+                        { required: true, message: '请输入 用户ID', trigger: 'blur' },
+                    ],
+                houseId:
                     [
-                        {required: true, message: '请输入 房源', trigger: 'blur'},
-                                            ],
-                                                                                                                                                                                                                                                                                                                                                        },
+                        { required: true, message: '请输入 房源', trigger: 'blur' },
+                    ],
+                orderTime:
+                    [
+                        { required: true, message: '请选择预约时间', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/seeOrder/update' : '/seeOrder/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            data.orderTime = Date.parse(new Date(this.formData.orderTime));
+            if (this.formData.seeTime) {
+
+                data.seeTime = Date.parse(new Date(this.formData.seeTime));
+            } else {
+                delete data.seeTime
             }
+
+            this.$http.post({
+                url: this.formData.id ? '/seeOrder/update' : '/seeOrder/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 153 - 214
src/main/vue/src/pages/SeeOrders.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/seeOrder')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/seeOrder')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,92 +25,34 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('userId')"
-                    prop="userId"
-                    label="用户ID"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('userId')" prop="userId" label="用户ID" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseId')"
-                    prop="houseId"
-                    label="房源"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('houseId')" prop="houseId" label="房源" min-width="100">
             </el-table-column>
-                                                                                                                <el-table-column
-                    v-if="isColumnShow('housekeeper')"
-                    prop="housekeeper"
-                    label="管家ID"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('housekeeper')" prop="housekeeper" label="管家ID" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('contact')"
-                    prop="contact"
-                    label="联系人"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('contact')" prop="contact" label="联系人" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('telephone')"
-                    prop="telephone"
-                    label="手机号"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('telephone')" prop="telephone" label="手机号" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('leaveMessage')"
-                    prop="leaveMessage"
-                    label="留言"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('leaveMessage')" prop="leaveMessage" label="留言" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('orderTime')"
-                    prop="orderTime"
-                    label="预约时间"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('orderTime')" :formatter="DateTimeFormatter" prop="orderTime" label="预约时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('timeInterval')"
-                    prop="timeInterval"
-                    label="预约时段"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('timeInterval')" prop="timeInterval" label="预约时段" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('orderStatus')"
-                    prop="orderStatus"
-                    label="状态"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('orderStatus')" label="状态" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('seeTime')"
-                    prop="seeTime"
-                    label="看房时间"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('seeTime')" :formatter="DateTimeFormatter" prop="seeTime" label="看房时间" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('showFlag')"
-                    prop="showFlag"
-                    label="用户查看"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('showFlag')" prop="showFlag" label="用户查看" min-width="100">
             </el-table-column>
-                                        <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -129,154 +67,155 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
+
+import { format } from 'date-fns'
+import zh from 'date-fns/locale/zh_cn'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '用户ID',
+                    value: 'userId',
+                    show: true
+                },
+                {
+                    label: '房源',
+                    value: 'houseId',
+                    show: true
+                },
+                {
+                    label: '管家ID',
+                    value: 'housekeeper',
+                    show: true
+                },
+                {
+                    label: '联系人',
+                    value: 'contact',
+                    show: true
+                },
+                {
+                    label: '手机号',
+                    value: 'telephone',
+                    show: true
+                },
+                {
+                    label: '留言',
+                    value: 'leaveMessage',
+                    show: true
+                },
+                {
+                    label: '预约时间',
+                    value: 'orderTime',
+                    show: true
+                },
+                {
+                    label: '预约时段',
+                    value: 'timeInterval',
+                    show: true
+                },
+                {
+                    label: '状态',
+                    value: 'orderStatus',
+                    show: true
+                },
+                {
+                    label: '看房时间',
+                    value: 'seeTime',
+                    show: true
+                },
+                {
+                    label: '用户查看',
+                    value: 'showFlag',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '用户ID',
-                        value: 'userId',
-                        show: true
-                    },
-                                                    {
-                        label: '房源',
-                        value: 'houseId',
-                        show: true
-                    },
-                                                                                            {
-                        label: '管家ID',
-                        value: 'housekeeper',
-                        show: true
-                    },
-                                                    {
-                        label: '联系人',
-                        value: 'contact',
-                        show: true
-                    },
-                                                    {
-                        label: '手机号',
-                        value: 'telephone',
-                        show: true
-                    },
-                                                    {
-                        label: '留言',
-                        value: 'leaveMessage',
-                        show: true
-                    },
-                                                    {
-                        label: '预约时间',
-                        value: 'orderTime',
-                        show: true
-                    },
-                                                    {
-                        label: '预约时段',
-                        value: 'timeInterval',
-                        show: true
-                    },
-                                                    {
-                        label: '状态',
-                        value: 'orderStatus',
-                        show: true
-                    },
-                                                    {
-                        label: '看房时间',
-                        value: 'seeTime',
-                        show: true
-                    },
-                                                    {
-                        label: '用户查看',
-                        value: 'showFlag',
-                        show: true
-                    },
-                                    ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/seeOrder/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/seeOrder',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
-        }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/seeOrder',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
+        },
+
+        DateTimeFormatter(row, column, cellValue) {
+            if (cellValue) {
+                return format(cellValue, 'YYYY/MM/DD HH:mm', { locale: zh })
+            }
+
+        },
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 60 - 58
src/main/vue/src/pages/UserCollection.vue

@@ -1,17 +1,19 @@
 <template>
     <div>
-        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small"
-                 style="max-width: 500px;">
-                                                                                                                    <el-form-item prop="userId" label="用户ID">
+        <el-form :model="formData" :rules="rules" ref="form" label-width="80px" label-position="right" size="small" style="max-width: 500px;">
+            <el-form-item prop="userId" label="用户ID">
                 <el-input v-model="formData.userId"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="houseId" label="code">
+            <el-form-item prop="houseId" label="房源ID">
                 <el-input v-model="formData.houseId"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                        <el-form-item prop="remark" label="备注">
+            <el-form-item prop="remark" label="备注">
                 <el-input v-model="formData.remark"></el-input>
             </el-form-item>
-                                                                                                                                                                                                                                                                                                                                                        <el-form-item>
+            <el-form-item prop="showFlag" label="用户显示">
+                <el-input v-model="formData.showFlag"></el-input>
+            </el-form-item>
+            <el-form-item>
                 <el-button @click="onSave" :loading="$store.state.fetchingData" type="primary">保存</el-button>
                 <el-button @click="$router.go(-1)">取消</el-button>
             </el-form-item>
@@ -19,65 +21,65 @@
     </div>
 </template>
 <script>
-    import formValidator from '../formValidator'
+import formValidator from '../formValidator'
 
-    export default {
-        created() {
-            if (this.$route.query.id) {
-                this.$http.get({
-                    url: '/userCollection/getOne',
-                    data: {
-                        id: this.$route.query.id
-                    }
-                }).then(res => {
-                    if (res.success) {
-                        this.formData = res.data;
-                    }
-                })
-            }
-        },
-        data() {
-            return {
-                saving: false,
-                formData: {},
-                rules: {
-                                                                                                        userId:
+export default {
+    created() {
+        if (this.$route.query.id) {
+            this.$http.get({
+                url: '/userCollection/getOne',
+                data: {
+                    id: this.$route.query.id
+                }
+            }).then(res => {
+                if (res.success) {
+                    this.formData = res.data;
+                }
+            })
+        }
+    },
+    data() {
+        return {
+            saving: false,
+            formData: {},
+            rules: {
+                userId:
                     [
-                        {required: true, message: '请输入 用户ID', trigger: 'blur'},
-                                            ],
-                                                                houseId:
+                        { required: true, message: '请输入 用户ID', trigger: 'blur' },
+                    ],
+                houseId:
                     [
-                        {required: true, message: '请输入 code', trigger: 'blur'},
-                                            ],
-                                                                                                                                                    },
+                        { required: true, message: '请输入 房源ID', trigger: 'blur' },
+                    ],
+            },
         }
+    },
+    methods: {
+        onSave() {
+            this.$refs.form.validate((valid) => {
+                if (valid) {
+                    this.submit();
+                } else {
+                    return false;
+                }
+            });
         },
-        methods: {
-            onSave() {
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
-                        this.submit();
-                    } else {
-                        return false;
-                    }
-                });
-            },
-            submit() {
-                var data = JSON.parse(JSON.stringify(this.formData));
-                this.$http.post({
-                    url: this.formData.id ? '/userCollection/update' : '/userCollection/save',
-                    data: data
-                }).then(res => {
-                    if (res.success) {
-                        this.$message.success('成功');
-                        this.$router.go(-1);
-                    } else {
-                        this.$message.warning('失败')
-                    }
-                });
-            }
+        submit() {
+            var data = JSON.parse(JSON.stringify(this.formData));
+            this.$http.post({
+                url: this.formData.id ? '/userCollection/update' : '/userCollection/save',
+                data: data
+            }).then(res => {
+                if (res.success) {
+                    this.$message.success('成功');
+                    this.$router.go(-1);
+                } else {
+                    this.$message.warning('失败')
+                }
+            });
         }
     }
+}
 </script>
 <style lang="less" scoped>
 </style>

+ 101 - 133
src/main/vue/src/pages/UserCollections.vue

@@ -1,27 +1,23 @@
 <template>
     <div>
         <div class="filters-container">
-          
+
             <el-input placeholder="用户名" size="small" v-model="filter1" clearable class="filter-item"></el-input>
             <el-select placeholder="性别" size="small" v-model="filter2" clearable class="filter-item">
-                <el-option
-                        label="女"
-                        value="item1">
+                <el-option label="女" value="item1">
                 </el-option>
-                <el-option
-                        label="男"
-                        value="item2">
+                <el-option label="男" value="item2">
                 </el-option>
             </el-select>
 
             <el-button @click="getData" type="primary" size="small" icon="el-icon-search" class="filter-item">搜索
             </el-button>
-            <el-button @click="$router.push('/userCollection')" type="primary" size="small" icon="el-icon-edit"
-                       class="filter-item">添加
+            <el-button @click="$router.push('/userCollection')" type="primary" size="small" icon="el-icon-edit" class="filter-item">添加
             </el-button>
             <el-dropdown trigger="click" size="medium" class="table-column-filter">
                 <span>
-                  筛选数据<i class="el-icon-arrow-down el-icon--right"></i>
+                    筛选数据
+                    <i class="el-icon-arrow-down el-icon--right"></i>
                 </span>
                 <el-dropdown-menu slot="dropdown" class="table-column-filter-wrapper">
                     <el-checkbox v-for="item in tableColumns" :key="item.value" v-model="item.show">{{item.label}}
@@ -29,44 +25,20 @@
                 </el-dropdown-menu>
             </el-dropdown>
         </div>
-        <el-table
-                :data="tableData"
-                :height="tableHeight"
-                row-key="id"
-                ref="table">
-            <el-table-column
-                    v-if="multipleMode"
-                    align="center"
-                    type="selection"
-                    width="50">
+        <el-table :data="tableData" :height="tableHeight" row-key="id" ref="table">
+            <el-table-column v-if="multipleMode" align="center" type="selection" width="50">
+            </el-table-column>
+            <el-table-column type="index" min-width="50" align="center">
             </el-table-column>
-            <el-table-column
-                    type="index"
-                    min-width="50"
-                    align="center">
+            <el-table-column v-if="isColumnShow('userId')" prop="userId" label="用户ID" min-width="100">
             </el-table-column>
-                                                                                                <el-table-column
-                    v-if="isColumnShow('userId')"
-                    prop="userId"
-                    label="用户ID"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('houseId')" prop="houseId" label="房源ID" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('houseId')"
-                    prop="houseId"
-                    label="code"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('remark')" prop="remark" label="备注" min-width="100">
             </el-table-column>
-                                                        <el-table-column
-                    v-if="isColumnShow('remark')"
-                    prop="remark"
-                    label="备注"
-                    min-width="100">
+            <el-table-column v-if="isColumnShow('showFlag')" prop="showFlag" label="用户显示" min-width="100">
             </el-table-column>
-                                                                                                                            <el-table-column
-                    label="操作"
-                    align="center"
-                    fixed="right">
+            <el-table-column label="操作" align="center" fixed="right">
                 <template slot-scope="scope">
                     <el-button @click="editRow(scope.row)" type="primary" size="mini" plain>编辑</el-button>
                 </template>
@@ -81,114 +53,110 @@
                     <el-button size="small" @click="toggleMultipleMode(false)">取消</el-button>
                 </el-button-group>
             </div>
-            <el-pagination
-                    background
-                    @size-change="pageSizeChange"
-                    @current-change="currentPageChange"
-                    :current-page="currentPage"
-                    :page-sizes="[10, 20, 30, 40, 50]"
-                    :page-size="pageSize"
-                    layout="total, sizes, prev, pager, next, jumper"
-                    :total="totalNumber">
+            <el-pagination background @size-change="pageSizeChange" @current-change="currentPageChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40, 50]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalNumber">
             </el-pagination>
         </div>
     </div>
 </template>
 <script>
-    import {mapState} from 'vuex'
+import { mapState } from 'vuex'
 
-    export default {
-        created() {
+export default {
+    created() {
+        this.getData();
+    },
+    data() {
+        return {
+            totalNumber: 0,
+            totalPage: 10,
+            currentPage: 1,
+            pageSize: 20,
+            tableData: [],
+            filter1: '',
+            filter2: '',
+            tableColumns: [
+                {
+                    label: '用户ID',
+                    value: 'userId',
+                    show: true
+                },
+                {
+                    label: '房源ID',
+                    value: 'houseId',
+                    show: true
+                },
+                {
+                    label: '备注',
+                    value: 'remark',
+                    show: true
+                },
+                {
+                    label: '用户显示',
+                    value: 'showFlag',
+                    show: true
+                },
+            ],
+            multipleMode: false
+        }
+    },
+    computed: {
+        ...mapState(['tableHeight']),
+        selection() {
+            return this.$refs.table.selection.map(i => i.id);
+        }
+    },
+    methods: {
+        pageSizeChange(size) {
+            this.pageSize = size;
             this.getData();
         },
-        data() {
-            return {
-                totalNumber: 0,
-                totalPage: 10,
-                currentPage: 1,
-                pageSize: 20,
-                tableData: [],
-                filter1: '',
-                filter2: '',
-                tableColumns: [
-                                                                                {
-                        label: '用户ID',
-                        value: 'userId',
-                        show: true
-                    },
-                                                    {
-                        label: 'code',
-                        value: 'houseId',
-                        show: true
-                    },
-                                                    {
-                        label: '备注',
-                        value: 'remark',
-                        show: true
-                    },
-                                                                                                ],
-                multipleMode: false
-            }
-        },
-        computed: {
-            ...mapState(['tableHeight']),
-            selection() {
-                return this.$refs.table.selection.map(i => i.id);
-            }
+        currentPageChange(page) {
+            this.currentPage = page;
+            this.getData();
         },
-        methods: {
-            pageSizeChange(size) {
-                this.pageSize = size;
-                this.getData();
-            },
-            currentPageChange(page) {
-                this.currentPage = page;
-                this.getData();
-            },
-            getData() {
-                this.$http.get({
+        getData() {
+            this.$http.get({
                 url: '/userCollection/page',
                 data: {
                     currentPage: this.currentPage,
                     pageNumber: this.pageSize
                 }
-                }).then(res => {
-                    if (res.success) {
-                        this.totalNumber = res.data.page.totalNumber;
-                        this.tableData = res.data.pp;
-                    }
-                })
-            },
-            isColumnShow(column) {
-                var row = this.tableColumns.find(i => i.value === column);
-                return row ? row.show : false;
-            },
-            toggleMultipleMode(multipleMode) {
-                this.multipleMode = multipleMode;
-                if (!multipleMode) {
-                    this.$refs.table.clearSelection();
+            }).then(res => {
+                if (res.success) {
+                    this.totalNumber = res.data.page.totalNumber;
+                    this.tableData = res.data.pp;
                 }
-            },
-            editRow(row) {
-                this.$router.push({
-                    path: '/userCollection',
-                    query: {
-                        id: row.id
-                    }
-                })
-            },
-            operation1() {
-                this.$notify({
-                    title: '提示',
-                    message: this.selection
-                });
-            },
-            operation2() {
-                this.$message('操作2');
+            })
+        },
+        isColumnShow(column) {
+            var row = this.tableColumns.find(i => i.value === column);
+            return row ? row.show : false;
+        },
+        toggleMultipleMode(multipleMode) {
+            this.multipleMode = multipleMode;
+            if (!multipleMode) {
+                this.$refs.table.clearSelection();
             }
+        },
+        editRow(row) {
+            this.$router.push({
+                path: '/userCollection',
+                query: {
+                    id: row.id
+                }
+            })
+        },
+        operation1() {
+            this.$notify({
+                title: '提示',
+                message: this.selection
+            });
+        },
+        operation2() {
+            this.$message('操作2');
         }
     }
+}
 </script>
 <style lang="less" scoped>
-
 </style>

+ 180 - 0
src/main/vue/src/router/index.js

@@ -126,6 +126,7 @@ const router = new Router({
                     name: 'myTasks',
                     component: () => import('../pages/MyTasks')
                 },
+                //省市区
                 {
                     path: '/districtInfos',
                     name: 'districtInfos',
@@ -136,7 +137,186 @@ const router = new Router({
                     name: 'districtInfo',
                     component: () => import('../pages/DistrictInfo')
                 },
+                //地铁线
+                {
+                    path: '/metroInfos',
+                    name: 'metroInfos',
+                    component: () => import('../pages/MetroInfos')
+                },
+                {
+                    path: '/metroInfo',
+                    name: 'metroInfo',
+                    component: () => import('../pages/MetroInfo')
+                },
+
+                //地铁站
+                {
+                    path: '/metroStations',
+                    name: 'metroStations',
+                    component: () => import('../pages/MetroStations')
+                },
+                {
+                    path: '/metroStation',
+                    name: 'metroStation',
+                    component: () => import('../pages/MetroStation')
+                },
+
+                //商圈
+                {
+                    path: '/businessCircles',
+                    name: 'businessCircles',
+                    component: () => import('../pages/BusinessCircles')
+                },
+                {
+                    path: '/businessCircle',
+                    name: 'businessCircle',
+                    component: () => import('../pages/BusinessCircle')
+                },
+
+                //房源特色
+                {
+                    path: '/houseFeatures',
+                    name: 'houseFeatures',
+                    component: () => import('../pages/HouseFeatures')
+                },
+                {
+                    path: '/houseFeature',
+                    name: 'houseFeature',
+                    component: () => import('../pages/HouseFeature')
+                },
 
+                //房源配置
+                {
+                    path: '/houseParts',
+                    name: 'houseParts',
+                    component: () => import('../pages/HouseParts')
+                },
+                {
+                    path: '/housePart',
+                    name: 'housePart',
+                    component: () => import('../pages/HousePart')
+                },
+
+                //用户收藏
+                {
+                    path: '/userCollections',
+                    name: 'userCollections',
+                    component: () => import('../pages/UserCollections')
+                },
+                {
+                    path: '/userCollection',
+                    name: 'userCollection',
+                    component: () => import('../pages/UserCollection')
+                },
+
+                //看房预约
+                {
+                    path: '/seeOrders',
+                    name: 'seeOrders',
+                    component: () => import('../pages/SeeOrders')
+                },
+                {
+                    path: '/seeOrder',
+                    name: 'seeOrder',
+                    component: () => import('../pages/SeeOrder')
+                },
+
+                //房源信息
+                {
+                    path: '/houseInfos',
+                    name: 'houseInfos',
+                    component: () => import('../pages/HouseInfos')
+                },
+                {
+                    path: '/houseInfo',
+                    name: 'houseInfo',
+                    component: () => import('../pages/HouseInfo')
+                },
+
+                //房源图片
+                {
+                    path: '/houseImages',
+                    name: 'houseImages',
+                    component: () => import('../pages/HouseImages')
+                },
+                {
+                    path: '/houseImage',
+                    name: 'houseImage',
+                    component: () => import('../pages/HouseImage')
+                },
+
+                //咨询攻略
+                {
+                    path: '/newsInfos',
+                    name: 'newsInfos',
+                    component: () => import('../pages/NewsInfos')
+                },
+                {
+                    path: '/newsInfo',
+                    name: 'newsInfo',
+                    component: () => import('../pages/NewsInfo')
+                },
+
+                //联系记录
+                {
+                    path: '/contactRecords',
+                    name: 'contactRecords',
+                    component: () => import('../pages/ContactRecords')
+                },
+                {
+                    path: '/contactRecord',
+                    name: 'contactRecord',
+                    component: () => import('../pages/ContactRecord')
+                },
+
+                //意见反馈
+                {
+                    path: '/feedbacks',
+                    name: 'feedbacks',
+                    component: () => import('../pages/Feedbacks')
+                },
+                {
+                    path: '/feedback',
+                    name: 'feedback',
+                    component: () => import('../pages/Feedback')
+                },
+                
+
+                //小区
+                {
+                    path: '/housingDistricts',
+                    name: 'housingDistricts',
+                    component: () => import('../pages/HousingDistricts')
+                },
+                {
+                    path: '/housingDistrict',
+                    name: 'housingDistrict',
+                    component: () => import('../pages/HousingDistrict')
+                },
+
+                //管家
+                {
+                    path: '/houseKeepers',
+                    name: 'houseKeepers',
+                    component: () => import('../pages/HouseKeepers')
+                },
+                {
+                    path: '/houseKeeper',
+                    name: 'houseKeeper',
+                    component: () => import('../pages/HouseKeeper')
+                },
+
+                //热门搜索
+                {
+                    path: '/hotSearchs',
+                    name: 'hotSearchs',
+                    component: () => import('../pages/HotSearchs')
+                },
+                {
+                    path: '/hotSearch',
+                    name: 'hotSearch',
+                    component: () => import('../pages/HotSearch')
+                },
             ]
         },
         {

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików