sunyadv 5 tahun lalu
induk
melakukan
64f48c6e47

+ 0 - 2
.idea/modules.xml

@@ -3,8 +3,6 @@
   <component name="ProjectModuleManager">
     <modules>
       <module fileurl="file://$PROJECT_DIR$/cloud-model/cloud-model.iml" filepath="$PROJECT_DIR$/cloud-model/cloud-model.iml" />
-      <module fileurl="file://$PROJECT_DIR$/model/cloud-model/cloud-model.iml" filepath="$PROJECT_DIR$/model/cloud-model/cloud-model.iml" />
-      <module fileurl="file://$PROJECT_DIR$/model/model.iml" filepath="$PROJECT_DIR$/model/model.iml" />
       <module fileurl="file://$PROJECT_DIR$/.idea/yunsu.iml" filepath="$PROJECT_DIR$/.idea/yunsu.iml" />
     </modules>
   </component>

+ 1 - 1
ys_vue/config/index.js

@@ -20,7 +20,7 @@ module.exports = {
     assetsPublicPath: '/',
     proxyTable: {
         '/api': {    
-            target: 'http://192.168.101.6:8098',  // 接口域名 开发
+            target: 'http://192.168.101.6:8099',  // 接口域名 开发
             secure: true,  // 如果是https接口,需要配置这个参数
             changeOrigin: true,  //是否跨域
             pathRewrite: { // 如果接口本身没有api的路径,那么这里将发送到后端的请求重写为没有api的路径

+ 4 - 0
ys_vue/index.html

@@ -49,6 +49,10 @@
                 line-height: 20px;
                 background-color: #fff;
             }
+            
+            .customWidth {
+                width: 685px!important;
+            }
         </style>
     </head>
     <body>

+ 21 - 7
ys_vue/package-lock.json

@@ -3610,12 +3610,14 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -3630,17 +3632,20 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -3757,7 +3762,8 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "ini": {
           "version": "1.3.5",
@@ -3769,6 +3775,7 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -3783,6 +3790,7 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -3790,12 +3798,14 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -3814,6 +3824,7 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -3894,7 +3905,8 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -3906,6 +3918,7 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -4027,6 +4040,7 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",

+ 6 - 0
ys_vue/src/http.js

@@ -57,6 +57,12 @@ export default {
      * @param exception 异常的回调函数
      */
     post (url, data, response, exception) {
+        var user = sessionStorage.getItem('user');
+        console.log(!user)
+        if(user != null){
+            const name = JSON.parse(user).name
+            console.log(name)
+        }
         axios({
             method: 'post',
             url: handleUrl(url),

+ 15 - 9
ys_vue/src/port.js

@@ -1,19 +1,25 @@
 export default {
     manage: {
-        register: '/manage/company/register', // 注册接口
-        login: '/system/login', // 登录
-        logout: '/manage/company/loginOut' // // 退出
+        login: '/user/login', // 登录
+        //logout: '/manage/company/loginOut' // 退出
     },
     pwd: {
         sendEmail: '/manage/user/sendEmail',
         resetPwd: '/manage/user/passwordReset'
     },
+    project: {
+        userList: '/role/list'
+    },
+    // 基础管理
     base: {
-        addRole: '/role/add',  // 新建或修改角色
-        roleList: '/role/list', // 角色列表
-        delRole: '/role/delete', // 删除角色
-        addCompany: '/company/add',  // 新建或修改公司
-        companyList: '/company/list', // 公司列表
-        delCompany: '/company/delete', // 删除公司
+        addRole: '/role/add',  // 新建或修改 (角色)
+        roleList: '/role/list', // 列表
+        delRole: '/role/delete', // 删除
+        addCompany: '/company/add',  // (公司)
+        companyList: '/company/list', 
+        delCompany: '/company/delete', 
+        addFactory: '/factory/add',  // (工厂)
+        factoryList: '/factory/list', 
+        delFactory: '/factory/delete', 
     }
 }

+ 3 - 0
ys_vue/src/routes.js

@@ -2,6 +2,7 @@ import Login from './views/Login.vue'
 import NotFound from './views/404.vue'
 import Home from './views/Home.vue'
 import Main from './views/Main.vue'
+
 import Table from './views/nav1/Table.vue'
 import Form from './views/nav1/Form.vue'
 import user from './views/nav1/user.vue'
@@ -23,6 +24,7 @@ import moldFile from './views/mold/moldFile.vue'
 
 import role from './views/base/role.vue'
 import comp from './views/base/comp.vue'
+import factory from './views/base/factory.vue'
 
 let routes = [
     {
@@ -127,6 +129,7 @@ let routes = [
         children: [
             { path: '/role', component: role, name: '角色管理' },
             { path: '/comp', component: comp, name: '公司管理' },
+            { path: '/factory', component: factory, name: '工厂管理' }
         ]
     },
     {

+ 6 - 11
ys_vue/src/views/Login.vue

@@ -5,8 +5,8 @@
                 <img src="../assets/image/login_logo.png" />
             </div>
             <h3 class="title">云塑网后台管理系统</h3>
-            <el-form-item class="login-input" prop="username">
-                <el-input type="text" v-model="ruleForm.username" auto-complete="off" placeholder="账号" clearable prefix-icon="el-icon-user-solid"></el-input>
+            <el-form-item class="login-input" prop="account">
+                <el-input type="text" v-model="ruleForm.account" auto-complete="off" placeholder="账号" clearable prefix-icon="el-icon-user-solid"></el-input>
             </el-form-item>
             <el-form-item class="login-input" prop="password">
                 <el-input type="password" v-model="ruleForm.password" auto-complete="off" placeholder="密码" show-password prefix-icon="el-icon-lock"></el-input>
@@ -31,19 +31,17 @@
                 logining: false,
                 // 登录信息
                 ruleForm: {
-                    username: '',
+                    account: '',
                     password: ''
                 },
                 rules: {
-                    username: [
+                    account: [
                         { required: true, message: '请输入账号', trigger: 'blur' },
                     ],
                     password: [
                         { required: true, message: '请输入密码', trigger: 'blur' },
                     ]
                 }
-                // ,
-                // checked: true
             };
         },
         methods: {
@@ -55,10 +53,7 @@
                     if (valid) {
                         var _this = this;
                         this.logining = true;
-                        this.http.post(this.port.manage.login, {
-                            username: this.ruleForm.username,
-                            password: this.ruleForm.password
-                        }, res => {
+                        this.http.post(this.port.manage.login, this.ruleForm , res => {
                             this.logining = false;
                             if (res.code == "ok") {
                                 sessionStorage.setItem('user', JSON.stringify(res.data));
@@ -84,7 +79,7 @@
                 //         //_this.$router.replace('/table');
                 //         this.logining = true;
                 //         //NProgress.start();
-                //         var loginParams = { username: this.ruleForm.account, password: this.ruleForm.password };
+                //         var loginParams = { account: this.ruleForm.account, password: this.ruleForm.password };
                 //         requestLogin(loginParams).then(data => {
                 //             this.logining = false;
                 //             //NProgress.done();

+ 48 - 39
ys_vue/src/views/base/comp.vue

@@ -7,7 +7,7 @@
                     <el-input v-model="filters.keyName" placeholder="请输入公司名称进行搜索" clearable></el-input>
                 </el-form-item>
 				<el-form-item>
-					<el-button type="primary" @click.native="getRoles">查询</el-button>
+					<el-button type="primary" @click.native="getComp">查询</el-button>
 				</el-form-item>
 				<el-form-item style="float:right;">
 					<el-button type="primary" @click.native="handleAdd">新增</el-button>
@@ -17,7 +17,9 @@
 
 		<!--列表-->
 		<el-table :data="list" highlight-current-row :height="tableHeight" v-loading="listLoading" style="width: 100%;">
-			<el-table-column prop="roleName" label="公司名称" sortable></el-table-column>
+            <el-table-column type="index" width="60"></el-table-column>
+			<el-table-column prop="companyName" label="公司名称" width="300" sortable></el-table-column>
+            <el-table-column prop="companyAddress" label="公司地址" sortable></el-table-column>
 			<el-table-column label="操作" width="150">
 				<template slot-scope="scope">
 					<el-button size="small" @click.native="handleEdit(scope.$index, scope.row)">编辑</el-button>
@@ -31,7 +33,7 @@
             <el-pagination
                 @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
-                :page-sizes="[20 , 50 , 80 , 100 , 200]"
+                :page-sizes="[20 , 50 , 80 , 100]"
                 :page-size="20"
                 layout="total, sizes, prev, pager, next"
                 :total="total"
@@ -40,13 +42,13 @@
 		</el-col>
 
         <!--新增界面-->
-		<el-dialog title="新增角色" :inline="true" :visible.sync="addFormVisible" :close-on-click-modal="false">
-			<el-form :model="addForm" label-width="80px" :rules="formRules" ref="addForm">
-				<el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="addForm.roleName" auto-complete="off"></el-input>
+		<el-dialog title="新增公司" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="addForm" label-width="100px" :rules="formRules" ref="addForm" :inline="true" class="demo-form-inline">
+				<el-form-item label="公司名称" prop="companyName">
+					<el-input v-model="addForm.companyName" auto-complete="off"></el-input>
 				</el-form-item>
-                <el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="addForm.roleName" auto-complete="off"></el-input>
+                <el-form-item label="公司地址" prop="companyAddress">
+					<el-input v-model="addForm.companyAddress" auto-complete="off"></el-input>
 				</el-form-item>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
@@ -56,13 +58,13 @@
 		</el-dialog>
 
 		<!--编辑界面-->
-		<el-dialog title="编辑人员" :inline="true" :visible.sync="editFormVisible" :close-on-click-modal="false">
-			<el-form :model="editForm" label-width="80px" :rules="formRules" ref="editForm">
-				<el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="editForm.roleName" auto-complete="off"></el-input>
+		<el-dialog title="编辑公司" :visible.sync="editFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="editForm" label-width="100px" :rules="formRules" ref="editForm" :inline="true" class="demo-form-inline">
+				<el-form-item label="公司名称" prop="companyName">
+					<el-input v-model="editForm.companyName" auto-complete="off"></el-input>
 				</el-form-item>
-                <el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="addForm.roleName" auto-complete="off"></el-input>
+                <el-form-item label="公司地址" prop="companyAddress">
+					<el-input v-model="editForm.companyAddress" auto-complete="off"></el-input>
 				</el-form-item>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
@@ -90,16 +92,21 @@
                 tableHeight: 0,
                 
                 formRules: {
-					roleName: [
+					companyName: [
 						{ required: true, message: '请输入公司名称', trigger: 'blur' }
-					]
+                    ],
+                    companyAddress: [
+                        { required: true, message: '请输入公司地址', trigger: 'blur' }
+                    ]
                 },
 
                 // 新增界面
 				addFormVisible: false,
 				addLoading: false,
 				addForm: {
-                    roleName: ''
+                    companyName: '',
+                    companyAddress: '',
+                    flag: 0
 				},
                 
                 // 编辑界面
@@ -107,7 +114,9 @@
 				editLoading: false,
 				editForm: {
 					id: 0,
-					roleName: ''
+					companyName: '',
+                    companyAddress: '',
+                    flag: 1
 				}
 			}
 		},
@@ -115,23 +124,26 @@
             //  分页
 			handleCurrentChange(val) {
 				this.page = val;
-				this.getRoles();
+				this.getComp();
             },
 
             handleSizeChange(val) {
                 this.size = val;
-				this.getRoles();
+				this.getComp();
             },
 
 			//获取用户列表
-			getRoles() {
+			getComp() {
 				this.listLoading = true;
                 this.http.post(this.port.base.companyList, {
-                    keyName: this.filters.keyName
+                    keyName: this.filters.keyName,
+                    currentPage: this.page,
+                    pageSize: this.size
                 }, res => {
                     this.listLoading = false;
                     if (res.code == "ok") {
-                        this.list = res.data;
+                        this.list = res.data.list;
+                        this.total = res.data.total;
                     } else {
                         this.$message({
                             message: res.msg,
@@ -151,7 +163,9 @@
 			handleAdd: function () {
                 this.addFormVisible = true;
 				this.addForm = {
-					roleName: ''
+                    companyName: '',
+                    companyAddress: '',
+                    flag: 1
 				};
             },
             
@@ -160,10 +174,7 @@
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         this.addLoading = true;
-                        this.http.post(this.port.base.addCompany, {
-                            roleName: this.addForm.roleName,
-                            flag: 0
-                        }, res => {
+                        this.http.post(this.port.base.addCompany, this.addForm , res => {
                             this.addLoading = false;
                             this.addFormVisible = false;
                             if (res.code == "ok") {
@@ -171,7 +182,7 @@
                                     message: '创建成功',
                                     type: 'success'
                                 });
-                                this.getRoles();
+                                this.getComp();
                             } else {
                                 this.$message({
                                     message: res.msg,
@@ -205,7 +216,7 @@
                                 message: '删除成功',
                                 type: 'success'
                             });
-                            this.getRoles();
+                            this.getComp();
                         } else {
                             this.$message({
                                 message: res.msg,
@@ -226,7 +237,9 @@
                 this.editFormVisible = true;
                 this.editForm = {
                     id: row.id,
-					roleName: row.roleName
+                    companyName: row.companyName,
+                    companyAddress: row.companyAddress,
+                    flag: 1
 				};
             },
             
@@ -235,11 +248,7 @@
 				this.$refs.editForm.validate((valid) => {
 					if (valid) {
 						this.editLoading = true;
-                        this.http.post(this.port.base.addCompany, {
-                            id: this.editForm.id,
-                            roleName: this.editForm.roleName,
-                            flag: 1
-                        }, res => {
+                        this.http.post(this.port.base.addCompany, this.editForm , res => {
                             this.editLoading = false;
                             this.editFormVisible = false;
                             if (res.code == "ok") {
@@ -247,7 +256,7 @@
                                     message: '修改成功',
                                     type: 'success'
                                 });
-                                this.getRoles();
+                                this.getComp();
                             } else {
                                 this.$message({
                                     message: res.msg,
@@ -273,7 +282,7 @@
         },
 
 		mounted() {
-			this.getRoles();
+			this.getComp();
         }
 	}
 </script>

+ 372 - 0
ys_vue/src/views/base/factory.vue

@@ -0,0 +1,372 @@
+<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.keyName" placeholder="请输入工厂名称进行搜索" clearable></el-input>
+                </el-form-item>
+				<el-form-item>
+					<el-button type="primary" @click.native="getFactory">查询</el-button>
+				</el-form-item>
+				<el-form-item style="float:right;">
+					<el-button type="primary" @click.native="handleAdd">新增</el-button>
+				</el-form-item>
+			</el-form>
+		</el-col>
+
+		<!--列表-->
+		<el-table :data="list" highlight-current-row :height="tableHeight" v-loading="listLoading" style="width: 100%;">
+            <el-table-column type="index" width="60"></el-table-column>
+			<el-table-column prop="factoryName" label="工厂名称" width="300" sortable></el-table-column>
+            <el-table-column prop="factoryArea" label="工厂地址" sortable></el-table-column>
+			<el-table-column label="操作" width="150">
+				<template slot-scope="scope">
+					<el-button size="small" @click.native="handleEdit(scope.$index, scope.row)">编辑</el-button>
+					<el-button type="danger" size="small" @click.native.native="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]"
+                :page-size="20"
+                layout="total, sizes, prev, pager, next"
+                :total="total"
+                style="float:right;">
+            </el-pagination>
+		</el-col>
+
+        <!--新增界面-->
+		<el-dialog title="新增工厂" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="addForm" label-width="100px" :rules="formRules" ref="addForm" :inline="true" class="demo-form-inline">
+				<el-form-item label="工厂名称" prop="factoryName">
+					<el-input v-model="addForm.factoryName" auto-complete="off"></el-input>
+				</el-form-item>
+                <el-form-item label="工厂地址" prop="factoryArea">
+					<el-input v-model="addForm.factoryArea" auto-complete="off" :change="changeFactoryArea('addContainer')"></el-input>
+				</el-form-item>
+                <div id="addContainer" class="formMap" v-if="addForm.factoryArea != ''"></div>
+			</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>
+
+		<!--编辑界面-->
+		<el-dialog title="编辑工厂" :visible.sync="editFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="editForm" label-width="100px" :rules="formRules" ref="editForm" :inline="true" class="demo-form-inline">
+				<el-form-item label="工厂名称" prop="factoryName">
+					<el-input v-model="editForm.factoryName" auto-complete="off"></el-input>
+				</el-form-item>
+                <el-form-item label="工厂地址" prop="factoryArea">
+					<el-input v-model="editForm.factoryArea" auto-complete="off" :change="changeFactoryArea('editContainer')"></el-input>
+				</el-form-item>
+                <div id="editContainer" class="formMap" v-if="editForm.factoryArea != ''"></div>
+			</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>
+	</section>
+</template>
+
+<script>
+	import util from '../../common/js/util'
+
+	export default {
+		data() {
+			return {
+				filters: {
+                    keyName: ''
+                },
+				list: [],
+				total: 0,
+                page: 1,
+                size: 20,
+                listLoading: false,
+                tableHeight: 0,
+                
+                noSub: false,
+                formRules: {
+					factoryName: [
+						{ required: true, message: '请输入公司名称', trigger: 'blur' }
+                    ],
+                    factoryArea: [
+                        { required: true, message: '请输入公司地址', trigger: 'blur' }
+                    ]
+                },
+
+                // 新增界面
+				addFormVisible: false,
+				addLoading: false,
+				addForm: {
+                    factoryName: '',
+                    factoryArea: '',
+                    yLng: 0,
+                    xLat: 0,
+                    flag: 0
+				},
+                
+                // 编辑界面
+				editFormVisible: false,
+				editLoading: false,
+				editForm: {
+					id: 0,
+					factoryName: '',
+                    factoryArea: '',
+                    yLng: 0,
+                    xLat: 0,
+                    flag: 1
+				}
+			}
+		},
+		methods: {
+            //  分页
+			handleCurrentChange(val) {
+				this.page = val;
+				this.getFactory();
+            },
+
+            handleSizeChange(val) {
+                this.size = val;
+				this.getFactory();
+            },
+
+			//获取用户列表
+			getFactory() {
+				this.listLoading = true;
+                this.http.post(this.port.base.factoryList, {
+                    keyName: this.filters.keyName,
+                    currentPage: this.page,
+                    pageSize: this.size
+                }, res => {
+                    this.listLoading = false;
+                    if (res.code == "ok") {
+                        this.list = res.data.list;
+                        this.total = res.data.total;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+            
+            //地址输入切换
+            changeFactoryArea: function (mapId) {
+                if(mapId == "addContainer"){
+                    this.markLocation(this.addForm.factoryArea, mapId);
+                } else {
+                    this.markLocation(this.editForm.factoryArea, mapId);
+                }
+                
+            },
+
+            //显示新增界面
+			handleAdd: function () {
+                this.addFormVisible = true;
+                this.noSub = false;
+				this.addForm = {
+                    factoryName: '',
+                    factoryArea: '',
+                    yLng: 0,
+                    xLat: 0,
+                    flag: 0
+				};
+            },
+
+            //新增
+			addSubmit: function () {
+				this.$refs.addForm.validate((valid) => {
+					if (valid) {
+                        if(this.noSub){
+                            this.$message({
+                                message: '定位失败!',
+                                type: 'error'
+                            });
+                        } else {
+                            this.addLoading = true;
+                            this.http.post(this.port.base.addFactory, this.addForm , res => {
+                                this.addLoading = false;
+                                this.addFormVisible = false;
+                                if (res.code == "ok") {
+                                    this.$message({
+                                        message: '创建成功',
+                                        type: 'success'
+                                    });
+                                    this.getFactory();
+                                } else {
+                                    this.$message({
+                                        message: res.msg,
+                                        type: 'error'
+                                    });
+                                }
+                            }, error => {
+                                this.addLoading = false;
+                                this.addFormVisible = false;
+                                this.$message({
+                                    message: error,
+                                    type: 'error'
+                                });
+                            })
+                        }
+					}
+				});
+            },
+            
+			//删除
+			handleDel: function (index, row) {
+				this.$confirm('确认删除该工厂吗?', '提示', {
+					type: 'warning'
+				}).then(() => {
+					var _this = this;
+                    this.addLoading = true;
+                    this.http.post(this.port.base.delFactory, {
+                        id: row.id
+                    }, res => {
+                        if (res.code == "ok") {
+                            this.$message({
+                                message: '删除成功',
+                                type: 'success'
+                            });
+                            this.getFactory();
+                        } else {
+                            this.$message({
+                                message: res.msg,
+                                type: 'error'
+                            });
+                        }
+                    }, error => {
+                        this.$message({
+                            message: error,
+                            type: 'error'
+                        });
+                    })
+				});
+            },
+            
+			//显示编辑界面
+			handleEdit: function (index, row) {
+                this.editFormVisible = true;
+                this.noSub = false;
+                this.editForm = {
+                    id: row.id,
+                    factoryName: row.factoryName,
+                    factoryArea: row.factoryArea,
+                    yLng: row.yLng,
+                    xLat: row.xLat,
+                    flag: 1
+				};
+            },
+            
+			//编辑
+			editSubmit: function () {
+				this.$refs.editForm.validate((valid) => {
+					if (valid) {
+                        if(this.noSub){
+                            this.$message({
+                                message: '定位失败!',
+                                type: 'error'
+                            });
+                        } else {
+                            this.editLoading = true;
+                            this.http.post(this.port.base.addFactory, this.editForm , res => {
+                                this.editLoading = false;
+                                this.editFormVisible = false;
+                                if (res.code == "ok") {
+                                    this.$message({
+                                        message: '修改成功',
+                                        type: 'success'
+                                    });
+                                    this.getFactory();
+                                } else {
+                                    this.$message({
+                                        message: res.msg,
+                                        type: 'error'
+                                    });
+                                }
+                            }, error => {
+                                this.editLoading = false;
+                                this.editFormVisible = false;
+                                this.$message({
+                                    message: error,
+                                    type: 'error'
+                                });
+                            })
+                        }
+					}
+				});
+            },
+
+            // 获取经纬度
+            markLocation: function(address,mapId) {
+                var _this = this;
+                AMap.plugin('AMap.Geocoder', function() {
+                    var geocoder = new AMap.Geocoder();            
+                    geocoder.getLocation(address, function(status, result) {
+                        if (status === 'complete' && result.info === 'OK') {
+                            // 经纬度                      
+                            var lng = result.geocodes[0].location.lng;
+                            var lat = result.geocodes[0].location.lat;
+                            
+                            _this.noSub = false;
+                            if(mapId == "addContainer") {
+                                _this.addForm.yLng = lng;
+                                _this.addForm.xLat = lat;
+                            } else {
+                                _this.editForm.yLng = lng;
+                                _this.editForm.xLat = lat;
+                            }
+        
+                            // 地图实例
+                            var map = new AMap.Map(mapId, {
+                                resizeEnable: true, // 允许缩放
+                                center: [lng, lat], // 设置地图的中心点
+                                zoom: 15        // 设置地图的缩放级别,0 - 20
+                            });
+                            
+                            // 添加标记
+                            var marker = new AMap.Marker({
+                                map: map,
+                                position: new AMap.LngLat(lng, lat),   // 经纬度
+                            });
+                            
+                        } else {
+                            _this.noSub = true;
+                            //console.log('定位失败!');
+                        }
+                    });
+                });
+            }
+        },
+
+        created() {
+            let height = window.innerHeight;
+            this.tableHeight = height - 240;
+        },
+
+		mounted() {
+			this.getFactory();
+        }
+	}
+</script>
+
+<style scoped>
+    .formMap {
+        height: 400px;
+    }
+</style>

+ 13 - 9
ys_vue/src/views/base/role.vue

@@ -17,6 +17,7 @@
 
 		<!--列表-->
 		<el-table :data="list" highlight-current-row :height="tableHeight" v-loading="listLoading" style="width: 100%;">
+            <el-table-column type="index" width="60"></el-table-column>
 			<el-table-column prop="roleName" label="角色名称" width="120" sortable></el-table-column>
 			<el-table-column prop="sex" label="权限">
                 <template slot-scope="scope">
@@ -47,7 +48,7 @@
             <el-pagination
                 @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
-                :page-sizes="[20 , 50 , 80 , 100 , 200]"
+                :page-sizes="[20 , 50 , 80 , 100]"
                 :page-size="20"
                 layout="total, sizes, prev, pager, next"
                 :total="total"
@@ -56,8 +57,8 @@
 		</el-col>
 
         <!--新增界面-->
-		<el-dialog title="新增角色" :visible.sync="addFormVisible" :close-on-click-modal="false">
-			<el-form :model="addForm" label-width="80px" :rules="formRules" ref="addForm">
+		<el-dialog title="新增角色" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="addForm" label-width="100px" :rules="formRules" ref="addForm">
 				<el-form-item label="角色名称" prop="roleName">
 					<el-input v-model="addForm.roleName" auto-complete="off"></el-input>
 				</el-form-item>
@@ -84,8 +85,8 @@
 		</el-dialog>
 
 		<!--编辑界面-->
-		<el-dialog title="编辑人员" :visible.sync="editFormVisible" :close-on-click-modal="false">
-			<el-form :model="editForm" label-width="80px" :rules="formRules" ref="editForm">
+		<el-dialog title="编辑人员" :visible.sync="editFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="editForm" label-width="100px" :rules="formRules" ref="editForm">
 				<el-form-item label="角色名称" prop="roleName">
 					<el-input v-model="editForm.roleName" auto-complete="off"></el-input>
 				</el-form-item>
@@ -168,7 +169,8 @@
                     uploadPower: false,
                     dowloadPower:false,
                     viewPower:false,
-                    approvalPower:false
+                    approvalPower:false,
+                    flag: 0
 				},
                 
                 // 编辑界面
@@ -200,12 +202,14 @@
 			getRoles() {
 				this.listLoading = true;
                 this.http.post(this.port.base.roleList, {
-                    keyName: this.filters.keyName
+                    keyName: this.filters.keyName,
+                    currentPage: this.page,
+                    pageSize: this.size
                 }, res => {
                     this.listLoading = false;
                     if (res.code == "ok") {
-                        this.list = res.data;
-                        //this.total = res.data.total;
+                        this.list = res.data.list;
+                        this.total = res.data.total;
                     } else {
                         this.$message({
                             message: res.msg,

+ 27 - 20
ys_vue/src/views/project/staff.vue

@@ -31,11 +31,10 @@
 		</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 :data="list" highlight-current-row :height="tableHeight" v-loading="listLoading" style="width: 100%;">
 			<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="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>
@@ -128,7 +127,7 @@
 	export default {
 		data() {
 			return {
-                 options: [{
+                options: [{
                     value: '选项1',
                     label: '黄金糕'
                 }, {
@@ -148,7 +147,7 @@
                     name: '',
                     value: ''
 				},
-				users: [],
+				list: [],
 				total: 0,
                 page: 1,
                 size: 20,
@@ -192,10 +191,7 @@
 			}
 		},
 		methods: {
-			//性别显示转换
-			formatSex: function (row, column) {
-				return row.sex == 1 ? '男' : row.sex == 0 ? '女' : '未知';
-			},
+            //  分页
 			handleCurrentChange(val) {
 				this.page = val;
 				this.getUsers();
@@ -206,18 +202,29 @@
             },
 			//获取用户列表
 			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();
-				});
+                this.http.post(this.port.base.roleList, {
+                    keyName: this.filters.keyName,
+                    currentPage: this.page,
+                    pageSize: this.size
+                }, res => {
+                    this.listLoading = false;
+                    if (res.code == "ok") {
+                        this.list = res.data.list;
+                        this.total = res.data.total;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
 			},
 			//删除
 			handleDel: function (index, row) {