MrShi
2024-02-28 8d9cb09aa21c95c9841c04e5eda3ae813f333580
mrshi
已修改9个文件
108 ■■■■■ 文件已修改
admin/src/components/common/Tree.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/utils/util.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/empower.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/internalCompany.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/strandedPersonnel.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/business/userAction.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages/appointmentDetails/appointmentDetails.vue 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages/userinfo/userinfo.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/components/common/Tree.vue
@@ -18,11 +18,12 @@
    <div class="tree">
        <div v-for="(item, index) in list" :key="index" @click.stop="clickIten(item)">
            <div class="tree_item">
                <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.status }" v-show="item.status === 1 && item.childList.length > 0"></i>
                <i class="el-icon-caret-right color" v-show="item.childList.length > 0 && item.status === 0"></i>
                <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.status === 1 && item.childList.length === 0 }">{{ item.name }}</div>
                <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.fsStatus === 1 }" v-show="item.fsStatus === 1 && item.childList.length > 0"></i>
                <i class="el-icon-caret-right color" v-show="item.childList.length > 0 && (item.fsStatus === 0 || !item.fsStatus)"></i>
                <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.fsDate === 1 && item.childList.length === 0 }">{{ item.name }}</div>
            </div>
            <div class="tree_childern" v-show="item.status === 1">
<!--            v-show="item.status === 1"-->
            <div class="tree_childern" v-show="item.fsStatus === 1">
                <tree
                    :list="item.childList"
                    :defaultProps="defaultProps"
@@ -68,7 +69,10 @@
    // 点击当前项
    clickIten (item) {
      this.recursion(this.list)
      item.status === 0 ? item.status = 1 : item.status = 0
      item.fsDate === 0 || !item.fsDate ? item.fsDate = 1 : item.fsDate = 0
      if (item.childList.length > 0) {
        item.fsStatus === 0 || !item.fsStatus ? item.fsStatus = 1 : item.fsStatus = 0
      }
      // item[this.defaultProps.status] = !item[this.defaultProps.status]
      // this.list.forEach(subItem => {
      //   if ((subItem[this.defaultProps.id] !== item[this.defaultProps.id] && subItem[this.defaultProps.status]) || (this.list.length === 1 && subItem[this.defaultProps.status] === false)) {
@@ -98,7 +102,7 @@
      //   }
      // })
      children.forEach(item => {
        item.status = 0
        item.fsDate = 0
        if (item.childList.length > 0) {
          this.recursion(item.childList)
        }
admin/src/utils/util.js
@@ -24,7 +24,8 @@
  const time1 = new Date()
  const time2 = new Date()
  if (count === 1) {
    time1.setTime(time1.getTime() - (24 * 60 * 60 * 1000))
    // time1.setTime(time1.getTime() - (24 * 60 * 60 * 1000))
    time1.setTime(time1.getTime())
  } else {
    time1.setTime(time1.getTime())
  }
admin/src/views/business/empower.vue
@@ -8,10 +8,12 @@
            <el-form-item label="下发状态" prop="sendStatus">
                <el-select v-model="searchForm.sendStatus" placeholder="请选择" @keypress.enter.native="search">
                    <el-option label="待下发" value="0"></el-option>
                    <el-option label="已下发" value="1"></el-option>
                    <el-option label="任务执行" value="1"></el-option>
                    <el-option label="下发成功" value="2"></el-option>
                    <el-option label="已取消" value="3"></el-option>
                    <el-option label="下发失败" value="4"></el-option>
                    <el-option label="任务下载已结束" value="5"></el-option>
                    <el-option label="不符合下发条件" value="6"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="公司" prop="companyId">
@@ -58,23 +60,27 @@
                @selection-change="handleSelectionChange"
            >
                <el-table-column type="selection" width="55"></el-table-column>
                <el-table-column prop="name" label="姓名" min-width="100px"></el-table-column>
                <el-table-column prop="phone" label="手机号" min-width="100px"></el-table-column>
                <el-table-column prop="phone" label="身份证号码" min-width="100px"></el-table-column>
                <el-table-column prop="phone" label="所属公司" min-width="100px"></el-table-column>
                <el-table-column label="门禁有效期" min-width="100px">
                <el-table-column prop="memberName" label="姓名" min-width="80px"></el-table-column>
                <el-table-column prop="memberPhone" label="手机号" min-width="120px"></el-table-column>
                <el-table-column prop="memberidCard" label="身份证号码" min-width="130px"></el-table-column>
                <el-table-column prop="companyName" label="所属公司" min-width="150px"></el-table-column>
                <el-table-column label="门禁有效期" min-width="170px">
                    <template slot-scope="{row}">
                        <span>起:{{row.startTime}}</span>
                        <span>起:{{row.startTime}}</span><br />
                        <span>止:{{row.endTime}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="sendDate" label="导入时间" min-width="100px"></el-table-column>
                <el-table-column prop="sendUserId" label="操作人员" min-width="100px"></el-table-column>
                <el-table-column prop="sendDate" label="导入时间" min-width="150px"></el-table-column>
<!--                <el-table-column prop="createrName" label="操作人员" min-width="100px"></el-table-column>-->
                <el-table-column label="下发状态" min-width="100px">
                    <template slot-scope="{row}">
                        <span v-if="row.sendStatus === 0">待下发</span>
                        <span v-if="row.sendStatus === 1">已下发</span>
                        <span v-if="row.sendStatus === 2">已取消</span>
                        <span v-if="row.sendStatus === 1">任务执行</span>
                        <span v-if="row.sendStatus === 2">下发成功</span>
                        <span v-if="row.sendStatus === 3">已取消</span>
                        <span v-if="row.sendStatus === 4">下发失败</span>
                        <span v-if="row.sendStatus === 5">任务下载已结束</span>
                        <span v-if="row.sendStatus === 6">不符合下发条件</span>
                    </template>
                </el-table-column>
                <el-table-column prop="sendType" label="下发类型" min-width="100px">
@@ -83,8 +89,8 @@
                        <span v-if="row.sendType === 1">定时</span>
                    </template>
                </el-table-column>
                <el-table-column prop="sendDate" label="下发时间" min-width="100px"></el-table-column>
                <el-table-column prop="sendInfo" label="下发失败原因" min-width="100px"></el-table-column>
                <el-table-column prop="sendDate" label="下发时间" min-width="150px"></el-table-column>
                <el-table-column prop="sendInfo" label="下发失败原因" min-width="150px"></el-table-column>
            </el-table>
            <pagination
                @size-change="handleSizeChange"
@@ -131,17 +137,17 @@
  methods: {
    changeRadio (e) {
      if (e === '0') {
        this.searchForm.startTime = timeForMat(1)[0]
        this.searchForm.endTime = timeForMat(1)[1]
        this.time = timeForMat(1)
        this.searchForm.startTime = timeForMat(0)[0]
        this.searchForm.endTime = timeForMat(0)[1]
        this.time = timeForMat(0)
      } else if (e === '1') {
        this.searchForm.startTime = timeForMat(7)[0]
        this.searchForm.endTime = timeForMat(7)[1]
        this.time = timeForMat(7)
        this.searchForm.startTime = timeForMat(6)[0]
        this.searchForm.endTime = timeForMat(6)[1]
        this.time = timeForMat(6)
      } else if (e === '2') {
        this.searchForm.startTime = timeForMat(30)[0]
        this.searchForm.endTime = timeForMat(30)[1]
        this.time = timeForMat(30)
        this.searchForm.startTime = timeForMat(29)[0]
        this.searchForm.endTime = timeForMat(29)[1]
        this.time = timeForMat(29)
      }
      this.search()
    },
admin/src/views/business/internalCompany.vue
@@ -26,6 +26,7 @@
                stripe
                :tree-props="{children: 'childList'}"
                row-key="id"
                :expand-row-keys="[list && list.length > 0 ? list[0].id.toString() : '']"
                @selection-change="handleSelectionChange"
            >
<!--                <el-table-column type="selection" width="55"></el-table-column>-->
admin/src/views/business/strandedPersonnel.vue
@@ -45,7 +45,8 @@
                <el-table-column prop="outDate" label="授权到期时间" min-width="100px"></el-table-column>
                <el-table-column label="超时时长" min-width="100px">
                    <template slot-scope="{row}">
                        <span>{{row.timeOut.toString().replace('-', '')}}</span>
                        <span v-if="row.outStatus === 1">{{row.timeOut.toString().replace('-', '')}}分钟</span>
                        <span v-else>-</span>
                    </template>
                </el-table-column>
                <el-table-column label="状态" min-width="100px">
@@ -62,7 +63,7 @@
                    fixed="right"
                >
                    <template slot-scope="{row}">
                        <el-button type="text" icon="el-icon-edit" v-permissions="['business:member:update']" @click="departure(scope.row.id)">离厂</el-button>
                        <el-button type="text" icon="el-icon-edit" v-permissions="['business:member:update']" @click="departure(row.id)">离厂</el-button>
                    </template>
                </el-table-column>
            </el-table>
admin/src/views/business/userAction.vue
@@ -89,7 +89,7 @@
                        <span v-else-if="row.beforeStatus === 7">取消高级审批人</span>
                        <span v-else-if="row.beforeStatus === 8">手动离场</span>
                        <span v-else-if="row.beforeStatus === 9">删除</span>
                        <span v-else>-</span>
                        <span v-else>正常</span>
                    </template>
                </el-table-column>
                <el-table-column label="操作">
admin/src/views/index.vue
@@ -88,7 +88,7 @@
            label="处理"
            width="80">
            <template slot-scope="scope">
              <el-button type="text" @click="departure(scope.row.id)">离场</el-button>
              <el-button type="text" @click="departure(scope.row.id)" v-if="scope.row.outStatus === 1">离厂</el-button>
            </template>
          </el-table-column>
        </el-table>
h5/pages/appointmentDetails/appointmentDetails.vue
@@ -1,17 +1,19 @@
<template>
    <view class="box">
        <view class="box_head">
            <canvas class="box_head_qrcode" canvas-id="img"></canvas>
            <text class="box_head_a" v-if="info.status === 0">访客预约待审核</text>
            <text class="box_head_a" style="color: ;" v-if="info.status === 2">访客预约审核通过</text>
            <text class="box_head_a" v-if="info.status === 3">访客预约审核不通过</text>
            <text class="box_head_b" v-if="info.status === 0">您的预约单已提交审核,请等待被访人审核</text>
            <text class="box_head_b" v-if="info.status === 2">您的来访申请已审核通过,请在门卫处进行登</text>
            <text class="box_head_b" v-if="info.status === 3">您的来访申请已被驳回,原因是:这是原因</text>
            <canvas class="box_head_qrcode" canvas-id="img" v-if="[2,5,7,8,9].includes(info.status)"></canvas>
            <image class="box_head_logo" src="../../static/logo@2x.png" mode="widthFix" v-else></image>
            <text class="box_head_a" v-if="[0, 1].includes(info.status)">访客预约待审核</text>
            <text class="box_head_a" style="color: #03AF76;" v-if="info.status === 2">访客预约审核通过</text>
            <text class="box_head_a" style="color: #ED4545;" v-if="info.status === 3">访客预约审核不通过</text>
            <text class="box_head_b" v-if="[0, 1].includes(info.status)">您的预约单已提交审核,请等待被访人审核</text>
            <text class="box_head_b" v-if="info.status === 2">您的来访申请已审核通过,请在门卫处进行登记入场
如遇特殊情况,可联系被访人或安保人员</text>
            <text class="box_head_b" v-if="info.status === 3">您的来访申请已被驳回,如有疑问,可联系被访人</text>
        </view>
        <view class="box_list">
            <view class="box_list_label">拜访信息</view>
            <view class="box_list_tips">请注意查看出入门禁下发情况,如若下发失败需重新申请</view>
            <view class="box_list_tips" v-if="info.status === 2">请注意查看出入门禁下发情况,如若下发失败需重新申请</view>
            <view class="box_list_item">
                <view class="box_list_item_label">被访人员:</view>
                <view class="box_list_item_val">{{info.visitUserName}}</view>
@@ -72,7 +74,9 @@
                    if (res.code === 200) {
                        this.info = res.data
                        if (res.data.qrcode) {
                            wxcode.qrcode('img', res.data.qrcode, 320, 320)
                            this.$nextTick(() => {
                                wxcode.qrcode('img', res.data.qrcode, 320, 320)
                            })
                        }
                    }
                })
@@ -126,6 +130,10 @@
                width: 320rpx;
                height: 320rpx;
            }
            .box_head_logo {
                width: 220rpx;
                height: 220rpx;
            }
            .box_head_a {
                font-size: 36rpx;
                font-weight: 600;
@@ -137,6 +145,7 @@
                font-weight: 400;
                color: #666666;
                margin-top: 24rpx;
                text-align: center;
            }
        }
        .box_list {
h5/pages/userinfo/userinfo.vue
@@ -198,7 +198,7 @@
                                formData: {
                                    folderCode: 'MEMBER_IMG'
                                },
                                success: (uploadFileRes) => {
                                success: (uploadFileRes) => {
                                    let res = JSON.parse(uploadFileRes.data)
                                    if (type === 'faceImg') {
                                        this.visitorData.faceImg = res.data.halfPath