Browse Source

Merge branch 'V0.0.2' of http://10.87.10.227:4000/jzyd_yyds/soc_web into V0.0.2

luojun 2 năm trước cách đây
mục cha
commit
aeb40af300

+ 1 - 1
src/assets/styles/variables.scss

@@ -36,7 +36,7 @@ $base-sub-menu-background:#000c17;
 $base-sub-menu-hover:#001528;
 */
 
-$base-sidebar-width: 200px;
+$base-sidebar-width: 230px;
 
 // the :export directive is the magic sauce for webpack
 // https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass

+ 1 - 1
src/views/core/materials/index.vue

@@ -4,7 +4,7 @@
       <!--机构数据-->
       <el-col :span="4" :xs="24">
         <org-tree v-model="queryParams.orgId" @defaultKey="getDefaultKey" @checkChange="checkChange"
-                  @click="clickTreeNode" hangsheTree></org-tree>
+                  @click="clickTreeNode"></org-tree>
       </el-col>
       <!--用户数据-->
       <el-col :span="20" :xs="24">

+ 43 - 26
src/views/system/area/index.vue

@@ -18,7 +18,7 @@
               />
             </el-select>
           </el-form-item>
-      
+
       <el-form-item label="区域名称" prop="name">
         <el-input maxlength="50"
          style="width: 100%"
@@ -28,8 +28,8 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-    
-    
+
+
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -47,7 +47,7 @@
           v-hasPermi="['system:area:add']"
         >新增</el-button>
       </el-col>
-      <el-col :span="1.5">
+      <!-- <el-col :span="1.5">
         <el-button
           type="success"
           plain
@@ -68,7 +68,7 @@
           @click="handleDelete"
           v-hasPermi="['system:area:remove']"
         >删除</el-button>
-      </el-col>
+      </el-col> -->
       <!-- <el-col :span="1.5">
         <el-button
           type="warning"
@@ -82,11 +82,18 @@
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="areaList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-     
-      <el-table-column label="区域名称" align="center" prop="name" />
-    
+    <el-table
+      border
+      height="600"
+      size="small"
+      v-loading="loading" :data="areaList" @selection-change="handleSelectionChange">
+      <!-- <el-table-column type="selection" width="55" align="center" /> -->
+      <el-table-column label="序号" align="center" min-width="50">
+            <template v-slot:default="scope">
+              <span v-text="getPageIndex(scope.$index)"> </span>
+        </template>
+      </el-table-column>
+      <el-table-column label="区域名称" align="left" prop="name" />
       <el-table-column label="机构类型" align="center" prop="orgType" />
       <el-table-column label="更新人" align="center" prop="updateBy" />
       <el-table-column label="创建时间" align="center" prop="createTime" />
@@ -98,7 +105,7 @@
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['system:area:edit']"
-          >修改</el-button>
+          >编辑</el-button>
           <el-button
             size="mini"
             type="text"
@@ -109,7 +116,7 @@
         </template>
       </el-table-column>
     </el-table>
-    
+
     <pagination
       v-show="total>0"
       :total="total"
@@ -121,14 +128,13 @@
     <!-- 添加或修改【请填写功能名称】对话框 -->
     <DialogCom :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-form-item label="区域名称" prop="name">
-          <el-input maxlength="50" v-model="form.name" placeholder="请输入区域名称" />
-        </el-form-item>
 
-
-    
-            <el-form-item label="机构类型" prop="orgType">
-              <el-select v-model="form.orgType" placeholder="请选择机构类型">
+        <el-form-item label="机构类型" prop="orgType">
+              <el-select
+                  style="width: 100%;"
+                  v-model="form.orgType"
+                  clearable
+                  placeholder="请选择机构类型">
                 <el-option
                   v-for="dict in dict.type.sys_org_type"
                   :key="dict.value"
@@ -136,9 +142,14 @@
                   :value="`${dict.value}`"
                 ></el-option>
               </el-select>
-            </el-form-item>
-      
-      
+         </el-form-item>
+
+        <el-form-item label="区域名称" prop="name">
+          <el-input
+          style="width: 100%;"
+          maxlength="50" v-model="form.name" placeholder="请输入区域名称" />
+        </el-form-item>
+
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -199,6 +210,12 @@ export default {
     this.getList();
   },
   methods: {
+    getPageIndex($index) {
+      //表格序号
+      return (
+        (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
+      );
+    },
     /** 查询【请填写功能名称】列表 */
     getList() {
       this.loading = true;
@@ -248,7 +265,7 @@ export default {
     handleAdd() {
       this.reset();
       this.open = true;
-      this.title = "添加";
+      this.title = "新增";
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -257,7 +274,7 @@ export default {
       getArea(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改";
+        this.title = "编辑";
       });
     },
     /** 提交按钮 */
@@ -266,13 +283,13 @@ export default {
         if (valid) {
           if (this.form.id != null) {
             updateArea(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
+              this.$modal.msgSuccess("处理成功");
               this.open = false;
               this.getList();
             });
           } else {
             addArea(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
+              this.$modal.msgSuccess("处理成功");
               this.open = false;
               this.getList();
             });

+ 42 - 52
src/views/system/bind/index.vue

@@ -4,12 +4,12 @@
       <!--部门数据-->
       <el-col :span="4" :xs="24">
         <div class="head-container">
-          <el-input v-model="deptName" placeholder="请输入部门名称" clearable size="small" prefix-icon="el-icon-search"
+          <el-input v-model="deptName" placeholder="请输入机构名称" clearable size="small" prefix-icon="el-icon-search"
             style="margin-bottom: 20px" />
         </div>
         <div class="tree-container">
           <div style="margin-bottom: 10px;">
-            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">是否关联下级机构</el-checkbox>
+            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">关联下级</el-checkbox>
           </div>
           <el-tree :data="deptOptions" :props="defaultProps" :expand-on-click-node="false"
             :filter-node-method="filterNode" ref="tree" node-key="id" :default-expanded-keys="defaultKeys"
@@ -47,27 +47,35 @@
             <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
               v-hasPermi="['system:bind:add']">新增</el-button>
           </el-col>
-          <el-col :span="1.5">
-            <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
-              v-hasPermi="['system:bind:edit']">修改</el-button>
-          </el-col>
-          <el-col :span="1.5">
-            <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
-              v-hasPermi="['system:bind:remove']">删除</el-button>
-          </el-col>
+<!--          <el-col :span="1.5">-->
+<!--            <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"-->
+<!--              v-hasPermi="['system:bind:edit']">修改</el-button>-->
+<!--          </el-col>-->
+<!--          <el-col :span="1.5">-->
+<!--            <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"-->
+<!--              v-hasPermi="['system:bind:remove']">删除</el-button>-->
+<!--          </el-col>-->
 
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
         </el-row>
 
-        <el-table v-loading="loading" :data="bindList" @selection-change="handleSelectionChange">
-          <el-table-column type="selection" width="55" align="center" />
-
-          <el-table-column label="机构名称" align="center" prop="orgName" />
+        <el-table
+          border
+          height="600"
+          size="small"
+          v-loading="loading" :data="bindList" @selection-change="handleSelectionChange">
+          <!--<el-table-column type="selection" width="55" align="center" />-->
+          <el-table-column label="序号" align="center" min-width="50">
+            <template v-slot:default="scope">
+              <span v-text="getPageIndex(scope.$index)"> </span>
+            </template>
+          </el-table-column>
+          <el-table-column label="机构名称" align="left" prop="orgName" />
 
-          <el-table-column label="区域名称" align="center" prop="areaName" />
+          <el-table-column label="区域名称" align="left" prop="areaName" />
 
-          <el-table-column label="NFC点位名称" align="center" prop="collectionAreaName" />
-          <el-table-column label="标签编号" align="center" prop="code" />
+          <el-table-column label="NFC点位" align="left" prop="collectionAreaName" />
+          <el-table-column label="标签编号" align="left" prop="code" />
 
           <el-table-column prop="status" label="状态" width="80">
             <template slot-scope="scope">
@@ -80,7 +88,7 @@
           <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope">
               <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:bind:edit']">修改</el-button>
+                v-hasPermi="['system:bind:edit']">编辑</el-button>
               <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
                 v-hasPermi="['system:bind:remove']">删除</el-button>
             </template>
@@ -91,55 +99,31 @@
       </el-col>
     </el-row>
 
-
-
-
-
-
-
-
-
-
-
     <!-- 添加或修改【请填写功能名称】对话框 -->
     <DialogCom :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-row>
-          <el-col :span="30">
             <el-form-item label="机构名称" prop="orgId">
               <treeselect v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
                 :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择机构" @select="changeSelectArea" />
             </el-form-item>
-          </el-col>
-        </el-row>
-
-        <el-row>
-          <el-col :span="20">
             <el-form-item label="区域名称" v-if="form.orgId!=null" prop="areaId">
-              <el-select  mode="multiple" v-model="form.areaId" placeholder="请选择区域名称" @change="changeSelect">
+              <el-select  mode="multiple" style="width: 100%;" v-model="form.areaId" placeholder="请选择区域名称" @change="changeSelect">
                 <el-option v-for="item in roleOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
               </el-select>
             </el-form-item>
-          </el-col>
-        </el-row>
 
-        <el-row>
-          <el-col :span="20">
-            <el-form-item label="NFC点位名称" v-if="form.orgId!=null" prop="checkId">
-              <el-select v-model="form.checkId" placeholder="请选择NFC点位名称">
+            <el-form-item label="NFC点位" v-if="form.orgId!=null" prop="checkId">
+              <el-select style="width: 100%;" v-model="form.checkId" placeholder="请选择NFC点位名称">
                 <el-option v-for="item in checkList" :key="item.id" :label="item.checkName" :value="item.id"></el-option>
               </el-select>
             </el-form-item>
-          </el-col>
-        </el-row>
-
 
         <el-form-item label="标签编号" prop="code">
           <el-input maxlength="50" v-model="form.code" placeholder="请输入标签" />
         </el-form-item>
 
         <el-form-item label="状态" prop="enable">
-          <el-select v-model="form.enable" placeholder="请选择状态">
+          <el-select style="width: 100%" v-model="form.enable" placeholder="请选择状态">
             <el-option v-for="dict in dict.type.plan_status" :key="dict.value" :label="dict.label"
               :value="`${dict.value}`"></el-option>
           </el-select>
@@ -251,9 +235,15 @@ export default {
     }
   },
   methods: {
-closeOptions(){
-  this.$refs.fuzzySearch[0].blur()
-},
+    getPageIndex($index) {
+      //表格序号
+      return (
+        (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
+      );
+    },
+    closeOptions(){
+      this.$refs.fuzzySearch[0].blur()
+    },
 
     /** 下穿状态改变*/
     changeCheckBox() {
@@ -275,7 +265,7 @@ closeOptions(){
     this.  form.areaId=null
       })
     },
-    
+
     changeSelect(val) {
       getCheckByAreaId(val).then(response => {
         this.form.checkId = null;
@@ -363,7 +353,7 @@ closeOptions(){
         this.roleOptions = response.areas;
 
         this.open = true;
-        this.title = "添加";
+        this.title = "新增";
         this.form.password = this.initPassword;
       });
     },
@@ -381,7 +371,7 @@ closeOptions(){
         this.checkList = response.checks;
 
         this.open = true;
-        this.title = "修改";
+        this.title = "编辑";
       });
     },
     /** 提交按钮 */

+ 301 - 284
src/views/system/check/index.vue

@@ -5,24 +5,24 @@
       <!--部门数据-->
       <el-col :span="4" :xs="24">
         <div class="head-container">
-          <el-input v-model="deptName" placeholder="请输入部门名称" clearable size="small" prefix-icon="el-icon-search"
-            style="margin-bottom: 20px" />
+          <el-input v-model="deptName" placeholder="请输入机构名称" clearable size="small" prefix-icon="el-icon-search"
+                    style="margin-bottom: 20px"/>
         </div>
         <div class="tree-container">
           <div style="margin-bottom: 10px;">
-            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">是否关联下级机构</el-checkbox>
+            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">关联下级</el-checkbox>
           </div>
           <el-tree :data="deptOptions" :props="defaultProps" :expand-on-click-node="false"
-            :filter-node-method="filterNode" ref="tree" node-key="id" :default-expanded-keys="defaultKeys"
-            :default-checked-keys="defaultKeys" @node-click="handleNodeClick" />
+                   :filter-node-method="filterNode" ref="tree" node-key="id" :default-expanded-keys="defaultKeys"
+                   :default-checked-keys="defaultKeys" @node-click="handleNodeClick"/>
         </div>
       </el-col>
 
       <el-col :span="20" :xs="24">
-        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-          <el-form-item label="NFC点位名称" prop="checkName">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
+          <el-form-item label="NFC点位" prop="checkName">
             <el-input v-model="queryParams.checkName" placeholder="请输入NFC点位名称" clearable
-              @keyup.enter.native="handleQuery" />
+                      @keyup.enter.native="handleQuery"/>
           </el-form-item>
           <el-form-item label="区域名称" prop="areaId">
             <el-select v-model="queryParams.areaId" placeholder="请选择">
@@ -42,70 +42,79 @@
         <el-row :gutter="10" class="mb8">
           <el-col :span="1.5">
             <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
-              v-hasPermi="['system:check:add']">新增</el-button>
-          </el-col>
-          <el-col :span="1.5">
-            <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
-              v-hasPermi="['system:check:edit']">修改</el-button>
-          </el-col>
-          <el-col :span="1.5">
-            <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
-              v-hasPermi="['system:check:remove']">删除</el-button>
+                       v-hasPermi="['system:check:add']">新增
+            </el-button>
           </el-col>
+          <!--    <el-col :span="1.5">
+                <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
+                  v-hasPermi="['system:check:edit']">修改</el-button>
+              </el-col>
+              <el-col :span="1.5">
+                <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
+                  v-hasPermi="['system:check:remove']">删除</el-button>
+              </el-col>-->
           <!-- <el-col :span="1.5">
         <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
           v-hasPermi="['system:check:export']">导出</el-button>
       </el-col> -->
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
         </el-row>
-        <el-table v-loading="loading" :data="checkList" @selection-change="handleSelectionChange">
-          <el-table-column type="selection" width="55" align="center" />
-          <el-table-column label="NFC点位名称" align="center" prop="checkName" />
-          <el-table-column label="区域名称" align="center" prop="areaName" />
-          <el-table-column label="归属部门" align="center" prop="orgName" />
-          <el-table-column label="修改人" align="center" prop="updateBy" />
+        <el-table
+          border
+          height="600"
+          size="small"
+          v-loading="loading" :data="checkList" @selection-change="handleSelectionChange">
+          <!--<el-table-column type="selection" width="55" align="center" />-->
+          <el-table-column label="序号" align="center" min-width="50">
+            <template v-slot:default="scope">
+              <span v-text="getPageIndex(scope.$index)"> </span>
+            </template>
+          </el-table-column>
+          <el-table-column label="所属机构" align="left" prop="orgName"/>
+          <el-table-column label="区域名称" align="left" prop="areaName"/>
+          <el-table-column label="NFC点位" align="left" prop="checkName"/>
+          <el-table-column label="修改人" align="center" prop="updateBy"/>
           <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope">
               <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:check:edit']">修改</el-button>
+                         v-hasPermi="['system:check:edit']">编辑
+              </el-button>
               <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
-                v-hasPermi="['system:check:remove']">删除</el-button>
+                         v-hasPermi="['system:check:remove']">删除
+              </el-button>
             </template>
           </el-table-column>
         </el-table>
-        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
-          @pagination="getList" />
+        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
+                    :limit.sync="queryParams.pageSize"
+                    @pagination="getList"/>
       </el-col>
 
 
     </el-row>
 
 
-
-
     <!-- 添加或修改区域采集点对话框 -->
     <DialogCom :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="110px">
         <el-row>
-          <el-col :span="16">
-            <el-form-item label="归属部门" prop="orgId">
-              <treeselect v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
-                :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择归属部门" @select="changeSelectArea"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="16">
-            <el-form-item label="区域名称" v-if="form.orgId!=null" prop="areaId">
-              <el-select v-model="form.areaId" placeholder="请选择区域名称">
-                <el-option v-for="item in roleOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
+          <el-form-item label="所属机构" prop="orgId">
+            <treeselect style="width: 100%;" v-model="form.orgId"
+                        :options="deptOptions" :show-count="true"
+                        :normalizer="tenantIdnormalizer"
+                        :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择机构" @select="changeSelectArea"/>
+          </el-form-item>
+          <el-form-item label="区域名称" v-if="form.orgId!=null" prop="areaId">
+            <el-select style="width: 100%;" v-model="form.areaId" placeholder="请选择区域名称">
+              <el-option v-for="item in roleOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
+            </el-select>
+          </el-form-item>
         </el-row>
-        <el-form-item label="NFC点位名称" prop="checkName">
-          <el-input v-model="form.checkName" placeholder="请输入NFC点位名称" />
+        <el-form-item label="NFC点位" prop="checkName">
+          <el-input v-model="form.checkName" placeholder="请输入NFC点位名称"/>
         </el-form-item>
         <el-row>
- 
+
         </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -117,255 +126,263 @@
 </template>
 
 <script>
-import tableList from '@/mixins/tableList'
-import { listCheck, getCheck, delCheck, addCheck, updateCheck } from "@/api/system/check";
-import treeselect from '@riophae/vue-treeselect'
-import "@riophae/vue-treeselect/dist/vue-treeselect.css";
-import { deptTreeSelect } from "@/api/system/public";
-import { listArea,getAreaByOrg } from "@/api/system/area";
-export default {
-  name: "Check",
-  /** 引入基础minxins*/
-  mixins: [tableList],
-  components: { treeselect },
-  dicts: ['sys_normal_disable'],
-  data() {
-    return {
-      // 遮罩层
-      loading: true,
-      // 选中数组
-      ids: [],
-      names: [],
-      // 非单个禁用
-      single: true,
-      //搜索tree
-      deptName: null,
-      // 非多个禁用
-      multiple: true,
-      // 显示搜索条件
-      showSearch: true,
-      //区域
-      roleOptions: [],
-      //搜索tree
-      deptName: null,
-      // 部门树选项
-      deptOptions: [],
-      // 总条数
-      total: 0,
-      //区域集合
-      areaList: [],
-      // 区域采集点表格数据
-      checkList: [],
-      // 弹出层标题
-      title: "",
-      // 是否显示弹出层
-      open: false,
-      // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        checkName: null,
-        areaId: null,
-        orgId: null,
-        updateId: null,
-        checkSub:true
-      },
-      // 表单参数
-      form: {},
-      // 表单校验
-      checkList: [],
-      roleOptions: [],
-      defaultKeys: [],
-      //是否关联下级
-      checked: false,
-      defaultProps: {
-        children: "children",
-        label: "name"
-      },
+  import tableList from '@/mixins/tableList'
+  import {listCheck, getCheck, delCheck, addCheck, updateCheck} from "@/api/system/check";
+  import treeselect from '@riophae/vue-treeselect'
+  import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+  import {deptTreeSelect} from "@/api/system/public";
+  import {listArea, getAreaByOrg} from "@/api/system/area";
 
-      rules: {
-        areaId: [
-          { required: true, message: '请选择区域', trigger: 'blur' },
-        ],
-        orgId: [
-          { required: true, message: '请选择归属部门', trigger: 'blur' },
-        ],
-        checkName: [
-          { required: true, message: '请输入NFC点位名称', trigger: 'change' }
-        ],
-      },
-      defaultKeys: []
+  export default {
+    name: "Check",
+    /** 引入基础minxins*/
+    mixins: [tableList],
+    components: {treeselect},
+    dicts: ['sys_normal_disable'],
+    data() {
+      return {
+        // 遮罩层
+        loading: true,
+        // 选中数组
+        ids: [],
+        names: [],
+        // 非单个禁用
+        single: true,
+        //搜索tree
+        deptName: null,
+        // 非多个禁用
+        multiple: true,
+        // 显示搜索条件
+        showSearch: true,
+        //区域
+        roleOptions: [],
+        //搜索tree
+        deptName: null,
+        // 部门树选项
+        deptOptions: [],
+        // 总条数
+        total: 0,
+        //区域集合
+        areaList: [],
+        // 区域采集点表格数据
+        checkList: [],
+        // 弹出层标题
+        title: "",
+        // 是否显示弹出层
+        open: false,
+        // 查询参数
+        queryParams: {
+          pageNum: 1,
+          pageSize: 10,
+          checkName: null,
+          areaId: null,
+          orgId: null,
+          updateId: null,
+          checkSub: true
+        },
+        // 表单参数
+        form: {},
+        // 表单校验
+        checkList: [],
+        roleOptions: [],
+        defaultKeys: [],
+        //是否关联下级
+        checked: false,
+        defaultProps: {
+          children: "children",
+          label: "name"
+        },
 
-    };
-  },
-  created() {
-    this.getDeptTree();
-    listArea().then(response => {
-      this.areaList = response.rows;
-    })
-  
-  },
-  watch: {
-    // 根据名称筛选部门树
-    deptName(val) {
-      this.$refs.tree.filter(val);
-    }
-  },
-  methods: {
-    /** 下穿状态改变*/
-    changeCheckBox() {
-      this.getList();
-    },
-    // 筛选节点
-    filterNode(value, data) {
-      if (!value) return true;
-      return data.name.indexOf(value) !== -1;
-    },
-    // 节点单击事件
-    handleNodeClick(data) {
-      this.queryParams.orgId = data.id;
-      this.handleQuery();
-    },
-    changeSelectArea(val) {
+        rules: {
+          areaId: [
+            {required: true, message: '请选择区域', trigger: 'blur'},
+          ],
+          orgId: [
+            {required: true, message: '请选择归属部门', trigger: 'blur'},
+          ],
+          checkName: [
+            {required: true, message: '请输入NFC点位名称', trigger: 'change'}
+          ],
+        },
+        defaultKeys: []
 
-      getAreaByOrg(val).then(response => {
-        this.roleOptions = response.data;
-        this.form.areaId=null;
-      })
-    },
-    /** 查询区域采集点列表 */
-    getList() {
-      this.loading = true;
-      listCheck(this.queryParams).then(response => {
-        this.checkList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
-    },
-    /** 查询部门下拉树结构 */
-    getDeptTree() {
-      deptTreeSelect().then(response => {
-        this.deptOptions = response.data;
-        console.log(this.deptOptions, ' this.deptOptions')
-        this.defaultKeys.push(response.data[0].id);
-        this.queryParams.orgId = response.data[0].id;
-        this.handleQuery();
-      });
-    },
-    tenantIdnormalizer(node, instanceId) {
-      if (node.children && !node.children.length) {
-        delete node.children
-      }
-      return {
-        id: node.id,
-        label: node.name,
-        children: node.children
-      }
-    },
-        // 节点单击事件
-        handleNodeClick(data) {
-      this.queryParams.orgId = data.id;
-      this.handleQuery();
-    },
-    // 取消按钮
-    cancel() {
-      this.open = false;
-      this.reset();
-    },
-    // 表单重置
-    reset() {
-      this.form = {
-        id: null,
-        checkName: null,
-        areaId: null,
-        orgId: null,
-        createTime: null,
-        updateTime: null,
-        updateId: null,
-        createBy: null,
-        delFlag: null,
-        updateBy: null
       };
-      this.resetForm("form");
     },
-    /** 搜索按钮操作 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
-    /** 重置按钮操作 */
-    resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
+    created() {
+      this.getDeptTree();
+      listArea().then(response => {
+        this.areaList = response.rows;
+      })
+
     },
-    // 多选框选中数据
-    handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.names = selection.map(item => item.checkName)
-      this.single = selection.length !== 1
-      this.multiple = !selection.length
+    watch: {
+      // 根据名称筛选部门树
+      deptName(val) {
+        this.$refs.tree.filter(val);
+      }
     },
-    /** 新增按钮操作 */
-    handleAdd() {
-      this.reset();
-      getCheck('').then(response => {
+    methods: {
+      getPageIndex($index) {
+        //表格序号
+        return (
+          (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
+        );
+      },
+      /** 下穿状态改变*/
+      changeCheckBox() {
+        this.getList();
+      },
+      // 筛选节点
+      filterNode(value, data) {
+        if (!value) return true;
+        return data.name.indexOf(value) !== -1;
+      },
+      // 节点单击事件
+      handleNodeClick(data) {
+        this.queryParams.orgId = data.id;
+        this.handleQuery();
+      },
+      changeSelectArea(val) {
 
-        this.roleOptions = response.areas;
+        getAreaByOrg(val).then(response => {
+          this.roleOptions = response.data;
+          this.form.areaId = null;
+        })
+      },
+      /** 查询区域采集点列表 */
+      getList() {
+        this.loading = true;
+        listCheck(this.queryParams).then(response => {
+          this.checkList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+      },
+      /** 查询部门下拉树结构 */
+      getDeptTree() {
+        deptTreeSelect().then(response => {
+          this.deptOptions = response.data;
+          console.log(this.deptOptions, ' this.deptOptions')
+          this.defaultKeys.push(response.data[0].id);
+          this.queryParams.orgId = response.data[0].id;
+          this.handleQuery();
+        });
+      },
+      tenantIdnormalizer(node, instanceId) {
+        if (node.children && !node.children.length) {
+          delete node.children
+        }
+        return {
+          id: node.id,
+          label: node.name,
+          children: node.children
+        }
+      },
+      // 节点单击事件
+      handleNodeClick(data) {
+        this.queryParams.orgId = data.id;
+        this.handleQuery();
+      },
+      // 取消按钮
+      cancel() {
+        this.open = false;
+        this.reset();
+      },
+      // 表单重置
+      reset() {
+        this.form = {
+          id: null,
+          checkName: null,
+          areaId: null,
+          orgId: null,
+          createTime: null,
+          updateTime: null,
+          updateId: null,
+          createBy: null,
+          delFlag: null,
+          updateBy: null
+        };
+        this.resetForm("form");
+      },
+      /** 搜索按钮操作 */
+      handleQuery() {
+        this.queryParams.pageNum = 1;
+        this.getList();
+      },
+      /** 重置按钮操作 */
+      resetQuery() {
+        this.resetForm("queryForm");
+        this.handleQuery();
+      },
+      // 多选框选中数据
+      handleSelectionChange(selection) {
+        this.ids = selection.map(item => item.id)
+        this.names = selection.map(item => item.checkName)
+        this.single = selection.length !== 1
+        this.multiple = !selection.length
+      },
+      /** 新增按钮操作 */
+      handleAdd() {
+        this.reset();
+        getCheck('').then(response => {
 
-        this.open = true;
-        this.title = "添加";
-        this.form.password = this.initPassword;
-      });
-    },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
-      const id = row.id || this.ids
+          this.roleOptions = response.areas;
 
-      getCheck(id).then(response => {
-        this.form = response.data;
-        this.roleOptions = response.areas;
-        this.open = true;
-        this.title = "修改区域采集点";
-      });
-    },
-    /** 提交按钮 */
-    submitForm() {
-      this.$refs["form"].validate(valid => {
-        if (valid) {
-          if (this.form.id != null) {
-            updateCheck(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.open = false;
-              this.getList();
-            });
-          } else {
-            addCheck(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.open = false;
-              this.getList();
-            });
+          this.open = true;
+          this.title = "新增";
+          this.form.password = this.initPassword;
+        });
+      },
+      /** 修改按钮操作 */
+      handleUpdate(row) {
+        this.reset();
+        const id = row.id || this.ids
+
+        getCheck(id).then(response => {
+          this.form = response.data;
+          this.roleOptions = response.areas;
+          this.open = true;
+          this.title = "编辑";
+        });
+      },
+      /** 提交按钮 */
+      submitForm() {
+        this.$refs["form"].validate(valid => {
+          if (valid) {
+            if (this.form.id != null) {
+              updateCheck(this.form).then(response => {
+                this.$modal.msgSuccess("处理成功");
+                this.open = false;
+                this.getList();
+              });
+            } else {
+              addCheck(this.form).then(response => {
+                this.$modal.msgSuccess("处理成功");
+                this.open = false;
+                this.getList();
+              });
+            }
           }
-        }
-      });
-    },
-    /** 删除按钮操作 */
-    handleDelete(row) {
-      const ids = row.id || this.ids;
-      const names = row.checkName || this.names
-      this.$modal.confirm('是否确认删除区域NFC点位名称为"' + names + '"的数据项?').then(function () {
-        return delCheck(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => { });
-    },
-    /** 导出按钮操作 */
-    handleExport() {
-      this.download('system/check/export', {
-        ...this.queryParams
-      }, `check_${new Date().getTime()}.xlsx`)
+        });
+      },
+      /** 删除按钮操作 */
+      handleDelete(row) {
+        const ids = row.id || this.ids;
+        const names = row.checkName || this.names
+        this.$modal.confirm('是否确认删除区域NFC点位名称为"' + names + '"的数据项?').then(function () {
+          return delCheck(ids);
+        }).then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        }).catch(() => {
+        });
+      },
+      /** 导出按钮操作 */
+      handleExport() {
+        this.download('system/check/export', {
+          ...this.queryParams
+        }, `check_${new Date().getTime()}.xlsx`)
+      }
     }
-  }
-};
+  };
 </script>

+ 54 - 38
src/views/system/device/index.vue

@@ -4,12 +4,12 @@
       <!--部门数据-->
       <el-col :span="4" :xs="24">
         <div class="head-container">
-          <el-input v-model="deptName" placeholder="请输入部门名称" clearable size="small" prefix-icon="el-icon-search"
+          <el-input v-model="deptName" placeholder="请输入机构名称" clearable size="small" prefix-icon="el-icon-search"
             style="margin-bottom: 20px" />
         </div>
         <div class="tree-container">
           <div style="margin-bottom: 10px;">
-            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">是否关联下级机构</el-checkbox>
+            <el-checkbox v-model="queryParams.checkSub" @change="changeCheckBox">关联下级</el-checkbox>
           </div>
           <el-tree :data="deptOptions" :props="defaultProps" :expand-on-click-node="false"
             :filter-node-method="filterNode" ref="tree" node-key="id" :default-expanded-keys="defaultKeys"
@@ -18,14 +18,13 @@
       </el-col>
       <el-col :span="20" :xs="24">
         <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-
           <el-form-item label="设备名称" prop="deviceName">
             <el-input v-model="queryParams.deviceName" placeholder="请输入设备名称" clearable
               @keyup.enter.native="handleQuery" />
           </el-form-item>
           <el-form-item label="资产类别" prop="assetType">
 
-            <el-select style="width: 100%;" v-model="queryParams.assetType" placeholder="请选择" @change="changeSelectDevice">
+            <el-select style="width: 100%;" clearable v-model="queryParams.assetType" placeholder="请选择" @change="changeSelectDevice">
               <el-option v-for="dict in dict.type.sys_asset_type" :key="dict.value" :label="dict.label"
                 :value="`${dict.value}`"></el-option>
             </el-select>
@@ -33,10 +32,10 @@
 
           <el-form-item label="设备分类" prop="deviceType">
 
-            <el-select style="width: 100%;" v-model="queryParams.deviceType" placeholder="请选择">
+            <el-select style="width: 100%;" clearable v-model="queryParams.deviceType" placeholder="请选择">
                 <el-option v-for="item in devices" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
             </el-select>
-          </el-form-item> 
+          </el-form-item>
 
           <el-form-item>
             <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@@ -49,21 +48,30 @@
             <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
               v-hasPermi="['system:device:add']">新增</el-button>
           </el-col>
-          <el-col :span="1.5">
+       <!--   <el-col :span="1.5">
             <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
               v-hasPermi="['system:device:edit']">修改</el-button>
           </el-col>
           <el-col :span="1.5">
             <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
               v-hasPermi="['system:device:remove']">删除</el-button>
-          </el-col>
+          </el-col>-->
           <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
         </el-row>
 
-        <el-table v-loading="loading" :data="deviceList" @selection-change="handleSelectionChange">
-          <el-table-column type="selection" width="55" align="center" />
-          <el-table-column label="所属机构" align="center" prop="orgName" />
-       
+        <el-table
+          border
+          height="600"
+          size="small"
+          v-loading="loading" :data="deviceList" @selection-change="handleSelectionChange">
+          <!--<el-table-column type="selection" width="55" align="center" />-->
+          <el-table-column label="序号" align="center" min-width="50">
+            <template v-slot:default="scope">
+              <span v-text="getPageIndex(scope.$index)"> </span>
+            </template>
+          </el-table-column>
+          <el-table-column label="所属机构" align="left" prop="orgName" />
+
           <el-table-column label="资产类别" align="center" key="assetType" prop="assetType" width="80">
             <template slot-scope="scope">
               <dict-tag :options="dict.type.sys_asset_type" :value="scope.row.assetType" />
@@ -83,7 +91,7 @@
           <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope">
               <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-                v-hasPermi="['system:device:edit']">修改</el-button>
+                v-hasPermi="['system:device:edit']">编辑</el-button>
               <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
                 v-hasPermi="['system:device:remove']">删除</el-button>
             </template>
@@ -105,15 +113,17 @@
     <el-dialog :title="title" :visible="open" width="800px" append-to-body @close="cancel">
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-row>
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item label="所属机构" prop="orgId">
-              <tree-select v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
+              <tree-select
+                style="width: 100%"
+                v-model="form.orgId" :options="deptOptions" :show-count="true" :normalizer="tenantIdnormalizer"
                 placeholder="请选择归属机构" @select="changeSelect">
               </tree-select>
             </el-form-item>
           </el-col>
 
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item label="资产类别" prop="assetType">
               <el-select style="width: 100%;" v-model="form.assetType" placeholder="请选择" @change="changeSelectDevice">
                 <el-option v-for="dict in dict.type.sys_asset_type" :key="dict.value" :label="dict.label"
@@ -124,15 +134,14 @@
         </el-row>
         <el-row>
 
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item label="设备分类" prop="deviceType">
-              <el-select v-model="form.deviceType" placeholder="请选择">
-
+              <el-select style="width: 100%" v-model="form.deviceType" placeholder="请选择">
                 <el-option v-for="item in devices" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item label="设备名称" prop="deviceName">
               <el-input v-model="form.deviceName" placeholder="请输入" />
             </el-form-item>
@@ -140,15 +149,15 @@
         </el-row>
 
         <el-row>
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item v-if="form.deviceType == 2" label="主机" prop="hostId">
-              <el-select v-model="form.hostId" placeholder="请选择">
+              <el-select style="width: 100%" v-model="form.hostId" placeholder="请选择">
                 <el-option v-for="item in hostList" :key="item.id" :label="item.deviceName" :value="item.id"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
 
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item v-if="form.deviceType == 2" label="通道号" prop="channel">
               <el-input type="number" max="64" min="0" oninput="if(value<=0)value=null;if(value>=64)value=64;value=parseInt(value)" v-model="form.channel" placeholder="请输入" />
             </el-form-item>
@@ -158,15 +167,15 @@
 
 
         <el-row>
-          <el-col :span="10">
+          <el-col :span="12">
             <el-form-item label="设备品牌" prop="deviceBrand">
               <el-input v-model="form.deviceBrand" placeholder="请输入" maxlength="30" />
             </el-form-item>
           </el-col>
 
-          <el-col :span="10">
-            <el-form-item style="width: 517px;" v-if="form.assetType == 0" label="有效期至" prop="checkTime">
-              <el-date-picker clearable v-model="form.checkTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
+          <el-col :span="12">
+            <el-form-item  v-if="form.assetType == 0" label="有效期至" prop="checkTime">
+              <el-date-picker style="width: 100%" clearable v-model="form.checkTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
                 placeholder="请选择时间">
               </el-date-picker>
             </el-form-item>
@@ -294,7 +303,7 @@ export default {
   created() {
     this.getDeptTree();
     //this.getList();
-   
+
   },
   watch: {
     // 根据名称筛选部门树
@@ -304,7 +313,12 @@ export default {
   },
 
   methods: {
-
+    getPageIndex($index) {
+      //表格序号
+      return (
+        (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
+      );
+    },
     /** 下穿状态改变*/
     changeCheckBox() {
       this.getList();
@@ -360,7 +374,7 @@ export default {
         this.defaultKeys.push(response.data[0].id);
         this.queryParams.orgId = response.data[0].id;
         this.selectOrgId = response.data[0].id;
-    
+
         this.handleQuery();
       });
     },
@@ -425,11 +439,13 @@ export default {
       this.form.orgId = this.selectOrgId;
     },
     changeSelectDevice(val) {
-      getDeviceType(val).then(response => {
-        this.devices = response.data;
-        this.form.deviceType=null;
-        this.queryParams.deviceType=null;
-      })
+      if(val){
+        getDeviceType(val).then(response => {
+          this.devices = response.data;
+          this.form.deviceType=null;
+          this.queryParams.deviceType=null;
+        })
+      }
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -438,7 +454,7 @@ export default {
       getDevice(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改";
+        this.title = "编辑";
       });
       listDevice().then(response => {
         this.hostList = response.rows;
@@ -451,13 +467,13 @@ export default {
         if (valid) {
           if (this.form.id != null) {
             updateDevice(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
+              this.$modal.msgSuccess("处理成功");
               this.open = false;
               this.getList();
             });
           } else {
             addDevice(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
+              this.$modal.msgSuccess("处理成功");
               this.open = false;
               this.getList();
             });