Browse Source

机构管理员

pengjing 10 months ago
parent
commit
0ab3194dbe

+ 1 - 1
src/main/java/com/hz/employmentsite/controller/UserController.java

@@ -61,7 +61,7 @@ public class UserController {
     }
 
     @PostMapping("save")
-    public BaseResponse<Integer> save(@RequestBody UserEditVo data) {
+    public BaseResponse<Integer> save(@RequestBody UserEditVo data) throws Exception {
         return RespGenerstor.success(userService.save(data,accountService.getLoginUserID()));
     }
 

+ 8 - 0
src/main/java/com/hz/employmentsite/controller/baseSettings/SiteUserController.java

@@ -123,5 +123,13 @@ public class SiteUserController {
         }
     }
 
+    @GetMapping("/getListForAddUser")
+    public BaseResponse<List<SiteUserVo>> getListForAddUser() {
+
+        List<SiteUserVo> result = userInfoService.getListForAddUser();
+
+        return RespGenerstor.success(result);
+    }
+
 
 }

+ 2 - 2
src/main/java/com/hz/employmentsite/filter/exception/RespGenerstor.java

@@ -5,8 +5,8 @@ public class RespGenerstor {
         return new BaseResponse(BaseErrorEnum.SUCCESS.getCode(), "接口调用成功", data);
     }
 
-    public static BaseResponse<Object> fail(BaseErrorEnum baseErrorEnum,Object data) {
-        return new BaseResponse<Object>(baseErrorEnum.getCode(), baseErrorEnum.getMessage(), data);
+    public static BaseResponse<Object> fail(BaseErrorEnum baseErrorEnum, Object data) {
+        return new BaseResponse<Object>(baseErrorEnum.getCode(), baseErrorEnum.getMessage() + data.toString(), data);
     }
 
     public static BaseResponse<Object> fail(String code, String message) {

+ 2 - 0
src/main/java/com/hz/employmentsite/mapper/cquery/UserInfoCQuery.java

@@ -15,4 +15,6 @@ public interface UserInfoCQuery {
                              @Param("userNo") String userNo);
 
     List<SiteUserVo> getListBySiteID(@Param("siteID") String siteID);
+
+    List<SiteUserVo> selectListForAddUser();
 }

+ 90 - 44
src/main/java/com/hz/employmentsite/services/impl/UserServiceImpl.java

@@ -17,6 +17,7 @@ import org.springframework.stereotype.Component;
 import org.springframework.util.DigestUtils;
 
 import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 
 @Component
@@ -33,6 +34,9 @@ public class UserServiceImpl implements UserService {
     @Autowired
     private SysUserDatarangeMapper sysUserDatarangeMapper;
 
+    @Autowired
+    private PcSiteUserMapper pcSiteUserMapper;
+
     private String defaultPassword = "52653B706ADC444F6660FAB66D6DC210";//Hjy@2024
 
 
@@ -130,61 +134,103 @@ public class UserServiceImpl implements UserService {
     }
 
     @Override
-    public Integer save(UserEditVo data, String userId) {
-        int result = 0;
-        UserInfoModel record = getUserInfo(data.getUserID());
-        SysUser dbData = record == null ? null : sysUserMapper.selectByPrimaryKey(record.userID);
-        Boolean isExist = dbData != null;
-        if (!isExist) {
-            //添加
-            dbData = new SysUser();
-            dbData.setUserID(data.getUserID());
-            dbData.setName(data.getName());
-            dbData.setLoginID(data.getLoginID());
-            if (data.getPassword() == null) {
-                dbData.setPassword(defaultPassword);
-            } else {
-                dbData.setPassword(DigestUtils.md5DigestAsHex(data.getPassword().getBytes()).toUpperCase());
+    public Integer save(UserEditVo data, String userId) throws Exception {
+        AtomicInteger result = new AtomicInteger();
+        if (data.getUserTypeID().equals(3)) {//驿站工作者
+            if (data.getSiteUserIdList() != null && data.getSiteUserIdList().size() > 0) {
+                PcSiteUserExample exp = new PcSiteUserExample();
+                PcSiteUserExample.Criteria cri = exp.or();
+                cri.andSiteUserIDIn(data.getSiteUserIdList());
+
+                List<PcSiteUser> pcSiteUserList = pcSiteUserMapper.selectByExample(exp);
+
+                pcSiteUserList.forEach(siteUser -> {
+                    SysUserExample uExp = new SysUserExample();
+                    SysUserExample.Criteria uCri = uExp.or();
+                    uCri.andLoginIDEqualTo(siteUser.getUserNo());
+                    SysUser dbUser = sysUserMapper.selectByExample(uExp).stream().findFirst().orElse(null);
+                    if (dbUser == null) {
+                        dbUser = new SysUser();
+                        dbUser.setUserID(UUID.randomUUID().toString());
+                        dbUser.setName(siteUser.getSiteUserName());
+                        dbUser.setLoginID(siteUser.getUserNo());
+                        dbUser.setPassword(data.getPassword() == null ? defaultPassword : DigestUtils.md5DigestAsHex(data.getPassword().getBytes()).toUpperCase());
+                        dbUser.setUserTypeID(data.getUserTypeID());
+                        dbUser.setRecordStatus(data.getRecordStatus());
+                        dbUser.setCreateBy(userId);
+                        dbUser.setCreateTime(new Date());
+                        result.set(result.get() + sysUserMapper.insert(dbUser));
+                    }
+
+                    siteUser.setUserID(dbUser.getUserID());
+                    pcSiteUserMapper.updateByPrimaryKey(siteUser);
+                });
+
             }
-            dbData.setUserTypeID(data.getUserTypeID());
-            dbData.setRecordStatus(data.getRecordStatus());
-            dbData.setCreateBy(userId);
-            dbData.setCreateTime(new Date());
-            result = sysUserMapper.insert(dbData);
         } else {
-            //修改
-            dbData.setName(data.getName());
-            dbData.setLoginID(data.getLoginID());
-            if (data.getPassword() == null) {
-                dbData.setPassword(defaultPassword);
+            SysUserExample uExp = new SysUserExample();
+            SysUserExample.Criteria uCri = uExp.or();
+            uCri.andLoginIDEqualTo(data.getLoginID());
+
+            SysUser dbUser = sysUserMapper.selectByExample(uExp).stream().findFirst().orElse(null);
+            if (dbUser != null && !dbUser.getUserID().equals(data.getUserID()))
+                throw new Exception("该账号已录入系统,请勿重复录入");
+
+
+            UserInfoModel record = getUserInfo(data.getUserID());
+            SysUser dbData = record == null ? null : sysUserMapper.selectByPrimaryKey(record.userID);
+            Boolean isExist = dbData != null;
+            if (!isExist) {
+                //添加
+                dbData = new SysUser();
+                dbData.setUserID(data.getUserID());
+                dbData.setName(data.getName());
+                dbData.setLoginID(data.getLoginID());
+                if (data.getPassword() == null) {
+                    dbData.setPassword(defaultPassword);
+                } else {
+                    dbData.setPassword(DigestUtils.md5DigestAsHex(data.getPassword().getBytes()).toUpperCase());
+                }
+                dbData.setUserTypeID(data.getUserTypeID());
+                dbData.setRecordStatus(data.getRecordStatus());
+                dbData.setCreateBy(userId);
+                dbData.setCreateTime(new Date());
+                result.set(sysUserMapper.insert(dbData));
             } else {
-                dbData.setPassword(DigestUtils.md5DigestAsHex(data.getPassword().getBytes()).toUpperCase());
+                //修改
+                dbData.setName(data.getName());
+                dbData.setLoginID(data.getLoginID());
+                if (data.getPassword() == null) {
+                    dbData.setPassword(defaultPassword);
+                } else {
+                    dbData.setPassword(DigestUtils.md5DigestAsHex(data.getPassword().getBytes()).toUpperCase());
+                }
+                dbData.setUserTypeID(data.getUserTypeID());
+                dbData.setRecordStatus(data.getRecordStatus());
+                dbData.setUpdateBy(userId);
+                dbData.setUpdateTime(new Date());
+                result.set(sysUserMapper.updateByPrimaryKey(dbData));
             }
-            dbData.setUserTypeID(data.getUserTypeID());
-            dbData.setRecordStatus(data.getRecordStatus());
-            dbData.setUpdateBy(userId);
-            dbData.setUpdateTime(new Date());
-            result = sysUserMapper.updateByPrimaryKey(dbData);
-        }
 
-        SysUserDatarangeExample udExp = new SysUserDatarangeExample();
-        SysUserDatarangeExample.Criteria udCri = udExp.or();
-        udCri.andUserIdEqualTo(data.getUserID());
-        sysUserDatarangeMapper.deleteByExample(udExp);
+            SysUserDatarangeExample udExp = new SysUserDatarangeExample();
+            SysUserDatarangeExample.Criteria udCri = udExp.or();
+            udCri.andUserIdEqualTo(data.getUserID());
+            sysUserDatarangeMapper.deleteByExample(udExp);
 
-        if (data.datarangeIdList!=null) {
+            if (data.datarangeIdList != null) {
 
-            data.datarangeIdList.forEach(datarangeId -> {
-                SysUserDatarangeKey sysUserDatarange = new SysUserDatarangeKey();
-                sysUserDatarange.setUserId(data.getUserID());
-                sysUserDatarange.setDatarangeId(datarangeId);
+                data.datarangeIdList.forEach(datarangeId -> {
+                    SysUserDatarangeKey sysUserDatarange = new SysUserDatarangeKey();
+                    sysUserDatarange.setUserId(data.getUserID());
+                    sysUserDatarange.setDatarangeId(datarangeId);
 
-                sysUserDatarangeMapper.insert(sysUserDatarange);
-            });
+                    sysUserDatarangeMapper.insert(sysUserDatarange);
+                });
 
+            }
         }
 
-        return result;
+        return result.get();
     }
 
     @Override

+ 15 - 10
src/main/java/com/hz/employmentsite/services/impl/baseSettings/SiteUserImpl.java

@@ -115,9 +115,9 @@ public class SiteUserImpl implements SiteUserService {
         SiteUserVo record = get(data.siteUserID);
         PcSiteUser dbData = record == null ? null : pcSiteUserMapper.selectByPrimaryKey(record.siteUserID);
         Boolean isExist = dbData != null;
-        SysUser curSysUserData = data.userID != null ? sysUserMapper.selectByPrimaryKey(data.userID) : null;
-        Boolean isLinkUser = curSysUserData != null;
-        SysRoleExample roleExp = null;
+        /*SysUser curSysUserData = data.userID != null ? sysUserMapper.selectByPrimaryKey(data.userID) : null;*/
+        /*Boolean isLinkUser = curSysUserData != null;*/
+        /*SysRoleExample roleExp = null;*/
         /*注意:这里的data.roleID为用户类型ID*/
         if (!isExist) {
             // 添加时有重复数据立即报错
@@ -139,7 +139,7 @@ public class SiteUserImpl implements SiteUserService {
 
             //添加
             //处理用户表
-            curSysUserData = new SysUser();
+            /*curSysUserData = new SysUser();
             curSysUserData.setUserID(UUID.randomUUID().toString());
             curSysUserData.setName(data.getSiteUserName());
             curSysUserData.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()).toUpperCase());
@@ -148,11 +148,11 @@ public class SiteUserImpl implements SiteUserService {
             curSysUserData.setCreateTime(new Date());
             curSysUserData.setCreateBy(userId);
             curSysUserData.setRecordStatus(1);
-            result += sysUserMapper.insert(curSysUserData);
+            result += sysUserMapper.insert(curSysUserData);*/
 
             //处理站点人员表
             dbData = new PcSiteUser();
-            dbData.setUserID(curSysUserData.getUserID());
+            /*dbData.setUserID(curSysUserData.getUserID());*/
             dbData.setSiteUserID(data.getSiteUserID());
             dbData.setSiteID(data.getSiteID());
             dbData.setGender(data.getGender());
@@ -198,17 +198,17 @@ public class SiteUserImpl implements SiteUserService {
 
             //修改
             //处理用户表
-            if (isLinkUser) {
+            /*if (isLinkUser) {
                 curSysUserData.setName(data.siteUserName);
                 curSysUserData.setUserTypeID(data.roleID);
                 curSysUserData.setLoginID(StrToPinYin(data.siteUserName));
                 curSysUserData.setUpdateTime(new Date());
                 curSysUserData.setUpdateBy(userId);
                 result += sysUserMapper.updateByPrimaryKey(curSysUserData);
-            }
+            }*/
 
             //处理站点人员表
-            dbData.setUserID(data.userID);
+            /*dbData.setUserID(data.userID);*/
             dbData.setSiteUserID(data.siteUserID);
             dbData.setSiteID(data.getSiteID());
             dbData.setGender(data.gender);
@@ -253,7 +253,7 @@ public class SiteUserImpl implements SiteUserService {
                 result += sysUserSysRoleMapper.deleteByExample(userRoleExp);
                 SysUserExample userExp = new SysUserExample();
                 userExp.or().andUserIDEqualTo(curSiteUser.getUserID());
-                result += sysUserMapper.deleteByExample(userExp);
+                /*result += sysUserMapper.deleteByExample(userExp);*/
             }
         }
         return result;
@@ -406,4 +406,9 @@ public class SiteUserImpl implements SiteUserService {
         }
         return pinyinStr;
     }
+
+    @Override
+    public List<SiteUserVo> getListForAddUser(){
+        return userInfoCQuery.selectListForAddUser();
+    }
 }

+ 1 - 1
src/main/java/com/hz/employmentsite/services/service/UserService.java

@@ -17,7 +17,7 @@ public interface UserService {
     List<DataRange> getUserDataRange(String userID);
     int updateUserStatus(String userId, Integer status);
     UserInfoModel getUserInfo(String userId);
-    Integer save(UserEditVo data, String userId);
+    Integer save(UserEditVo data, String userId) throws Exception;
     PageInfo<HashMap<String, Object>> getUserList(int page, int rows, String name,String loginID, Integer sex, Integer recordStatus, Integer userType);
     SysUser getIsCacheUserInfoByID(String userId);
 

+ 2 - 0
src/main/java/com/hz/employmentsite/services/service/baseSettings/SiteUserService.java

@@ -28,4 +28,6 @@ public interface SiteUserService {
      * @return 导入结果
      */
     List<SiteUserVo> importSiteUser(List<SiteUserVo> dataList, String loginUserId);
+
+    List<SiteUserVo> getListForAddUser();
 }

+ 2 - 0
src/main/java/com/hz/employmentsite/vo/user/UserEditVo.java

@@ -8,4 +8,6 @@ import java.util.List;
 @Data
 public class UserEditVo extends SysUser {
     public List<String> datarangeIdList;
+
+    public List<String> siteUserIdList;
 }

+ 8 - 0
src/main/resources/mapping/cquery/SiteUserCQuery.xml

@@ -64,4 +64,12 @@
             and siteID = #{siteID}
         </if>
     </select>
+
+    <select id="selectListForAddUser" resultType="com.hz.employmentsite.vo.baseSettings.SiteUserVo">
+        select siteUser.*,site.siteName
+        from pc_site_user siteUser
+        inner join pc_site site on siteUser.siteID = site.siteID
+        where siteUser.userId is null
+        order by site.siteName
+    </select>
 </mapper>

+ 16 - 1
src/main/resources/mapping/cquery/SysUserCQuery.xml

@@ -14,9 +14,11 @@
     <select id="selectUserList" resultType="java.util.HashMap">
         select us.*,dic.Name as UserTypeName ,urole.roleName
         ,case when us.UserTypeID=3 then userDataRange_Site.dataRangeNames
+              when us.UserTypeID=4 then userDataRange_Institution.dataRangeNames
               when us.UserTypeID=5 then userDataRange_Region.dataRangeNames
               else '' end as dataRangeNames
         ,case when us.UserTypeID=3 then userDataRange_Site.dataRangeIds
+              when us.UserTypeID=4 then userDataRange_Institution.dataRangeIds
               when us.UserTypeID=5 then userDataRange_Region.dataRangeIds
               else '' end as dataRangeIds
         from sys_user us
@@ -39,6 +41,12 @@
              where su.userId is not null
              group by su.userId
         )userDataRange_Site on us.UserTypeID=3 and us.userId = userDataRange_Site.userId -- 驿站工作者
+        left join (
+             select d.userId,GROUP_CONCAT(a.InstitutionID) as dataRangeIds,GROUP_CONCAT(a.CompanyName) as dataRangeNames
+             from sys_user_datarange d
+             inner join pc_institution a on d.datarangeId = a.InstitutionID
+             group by d.userId
+        )userDataRange_Institution on us.UserTypeID=4 and us.userId = userDataRange_Institution.userId -- 驿站机构人员
         where 1=1
         <if test="name != null and name != ''">
             and us.Name like Concat('%',#{name},'%')
@@ -83,11 +91,18 @@
         select sysUser.userID from sys_user sysUser where UserID=#{userID})
     </select>
 
-    <select id="selectUserInstitution" resultType="java.lang.String">
+    <!--<select id="selectUserInstitution" resultType="java.lang.String">
         select institution.InstitutionID from pc_institution institution where institution.InstitutionID in (
         select siteInst.InstitutionID from pc_site_institution siteInst where siteInst.siteID in (
         select siteUser.SiteID from pc_site_user siteUser where siteUser.UserID in (
         select sysUser.UserID from sys_user sysUser where UserID=#{userID})))
+    </select>-->
+
+    <select id="selectUserInstitution" resultType="java.lang.String">
+        select distinct a.InstitutionID from sys_user us
+        inner join sys_user_datarange usd on us.UserID = usd.UserID
+        inner join pc_institution a on usd.datarangeId = a.InstitutionID
+        where us.UserID = #{userID}
     </select>
 
     <!--<select id="selectUserRegion" resultType="java.lang.String">

+ 13 - 0
vue/src/api/baseSettings/userInfo.ts

@@ -83,3 +83,16 @@ export function delSiteUser(data: any) {
   );
 }
 
+export function getListForAddUser(params: any) {
+  return request<object>(
+    {
+      url: "userInfo/getListForAddUser",
+      method: 'get',
+      params: params,
+    },
+    {
+      isNew: true,
+    },
+  );
+}
+

+ 117 - 17
vue/src/views/system/users/addUser.vue

@@ -38,6 +38,22 @@
               ></a-select>
             </a-form-item>
           </a-col>
+          <a-col v-if="dataModel.userTypeID === 4" :span="12">
+            <a-form-item
+              label="所属机构"
+              name="datarangeIds"
+              :label-col="{ span: 6 }"
+              :rules="[{ required: true, message: '请选择所属机构!' }]"
+            >
+              <a-select
+                ref="select"
+                v-model:value="dataModel.datarangeIds"
+                :options="institutionList"
+                :field-names="{ label: 'text', value: 'value' }"
+                :allow-clear="true"
+              ></a-select>
+            </a-form-item>
+          </a-col>
           <a-col v-if="dataModel.userTypeID === 5" :span="12">
             <a-form-item
               label="所属县区"
@@ -55,7 +71,7 @@
             </a-form-item>
           </a-col>
         </a-row>
-        <a-row type="flex" :gutter="24">
+        <a-row v-if="dataModel.userTypeID !== 3" type="flex" :gutter="24">
           <a-col :span="12">
             <a-form-item
               label="用户名"
@@ -77,7 +93,7 @@
             </a-form-item>
           </a-col>
         </a-row>
-        <a-row :gutter="24">
+        <a-row type="flex" :gutter="24">
           <a-col :span="12">
             <a-form-item
               label="密码"
@@ -106,19 +122,42 @@
             </a-form-item>
           </a-col>
         </a-row>
+        <div v-if="dataModel.userTypeID === 3" class="search-result-list">
+          <a-table
+            :columns="columns"
+            :data-source="siteUserList"
+            :scroll="{ x: '100%', y: 500 }"
+            :pagination="false"
+            :loading="tableState.loading"
+            :row-key="(record) => record.siteUserID"
+            bordered
+          >
+            <template #bodyCell="{ column, index, record }">
+              <template v-if="column.key === 'operation'">
+                <div class="table-operation">
+                  <a-button type="link" size="small" functioncode="T01010304" @click="onDel(index)"
+                    >删除</a-button
+                  >
+                </div>
+              </template>
+            </template>
+          </a-table>
+        </div>
       </a-form>
     </div>
   </a-modal>
 </template>
 <script lang="ts">
-  import { defineComponent, reactive, ref, toRefs } from 'vue';
-  import { message } from 'ant-design-vue';
-  import type { FormInstance, SelectProps } from 'ant-design-vue';
-  import { getUserByID, saveSysUser } from '@/api/system/user';
-  import { getSysDictionaryList } from '@/api/system/dictionary';
-  import { getRegionCodeList } from '@/api/system/area/index';
-
-  interface userModel {
+import {defineComponent, reactive, ref, toRefs} from 'vue';
+import type {FormInstance, SelectProps} from 'ant-design-vue';
+import {message, TableColumnsType} from 'ant-design-vue';
+import {getUserByID, saveSysUser} from '@/api/system/user';
+import {getSysDictionaryList} from '@/api/system/dictionary';
+import {getRegionCodeList} from '@/api/system/area/index';
+import {getListForAddUser} from '@/api/baseSettings/userInfo';
+import {getInstitutionDataList} from "@/api/baseSettings/institution";
+
+interface userModel {
     dataModel: any;
   }
 
@@ -145,6 +184,24 @@
         loading: false,
       });
       const regionList = ref<SelectProps['options']>();
+      const columns: TableColumnsType = [
+        {
+          title: '序号',
+          align: 'center',
+          key: 'siteUserID',
+          width: 80,
+          customRender: (item) => `${item.index + 1}`,
+        },
+        { title: '用户名', dataIndex: 'siteUserName', key: 'siteUserName', align: 'center' },
+        { title: '账号', dataIndex: 'userNo', key: 'userNo', align: 'center' },
+        { title: '所属驿站', dataIndex: 'siteName', key: 'siteName', align: 'left' },
+        { title: '操作', key: 'operation', fixed: 'right', width: 150, align: 'center' },
+      ];
+      const siteUserList = ref([]);
+      const tableState = reactive({
+        loading: false,
+      });
+      const institutionList = ref<SelectProps['options']>();
 
       const getUserTypeList = async function () {
         const userTypeResult = await getSysDictionaryList('UserType');
@@ -155,6 +212,7 @@
         formState.loading = true;
         await getUserTypeList();
         await getRegionList();
+        await getInstitutionList();
         const reqData = await getUserByID('');
         formData.dataModel = reqData;
         console.log('dataModel', formData.dataModel);
@@ -165,15 +223,34 @@
       const onCommit = async function () {
         isAllowCommit.value = true;
         if (
-          formData.dataModel.name == null ||
-          formData.dataModel.loginID == null ||
-          formData.dataModel.password == null ||
-          formData.dataModel.userTypeID == null ||
-          formData.dataModel.recordStatus == null
+          formData.dataModel.userTypeID != 3 &&
+          (formData.dataModel.name == null ||
+            formData.dataModel.loginID == null ||
+            formData.dataModel.password == null ||
+            formData.dataModel.userTypeID == null ||
+            formData.dataModel.recordStatus == null)
+        ) {
+          message.error('请填写完整的用户信息!');
+          isAllowCommit.value = false;
+        }
+
+        if (
+          formData.dataModel.userTypeID == 3 &&
+          (formData.dataModel.password == null ||
+            formData.dataModel.userTypeID == null ||
+            formData.dataModel.recordStatus == null)
         ) {
           message.error('请填写完整的用户信息!');
           isAllowCommit.value = false;
         }
+
+        if (formData.dataModel.userTypeID == 3 && siteUserList.value.length == 0) {
+          message.error('请添加驿站工作人员!');
+          isAllowCommit.value = false;
+        } else {
+          formData.dataModel.siteUserIdList = siteUserList.value.map((it: any) => it.siteUserID);
+        }
+
         if (isAllowCommit.value) {
           //多选时不需要转类型
           formData.dataModel.datarangeIdList = [formData.dataModel.datarangeIds];
@@ -187,13 +264,31 @@
       };
 
       const getRegionList = async function () {
-        const regionResult: any = await getRegionCodeList();
-        regionList.value = regionResult;
+        regionList.value = await getRegionCodeList();
+      };
+
+      const getInstitutionList = async function () {
+        institutionList.value = await getInstitutionDataList();
+      };
+
+      const getSiteUser = async function () {
+        tableState.loading = true;
+        const result: any = await getListForAddUser(null);
+        siteUserList.value = result;
+        tableState.loading = false;
       };
 
       const userTypeChange = () => {
         formData.dataModel.datarangeIds = null;
         formData.dataModel.datarangeIdList = null;
+
+        if (formData.dataModel.userTypeID == 3) {
+          getSiteUser();
+        }
+      };
+
+      const onDel = (index) => {
+        siteUserList.value.splice(index, 1);
       };
 
       return {
@@ -207,6 +302,11 @@
         userTypeList,
         regionList,
         userTypeChange,
+        columns,
+        siteUserList,
+        tableState,
+        onDel,
+        institutionList,
       };
     },
     created() {},

+ 1 - 1
vue/src/views/system/users/index.vue

@@ -138,7 +138,7 @@
           width: 150,
         },
         {
-          title: '所属区县/驿站',
+          title: '所属区县/机构/驿站',
           dataIndex: 'dataRangeNames',
           key: 'dataRangeNames',
           width: 150,