Parcourir la source

网格员设置

lin.liu il y a 2 semaines
Parent
commit
55264bb09e
15 fichiers modifiés avec 219 ajouts et 66 suppressions
  1. 22 10
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/controller/GridInfoController.java
  2. 8 8
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/domain/GridPersonPO.java
  3. 6 0
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridinfo/ReqSetListPerson.java
  4. 13 0
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridinfo/SetListPersonItem.java
  5. 0 4
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridperson/ReqCreateGridPerson.java
  6. 0 4
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridperson/ReqModifyGridPerson.java
  7. 20 6
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/mapper/impl/GridPersonMapperImpl.java
  8. 56 1
      secure-producting-business/src/main/java/com/customs/cq/datacenter/business/service/GridInfoService.java
  9. 2 1
      secure-producting-host/src/main/java/com/customs/cq/datacenter/host/web/controller/system/SysDeptController.java
  10. 12 0
      secure-producting-system/src/main/java/com/customs/cq/datacenter/system/entity/response/dept/ResListUser4Department.java
  11. 2 1
      secure-producting-system/src/main/java/com/customs/cq/datacenter/system/service/ISysDeptService.java
  12. 11 2
      secure-producting-system/src/main/java/com/customs/cq/datacenter/system/service/impl/SysDeptServiceImpl.java
  13. 17 0
      secure-producting-vue/src/api/grid/GridIndex.js
  14. 45 27
      secure-producting-vue/src/views/grid/GridIndex.vue
  15. 5 2
      sql/20240814.sql

+ 22 - 10
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/controller/GridInfoController.java

@@ -22,21 +22,24 @@
 */
 package com.customs.cq.datacenter.business.controller;
 
+import com.customs.cq.datacenter.business.domain.vo.GridInfoVO;
+import com.customs.cq.datacenter.business.domain.vo.GridPersonVO;
+import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqCreateGridInfo;
+import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqModifyGridInfo;
+import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqSetListPerson;
+import com.customs.cq.datacenter.business.entity.search.SearchGridInfo;
+import com.customs.cq.datacenter.business.service.GridInfoService;
 import com.customs.cq.datacenter.common.ExecutedResult;
 import com.customs.cq.datacenter.common.PagerResult;
+import com.customs.cq.datacenter.common.core.controller.BasicController;
+import com.customs.cq.datacenter.common.model.ReqListId;
 import com.customs.cq.datacenter.common.utils.ParameterUtil;
 import com.customs.cq.datacenter.common.validator.ParameterValidateResult;
 import com.customs.cq.datacenter.common.validator.ParameterValidator;
-import com.customs.cq.datacenter.common.core.controller.BasicController;
-import com.customs.cq.datacenter.common.model.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
 import java.util.List;
-import com.customs.cq.datacenter.business.service.GridInfoService;
-import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqCreateGridInfo;
-import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqModifyGridInfo;
-import com.customs.cq.datacenter.business.entity.search.SearchGridInfo;
-import com.customs.cq.datacenter.business.domain.vo.GridInfoVO;
 
 /**
  * 1020.网格信息
@@ -131,11 +134,11 @@ public class GridInfoController extends BasicController {
      * @author lin.liu
      */
     @PostMapping(value = "setListPerson")
-    public ExecutedResult<String> setListPerson(@RequestBody ReqModifyGridInfo request) {
+    public ExecutedResult<String> setListPerson(@RequestBody ReqSetListPerson request) {
         //#region 参数验证
         ParameterValidator validator = new ParameterValidator()
                 // 必须大于0
-                .addGreater(ParameterUtil.named("[网格信息]id"), request.getId(), 0L)
+                .addGreater(ParameterUtil.named("网格id"), request.getId(), 0L)
                 // 非空
                 //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName())
                 // 限制最大长度
@@ -146,6 +149,15 @@ public class GridInfoController extends BasicController {
             return failed(result.getErrorMsg());
         }
         //#endregion
-        return this.service.modify(request);
+        return this.service.setListPerson(request);
+    }
+
+    /**
+     * 获取网格员
+     * @author lin.liu
+     */
+    @GetMapping(value = "getListPerson/{id}")
+    public ExecutedResult<List<GridPersonVO>> getListPerson(@PathVariable Long id) {
+        return this.service.getListPerson(id);
     }
 }

+ 8 - 8
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/domain/GridPersonPO.java

@@ -57,10 +57,15 @@ public class GridPersonPO {
 	@TableField(value = "GRID_ID")
 	private Long gridId;
 	/**
-	 * 姓名
+	 * 用户guid
 	 */
-	@TableField(value = "REAL_NAME")
-	private String realName;
+	@TableField(value = "USER_GUID")
+	private String userGuid;
+	/**
+	 * 用户名称
+	 */
+	@TableField(value = "USER_NAME")
+	private String userName;
 	/**
 	 * 联系方式
 	 */
@@ -71,11 +76,6 @@ public class GridPersonPO {
 	 */
 	@TableField(value = "IS_ADMIN")
 	private Integer isAdmin;
-	/**
-	 * 是否联络员
-	 */
-	@TableField(value = "IS_LIAISON")
-	private Integer isLiaison;
 	/**
 	 * 状态 EState
 	 */

+ 6 - 0
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridinfo/ReqSetListPerson.java

@@ -1,5 +1,11 @@
 package com.customs.cq.datacenter.business.entity.request.gridinfo;
 
+import lombok.Data;
+
+import java.util.List;
+
+@Data
 public class ReqSetListPerson {
     private Long id;
+    private List<SetListPersonItem> listUser;
 }

+ 13 - 0
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridinfo/SetListPersonItem.java

@@ -0,0 +1,13 @@
+package com.customs.cq.datacenter.business.entity.request.gridinfo;
+
+import lombok.Data;
+
+@Data
+public class SetListPersonItem {
+    private String userGuid;
+    private String realName;
+    private Integer isAdmin;
+    private Long deptId;
+    private String deptGuid;
+    private String deptName;
+}

+ 0 - 4
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridperson/ReqCreateGridPerson.java

@@ -56,8 +56,4 @@ public class ReqCreateGridPerson {
 	 * 是否网格管理员
 	 */
 	private Integer isAdmin;
-	/**
-	 * 是否联络员
-	 */
-	private Integer isLiaison;
 }

+ 0 - 4
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/entity/request/gridperson/ReqModifyGridPerson.java

@@ -60,10 +60,6 @@ public class ReqModifyGridPerson {
 	 * 是否网格管理员
 	 */
 	private Integer isAdmin;
-	/**
-	 * 是否联络员
-	 */
-	private Integer isLiaison;
 	/**
 	 * 状态 EState
 	 */

+ 20 - 6
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/mapper/impl/GridPersonMapperImpl.java

@@ -3,17 +3,19 @@ package com.customs.cq.datacenter.business.mapper.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.customs.cq.datacenter.business.domain.GridPersonPO;
+import com.customs.cq.datacenter.business.entity.search.SearchGridPerson;
+import com.customs.cq.datacenter.business.mapper.GridPersonMapper;
+import com.customs.cq.datacenter.common.core.mapper.BasicMapper;
 import com.customs.cq.datacenter.common.enums.EOrderBy;
 import com.customs.cq.datacenter.common.enums.EYesOrNo;
-import com.customs.cq.datacenter.common.utils.ListUtil;
-import com.customs.cq.datacenter.common.utils.NumericUtil;
-import com.customs.cq.datacenter.common.core.mapper.BasicMapper;
 import com.customs.cq.datacenter.common.model.OrderByDTO;
 import com.customs.cq.datacenter.common.model.SearchBasicDTO;
+import com.customs.cq.datacenter.common.utils.ListUtil;
+import com.customs.cq.datacenter.common.utils.NumericUtil;
 import org.springframework.stereotype.Repository;
-import com.customs.cq.datacenter.business.entity.search.SearchGridPerson;
-import com.customs.cq.datacenter.business.domain.GridPersonPO;
-import com.customs.cq.datacenter.business.mapper.GridPersonMapper;
+
+import java.util.List;
 
 /**
  * 网格人员
@@ -97,4 +99,16 @@ public class GridPersonMapperImpl extends BasicMapper<GridPersonPO> {
         }
         return mapper.selectPage(new Page<>(search.getPage(), search.getLimit()), queryWrapper);
     }
+
+    public void remove4Grid(Long gridId) {
+        LambdaQueryWrapper<GridPersonPO> where = super.getQuery();
+        where.eq(GridPersonPO::getGridId, gridId);
+        mapper.delete(where);
+    }
+
+    public List<GridPersonPO> list4Grid(Long gridId) {
+        LambdaQueryWrapper<GridPersonPO> where = super.getQuery();
+        where.eq(GridPersonPO::getGridId, gridId);
+        return mapper.selectList(where);
+    }
 }

+ 56 - 1
secure-producting-business/src/main/java/com/customs/cq/datacenter/business/service/GridInfoService.java

@@ -26,13 +26,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.customs.cq.datacenter.business.domain.DangerCategoryPO;
 import com.customs.cq.datacenter.business.domain.GridCategoryPO;
 import com.customs.cq.datacenter.business.domain.GridInfoPO;
+import com.customs.cq.datacenter.business.domain.GridPersonPO;
 import com.customs.cq.datacenter.business.domain.vo.GridInfoVO;
+import com.customs.cq.datacenter.business.domain.vo.GridPersonVO;
 import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqCreateGridInfo;
 import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqModifyGridInfo;
+import com.customs.cq.datacenter.business.entity.request.gridinfo.ReqSetListPerson;
 import com.customs.cq.datacenter.business.entity.search.SearchGridInfo;
 import com.customs.cq.datacenter.business.mapper.impl.DangerCategoryMapperImpl;
 import com.customs.cq.datacenter.business.mapper.impl.GridCategoryMapperImpl;
 import com.customs.cq.datacenter.business.mapper.impl.GridInfoMapperImpl;
+import com.customs.cq.datacenter.business.mapper.impl.GridPersonMapperImpl;
 import com.customs.cq.datacenter.common.ExecutedResult;
 import com.customs.cq.datacenter.common.PagerResult;
 import com.customs.cq.datacenter.common.core.domain.entity.SysDept;
@@ -45,7 +49,6 @@ import com.customs.cq.datacenter.common.model.NameValueDto;
 import com.customs.cq.datacenter.common.model.Tuple;
 import com.customs.cq.datacenter.common.utils.*;
 import com.customs.cq.datacenter.system.service.ISysDeptService;
-import com.customs.cq.datacenter.system.service.impl.SysDeptServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -65,6 +68,8 @@ public class GridInfoService extends BasicService {
     private GridCategoryMapperImpl gridCategoryMapper;
     @Autowired
     private DangerCategoryMapperImpl dangerCategoryMapper;
+    @Autowired
+    private GridPersonMapperImpl gridPersonMapper;
 
 
     @Autowired
@@ -310,4 +315,54 @@ public class GridInfoService extends BasicService {
         }
         return ExecutedResult.success(exists);
     }
+
+    // 设置网格员
+    public ExecutedResult<String> setListPerson(ReqSetListPerson request) {
+        // 验证记录是否存在
+        ExecutedResult<GridInfoPO> checkExists = this.check4Id(request.getId());
+        if (checkExists.isFailed()) {
+            return ExecutedResult.failed(checkExists.getMsg());
+        }
+        // 删除已有网格员
+        gridPersonMapper.remove4Grid(request.getId());
+        // 添加新的网格员
+        if (ListUtil.isNullOrEmpty(request.getListUser())) {
+            return ExecutedResult.success();
+        }
+        Long now = LocalDateTimeUtil.nowTimeStamp();
+        // 创建人信息
+        LoginUser loginUser = LoginHelper.getLoginUser();
+        List<GridPersonPO> list = request.getListUser().stream()
+                .map(c -> {
+                    GridPersonPO item = new GridPersonPO();
+                    item.setDepartment(c.getDeptGuid());
+                    item.setDepartmentName(c.getDeptName());
+                    item.setGridId(request.getId());
+                    item.setUserGuid(c.getUserGuid());
+                    item.setUserName(c.getRealName());
+                    item.setContactInfo("");
+                    item.setIsAdmin(c.getIsAdmin());
+                    item.setStatus(EState.NORMAL.getValue());
+                    item.setCreateTime(now);
+                    if (Objects.nonNull(loginUser)) {
+                        item.setCreateBy(loginUser.getUserId().toString());
+                        item.setCreateByName(loginUser.getUsername());
+                    }
+                    return item;
+                })
+                .collect(Collectors.toList());
+        boolean setPerson = gridPersonMapper.insert(list);
+        if (setPerson) {
+            return ExecutedResult.success();
+        }
+        return ExecutedResult.failed("设置网格员失败。");
+    }
+
+    public ExecutedResult<List<GridPersonVO>> getListPerson(Long gridId) {
+        List<GridPersonPO> list = gridPersonMapper.list4Grid(gridId);
+        if (ListUtil.isNullOrEmpty(list)) {
+            return ExecutedResult.success(new ArrayList<>());
+        }
+        return ExecutedResult.success(CopierUtil.mapTo(list, GridPersonVO.class));
+    }
 }

+ 2 - 1
secure-producting-host/src/main/java/com/customs/cq/datacenter/host/web/controller/system/SysDeptController.java

@@ -11,6 +11,7 @@ import com.customs.cq.datacenter.common.core.domain.entity.SysDept;
 import com.customs.cq.datacenter.common.enums.BusinessType;
 import com.customs.cq.datacenter.common.model.NameValueDto;
 import com.customs.cq.datacenter.common.utils.StringUtils;
+import com.customs.cq.datacenter.system.entity.response.dept.ResListUser4Department;
 import com.customs.cq.datacenter.system.service.ISysDeptService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.validation.annotation.Validated;
@@ -126,7 +127,7 @@ public class SysDeptController extends BaseController {
      */
     @SaCheckPermission("system:dept:query")
     @GetMapping(value = "listUser4Department/{deptId}")
-    public ExecutedResult<List<NameValueDto>> listUser4Department(@PathVariable Long deptId) {
+    public ExecutedResult<List<ResListUser4Department>> listUser4Department(@PathVariable Long deptId) {
         return deptService.listUser4Department(deptId);
     }
 }

+ 12 - 0
secure-producting-system/src/main/java/com/customs/cq/datacenter/system/entity/response/dept/ResListUser4Department.java

@@ -0,0 +1,12 @@
+package com.customs.cq.datacenter.system.entity.response.dept;
+
+import lombok.Data;
+
+@Data
+public class ResListUser4Department {
+    private String guid;
+    private String name;
+    private Long deptId;
+    private String deptGuid;
+    private String deptName;
+}

+ 2 - 1
secure-producting-system/src/main/java/com/customs/cq/datacenter/system/service/ISysDeptService.java

@@ -4,6 +4,7 @@ import cn.hutool.core.lang.tree.Tree;
 import com.customs.cq.datacenter.common.ExecutedResult;
 import com.customs.cq.datacenter.common.core.domain.entity.SysDept;
 import com.customs.cq.datacenter.common.model.NameValueDto;
+import com.customs.cq.datacenter.system.entity.response.dept.ResListUser4Department;
 
 import java.util.List;
 
@@ -133,5 +134,5 @@ public interface ISysDeptService {
      * 获取指定部门下的所有人员
      * @param deptId 部门id
      */
-    ExecutedResult<List<NameValueDto>> listUser4Department(Long deptId);
+    ExecutedResult<List<ResListUser4Department>> listUser4Department(Long deptId);
 }

+ 11 - 2
secure-producting-system/src/main/java/com/customs/cq/datacenter/system/service/impl/SysDeptServiceImpl.java

@@ -11,6 +11,7 @@ import com.customs.cq.datacenter.common.ExecutedResult;
 import com.customs.cq.datacenter.common.enums.EYesOrNo;
 import com.customs.cq.datacenter.common.model.NameValueDto;
 import com.customs.cq.datacenter.common.utils.StringUtil;
+import com.customs.cq.datacenter.system.entity.response.dept.ResListUser4Department;
 import com.customs.cq.datacenter.system.h4a.H4AReaderHelper;
 import com.customs.cq.datacenter.system.mapper.SysDeptMapper;
 import com.customs.cq.datacenter.common.constant.CacheNames;
@@ -354,7 +355,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
      * 获取指定部门下的所有人员
      * @param deptId 部门id
      */
-    public ExecutedResult<List<NameValueDto>> listUser4Department(Long deptId) {
+    public ExecutedResult<List<ResListUser4Department>> listUser4Department(Long deptId) {
         SysDept dept = baseMapper.selectById(deptId);
         if (Objects.isNull(dept)) {
             return ExecutedResult.failed("部门不存在." + deptId);
@@ -368,6 +369,14 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
         if (Objects.isNull(list)) {
             return ExecutedResult.success(new ArrayList<>());
         }
-        return ExecutedResult.success(Arrays.stream(list).map(c -> new NameValueDto(c.getDisplay_name(), c.getUser_guid())).collect(Collectors.toList()));
+        return ExecutedResult.success(Arrays.stream(list).map(c -> {
+            ResListUser4Department item = new ResListUser4Department();
+            item.setDeptId(dept.getDeptId());
+            item.setDeptGuid(dept.getGuid());
+            item.setDeptName(dept.getDeptName());
+            item.setGuid(c.getUser_guid());
+            item.setName(c.getDisplay_name());
+            return item;
+        }).collect(Collectors.toList()));
     }
 }

+ 17 - 0
secure-producting-vue/src/api/grid/GridIndex.js

@@ -34,3 +34,20 @@ export function modify(data) {
     data: data
   })
 }
+
+// 设置网格员
+export function setListPerson(data) {
+  return request({
+    url: '/gridInfo/setListPerson',
+    method: 'post',
+    data: data
+  })
+}
+
+// 获取网格员
+export function getListPerson(id) {
+  return request({
+    url: '/gridInfo/getListPerson/' + id,
+    method: 'get'
+  })
+}

+ 45 - 27
secure-producting-vue/src/views/grid/GridIndex.vue

@@ -327,6 +327,7 @@
       >
         <el-form-item label="部门人员" prop="listUser">
           <el-tree-select
+            :loading="loadingSetUserDeptListUser"
             v-model="setUserDeptId"
             :data="deptOptions"
             @change="onSetUserDeptChange"
@@ -343,15 +344,15 @@
           >
             <el-option
               v-for="item in setUserDeptListUser"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
+              :key="item.guid"
+              :label="item.name"
+              :value="item.guid"
             />
           </el-select>
         </el-form-item>
         <el-form-item label="已设置网格员" prop="listUser">
-          <span v-for="item in formSetUser.listUser" :key="item.guid" class="grid-user-container">
-            <div class="grid-user" :title="item.name">{{item.name}}</div>
+          <span v-for="item in formSetUser.listUser" :key="item.userGuid" class="grid-user-container">
+            <div class="grid-user" :title="item.userealNamerName">{{item.realName}}</div>
             <span class="grid-user-content">              
               <el-tooltip
                 class="box-item"
@@ -359,7 +360,7 @@
                 content="删除"
                 placement="top"
               >
-                <span class="grid-user-close" @click="onRemoveUser(item.guid)">x</span>
+                <span class="grid-user-close" @click="onRemoveUser(item.userGuid)">x</span>
               </el-tooltip>
               <el-tooltip
                 class="box-item"
@@ -367,7 +368,7 @@
                 content="点击设置网格管理员"
                 placement="top"
               >
-                <span :class="'grid-user-type' + (item.isAdmin ? ' grid-user-admin' : ' grid-user-user')" @click="onChangeIsAdmin(item.guid)">{{item.isAdmin ? '管' : '员'}}</span>
+                <span :class="'grid-user-type' + (item.isAdmin===1 ? ' grid-user-admin' : ' grid-user-user')" @click="onChangeIsAdmin(item.userGuid)">{{item.isAdmin===1 ? '管' : '员'}}</span>
               </el-tooltip>
             </span>
           </span>
@@ -400,7 +401,7 @@
 <script setup name="GridIndex">
 import { listAllGridCategory } from "@/api/grid/GridCategory";
 import { listAllDangerCategory } from "@/api/danger/DangerCategory";
-import { detail, modify, create, search } from "@/api/grid/GridIndex";
+import { detail, modify, create, search, setListPerson, getListPerson } from "@/api/grid/GridIndex";
 import { deptTreeSelect } from "@/api/system/user";
 import { listUser4Department } from "@/api/system/dept";
 
@@ -473,6 +474,7 @@ const formSetUser = ref({
   listUser: []
 });
 const setUserDeptId = ref(undefined);
+const loadingSetUserDeptListUser = ref(false);
 const setUserDeptListUser = ref([]);
 const setUserDeptListSelect = ref([]);
 
@@ -642,21 +644,32 @@ function submitModify() {
   });
 }
 
+
+
 /** 设置网格员按钮 */
 function onSetUser(row) {
   dialogOpenSetUser.value = true;
   formSetUser.value = {
-  id: row.id,
-  deptId: undefined,
-  listUser: [
-  ]
-};
+    id: row.id,
+    deptId: undefined,
+    listUser: [
+    ]
+  };
+
+  // 获取现有网格员列表
+  getListPerson(row.id)
+  .then((response) => {
+    formSetUser.value.listUser = response.data;
+  })
+  .finally(() => {
+    loadingSetUser.value = false;
+  });
 }
 /** 设置网格员提交 */
 function submitSetUser() {
     loadingSetUser.value = true;
 
-    modify(formSetUser.value)
+    setListPerson(formSetUser.value)
     .then((response) => {
       proxy.$modal.msgSuccess("设置成功");
       dialogOpenSetUser.value = false;
@@ -672,28 +685,33 @@ function cancelSetUser() {
 }
 /** 设置网格员,部门选择变化 */
 function onSetUserDeptChange(value) {
-  console.log(value);
+  loadingSetUserDeptListUser.value = true;
+    loadingSetUser.value = true;
+
   listUser4Department(value)
   .then((response) => {    
     setUserDeptListUser.value = response.data;
   })
   .finally(() => {
+    loadingSetUserDeptListUser.value = false;
     loadingSetUser.value = false;
   });
 }
 /** 设置网格员,人员选择变化 */
 function onSetUserChange(value) {
-  console.log(value);
-  console.log(formSetUser.value.listUser);
-  if (formSetUser.value.listUser.filter(c => c.guid === value).length > 0) {
+  console.log('listUser: ' + JSON.stringify(formSetUser.value.listUser));
+  if (formSetUser.value.listUser.filter(c => c.userGuid === value).length > 0) {
     return;
   }
-  let findList = setUserDeptListUser.value.filter(c => c.value === value);
-  console.log(findList);
+  console.log('allUser: ' + JSON.stringify(setUserDeptListUser.value));
+  let findList = setUserDeptListUser.value.filter(c => c.guid === value);
   formSetUser.value.listUser.push({
-    guid: value,
-    name: findList[0].name,
-    isAdmin: false
+    userGuid: value,
+    realName: findList[0].name,
+    isAdmin: 0,
+    deptId: findList[0].deptId,
+    deptGuid: findList[0].deptGuid,
+    deptName: findList[0].deptName,
   });
 }
 
@@ -718,18 +736,18 @@ function initListDangerCategory() {
   });
 }
 function onChangeIsAdmin(guid) {
-  let findList = formSetUser.value.listUser.filter(c => c.guid === guid);
+  let findList = formSetUser.value.listUser.filter(c => c.userGuid === guid);
   if (!findList || findList == null || findList.length == 0) {
     return;
   }
-  findList[0].isAdmin = !findList[0].isAdmin;
+  findList[0].isAdmin = (findList[0].isAdmin === 1 ? 0 : 1);
 }
 function onRemoveUser(guid) {  
-  let findList = formSetUser.value.listUser.filter(c => c.guid === guid);
+  let findList = formSetUser.value.listUser.filter(c => c.userGuid === guid);
   if (!findList || findList == null || findList.length == 0) {
     return;
   }
-  formSetUser.value.listUser = formSetUser.value.listUser.filter(c => c.guid != guid);
+  formSetUser.value.listUser = formSetUser.value.listUser.filter(c => c.userGuid != guid);
 }
 
 

+ 5 - 2
sql/20240814.sql

@@ -150,7 +150,8 @@ CREATE TABLE "SECURE_PRODUCTING"."SP_GRID_PERSON"(
   "DEPARTMENT" VARCHAR(50) NOT NULL DEFAULT '',
   "DEPARTMENT_NAME" VARCHAR(200) NOT NULL DEFAULT '',
   "GRID_ID" BIGINT NOT NULL DEFAULT 0,
-  "REAL_NAME" VARCHAR(50) NOT NULL DEFAULT '',
+  "USER_GUID" VARCHAR(50) NOT NULL DEFAULT '',
+  "USER_NAME" VARCHAR(50) NOT NULL DEFAULT '',
   "CONTACT_INFO" VARCHAR(50) NOT NULL DEFAULT '',
   "IS_ADMIN" TINYINT NOT NULL DEFAULT 0,
   "STATUS" TINYINT NOT NULL DEFAULT 0,
@@ -167,6 +168,7 @@ CREATE TABLE "SECURE_PRODUCTING"."SP_GRID_PERSON"(
 -- 索引
 CREATE INDEX IDX_SP_GRID_PERSON_DEPARTMENT ON "SECURE_PRODUCTING"."SP_GRID_PERSON"("DEPARTMENT");
 CREATE INDEX IDX_SP_GRID_PERSON_GRID_ID ON "SECURE_PRODUCTING"."SP_GRID_PERSON"("GRID_ID");
+CREATE INDEX IDX_SP_GRID_PERSON_USER_GUID ON "SECURE_PRODUCTING"."SP_GRID_PERSON"("USER_GUID");
 CREATE INDEX IDX_SP_GRID_PERSON_STATUS ON "SECURE_PRODUCTING"."SP_GRID_PERSON"("STATUS");
 CREATE INDEX IDX_SP_GRID_PERSON_CREATE_TIME ON "SECURE_PRODUCTING"."SP_GRID_PERSON"("CREATE_TIME");
 -- 触发器:自动赋值最后修改时间
@@ -182,7 +184,8 @@ COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."ID" IS '主键';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."DEPARTMENT" IS '所属部门';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."DEPARTMENT_NAME" IS '部门名称';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."GRID_ID" IS '所属网格';
-COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."REAL_NAME" IS '姓名';
+COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."USER_GUID" IS '用户guid';
+COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."USER_NAME" IS '用户名称';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."CONTACT_INFO" IS '联系方式';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."IS_ADMIN" IS '是否网格管理员';
 COMMENT ON COLUMN "SECURE_PRODUCTING". "SP_GRID_PERSON"."STATUS" IS '状态 EState';