sunyadv 5 years ago
parent
commit
41f6f054b0

+ 91 - 236
.idea/workspace.xml

@@ -2,15 +2,16 @@
 <project version="4">
 <project version="4">
   <component name="ChangeListManager">
   <component name="ChangeListManager">
     <list default="true" id="645e93b8-0ad6-4d6f-a066-61732e27367b" name="Default" comment="">
     <list default="true" id="645e93b8-0ad6-4d6f-a066-61732e27367b" name="Default" comment="">
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/CompanyController.java" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/entity/Company.java" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/mapper/CompanyMapper.java" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/service/CompanyService.java" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/CompanyServiceImpl.java" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/model/cloud-model/src/main/resources/mapper/CompanyMapper.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java" beforeDir="false" afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/util/CodeGenerator.java" beforeDir="false" afterPath="$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/util/CodeGenerator.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/package.json" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/assets/user.png" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/http.js" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/http.js" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/main.js" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/main.js" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/port.js" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/port.js" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/routes.js" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/routes.js" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/views/Home.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/views/Home.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/views/Login.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/views/Login.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/ys_vue/src/views/nav1/Form.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ys_vue/src/views/nav1/Form.vue" afterDir="false" />
     </list>
     </list>
     <ignored path="$PROJECT_DIR$/model/cloud-model/target/" />
     <ignored path="$PROJECT_DIR$/model/cloud-model/target/" />
     <ignored path="$PROJECT_DIR$/model/target/" />
     <ignored path="$PROJECT_DIR$/model/target/" />
@@ -26,92 +27,41 @@
   </component>
   </component>
   <component name="FileEditorManager">
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
-      <file leaf-file-name="RoleServiceImpl.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/RoleServiceImpl.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="326">
-              <caret line="30" column="51" lean-forward="true" selection-start-line="29" selection-start-column="12" selection-end-line="30" selection-end-column="51" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="RoleController.java" pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="233">
-              <caret line="72" column="13" selection-start-line="72" selection-start-column="13" selection-end-line="72" selection-end-column="13" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="IService.class" pinned="false" current-in-tab="false">
-        <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-extension/3.1.2/mybatis-plus-extension-3.1.2.jar!/com/baomidou/mybatisplus/extension/service/IService.class">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="330">
-              <caret line="92" column="16" selection-start-line="92" selection-start-column="12" selection-end-line="92" selection-end-column="16" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="BaseMapper.class" pinned="false" current-in-tab="false">
-        <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2.jar!/com/baomidou/mybatisplus/core/mapper/BaseMapper.class">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="196">
-              <caret line="26" column="40" selection-start-line="26" selection-start-column="34" selection-end-line="26" selection-end-column="40" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="application.yml" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/resources/application.yml">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="270">
-              <caret line="15" column="16" selection-start-line="15" selection-start-column="16" selection-end-line="15" selection-end-column="16" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="CodeGenerator.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/util/CodeGenerator.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="283">
-              <caret line="57" column="16" lean-forward="true" selection-start-line="57" selection-start-column="16" selection-end-line="57" selection-end-column="16" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="CompanyController.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/CompanyController.java">
+      <file leaf-file-name="CloudModelApplication.java" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/CloudModelApplication.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="288">
-              <caret line="17" column="32" lean-forward="true" selection-start-line="17" selection-start-column="32" selection-end-line="17" selection-end-column="32" />
+            <state relative-caret-position="221">
+              <caret line="16" selection-start-line="16" selection-end-line="16" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
-      <file leaf-file-name="CloudModelApplication.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/CloudModelApplication.java">
+      <file leaf-file-name="SysUserController.java" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/SysUserController.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="270">
-              <caret line="14" selection-start-line="14" selection-end-line="14" />
+            <state relative-caret-position="381">
+              <caret line="35" column="19" selection-start-line="35" selection-start-column="19" selection-end-line="35" selection-end-column="19" />
+              <folding>
+                <element signature="imports" expanded="true" />
+              </folding>
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
-      <file leaf-file-name="application.properties" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/resources/application.properties">
+      <file leaf-file-name="RoleController.java" pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="270">
-              <caret line="21" column="26" selection-start-line="21" selection-start-column="26" selection-end-line="21" selection-end-column="26" />
+            <state relative-caret-position="218">
+              <caret line="44" column="25" selection-start-line="44" selection-start-column="22" selection-end-line="44" selection-end-column="25" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
       </file>
       </file>
-      <file leaf-file-name="Role.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/entity/Role.java">
+      <file leaf-file-name="SysUser.java" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/entity/SysUser.java">
           <provider selected="true" editor-type-id="text-editor">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="367">
-              <caret line="43" column="7" lean-forward="true" selection-start-line="43" selection-start-column="7" selection-end-line="43" selection-end-column="7" />
+            <state relative-caret-position="306">
+              <caret line="35" column="27" selection-start-line="35" selection-start-column="19" selection-end-line="35" selection-end-column="27" />
             </state>
             </state>
           </provider>
           </provider>
         </entry>
         </entry>
@@ -177,19 +127,9 @@
           <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
           <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
           <item name="cloud-model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
           <item name="cloud-model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
         </path>
         </path>
-        <path>
-          <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
-          <item name="cloud-model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
-          <item name="Dependencies" type="f4be9f2a:MavenProjectsStructure$DependenciesNode" />
-        </path>
-        <path>
-          <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
-          <item name="model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
-        </path>
         <path>
         <path>
           <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
           <item name="" type="16c1761:MavenProjectsStructure$RootNode" />
           <item name="model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
           <item name="model" type="9519ce18:MavenProjectsStructure$ProjectNode" />
-          <item name="Dependencies" type="f4be9f2a:MavenProjectsStructure$DependenciesNode" />
         </path>
         </path>
       </expand>
       </expand>
       <select />
       <select />
@@ -214,6 +154,8 @@
       <foldersAlwaysOnTop value="true" />
       <foldersAlwaysOnTop value="true" />
     </navigator>
     </navigator>
     <panes>
     <panes>
+      <pane id="PackagesPane" />
+      <pane id="Scope" />
       <pane id="ProjectPane">
       <pane id="ProjectPane">
         <subPane>
         <subPane>
           <expand>
           <expand>
@@ -264,106 +206,13 @@
               <item name="src" type="462c0819:PsiDirectoryNode" />
               <item name="src" type="462c0819:PsiDirectoryNode" />
               <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="main" type="462c0819:PsiDirectoryNode" />
               <item name="java" type="462c0819:PsiDirectoryNode" />
               <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-              <item name="constant" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
               <item name="controller" type="462c0819:PsiDirectoryNode" />
               <item name="controller" type="462c0819:PsiDirectoryNode" />
             </path>
             </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-              <item name="mapper" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-              <item name="service" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-              <item name="service" type="462c0819:PsiDirectoryNode" />
-              <item name="impl" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="cloudmodel" type="462c0819:PsiDirectoryNode" />
-              <item name="util" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="resources" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="model" type="462c0819:PsiDirectoryNode" />
-              <item name="cloud-model" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="resources" type="462c0819:PsiDirectoryNode" />
-              <item name="mapper" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="yunsu" type="b2602c69:ProjectViewProjectNode" />
-              <item name="yunsu" type="462c0819:PsiDirectoryNode" />
-              <item name="ys_vue" type="462c0819:PsiDirectoryNode" />
-            </path>
           </expand>
           </expand>
           <select />
           <select />
         </subPane>
         </subPane>
       </pane>
       </pane>
       <pane id="AndroidView" />
       <pane id="AndroidView" />
-      <pane id="PackagesPane" />
-      <pane id="Scope" />
     </panes>
     </panes>
   </component>
   </component>
   <component name="PropertiesComponent">
   <component name="PropertiesComponent">
@@ -570,17 +419,16 @@
     <servers />
     <servers />
   </component>
   </component>
   <component name="TimeTrackingManager">
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="22151000" />
+    <option name="totallyTimeSpent" value="23940000" />
   </component>
   </component>
   <component name="ToolWindowManager">
   <component name="ToolWindowManager">
     <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
     <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
     <editor active="true" />
     <editor active="true" />
     <layout>
     <layout>
       <window_info anchor="right" id="Palette" order="3" />
       <window_info anchor="right" id="Palette" order="3" />
-      <window_info anchor="bottom" id="FindBugs-IDEA" order="7" />
-      <window_info anchor="bottom" id="Event Log" order="7" sideWeight="0.5010672" side_tool="true" weight="0.5863192" />
+      <window_info anchor="bottom" id="Event Log" order="7" sideWeight="0.5010661" side_tool="true" weight="0.32792208" />
       <window_info anchor="bottom" id="JRebel Console" order="7" side_tool="true" />
       <window_info anchor="bottom" id="JRebel Console" order="7" side_tool="true" />
-      <window_info anchor="right" id="Maven Projects" order="3" visible="true" weight="0.1072572" />
+      <window_info anchor="right" id="Maven Projects" order="3" weight="0.10714286" />
       <window_info anchor="bottom" id="Database Changes" order="7" show_stripe_button="false" />
       <window_info anchor="bottom" id="Database Changes" order="7" show_stripe_button="false" />
       <window_info anchor="bottom" id="JRebel Executor" order="7" />
       <window_info anchor="bottom" id="JRebel Executor" order="7" />
       <window_info id="Capture Tool" order="2" />
       <window_info id="Capture Tool" order="2" />
@@ -589,30 +437,61 @@
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
       <window_info id="UI Designer" order="2" />
       <window_info id="UI Designer" order="2" />
-      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.49893278" weight="0.29207385" />
+      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.49893278" weight="0.42532468" />
       <window_info anchor="bottom" id="TODO" order="6" />
       <window_info anchor="bottom" id="TODO" order="6" />
       <window_info anchor="bottom" id="Messages" order="7" />
       <window_info anchor="bottom" id="Messages" order="7" />
       <window_info anchor="right" id="Palette&#9;" order="3" />
       <window_info anchor="right" id="Palette&#9;" order="3" />
       <window_info id="Image Layers" order="2" />
       <window_info id="Image Layers" order="2" />
       <window_info anchor="bottom" id="Java Enterprise" order="7" />
       <window_info anchor="bottom" id="Java Enterprise" order="7" />
       <window_info anchor="right" id="Capture Analysis" order="3" />
       <window_info anchor="right" id="Capture Analysis" order="3" />
-      <window_info anchor="bottom" id="Version Control" order="7" weight="0.32899022" />
-      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.4994664" visible="true" weight="0.32899022" />
+      <window_info anchor="bottom" id="Version Control" order="7" sideWeight="0.4989339" visible="true" weight="0.32792208" />
+      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.4994664" weight="0.32792208" />
       <window_info anchor="bottom" id="Spring" order="7" />
       <window_info anchor="bottom" id="Spring" order="7" />
       <window_info anchor="bottom" id="Terminal" order="7" />
       <window_info anchor="bottom" id="Terminal" order="7" />
-      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2945571" />
+      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.18123667" />
       <window_info anchor="bottom" id="Problems" order="8" />
       <window_info anchor="bottom" id="Problems" order="8" />
       <window_info anchor="right" id="Bean Validation" order="4" />
       <window_info anchor="right" id="Bean Validation" order="4" />
-      <window_info id="Web" order="2" side_tool="true" />
       <window_info id="JRebel" order="2" side_tool="true" />
       <window_info id="JRebel" order="2" side_tool="true" />
+      <window_info id="Web" order="2" side_tool="true" />
       <window_info anchor="right" id="Theme Preview" order="3" />
       <window_info anchor="right" id="Theme Preview" order="3" />
       <window_info id="Favorites" order="2" side_tool="true" />
       <window_info id="Favorites" order="2" side_tool="true" />
-      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
-      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
+      <window_info anchor="bottom" id="Spring" order="7" />
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
+      <window_info anchor="right" id="Database" order="3" />
+      <window_info anchor="bottom" id="Terminal" order="7" />
+      <window_info id="UI Designer" order="2" />
+      <window_info id="JRebel" order="2" side_tool="true" />
+      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2945571" />
+      <window_info anchor="right" id="Palette&#9;" order="3" />
+      <window_info anchor="right" id="Palette" order="3" />
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
+      <window_info anchor="bottom" id="TODO" order="6" />
+      <window_info anchor="bottom" id="JRebel Executor" order="7" />
+      <window_info anchor="right" id="Maven Projects" order="3" visible="true" weight="0.1072572" />
+      <window_info anchor="right" id="Theme Preview" order="3" />
+      <window_info anchor="right" id="Bean Validation" order="4" />
+      <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
+      <window_info anchor="right" id="Capture Analysis" order="3" />
+      <window_info id="Favorites" order="2" side_tool="true" />
+      <window_info id="Image Layers" order="2" />
       <window_info anchor="bottom" id="Find" order="1" />
       <window_info anchor="bottom" id="Find" order="1" />
+      <window_info anchor="bottom" id="Event Log" order="7" sideWeight="0.5010672" side_tool="true" weight="0.5863192" />
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
+      <window_info anchor="bottom" id="Problems" order="8" />
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info id="Designer" order="2" />
+      <window_info anchor="bottom" id="Java Enterprise" order="7" />
+      <window_info anchor="bottom" id="JRebel Console" order="7" side_tool="true" />
+      <window_info anchor="bottom" id="Database Changes" order="7" show_stripe_button="false" />
+      <window_info anchor="bottom" id="Version Control" order="7" weight="0.32899022" />
+      <window_info id="Web" order="2" side_tool="true" />
       <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
       <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
-      <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="bottom" id="Run" order="2" sideWeight="0.4994664" visible="true" weight="0.32899022" />
+      <window_info id="Capture Tool" order="2" />
+      <window_info anchor="bottom" id="Messages" order="7" />
+      <window_info anchor="bottom" id="Debug" order="3" sideWeight="0.49893278" weight="0.29207385" />
+      <window_info anchor="bottom" id="FindBugs-IDEA" order="7" />
     </layout>
     </layout>
   </component>
   </component>
   <component name="TypeScriptGeneratedFilesManager">
   <component name="TypeScriptGeneratedFilesManager">
@@ -782,8 +661,8 @@
     </entry>
     </entry>
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/entity/SysUser.java">
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/entity/SysUser.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="19" selection-start-line="19" selection-end-line="19" />
+        <state relative-caret-position="306">
+          <caret line="35" column="27" selection-start-line="35" selection-start-column="19" selection-end-line="35" selection-end-column="27" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
@@ -808,34 +687,10 @@
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/rules/DateType.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="660">
-          <caret line="36" column="4" selection-start-line="36" selection-start-column="4" selection-end-line="36" selection-end-column="4" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/GlobalConfig.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="2460">
-          <caret line="100" column="20" selection-start-line="100" selection-start-column="20" selection-end-line="100" selection-end-column="20" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/rules/NamingStrategy.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="570">
-          <caret line="37" column="22" selection-start-line="37" selection-start-column="4" selection-end-line="37" selection-end-column="22" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/StrategyConfig.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="3030">
-          <caret line="128" column="37" selection-start-line="128" selection-start-column="20" selection-end-line="128" selection-end-column="37" />
-        </state>
-      </provider>
-    </entry>
+    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/rules/DateType.java" />
+    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/GlobalConfig.java" />
+    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/rules/NamingStrategy.java" />
+    <entry file="jar://$MAVEN_REPOSITORY$/com/baomidou/mybatis-plus-generator/3.1.2/mybatis-plus-generator-3.1.2-sources.jar!/com/baomidou/mybatisplus/generator/config/StrategyConfig.java" />
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/constant/ConstantUtil.java" />
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/constant/ConstantUtil.java" />
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/service/SysUserService.java">
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/service/SysUserService.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
@@ -881,8 +736,8 @@
     </entry>
     </entry>
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/SysUserController.java">
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/SysUserController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="296">
-          <caret line="27" column="52" lean-forward="true" selection-start-line="27" selection-start-column="52" selection-end-line="27" selection-end-column="52" />
+        <state relative-caret-position="381">
+          <caret line="35" column="19" selection-start-line="35" selection-start-column="19" selection-end-line="35" selection-end-column="19" />
           <folding>
           <folding>
             <element signature="imports" expanded="true" />
             <element signature="imports" expanded="true" />
           </folding>
           </folding>
@@ -940,15 +795,8 @@
     </entry>
     </entry>
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/CloudModelApplication.java">
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/CloudModelApplication.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="270">
-          <caret line="14" selection-start-line="14" selection-end-line="14" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/CompanyController.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="288">
-          <caret line="17" column="32" lean-forward="true" selection-start-line="17" selection-start-column="32" selection-end-line="17" selection-end-column="32" />
+        <state relative-caret-position="221">
+          <caret line="16" selection-start-line="16" selection-end-line="16" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
@@ -980,10 +828,17 @@
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>
+    <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/CompanyController.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="255">
+          <caret line="17" column="32" lean-forward="true" selection-start-line="17" selection-start-column="32" selection-end-line="17" selection-end-column="32" />
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java">
     <entry file="file://$PROJECT_DIR$/model/cloud-model/src/main/java/com/hssx/cloudmodel/controller/RoleController.java">
       <provider selected="true" editor-type-id="text-editor">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="233">
-          <caret line="72" column="13" selection-start-line="72" selection-start-column="13" selection-end-line="72" selection-end-column="13" />
+        <state relative-caret-position="218">
+          <caret line="44" column="25" selection-start-line="44" selection-start-column="22" selection-end-line="44" selection-end-column="25" />
         </state>
         </state>
       </provider>
       </provider>
     </entry>
     </entry>

+ 3 - 2
ys_vue/package.json

@@ -25,8 +25,8 @@
     "babel-core": "^6.22.1",
     "babel-core": "^6.22.1",
     "babel-loader": "^6.2.10",
     "babel-loader": "^6.2.10",
     "babel-plugin-transform-runtime": "^6.22.0",
     "babel-plugin-transform-runtime": "^6.22.0",
-    "babel-preset-env": "^1.2.1",
     "babel-polyfill": "^6.16.0",
     "babel-polyfill": "^6.16.0",
+    "babel-preset-env": "^1.2.1",
     "babel-preset-es2015": "^6.0.0",
     "babel-preset-es2015": "^6.0.0",
     "babel-preset-stage-2": "^6.22.0",
     "babel-preset-stage-2": "^6.22.0",
     "babel-register": "^6.22.0",
     "babel-register": "^6.22.0",
@@ -42,13 +42,13 @@
     "function-bind": "^1.0.2",
     "function-bind": "^1.0.2",
     "html-webpack-plugin": "^2.28.0",
     "html-webpack-plugin": "^2.28.0",
     "http-proxy-middleware": "^0.17.3",
     "http-proxy-middleware": "^0.17.3",
-    "webpack-bundle-analyzer": "^2.2.1",
     "json-loader": "^0.5.4",
     "json-loader": "^0.5.4",
     "mockjs": "^1.0.1-beta3",
     "mockjs": "^1.0.1-beta3",
     "node-sass": "^4.5.0",
     "node-sass": "^4.5.0",
     "opn": "^4.0.2",
     "opn": "^4.0.2",
     "optimize-css-assets-webpack-plugin": "^1.3.0",
     "optimize-css-assets-webpack-plugin": "^1.3.0",
     "ora": "^1.0.0",
     "ora": "^1.0.0",
+    "qs": "^6.7.0",
     "rimraf": "^2.6.0",
     "rimraf": "^2.6.0",
     "sass-loader": "^6.0.0",
     "sass-loader": "^6.0.0",
     "semver": "^5.3.0",
     "semver": "^5.3.0",
@@ -58,6 +58,7 @@
     "vue-style-loader": "^2.0.0",
     "vue-style-loader": "^2.0.0",
     "vue-template-compiler": "^2.2.4",
     "vue-template-compiler": "^2.2.4",
     "webpack": "^2.2.1",
     "webpack": "^2.2.1",
+    "webpack-bundle-analyzer": "^2.2.1",
     "webpack-dev-middleware": "^1.10.0",
     "webpack-dev-middleware": "^1.10.0",
     "webpack-hot-middleware": "^2.16.1",
     "webpack-hot-middleware": "^2.16.1",
     "webpack-merge": "^2.6.1"
     "webpack-merge": "^2.6.1"

BIN
ys_vue/src/assets/image/userHead.jpg


BIN
ys_vue/src/assets/user.png


+ 31 - 29
ys_vue/src/http.js

@@ -1,4 +1,5 @@
 import axios from 'axios'
 import axios from 'axios'
+import qs from 'qs'
 
 
 const TIME_OUT_MS = 60 * 1000 // 默认请求超时时间
 const TIME_OUT_MS = 60 * 1000 // 默认请求超时时间
 
 
@@ -6,37 +7,37 @@ const TIME_OUT_MS = 60 * 1000 // 默认请求超时时间
  * @param response 返回数据列表
  * @param response 返回数据列表
  */
  */
 function handleResults (response) {
 function handleResults (response) {
-    let remoteResponse = response.data
-    var result = {
-        success: false,
-        message: '',
-        status: [],
-        errorCode: '',
-        data: {
-            total: 0,
-            results: []
-        }
-    }
-    if (remoteResponse.success) {
-        result.data.results = remoteResponse.data
-        result.data.total = remoteResponse.total
-        result.success = true
-    }
-    if (!remoteResponse.success) {
-        let code = remoteResponse.errorCode
-        if (code === 400) {
-            console.log('传参错误')
-        }
-        result.errorCode = remoteResponse.errorCode
-        result.message = remoteResponse.message
-    }
-    return result
+    // console.log(response)
+    let remoteResponse = response.data;
+    // var result = {
+    //     success: false,
+    //     message: '',
+    //     status: [],
+    //     errorCode: '',
+    //     data: {
+    //         total: 0,
+    //         results: []
+    //     }
+    // }
+    // if (remoteResponse.code == "ok") {
+    //     result.data.results = remoteResponse.data
+    //     result.data.total = remoteResponse.total
+    //     result.success = true
+    // }
+    // if (remoteResponse.code == "error") {
+    //     let status = remoteResponse.status
+    //     if (status === 400) {
+    //         console.log('传参错误')
+    //     }
+    //     result.errorCode = remoteResponse.errorCode
+    //     result.message = remoteResponse.message
+    // }
+    //return result
+    return remoteResponse
 }
 }
 
 
 function handleUrl (url) {
 function handleUrl (url) {
-    console.log(BASE_URL)
     url = BASE_URL + url    
     url = BASE_URL + url    
-// BASE_URL是接口的ip前缀,比如http:10.100.1.1:8989/
     return url
     return url
 }
 }
 
 
@@ -59,10 +60,11 @@ export default {
         axios({
         axios({
             method: 'post',
             method: 'post',
             url: handleUrl(url),
             url: handleUrl(url),
-            data: handleParams(data),
+            data: handleParams(qs.stringify(data)),
             timeout: TIME_OUT_MS,
             timeout: TIME_OUT_MS,
             headers: {
             headers: {
-                'Content-Type': 'application/json; charset=UTF-8'
+                //'Content-Type': 'application/json; charset=UTF-8'
+                'content-type': ' application/x-www-form-urlencoded; charset=UTF-8'
             }
             }
         }).then(
         }).then(
             (result) => {
             (result) => {

+ 16 - 15
ys_vue/src/main.js

@@ -14,14 +14,14 @@ import Vuex from 'vuex'
 //import NProgress from 'nprogress'
 //import NProgress from 'nprogress'
 //import 'nprogress/nprogress.css'
 //import 'nprogress/nprogress.css'
 import routes from './routes'
 import routes from './routes'
-import Mock from './mock'
-Mock.bootstrap();
+// import Mock from './mock'
+// Mock.bootstrap();
 
 
-// import http from './http'
-// Vue.prototype.http = http
+import http from './http'
+Vue.prototype.http = http
 
 
-// import port from './port'
-// Vue.prototype.port = port
+import port from './port'
+Vue.prototype.port = port
 
 
 import 'font-awesome/css/font-awesome.min.css'
 import 'font-awesome/css/font-awesome.min.css'
 import './assets/iconfont/iconfont.css'
 import './assets/iconfont/iconfont.css'
@@ -42,23 +42,24 @@ router.beforeEach((to, from, next) => {
         sessionStorage.removeItem('user');
         sessionStorage.removeItem('user');
     }
     }
 
 
-    for(var i in routes){
-        if(routes[i].name == "基础管理"){
-            //routes.splice(i, 1)
-        }
-    }
-    
     let user = JSON.parse(sessionStorage.getItem('user'));
     let user = JSON.parse(sessionStorage.getItem('user'));
     if (!user && to.path != '/login') {
     if (!user && to.path != '/login') {
         next({ path: '/login' })
         next({ path: '/login' })
     } else {
     } else {
+        for(var i in routes){
+            if(user){
+                if(routes[i].name == "基础管理" && user.name != "管理员"){
+                    routes.splice(i, 1)
+                }
+            }
+        }
         next()
         next()
     }
     }
 })
 })
 
 
-//router.afterEach(transition => {
-//NProgress.done();
-//});
+// router.afterEach(transition => {
+// NProgress.done();
+// });
 
 
 new Vue({
 new Vue({
     //el: '#app',
     //el: '#app',

+ 3 - 0
ys_vue/src/port.js

@@ -7,5 +7,8 @@ export default {
     pwd: {
     pwd: {
         sendEmail: '/manage/user/sendEmail',
         sendEmail: '/manage/user/sendEmail',
         resetPwd: '/manage/user/passwordReset'
         resetPwd: '/manage/user/passwordReset'
+    },
+    base: {
+        addRole: '/role/add',  // 新建角色
     }
     }
 }
 }

+ 2 - 0
ys_vue/src/routes.js

@@ -16,6 +16,7 @@ import project from './views/project/project.vue'
 import moldList from './views/mold/moldList.vue'
 import moldList from './views/mold/moldList.vue'
 import moldFile from './views/mold/moldFile.vue'
 import moldFile from './views/mold/moldFile.vue'
 import staff from './views/base/staff.vue'
 import staff from './views/base/staff.vue'
+import role from './views/base/role.vue'
 import competence from './views/base/competence.vue'
 import competence from './views/base/competence.vue'
 
 
 let routes = [
 let routes = [
@@ -119,6 +120,7 @@ let routes = [
         iconCls: 'iconfont icon-setting-fill',
         iconCls: 'iconfont icon-setting-fill',
         children: [
         children: [
             { path: '/staff', component: staff, name: '人员管理' },
             { path: '/staff', component: staff, name: '人员管理' },
+            { path: '/role', component: role, name: '角色管理' },
             { path: '/competence', component: competence, name: '权限管理' }
             { path: '/competence', component: competence, name: '权限管理' }
         ]
         ]
     },
     },

+ 1 - 3
ys_vue/src/views/Home.vue

@@ -11,7 +11,7 @@
 			</el-col>
 			</el-col>
 			<el-col :span="4" class="userinfo">
 			<el-col :span="4" class="userinfo">
 				<el-dropdown trigger="hover">
 				<el-dropdown trigger="hover">
-					<span class="el-dropdown-link userinfo-inner"><img :src="this.sysUserAvatar" /> {{sysUserName}}</span>
+					<span class="el-dropdown-link userinfo-inner"><img src="../assets/image/userHead.jpg" /> {{sysUserName}}</span>
 					<el-dropdown-menu slot="dropdown">
 					<el-dropdown-menu slot="dropdown">
 						<el-dropdown-item>修改密码</el-dropdown-item>
 						<el-dropdown-item>修改密码</el-dropdown-item>
 						<el-dropdown-item divided @click.native="logout">退出登录</el-dropdown-item>
 						<el-dropdown-item divided @click.native="logout">退出登录</el-dropdown-item>
@@ -76,7 +76,6 @@
 				sysName:'云塑网后台管理系统',
 				sysName:'云塑网后台管理系统',
 				collapsed:false,
 				collapsed:false,
 				sysUserName: '',
 				sysUserName: '',
-				sysUserAvatar: '',
 				form: {
 				form: {
 					name: '',
 					name: '',
 					region: '',
 					region: '',
@@ -126,7 +125,6 @@
 			if (user) {
 			if (user) {
 				user = JSON.parse(user);
 				user = JSON.parse(user);
 				this.sysUserName = user.name || '';
 				this.sysUserName = user.name || '';
-				this.sysUserAvatar = user.avatar || '';
             }
             }
 		}
 		}
 	}
 	}

+ 67 - 58
ys_vue/src/views/Login.vue

@@ -1,20 +1,19 @@
 <template>
 <template>
     <div class="login-par">
     <div class="login-par">
-        <el-form :model="ruleForm2" :rules="rules2" ref="ruleForm2" label-position="left" label-width="0px" class="demo-ruleForm login-container">
+        <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-position="left" label-width="0px" class="demo-ruleForm login-container">
             <div class="login-logo">
             <div class="login-logo">
                 <img src="../assets/image/login_logo.png" />
                 <img src="../assets/image/login_logo.png" />
             </div>
             </div>
             <h3 class="title">云塑网后台管理系统</h3>
             <h3 class="title">云塑网后台管理系统</h3>
-            <el-form-item class="login-input" prop="account">
-                <el-input type="text" v-model="ruleForm2.account" auto-complete="off" placeholder="账号"></el-input>
+            <el-form-item class="login-input" prop="username">
+                <el-input type="text" v-model="ruleForm.username" auto-complete="off" placeholder="账号"></el-input>
             </el-form-item>
             </el-form-item>
-            <el-form-item class="login-input" prop="checkPass">
-                <el-input type="password" v-model="ruleForm2.checkPass" auto-complete="off" placeholder="密码"></el-input>
+            <el-form-item class="login-input" prop="password">
+                <el-input type="password" v-model="ruleForm.password" auto-complete="off" placeholder="密码"></el-input>
             </el-form-item>
             </el-form-item>
             <!-- <el-checkbox v-model="checked" checked class="remember">记住密码</el-checkbox> -->
             <!-- <el-checkbox v-model="checked" checked class="remember">记住密码</el-checkbox> -->
             <el-form-item class="login-button" style="width:100%;">
             <el-form-item class="login-button" style="width:100%;">
-                <el-button type="primary" style="width:100%;" @click.native.prevent="handleSubmit2" :loading="logining">登录</el-button>
-                <!--<el-button @click.native.prevent="handleReset2">重置</el-button>-->
+                <el-button type="primary" style="width:100%;" @click.native.prevent="handleSubmit" :loading="logining">登录</el-button>
             </el-form-item>
             </el-form-item>
         </el-form>
         </el-form>
         <div class="login-backImg">
         <div class="login-backImg">
@@ -24,77 +23,87 @@
 </template>
 </template>
 
 
 <script>
 <script>
-    import { requestLogin } from '../api/api';
+    //import { requestLogin } from '../api/api';
     //import NProgress from 'nprogress'
     //import NProgress from 'nprogress'
     export default {
     export default {
         data() {
         data() {
             return {
             return {
                 logining: false,
                 logining: false,
-                ruleForm2: {
-                    account: '',
-                    checkPass: ''
+                // 登录信息
+                ruleForm: {
+                    username: '',
+                    password: ''
                 },
                 },
-                rules2: {
-                account: [
-                    { required: true, message: '请输入账号', trigger: 'blur' },
-                    //{ validator: validaePass }
-                ],
-                checkPass: [
-                    { required: true, message: '请输入密码', trigger: 'blur' },
-                    //{ validator: validaePass2 }
-                ]
-                },
-                checked: true
+                rules: {
+                    username: [
+                        { required: true, message: '请输入账号', trigger: 'blur' },
+                    ],
+                    password: [
+                        { required: true, message: '请输入密码', trigger: 'blur' },
+                    ]
+                }
+                // ,
+                // checked: true
             };
             };
         },
         },
         methods: {
         methods: {
             handleReset2() {
             handleReset2() {
-                this.$refs.ruleForm2.resetFields();
+                this.$refs.ruleForm.resetFields();
             },
             },
-            handleSubmit2(ev) {
-                // var _this = this;
-                // console.log(this)
-                // this.http.post(this.port.manage.login, {
-                //     userLoginName: this.ruleForm2.account,
-                //     loginPwd: this.ruleForm2.checkPass
-                //     // ,
-                //     // cert: '1111111111'
-                // }, res => {
-                //     if (res.success) {
-                //         console.log(1123)
-                //         this.$router.push({ path: '/map' });
-                //        // 返回正确的处理
-                //     } else {
-                //         console.log(222)
-                //       // 返回错误的处理 
-                //     }
-                // })
-
-                this.$refs.ruleForm2.validate((valid) => {
+            handleSubmit(ev) {
+                this.$refs.ruleForm.validate((valid) => {
                     if (valid) {
                     if (valid) {
-                        //_this.$router.replace('/table');
+                        var _this = this;
                         this.logining = true;
                         this.logining = true;
-                        //NProgress.start();
-                        var loginParams = { username: this.ruleForm2.account, password: this.ruleForm2.checkPass };
-                        requestLogin(loginParams).then(data => {
+                        this.http.post(this.port.manage.login, {
+                            username: this.ruleForm.username,
+                            password: this.ruleForm.password
+                        }, res => {
                             this.logining = false;
                             this.logining = false;
-                            //NProgress.done();
-                            let { msg, code, user } = data;
-                            if (code !== 200) {
+                            if (res.code == "ok") {
+                                sessionStorage.setItem('user', JSON.stringify(res.data));
+                                this.$router.push({ path: '/map' });
+                            } else {
                                 this.$message({
                                 this.$message({
-                                    message: msg,
+                                    message: res.msg,
                                     type: 'error'
                                     type: 'error'
                                 });
                                 });
-                            } else {
-                                sessionStorage.setItem('user', JSON.stringify(user));
-                                this.$router.push({ path: '/Map' });
                             }
                             }
-                        });
-                    } else {
-                        console.log('error submit!!');
-                        return false;
+                        }, error => {
+                            this.logining = false;
+                            this.$message({
+                                message: error,
+                                type: 'error'
+                            });
+                        })
                     }
                     }
                 });
                 });
+
+                // this.$refs.ruleForm.validate((valid) => {
+                //     if (valid) {
+                //         //_this.$router.replace('/table');
+                //         this.logining = true;
+                //         //NProgress.start();
+                //         var loginParams = { username: this.ruleForm.account, password: this.ruleForm.password };
+                //         requestLogin(loginParams).then(data => {
+                //             this.logining = false;
+                //             //NProgress.done();
+                //             let { msg, code, user } = data;
+                //             if (code !== 200) {
+                //                 this.$message({
+                //                     message: msg,
+                //                     type: 'error'
+                //                 });
+                //             } else {
+                //                 sessionStorage.setItem('user', JSON.stringify(user));
+                //                 this.$router.push({ path: '/Map' });
+                //             }
+                //         });
+                //     } else {
+                //         console.log('error submit!!');
+                //         return false;
+                //     }
+                // });
             }
             }
         }
         }
     }
     }

+ 353 - 0
ys_vue/src/views/base/role.vue

@@ -0,0 +1,353 @@
+<template>
+	<section>
+		<!--工具条-->
+		<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
+			<el-form :inline="true" :model="filters">
+                <el-form-item>
+                    <el-input v-model="filters.name" placeholder="请输入角色名称进行搜索"></el-input>
+                </el-form-item>
+				<el-form-item>
+					<el-button type="primary" @click="getUsers">查询</el-button>
+				</el-form-item>
+				<el-form-item style="float:right;">
+					<el-button type="primary" @click="handleAdd">新增</el-button>
+				</el-form-item>
+                <el-form-item style="float:right;">
+					<el-button type="danger" @click="batchRemove" :disabled="this.sels.length===0">批量删除</el-button>
+				</el-form-item>
+			</el-form>
+		</el-col>
+
+		<!--列表-->
+		<el-table :data="users" highlight-current-row  :height="tableHeight" v-loading="listLoading" @selection-change="selsChange" style="width: 100%;">
+			<el-table-column type="selection" width="55"></el-table-column>
+			<el-table-column type="index" width="60"></el-table-column>
+			<el-table-column prop="name" label="姓名" width="120" sortable></el-table-column>
+			<el-table-column prop="sex" label="性别" width="100" :formatter="formatSex" sortable></el-table-column>
+			<el-table-column prop="age" label="年龄" width="100" sortable></el-table-column>
+			<el-table-column prop="birth" label="生日" width="120" sortable></el-table-column>
+			<el-table-column prop="addr" label="地址" min-width="180" sortable></el-table-column>
+			<el-table-column label="操作" width="150">
+				<template slot-scope="scope">
+					<el-button size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
+					<el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>
+				</template>
+			</el-table-column>
+		</el-table>
+
+		<!--工具条-->
+		<el-col :span="24" class="toolbar">
+            <el-pagination
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+                :page-sizes="[20 , 50 , 80 , 100 , 200]"
+                :page-size="20"
+                layout="total, sizes, prev, pager, next"
+                :total="total"
+                style="float:right;">
+            </el-pagination>
+		</el-col>
+
+		<!--编辑界面-->
+		<el-dialog title="编辑人员" :visible.sync="editFormVisible" :close-on-click-modal="false">
+			<el-form :model="editForm" label-width="80px" :rules="editFormRules" ref="editForm">
+				<el-form-item label="姓名" prop="name">
+					<el-input v-model="editForm.name" auto-complete="off"></el-input>
+				</el-form-item>
+				<el-form-item label="性别">
+					<el-radio-group v-model="editForm.sex">
+						<el-radio class="radio" :label="1">男</el-radio>
+						<el-radio class="radio" :label="0">女</el-radio>
+					</el-radio-group>
+				</el-form-item>
+				<el-form-item label="年龄">
+					<el-input-number v-model="editForm.age" :min="0" :max="200"></el-input-number>
+				</el-form-item>
+				<el-form-item label="生日">
+					<el-date-picker type="date" placeholder="选择日期" v-model="editForm.birth"></el-date-picker>
+				</el-form-item>
+				<el-form-item label="地址">
+					<el-input type="textarea" v-model="editForm.addr"></el-input>
+				</el-form-item>
+			</el-form>
+			<div slot="footer" class="dialog-footer">
+				<el-button @click.native="editFormVisible = false">取消</el-button>
+				<el-button type="primary" @click.native="editSubmit" :loading="editLoading">提交</el-button>
+			</div>
+		</el-dialog>
+
+		<!--新增界面-->
+		<el-dialog title="新增角色" :visible.sync="addFormVisible" :close-on-click-modal="false">
+			<el-form :model="addForm" label-width="80px" :rules="addFormRules" ref="addForm">
+				<el-form-item label="角色名称" prop="roleName">
+					<el-input v-model="addForm.roleName" auto-complete="off"></el-input>
+				</el-form-item>
+				<el-form-item label="权限配置">
+                    <el-row>
+                        <el-col :span="6" v-for="(item,index) in roleList" :key="item.val" style="text-align:center;">
+                            <el-checkbox v-model="addForm[item.label]">{{item.name}}</el-checkbox>
+                        </el-col>
+                    </el-row>
+					 <!-- <el-table :data="roleList" border :show-header="false" style="width: 100%">
+                        <el-table-column prop="name" label="名称" width="80"></el-table-column>
+                        <el-table-column prop="role" label="权限">
+                            <template slot-scope="scope">
+                                <div v-for="(item,index) in scope.row.role"></div>
+                            </template>
+                        </el-table-column>
+                    </el-table> -->
+				</el-form-item>
+			</el-form>
+			<div slot="footer" class="dialog-footer">
+				<el-button @click.native="addFormVisible = false">取消</el-button>
+				<el-button type="primary" @click.native="addSubmit" :loading="addLoading">提交</el-button>
+			</div>
+		</el-dialog>
+	</section>
+</template>
+
+<script>
+	import util from '../../common/js/util'
+	//import NProgress from 'nprogress'
+	import { getUserListPage, removeUser, batchRemoveUser, editUser, addUser } from '../../api/api';
+
+	export default {
+		data() {
+			return {
+				filters: {
+                    name: ''
+                },
+                // roleList: [{
+                //     name: '项目文档',
+                //     role: [{name:'上传',val:0},{name:'下载',val:1},{name:'浏览',val:2},{name:'审批',val:3}]
+                // },{
+                //     name: '模具文档',
+                //     role: 2
+                // },{
+                //     name: '零件文档',
+                //     role: 3
+                // },{
+                //     name: '模具保养',
+                //     role: 4
+                // },{
+                //     name: '模具更新',
+                //     role: 5
+                // },{
+                //     name: '模具报废',
+                //     role: 6
+                // }],
+                roleList: [
+                    {name:'上传',val:0,label:'uploadPower',uploadPower:false},
+                    {name:'下载',val:1,label:'dowloadPower',dowloadPower:false},
+                    {name:'浏览',val:2,label:'viewPower',viewPower:false},
+                    {name:'审批',val:3,label:'approvalPower',approvalPower:false}
+                ],
+				users: [],
+				total: 0,
+                page: 1,
+                size: 20,
+                listLoading: false,
+                tableHeight: 0,
+                sels: [],//列表选中列
+                
+                // 新增界面
+                // 新增界面是否显示
+				addFormVisible: false,
+				addLoading: false,
+				addFormRules: {
+					roleName: [
+						{ required: true, message: '请输入姓名', trigger: 'blur' }
+					]
+				},
+				// 新增界面数据
+				addForm: {
+                    roleName: '',
+                    uploadPower: false,
+                    dowloadPower:false,
+                    viewPower:false,
+                    approvalPower:false
+				},
+                
+                // 编辑界面
+                // 编辑界面是否显示
+				editFormVisible: false,
+				editLoading: false,
+				editFormRules: {
+					name: [
+						{ required: true, message: '请输入姓名', trigger: 'blur' }
+					]
+				},
+				//编辑界面数据
+				editForm: {
+					id: 0,
+					name: '',
+					role: []
+				}
+			}
+		},
+		methods: {
+			//性别显示转换
+			formatSex: function (row, column) {
+				return row.sex == 1 ? '男' : row.sex == 0 ? '女' : '未知';
+			},
+			handleCurrentChange(val) {
+				this.page = val;
+				this.getUsers();
+            },
+            handleSizeChange(val) {
+                this.size = val;
+				this.getUsers();
+            },
+			//获取用户列表
+			getUsers() {
+				let para = {
+					page: this.page,
+					name: this.filters.name
+				};
+				this.listLoading = true;
+				//NProgress.start();
+				getUserListPage(para).then((res) => {
+					this.total = res.data.total;
+					this.users = res.data.users;
+					this.listLoading = false;
+					//NProgress.done();
+				});
+            },
+            //新增
+			addSubmit: function () {
+				this.$refs.addForm.validate((valid) => {
+					if (valid) {
+                        console.log(this.addForm)
+                        var _this = this;
+                        this.addLoading = true;
+                        this.http.post(this.port.base.addRole, {
+                            roleName: this.addForm.roleName,
+                            uploadPower: this.addForm.uploadPower?1:0,
+                            dowloadPower: this.addForm.dowloadPower?1:0,
+                            viewPower: this.addForm.viewPower?1:0,
+                            approvalPower: this.addForm.approvalPower?1:0,
+                            flag: 0
+                        }, res => {
+                            this.addLoading = false;
+                            if (res.code == "ok") {
+                                this.$message({
+                                    message: '恭喜你,这是一条成功消息',
+                                    type: 'success'
+                                });
+                                this.getUsers();
+                            } else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                });
+                            }
+                        }, error => {
+                            this.addLoading = false;
+                            this.$message({
+                                message: error,
+                                type: 'error'
+                            });
+                        })
+					}
+				});
+			},
+			//删除
+			handleDel: function (index, row) {
+				this.$confirm('确认删除该人员吗?', '提示', {
+					type: 'warning'
+				}).then(() => {
+					this.listLoading = true;
+					//NProgress.start();
+					let para = { id: row.id };
+					removeUser(para).then((res) => {
+						this.listLoading = false;
+						//NProgress.done();
+						this.$message({
+							message: '删除成功',
+							type: 'success'
+						});
+						this.getUsers();
+					});
+				}).catch(() => {
+
+				});
+			},
+			//显示编辑界面
+			handleEdit: function (index, row) {
+				this.editFormVisible = true;
+				this.editForm = Object.assign({}, row);
+			},
+			//显示新增界面
+			handleAdd: function () {
+                this.addFormVisible = true;
+				this.addForm = {
+					roleName: '',
+					uploadPower: false,
+                    dowloadPower:false,
+                    viewPower:false,
+                    approvalPower:false
+				};
+			},
+			//编辑
+			editSubmit: function () {
+				this.$refs.editForm.validate((valid) => {
+					if (valid) {
+						this.$confirm('确认提交吗?', '提示', {}).then(() => {
+							this.editLoading = true;
+							//NProgress.start();
+							let para = Object.assign({}, this.editForm);
+							para.birth = (!para.birth || para.birth == '') ? '' : util.formatDate.format(new Date(para.birth), 'yyyy-MM-dd');
+							editUser(para).then((res) => {
+								this.editLoading = false;
+								//NProgress.done();
+								this.$message({
+									message: '提交成功',
+									type: 'success'
+								});
+								this.$refs['editForm'].resetFields();
+								this.editFormVisible = false;
+								this.getUsers();
+							});
+						});
+					}
+				});
+			},
+			selsChange: function (sels) {
+				this.sels = sels;
+			},
+			//批量删除
+			batchRemove: function () {
+				var ids = this.sels.map(item => item.id).toString();
+				this.$confirm('确认删除选中记录吗?', '提示', {
+					type: 'warning'
+				}).then(() => {
+					this.listLoading = true;
+					//NProgress.start();
+					let para = { ids: ids };
+					batchRemoveUser(para).then((res) => {
+						this.listLoading = false;
+						//NProgress.done();
+						this.$message({
+							message: '删除成功',
+							type: 'success'
+						});
+						this.getUsers();
+					});
+				}).catch(() => {
+
+				});
+			}
+        },
+        created() {
+            let height = window.innerHeight;
+            this.tableHeight = height - 240;
+        },
+		mounted() {
+			this.getUsers();
+        }
+	}
+</script>
+
+<style scoped>
+    
+</style>

+ 1 - 0
ys_vue/src/views/nav1/Form.vue

@@ -63,6 +63,7 @@
 		},
 		},
 		methods: {
 		methods: {
 			onSubmit() {
 			onSubmit() {
+                console.log(this.form)
                 console.log(123123)
                 console.log(123123)
                 this.markLocation('江苏省南京市雨花台区环山西路与艺苑路交叉口');
                 this.markLocation('江苏省南京市雨花台区环山西路与艺苑路交叉口');
 				console.log('submit!');
 				console.log('submit!');