jiangping
2024-08-22 14afc8a0d7b1032218e2fd2a703be32e32e686a0
最新版本
已修改11个文件
138 ■■■■ 文件已修改
admin/src/components/business/cardOpeningRecord.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/device.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/deviceBroadcast.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/deviceLed.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/deviceRole.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/deviceRole_f.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/memberCard.vue 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/vehicle/cars.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/vehicle/parkBook.vue 60 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromSelfServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/components/business/cardOpeningRecord.vue
@@ -36,8 +36,8 @@
            <el-table-column prop="memberName" label="员工姓名" min-width="100px"></el-table-column>
            <el-table-column prop="memberPhone" label="手机号" min-width="100px"></el-table-column>
            <el-table-column prop="companyName" label="组织" min-width="100px"></el-table-column>
            <el-table-column prop="createDate" label="开卡时间" min-width="100px"></el-table-column>
            <el-table-column prop="editDate" label="更新时间" min-width="100px"></el-table-column>
            <el-table-column prop="createDate" label="开卡时间" min-width="140px"></el-table-column>
            <el-table-column prop="editDate" label="更新时间" min-width="140px"></el-table-column>
            <el-table-column
                label="操作"
                min-width="120"
admin/src/views/business/device.vue
@@ -61,7 +61,7 @@
                        </el-switch>
                    </template>
                </el-table-column>
                <el-table-column prop="no" label="设备号"></el-table-column>
                <el-table-column prop="no" width="200px" label="设备号"></el-table-column>
            </el-table>
            <pagination
                @size-change="handleSizeChange"
admin/src/views/business/deviceBroadcast.vue
@@ -2,7 +2,7 @@
    <TableLayout :permissions="['business:device:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="名称" prop="name">
            <el-form-item title="名称" prop="name">
                <el-input v-model="searchForm.name" placeholder="请输入名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <section>
admin/src/views/business/deviceLed.vue
@@ -2,7 +2,7 @@
    <TableLayout :permissions="['business:device:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="名称" prop="name">
            <el-form-item title="名称" prop="name">
                <el-input v-model="searchForm.name" placeholder="请输入名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <section>
admin/src/views/business/deviceRole.vue
@@ -2,7 +2,7 @@
    <TableLayout :permissions="['business:devicerole:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="110px" inline>
            <el-form-item label="门禁点分组名称" prop="name">
            <el-form-item title="门禁点分组名称" prop="name">
                <el-input v-model="searchForm.name" placeholder="请输入门禁点分组名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <section>
admin/src/views/business/deviceRole_f.vue
@@ -2,7 +2,7 @@
    <TableLayout :permissions="['business:devicerole:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="门禁组名称" prop="name">
            <el-form-item title="门禁组名称" prop="name">
                <el-input v-model="searchForm.name" placeholder="请输入门禁组名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <section>
admin/src/views/business/memberCard.vue
@@ -2,20 +2,20 @@
    <TableLayout :permissions="['business:membercard:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="卡号" prop="code">
                <el-input v-model="searchForm.code" placeholder="请输入卡号" @keypress.enter.native="search"></el-input>
            <el-form-item title="卡号" prop="code">
                <el-input v-model="searchForm.code" placeholder="卡号" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item label="姓名/手机号" prop="keyword">
                <el-input v-model="searchForm.keyword" placeholder="请输入员工姓名/手机号" @keypress.enter.native="search"></el-input>
            <el-form-item title="姓名/手机号" prop="keyword">
                <el-input v-model="searchForm.keyword" placeholder="员工姓名/手机号" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item label="用户类型" prop="memberType">
                <el-select v-model="searchForm.memberType" placeholder="请选择">
            <el-form-item title="用户类型" prop="memberType">
                <el-select v-model="searchForm.memberType" placeholder="用户类型">
                    <el-option label="劳务人员" :value="0"></el-option>
                    <el-option label="内部员工" :value="2"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="状态" prop="status">
                <el-select v-model="searchForm.status" placeholder="请选择">
            <el-form-item title="状态" prop="status">
                <el-select v-model="searchForm.status" placeholder="状态">
                    <el-option label="禁用" :value="0"></el-option>
                    <el-option label="启用" :value="1"></el-option>
                    <el-option label="退卡" :value="2"></el-option>
@@ -60,8 +60,8 @@
                <el-table-column prop="memberName" label="员工姓名" min-width="100px"></el-table-column>
                <el-table-column prop="memberPhone" label="手机号" min-width="100px"></el-table-column>
                <el-table-column prop="companyName" label="组织" min-width="100px"></el-table-column>
                <el-table-column prop="createDate" label="开卡时间" min-width="100px"></el-table-column>
                <el-table-column prop="editDate" label="更新时间" min-width="100px"></el-table-column>
                <el-table-column prop="createDate" label="开卡时间" min-width="140px"></el-table-column>
                <el-table-column prop="editDate" label="更新时间" min-width="140px"></el-table-column>
                <el-table-column
                    label="操作"
                    min-width="120"
admin/src/views/vehicle/cars.vue
@@ -1,24 +1,24 @@
<template>
    <TableLayout :permissions="['business:member:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline>
            <el-form-item label="车牌号" prop="code">
                <el-input v-model="searchForm.code" clearable placeholder="请输入车牌号" @keypress.enter.native="search"></el-input>
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="" prop="code" title="车牌号">
                <el-input v-model="searchForm.code" clearable placeholder="车牌号" @keypress.enter.native="search"></el-input>
            </el-form-item>
          <el-form-item label="车主姓名/手机号" prop="memberName">
          <el-form-item label="" prop="memberName" title="车主姓名/手机号">
            <el-input v-model="searchForm.memberName" clearable placeholder="车主姓名/手机号" @keypress.enter.native="search"></el-input>
          </el-form-item>
          <el-form-item label="车主部门" prop="companyName">
          <el-form-item label="" prop="companyName" title="车主部门名称">
            <el-input v-model="searchForm.companyName" clearable placeholder="车主部门名称" @keypress.enter.native="search"></el-input>
          </el-form-item>
          <el-form-item label="授权状态" prop="authStatus">
            <el-select v-model="searchForm.authStatus" @keypress.enter.native="search" clearable placeholder="是否授权">
              <el-option label="是" value="1"></el-option>
              <el-option label="否" value="0"></el-option>
          <el-form-item label="" prop="authStatus" title="是否授权">
            <el-select v-model="searchForm.authStatus" @change="search" clearable placeholder="是否授权">
              <el-option label="已授权" value="1"></el-option>
              <el-option label="未授权" value="0"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="车辆类型" prop="type">
            <el-select v-model="searchForm.type" @keypress.enter.native="search" clearable placeholder="车辆类型">
          <el-form-item label="" prop="type" title="车辆类型">
            <el-select v-model="searchForm.type" @change="search" clearable placeholder="车辆类型">
             <el-option label="安泰公务车" value="0"></el-option>
              <el-option label="安泰自有物流车" value="1"></el-option>
              <el-option label="其他" value="2"></el-option>
@@ -59,7 +59,7 @@
                    <span v-else style="color: red">否</span>
                  </template>
                </el-table-column>
                <el-table-column prop="parksName" label="已授权停车场" min-width="200px">
                <el-table-column prop="parksName" align="center" label="已授权停车场" min-width="200px">
                  <template slot-scope="{row}">
                    <div  v-if="row.parkBookList && row.parkBookList.length" >
                      <span v-for="item in row.parkBookList"  :key="item.id" style="display: block">
@@ -69,24 +69,25 @@
                    <span  v-if="row.parkBookList ==null ||row.parkBookList.length ==0">-</span>
                  </template>
                </el-table-column>
              <el-table-column label="下发有效期" min-width="170px">
              <el-table-column label="下发有效期" align="center" min-width="170px">
                <template slot-scope="{row}">
                  <div v-if="row.authStatus !=null && row.authStatus == 1 && row.parkBookList!=null && row.parkBookList.length>0">
                    <div v-if="!row.startTime || !row.endTime">长期有效</div>
                    <div v-else>
                      <span>起:{{row.startTime}}</span><br/>
                      <span>止:{{row.endTime}}</span>
                      <span style="color: green">起:{{row.startTime}}</span><br/>
                      <span style="color: red">止:{{row.endTime}}</span>
                    </div>
                  </div>
                  <div v-else >-</div>
                </template>
              </el-table-column>
                <el-table-column prop="editorName" label="操作人" min-width="100px"></el-table-column>
                <el-table-column prop="editDate" label="操作时间" min-width="100px"></el-table-column>
                <el-table-column prop="editDate" label="操作时间" min-width="140px"></el-table-column>
              <el-table-column
                  v-if="containPermissions(['business:member:update', 'business:member:delete','business:empower:create'])"
                  label="操作"
                  min-width="250"
                  min-width="200"
                  align="center"
                  fixed="right"
              >
                <template slot-scope="{row}">
admin/src/views/vehicle/parkBook.vue
@@ -1,18 +1,18 @@
<template>
    <TableLayout :permissions="['business:member:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline>
            <el-form-item label="车牌号" prop="carCode">
                <el-input v-model="searchForm.carCode" placeholder="请输入车牌号" @keypress.enter.native="search"></el-input>
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item title="车牌号" prop="carCode">
                <el-input v-model="searchForm.carCode" placeholder="车牌号" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item label="车主姓名/手机号" prop="memberName">
                <el-input v-model="searchForm.memberName" placeholder="请输入员工姓名/手机号" @keypress.enter.native="search"></el-input>
            <el-form-item title="车主姓名/手机号" prop="memberName">
                <el-input v-model="searchForm.memberName" placeholder="员工姓名/手机号" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item label="车主组织" prop="companyName">
                <el-input v-model="searchForm.companyName" placeholder="请输入车主组织" @keypress.enter.native="search"></el-input>
            <el-form-item title="车主组织" prop="companyName">
                <el-input v-model="searchForm.companyName" placeholder="车主组织名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item label="停车库名称" prop="parksName">
                <el-input v-model="searchForm.parksName" placeholder="请输入停车库名称" @keypress.enter.native="search"></el-input>
            <el-form-item title="停车库名称" prop="parksName">
                <el-input v-model="searchForm.parksName" placeholder="停车库名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <section>
                <el-button type="primary" @click="search">搜索</el-button>
@@ -33,8 +33,27 @@
                @selection-change="handleSelectionChange"
            >
                <el-table-column type="selection" width="55"></el-table-column>
                <el-table-column prop="carCode" label="车牌号" min-width="100px"></el-table-column>
                <el-table-column prop="parksName" label="停车场" min-width="100px"></el-table-column>
                <el-table-column prop="carCode" label="车牌号" fixed min-width="100px"></el-table-column>
                <el-table-column prop="parksName" label="停车场" fixed min-width="100px"></el-table-column>
              <el-table-column prop="startTime" label="有效期"  align="center" fixed min-width="150px">
                <template slot-scope="{row}">
                  <div v-if="!row.startTime || !row.endTime">长期有效</div>
                  <div v-else>
                    <span style="color: green">起:{{row.startTime}}</span><br/>
                    <span style="color: red">止:{{row.endTime}}</span>
                  </div>
                </template>
              </el-table-column>
              <el-table-column prop="startTime" label="状态" fixed min-width="100px">
                <template slot-scope="{row}">
                  <div v-if="row.isdeleted==1"  style="color: red">已删除</div>
                  <div v-else style="color: green">
                    <span v-if="row.hkStatus==0"  style="color: #435EBE">待下发</span>
                    <span v-if="row.hkStatus==1"  style="color: green">下发成功</span>
                    <span v-if="row.hkStatus==2"  style="color: red">下发失败</span>
                  </div>
                </template>
              </el-table-column>
                <el-table-column label="用户类型" min-width="100px">
                    <template slot-scope="{row}">
                        <span v-if="row.memberType === 0">劳务访客</span>
@@ -45,29 +64,12 @@
                <el-table-column prop="memberName" label="姓名" min-width="100px"></el-table-column>
                <el-table-column prop="memberPhone" label="手机号" min-width="100px"></el-table-column>
                <el-table-column prop="companyName" label="组织" min-width="100px"></el-table-column>
                <el-table-column prop="startTime" label="有效期" min-width="130px">
                    <template slot-scope="{row}">
                        <span>{{validity(row.startTime, row.endTime)}}</span>
<!--                        <span v-if="!row.startTime || !row.endTime">长期</span>-->
<!--                        <span v-else>{{row.startTime}} 至 {{row.endTime}}</span>-->
                    </template>
                </el-table-column>
              <el-table-column prop="startTime" label="状态" min-width="100px">
                <template slot-scope="{row}">
                  <div v-if="row.isdeleted==1"  style="color: red">已删除</div>
                  <div v-else style="color: green">
                      <span v-if="row.hkStatus==0"  style="color: #435EBE">待下发</span>
                      <span v-if="row.hkStatus==1"  style="color: green">下发成功</span>
                     <span v-if="row.hkStatus==2"  style="color: red">下发失败</span>
                   </div>
                </template>
              </el-table-column>
              <el-table-column prop="remark" label="备注" min-width="100px">
                <template slot-scope="{row}">
                  <span v-if="row.isdeleted !=2">{{row.remark}}</span>
                </template>
              </el-table-column>
                <el-table-column prop="createDate" label="创建时间" min-width="100px"></el-table-column>
                <el-table-column prop="createDate" label="创建时间" min-width="140px"></el-table-column>
<!--                <el-table-column-->
<!--                    v-if="containPermissions(['business:member:update', 'business:member:delete'])"-->
<!--                    label="操作"-->
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -104,6 +104,7 @@
                }
            }
            idPath = parent.getCompanyPath();
            company.setHkParentId(parent.getHkId());
            company.setCompanyPath(parent.getCompanyPath()+company.getId()+"/");
            company.setCompanyNamePath(parent.getCompanyNamePath()+"/"+company.getName());
        }
@@ -156,6 +157,7 @@
    }
    private boolean delHkOrg(Company company) {
        OrgDelRequest request =new OrgDelRequest();
        request.setIndexCodes(new String[]{company.getHkId()});
        BaseResponse<List<OrgUpdateFailureResponse>> result =  HKService.delBatchOrg(request);
        if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
@@ -232,6 +234,7 @@
                .eq(Member::getIsdeleted,Constants.ZERO)) >0){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "对不起,该部门下存在人员信息,不能进行删除操作!");
        }
        Company company = new Company();
        company.setId(id);
        company.setEditDate(new Date());
@@ -241,7 +244,7 @@
        company.setHkDate(company.getHkDate());
        companyMapper.updateById(company);
        //下发海康安防平台
        if(StringUtils.isBlank(model.getHkId()) && Constants.equalsInteger(Constants.ONE,model.getHkStatus()) && !delHkOrg(model)){
        if(StringUtils.isNotBlank(model.getHkId()) && Constants.equalsInteger(Constants.ONE,model.getHkStatus()) && !delHkOrg(model)){
            throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对不起,组织删除下发失败,请确认该组织无下级组织或组织人员信息~");
        }
    }
@@ -483,13 +486,11 @@
        companyMapper.updateById(company);
    }
    @Override
    public long count(Company company) {
        QueryWrapper<Company> wrapper = new QueryWrapper<>(company);
        return companyMapper.selectCount(wrapper);
    }
    @Override
    public List<CompanyDTO> findCompanyTreePage(Integer type) {
@@ -501,7 +502,6 @@
        List<Company> companies = companyMapper.selectList(wrapper);
        return getCompanyTree( companies, null);
    }
    private List<CompanyDTO> getCompanyTree(List<Company> companies, String parentId){
        if (CollectionUtils.isEmpty(companies)){
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/fhk/HkSyncOrgUserFromSelfServiceImpl.java
@@ -274,6 +274,7 @@
            c.setHkStatus(Constants.ONE);
            c.setHkDate(new Date());
            c.setCanVisit(Constants.ZERO);
            c.setWorkStatus(Constants.ZERO);
            c.setHighCheckor(Constants.ZERO);
            c.setSex(model.getGender());
            c.setIsdeleted(Constants.ZERO);