|
|
@@ -9,66 +9,143 @@
|
|
|
<div class="filter">
|
|
|
<div class="condition">
|
|
|
<span>关键字 : </span>
|
|
|
- <el-input :clearable="true" @clear="searchBtn" v-model="searchInput.keyWord" class="w-50 m-2"
|
|
|
- placeholder="请输入姓名" style="width: 150px" />
|
|
|
+ <el-input
|
|
|
+ :clearable="true"
|
|
|
+ @clear="searchBtn"
|
|
|
+ v-model="searchInput.keyWord"
|
|
|
+ class="w-50 m-2"
|
|
|
+ placeholder="请输入姓名"
|
|
|
+ style="width: 150px"
|
|
|
+ />
|
|
|
</div>
|
|
|
<div class="condition">
|
|
|
<span>维修班 : </span>
|
|
|
- <el-select :clearable="true" @clear="searchBtn" v-model="searchInput.teamId" class="m-2" placeholder="请选择维修班">
|
|
|
+ <el-select
|
|
|
+ :clearable="true"
|
|
|
+ @clear="searchBtn"
|
|
|
+ v-model="searchInput.teamId"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择维修班"
|
|
|
+ >
|
|
|
<el-option label="校方人员" :value="0" />
|
|
|
<el-option label="第三方人员" :value="1" />
|
|
|
</el-select>
|
|
|
</div>
|
|
|
<div class="condition">
|
|
|
<span>校区 : </span>
|
|
|
- <el-select :clearable="true" @clear="searchBtn" v-model="searchInput.schoolId" class="m-2"
|
|
|
- placeholder="请选择校区">
|
|
|
+ <el-select
|
|
|
+ :clearable="true"
|
|
|
+ @clear="searchBtn"
|
|
|
+ v-model="searchInput.schoolId"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择校区"
|
|
|
+ >
|
|
|
<el-option label="黄家湖校区" :value="1" />
|
|
|
<el-option label="墨轩湖校区" :value="2" />
|
|
|
</el-select>
|
|
|
</div>
|
|
|
|
|
|
- <el-button style="margin-left: 20px" color="rgba(111, 182, 184, 1)" type="primary" class="search"
|
|
|
- @click="searchBtn"><el-icon>
|
|
|
+ <el-button
|
|
|
+ style="margin-left: 20px"
|
|
|
+ color="rgba(111, 182, 184, 1)"
|
|
|
+ type="primary"
|
|
|
+ class="search"
|
|
|
+ @click="searchBtn"
|
|
|
+ ><el-icon>
|
|
|
<Search />
|
|
|
- </el-icon> <span>查询</span></el-button>
|
|
|
+ </el-icon>
|
|
|
+ <span>查询</span></el-button
|
|
|
+ >
|
|
|
</div>
|
|
|
<!-- 按钮列表 -->
|
|
|
<div class="gongneng">
|
|
|
- <el-button type="primary" color="rgba(111, 182, 184, 1)" @click="addlist"><img src="@/assets/add.png"
|
|
|
- style="width: 14px; height: 14px; margin-right: 4px" alt="" /><span>添加员工</span></el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ color="rgba(111, 182, 184, 1)"
|
|
|
+ @click="addlist"
|
|
|
+ ><img
|
|
|
+ src="@/assets/add.png"
|
|
|
+ style="width: 14px; height: 14px; margin-right: 4px"
|
|
|
+ alt=""
|
|
|
+ /><span>添加员工</span></el-button
|
|
|
+ >
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="footer">
|
|
|
- <el-table :row-class-name="tableRowClassName" :data="tableData.list" @selection-change="handleSelectionChange"
|
|
|
- style="width: 100%" :header-cell-style="{
|
|
|
+ <el-table
|
|
|
+ :row-class-name="tableRowClassName"
|
|
|
+ :data="tableData.list"
|
|
|
+ @selection-change="handleSelectionChange"
|
|
|
+ style="width: 100%"
|
|
|
+ :header-cell-style="{
|
|
|
background: 'rgba(240, 243, 247, 1)',
|
|
|
height: '50px',
|
|
|
border: 0,
|
|
|
- }">
|
|
|
+ }"
|
|
|
+ >
|
|
|
<!-- <el-table-column align="center" type="selection" width="80" /> -->
|
|
|
- <el-table-column width="80" align="center " type="index" label="序号" />
|
|
|
+ <el-table-column
|
|
|
+ width="80"
|
|
|
+ align="center "
|
|
|
+ type="index"
|
|
|
+ label="序号"
|
|
|
+ />
|
|
|
<el-table-column align="center" prop="userName" label="姓名" />
|
|
|
- <el-table-column align="center" width="150" prop="userPhone" label="手机号码" />
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ width="150"
|
|
|
+ prop="userPhone"
|
|
|
+ label="手机号码"
|
|
|
+ />
|
|
|
<el-table-column align="center" prop="teamName" label="维修班" />
|
|
|
<el-table-column align="center" prop="schoolName" label="校区" />
|
|
|
<el-table-column align="center" prop="userZzname" label="身份" />
|
|
|
|
|
|
- <el-table-column align="center" width="200" prop="buildName" label="关联楼栋" show-overflow-tooltip>
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ width="200"
|
|
|
+ prop="buildName"
|
|
|
+ label="关联楼栋"
|
|
|
+ show-overflow-tooltip
|
|
|
+ >
|
|
|
<!-- <template #default="{ row }">
|
|
|
<span>{{ }}</span>
|
|
|
</template> -->
|
|
|
</el-table-column>
|
|
|
- <el-table-column align="center" width="100" prop="workTypeName" label="工种" />
|
|
|
- <el-table-column align="center" prop="articleName" label="关联报修类型" width="200" show-overflow-tooltip />
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ width="100"
|
|
|
+ prop="workTypeName"
|
|
|
+ label="工种"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ prop="articleName"
|
|
|
+ label="关联报修类型"
|
|
|
+ width="200"
|
|
|
+ show-overflow-tooltip
|
|
|
+ />
|
|
|
<!-- <el-table-column align="center" prop="acceptanceTime" label="接单考核时间" /> -->
|
|
|
<!-- <el-table-column align="center" prop="maintenanceTime" label="维修考核时间" /> -->
|
|
|
- <el-table-column align="center" fixed="right" label="操作" width="150">
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ fixed="right"
|
|
|
+ label="操作"
|
|
|
+ width="150"
|
|
|
+ >
|
|
|
<template #default="scope">
|
|
|
<div class="edit">
|
|
|
<div class="look" @click="edit(scope.row)">编辑</div>
|
|
|
- <el-popconfirm width="220" confirm-button-text="确认" cancel-button-text="取消" :icon="InfoFilled"
|
|
|
- icon-color="#f89626" title="是否删除此员工?" @confirm="del(scope.row)" @cancel="cancelEvent">
|
|
|
+ <el-popconfirm
|
|
|
+ width="220"
|
|
|
+ confirm-button-text="确认"
|
|
|
+ cancel-button-text="取消"
|
|
|
+ :icon="InfoFilled"
|
|
|
+ icon-color="#f89626"
|
|
|
+ title="是否删除此员工?"
|
|
|
+ @confirm="del(scope.row)"
|
|
|
+ @cancel="cancelEvent"
|
|
|
+ >
|
|
|
<template #reference>
|
|
|
<div class="look">删除</div>
|
|
|
</template>
|
|
|
@@ -78,59 +155,151 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<!-- 添加耗材弹窗 -->
|
|
|
- <el-dialog class="addStaff" v-model="addDialogVisible" :close-on-click-modal="false"
|
|
|
- :close-on-press-escape="false" :title="dialongTitle" align-center width="700" :before-close="cancelAdd">
|
|
|
- <el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm"
|
|
|
- size="default" label-position="left" status-icon>
|
|
|
+ <el-dialog
|
|
|
+ class="addStaff"
|
|
|
+ v-model="addDialogVisible"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ :close-on-press-escape="false"
|
|
|
+ :title="dialongTitle"
|
|
|
+ align-center
|
|
|
+ width="700"
|
|
|
+ :before-close="cancelAdd"
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ ref="ruleFormRef"
|
|
|
+ :model="ruleForm"
|
|
|
+ :rules="rules"
|
|
|
+ label-width="120px"
|
|
|
+ class="demo-ruleForm"
|
|
|
+ size="default"
|
|
|
+ label-position="left"
|
|
|
+ status-icon
|
|
|
+ >
|
|
|
<el-form-item label="身份 :" prop="userzzId">
|
|
|
- <el-select v-model="ruleForm.userzzId" @change="changeUserZzid" class="m-2" placeholder="请选择身份">
|
|
|
- <el-option v-for="item in userzzIdsList" :label="item.name" :value="item.id" v-show="item.id !== 0" />
|
|
|
+ <el-select
|
|
|
+ v-model="ruleForm.userzzId"
|
|
|
+ @change="changeUserZzid"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择身份"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in userzzIdsList"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id"
|
|
|
+ v-show="item.id !== 0"
|
|
|
+ />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="姓名 :" prop="userName">
|
|
|
- <el-input v-model="ruleForm.userName" placeholder="请输入姓名" clearable />
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.userName"
|
|
|
+ placeholder="请输入姓名"
|
|
|
+ clearable
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="维修班 :" prop="teamId">
|
|
|
- <el-select v-model="ruleForm.teamId" class="m-2" placeholder="请选择维修班">
|
|
|
+ <el-select
|
|
|
+ v-model="ruleForm.teamId"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择维修班"
|
|
|
+ >
|
|
|
<el-option label="校方人员" :value="0" />
|
|
|
<el-option label="第三方人员" :value="1" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="微校卡号 :" prop="cardNumber" v-if="dialongTitle == '添加员工' && ruleForm.userzzId != 4">
|
|
|
- <el-input v-model="ruleForm.cardNumber" placeholder="请输入微校卡号" clearable />
|
|
|
+ <el-form-item
|
|
|
+ label="微校卡号 :"
|
|
|
+ prop="cardNumber"
|
|
|
+ v-if="dialongTitle == '添加员工' && ruleForm.userzzId != 4"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.cardNumber"
|
|
|
+ placeholder="请输入微校卡号"
|
|
|
+ clearable
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="微校卡号 :" prop="cardNumber" v-if="dialongTitle == '编辑员工' && ruleForm.userzzId != 4">
|
|
|
- <el-input v-model="ruleForm.cardNumber" disabled placeholder="请输入微校卡号" clearable />
|
|
|
+ <el-form-item
|
|
|
+ label="微校卡号 :"
|
|
|
+ prop="cardNumber"
|
|
|
+ v-if="dialongTitle == '编辑员工' && ruleForm.userzzId != 4"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.cardNumber"
|
|
|
+ disabled
|
|
|
+ placeholder="请输入微校卡号"
|
|
|
+ clearable
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="手机号码 :" prop="userPhone" v-if="ruleForm.userzzId != 4">
|
|
|
- <el-input v-model="ruleForm.userPhone" placeholder="请输入手机号码" clearable />
|
|
|
+ <el-form-item
|
|
|
+ label="手机号码 :"
|
|
|
+ prop="userPhone"
|
|
|
+ v-if="ruleForm.userzzId != 4"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.userPhone"
|
|
|
+ placeholder="请输入手机号码"
|
|
|
+ clearable
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="校区 :" prop="schoolId">
|
|
|
- <el-select v-model="ruleForm.schoolId" class="m-2" placeholder="请选择校区" @change="changeSchool">
|
|
|
+ <el-select
|
|
|
+ v-model="ruleForm.schoolId"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择校区"
|
|
|
+ @change="changeSchool"
|
|
|
+ >
|
|
|
<el-option label="黄家湖校区" :value="1" />
|
|
|
<el-option label="墨轩湖校区" :value="2" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="工种 :">
|
|
|
- <el-select v-model="ruleForm.workType" clearable class="m-2" placeholder="请选择工种">
|
|
|
- <el-option v-for="item in workTypeList" :label="item.name" :value="item.id" />
|
|
|
+ <el-select
|
|
|
+ v-model="ruleForm.workType"
|
|
|
+ clearable
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择工种"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in workTypeList"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id"
|
|
|
+ />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="关联报修类型 :" prop="articleBuilds" class="checkbox" v-if="ruleForm.userzzId != 4">
|
|
|
+ <el-form-item
|
|
|
+ label="关联报修类型 :"
|
|
|
+ prop="articleBuilds"
|
|
|
+ class="checkbox"
|
|
|
+ v-if="ruleForm.userzzId != 4"
|
|
|
+ >
|
|
|
<div class="type">
|
|
|
<div class="articleType">
|
|
|
<div class="articleTitle">关联种类</div>
|
|
|
<!-- <el-checkbox v-model="articleAll" :indeterminate="articleIndeterminate"
|
|
|
@change="articleAllChange">全选</el-checkbox> -->
|
|
|
- <el-tree :data="articleIdsList" @node-click="articleNodeClick"
|
|
|
- :props="{ label: 'name', children: 'children', value: 'id' }" node-key="id" show-checkbox
|
|
|
- ref="articleIdsRef" @check-change="handleArticleIds">
|
|
|
+ <el-tree
|
|
|
+ :data="articleIdsList"
|
|
|
+ @node-click="articleNodeClick"
|
|
|
+ :props="{
|
|
|
+ label: 'name',
|
|
|
+ children: 'children',
|
|
|
+ value: 'id',
|
|
|
+ }"
|
|
|
+ node-key="id"
|
|
|
+ show-checkbox
|
|
|
+ ref="articleIdsRef"
|
|
|
+ @check-change="handleArticleIds"
|
|
|
+ >
|
|
|
<template #default="{ node, data }">
|
|
|
<div class="custom-tree-node">
|
|
|
<span>{{ data.name }}</span>
|
|
|
- <img v-if="data.id == clickArticleSel.id" src="../../assets/fixed.png" alt="">
|
|
|
- <img v-else src="" alt="">
|
|
|
+ <img
|
|
|
+ v-if="data.id == clickArticleSel.id"
|
|
|
+ src="../../assets/fixed.png"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <img v-else src="" alt="" />
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-tree>
|
|
|
@@ -141,8 +310,18 @@
|
|
|
<!-- <el-checkbox v-model="buildAll" :indeterminate="buildIndeterminate"
|
|
|
@change="buildAllChange">全选</el-checkbox> -->
|
|
|
</div>
|
|
|
- <el-tree :data="treeValue.list" :props="{ label: 'name', children: 'children', value: 'id' }"
|
|
|
- node-key="id" show-checkbox ref="buildIdsRef" @check-change="handleCheckChange" />
|
|
|
+ <el-tree
|
|
|
+ :data="treeValue.list"
|
|
|
+ :props="{
|
|
|
+ label: 'name',
|
|
|
+ children: 'children',
|
|
|
+ value: 'id',
|
|
|
+ }"
|
|
|
+ node-key="id"
|
|
|
+ show-checkbox
|
|
|
+ ref="buildIdsRef"
|
|
|
+ @check-change="handleCheckChange"
|
|
|
+ />
|
|
|
</div>
|
|
|
</div>
|
|
|
<!-- <div class="type" v-if="ruleForm.schoolId == 2">
|
|
|
@@ -179,22 +358,44 @@
|
|
|
</el-form-item> -->
|
|
|
<el-form-item label="接单考核时间 :" v-if="ruleForm.userzzId != 4">
|
|
|
<div class="kaohe">
|
|
|
- <el-input v-model="ruleForm.acceptanceTime" :clearable="false" placeholder="考核时间" style="width: 150px">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.acceptanceTime"
|
|
|
+ :clearable="false"
|
|
|
+ placeholder="考核时间"
|
|
|
+ style="width: 150px"
|
|
|
+ >
|
|
|
<template #suffix>
|
|
|
- <img src="@/assets/timer.png" alt="" style="width: 15px; height: 15px" />
|
|
|
+ <img
|
|
|
+ src="@/assets/timer.png"
|
|
|
+ alt=""
|
|
|
+ style="width: 15px; height: 15px"
|
|
|
+ />
|
|
|
</template>
|
|
|
</el-input>
|
|
|
<span style="margin-left: 5px">分钟</span>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
- <el-form-item style="
|
|
|
+ <el-form-item
|
|
|
+ style="
|
|
|
padding-bottom: 40px;
|
|
|
border-bottom: 1px solid rgba(230, 230, 230, 1);
|
|
|
- " label="维修考核时间 :" v-if="ruleForm.userzzId != 4">
|
|
|
+ "
|
|
|
+ label="维修考核时间 :"
|
|
|
+ v-if="ruleForm.userzzId != 4"
|
|
|
+ >
|
|
|
<div class="kaohe">
|
|
|
- <el-input v-model="ruleForm.maintenanceTime" :clearable="false" placeholder="考核时间" style="width: 150px">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.maintenanceTime"
|
|
|
+ :clearable="false"
|
|
|
+ placeholder="考核时间"
|
|
|
+ style="width: 150px"
|
|
|
+ >
|
|
|
<template #suffix>
|
|
|
- <img src="@/assets/timer.png" alt="" style="width: 15px; height: 15px" />
|
|
|
+ <img
|
|
|
+ src="@/assets/timer.png"
|
|
|
+ alt=""
|
|
|
+ style="width: 15px; height: 15px"
|
|
|
+ />
|
|
|
</template>
|
|
|
</el-input>
|
|
|
<span style="margin-left: 5px">分钟</span>
|
|
|
@@ -202,7 +403,12 @@
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item class="options">
|
|
|
- <el-button color="rgba(111, 182, 184, 1)" class="queding" type="primary" @click="submitAdd(ruleFormRef)">
|
|
|
+ <el-button
|
|
|
+ color="rgba(111, 182, 184, 1)"
|
|
|
+ class="queding"
|
|
|
+ type="primary"
|
|
|
+ @click="submitAdd(ruleFormRef)"
|
|
|
+ >
|
|
|
确定
|
|
|
</el-button>
|
|
|
<el-button @click="cancelAdd(ruleFormRef)">取消</el-button>
|
|
|
@@ -214,8 +420,14 @@
|
|
|
<!-- 分页组件 -->
|
|
|
<div class="pageSize">
|
|
|
<span></span>
|
|
|
- <el-pagination background :current-page="currentPage" :page-size="pageSize"
|
|
|
- layout="total, prev, pager, next, jumper, slot" :total="total" @update:current-page="handleCurrentChange" />
|
|
|
+ <el-pagination
|
|
|
+ background
|
|
|
+ :current-page="currentPage"
|
|
|
+ :page-size="pageSize"
|
|
|
+ layout="total, prev, pager, next, jumper, slot"
|
|
|
+ :total="total"
|
|
|
+ @update:current-page="handleCurrentChange"
|
|
|
+ />
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -249,7 +461,6 @@ const articleIdsList = ref(); // 关联种类 类型数据
|
|
|
const articleIdsListM = ref(); // 关联种类 类型数据
|
|
|
const articleIdsListH = ref(); // 关联种类 类型数据
|
|
|
|
|
|
-
|
|
|
// 楼栋选择框数据
|
|
|
const buildAll = ref(false); // 判断楼栋 是否全选
|
|
|
const buildIndeterminate = ref(false); // 不确定状态,表示只选择一部分
|
|
|
@@ -263,7 +474,6 @@ const userzzIdsList = ref(); // 身份下拉数据
|
|
|
const workTypeList = ref(); // 工种下拉数据
|
|
|
const props = reactive();
|
|
|
|
|
|
-
|
|
|
const searchInput = reactive({
|
|
|
keyWord: "",
|
|
|
teamId: "",
|
|
|
@@ -297,21 +507,22 @@ const ruleForm = reactive({
|
|
|
maintenanceTime: "",
|
|
|
id: "",
|
|
|
});
|
|
|
-const articleBuilds = reactive({ list: [] }) // 选中的种类和楼栋组合数据
|
|
|
+const articleBuilds = reactive({ list: [] }); // 选中的种类和楼栋组合数据
|
|
|
const clickArticleSel = reactive({
|
|
|
- id: "", name: ""
|
|
|
+ id: "",
|
|
|
+ name: "",
|
|
|
}); // 点击的那个种类
|
|
|
|
|
|
// 关联报修类型验证
|
|
|
const articleBuildRule = (rule, value, callback) => {
|
|
|
console.log(rule, value);
|
|
|
- let sum = 0
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ let sum = 0;
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
if (item.article.flag) {
|
|
|
- sum = item.build.length + sum
|
|
|
+ sum = item.build.length + sum;
|
|
|
console.log(sum);
|
|
|
}
|
|
|
- }, 0)
|
|
|
+ }, 0);
|
|
|
// console.log(sum);
|
|
|
if (sum) {
|
|
|
callback();
|
|
|
@@ -392,7 +603,7 @@ const getList = async () => {
|
|
|
center: true,
|
|
|
});
|
|
|
if (res.data.code == 570) {
|
|
|
- sessionStorage.removeItem("token")
|
|
|
+ sessionStorage.removeItem("token");
|
|
|
router.push({
|
|
|
path: `/login`,
|
|
|
});
|
|
|
@@ -450,19 +661,19 @@ const searchBtn = lodash.debounce(async () => {
|
|
|
|
|
|
// 切换身份时将种类和楼栋全部置空
|
|
|
const changeUserZzid = (val) => {
|
|
|
- clickArticleSel.id = ""
|
|
|
- clickArticleSel.name = ""
|
|
|
+ clickArticleSel.id = "";
|
|
|
+ clickArticleSel.name = "";
|
|
|
if (articleBuilds.list) {
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
item.article.flag = false;
|
|
|
- item.build = []
|
|
|
- })
|
|
|
+ item.build = [];
|
|
|
+ });
|
|
|
}
|
|
|
nextTick(() => {
|
|
|
articleIdsRef.value.setCheckedKeys([]);
|
|
|
buildIdsRef.value.setCheckedKeys([]);
|
|
|
});
|
|
|
-}
|
|
|
+};
|
|
|
|
|
|
// 改变校区 关联楼栋和关联报修类型也改变(---------------)
|
|
|
const changeSchool = async (val) => {
|
|
|
@@ -510,20 +721,18 @@ const changeSchool = async (val) => {
|
|
|
console.log(res, "关联楼栋数据");
|
|
|
treeValue.list = res.data.data;
|
|
|
|
|
|
- articleBuilds.list = []
|
|
|
- articleIdsList.value.forEach(item => {
|
|
|
+ articleBuilds.list = [];
|
|
|
+ articleIdsList.value.forEach((item) => {
|
|
|
articleBuilds.list.push({
|
|
|
article: { id: item.id, name: item.name, flag: false },
|
|
|
build: [],
|
|
|
- id: ""
|
|
|
- })
|
|
|
- })
|
|
|
+ id: "",
|
|
|
+ });
|
|
|
+ });
|
|
|
console.log(articleBuilds.list, "整理的树形数据");
|
|
|
- resolve('success')
|
|
|
+ resolve("success");
|
|
|
console.log("1111111111111111111111111111111");
|
|
|
-
|
|
|
});
|
|
|
-
|
|
|
};
|
|
|
|
|
|
//新增员工 (--------------------------------------)
|
|
|
@@ -542,10 +751,10 @@ const addlist = async () => {
|
|
|
ruleForm.maintenanceTime = "";
|
|
|
ruleForm.schoolId = 1;
|
|
|
ruleForm.id = "";
|
|
|
- clickArticleSel.id = ""
|
|
|
- clickArticleSel.name = ""
|
|
|
+ clickArticleSel.id = "";
|
|
|
+ clickArticleSel.name = "";
|
|
|
|
|
|
- changeSchool(1)
|
|
|
+ changeSchool(1);
|
|
|
|
|
|
nextTick(() => {
|
|
|
articleIdsRef.value.setCheckedKeys([]);
|
|
|
@@ -589,8 +798,8 @@ const handleArticleIds = (data, checked, indeterminate) => {
|
|
|
// clickArticleSel.name = data.name
|
|
|
// clickArticleSel.id = data.id
|
|
|
// }
|
|
|
- clickArticleSel.name = data.name
|
|
|
- clickArticleSel.id = data.id
|
|
|
+ clickArticleSel.name = data.name;
|
|
|
+ clickArticleSel.id = data.id;
|
|
|
|
|
|
let keys = articleIdsRef.value.getCheckedKeys();
|
|
|
console.log(keys);
|
|
|
@@ -607,17 +816,17 @@ const handleArticleIds = (data, checked, indeterminate) => {
|
|
|
// }
|
|
|
|
|
|
// 判断是否勾选时赋值
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
- // console.log(item);
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
+ console.log(item);
|
|
|
|
|
|
if (item.article.id == data.id) {
|
|
|
- item.article.flag = checked
|
|
|
+ item.article.flag = checked;
|
|
|
// if (item.article.flag) {
|
|
|
// buildIdsRef.value.setCheckedKeys(item.build);
|
|
|
// }
|
|
|
buildIdsRef.value.setCheckedKeys(item.build);
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
|
|
|
console.log(articleBuilds.list);
|
|
|
// ruleForm.articleIds = keys;
|
|
|
@@ -629,11 +838,11 @@ const articleNodeClick = (data, node, component) => {
|
|
|
// * @param {*} data 该节点所对应的对象
|
|
|
// * @param {*} node 节点对应的 Node
|
|
|
// * @param {*} component 节点组件本身
|
|
|
- console.log('子组件触发 node-click 事件', data, node, component);
|
|
|
+ console.log("子组件触发 node-click 事件", data, node, component);
|
|
|
// 判断是否击
|
|
|
- clickArticleSel.name = data.name
|
|
|
- clickArticleSel.id = data.id
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ clickArticleSel.name = data.name;
|
|
|
+ clickArticleSel.id = data.id;
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
// console.log(item);
|
|
|
|
|
|
if (item.article.id == data.id) {
|
|
|
@@ -643,8 +852,8 @@ const articleNodeClick = (data, node, component) => {
|
|
|
// }
|
|
|
buildIdsRef.value.setCheckedKeys(item.build);
|
|
|
}
|
|
|
- })
|
|
|
-}
|
|
|
+ });
|
|
|
+};
|
|
|
|
|
|
// 关联楼栋 当复选框被勾选的时候触发
|
|
|
const handleCheckChange = (data, checked, indeterminate) => {
|
|
|
@@ -674,11 +883,11 @@ const handleCheckChange = (data, checked, indeterminate) => {
|
|
|
arr.push(item.id);
|
|
|
}
|
|
|
});
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
if (item.article.id == clickArticleSel.id) {
|
|
|
- item.build = arr
|
|
|
+ item.build = arr;
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
console.log(articleBuilds.list);
|
|
|
};
|
|
|
|
|
|
@@ -689,18 +898,18 @@ const buildAllChange = (val) => {
|
|
|
|
|
|
nextTick(() => {
|
|
|
if (val) {
|
|
|
- let buildIds = []
|
|
|
- treeValue.list.forEach(item => {
|
|
|
- item.children.forEach(i => {
|
|
|
- buildIds.push(i.id)
|
|
|
- })
|
|
|
- })
|
|
|
+ let buildIds = [];
|
|
|
+ treeValue.list.forEach((item) => {
|
|
|
+ item.children.forEach((i) => {
|
|
|
+ buildIds.push(i.id);
|
|
|
+ });
|
|
|
+ });
|
|
|
buildIdsRef.value.setCheckedKeys(buildIds);
|
|
|
} else {
|
|
|
buildIdsRef.value.setCheckedKeys([]);
|
|
|
}
|
|
|
- })
|
|
|
-}
|
|
|
+ });
|
|
|
+};
|
|
|
|
|
|
//编辑按钮 (-------------------------------------------)
|
|
|
const edit = (row) => {
|
|
|
@@ -710,7 +919,7 @@ const edit = (row) => {
|
|
|
clickArticleSel.id = "";
|
|
|
clickArticleSel.name = "";
|
|
|
|
|
|
- changeSchool(row.schoolId).then(res => {
|
|
|
+ changeSchool(row.schoolId).then((res) => {
|
|
|
if (row.userZzid == 4) {
|
|
|
ruleForm.userName = row.userName;
|
|
|
ruleForm.userzzId = row.userZzid;
|
|
|
@@ -718,6 +927,8 @@ const edit = (row) => {
|
|
|
ruleForm.teamId = row.teamId;
|
|
|
ruleForm.schoolId = row.schoolId;
|
|
|
ruleForm.id = row.id;
|
|
|
+ ruleForm.cardNumber = row.cardNumber;
|
|
|
+ ruleForm.userPhone = row.userPhone;
|
|
|
} else {
|
|
|
ruleForm.userName = row.userName;
|
|
|
ruleForm.cardNumber = row.cardNumber;
|
|
|
@@ -730,19 +941,19 @@ const edit = (row) => {
|
|
|
ruleForm.maintenanceTime = row.maintenanceTime;
|
|
|
ruleForm.id = row.id;
|
|
|
|
|
|
- let articleArr = []
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
- row.articleBuilds.forEach(i => {
|
|
|
+ let articleArr = [];
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
+ row.articleBuilds.forEach((i) => {
|
|
|
if (item.article.id == i.articleId) {
|
|
|
console.log(item);
|
|
|
|
|
|
- articleArr.push(i.articleId)
|
|
|
+ articleArr.push(i.articleId);
|
|
|
item.article.flag = true;
|
|
|
item.id = i.id;
|
|
|
item.build = i.buildIds;
|
|
|
}
|
|
|
- })
|
|
|
- })
|
|
|
+ });
|
|
|
+ });
|
|
|
console.log(articleArr);
|
|
|
|
|
|
nextTick(() => {
|
|
|
@@ -752,7 +963,7 @@ const edit = (row) => {
|
|
|
// ruleForm.articleIds = row.articleIds;
|
|
|
// ruleForm.buildIds = row.buildIds;
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
console.log(row);
|
|
|
// console.log(row.articleIds, row.buildIds);
|
|
|
|
|
|
@@ -767,7 +978,6 @@ const edit = (row) => {
|
|
|
// articleAll.value = false
|
|
|
// articleIndeterminate.value = false;
|
|
|
// }
|
|
|
-
|
|
|
};
|
|
|
// 取消添加员工
|
|
|
const cancelAdd = () => {
|
|
|
@@ -787,25 +997,25 @@ const submitAdd = async (formEl) => {
|
|
|
if (valid) {
|
|
|
if (dialongTitle.value == "添加员工") {
|
|
|
// 如果身份为 线下人员(4),做出以下判断
|
|
|
- let data = {}
|
|
|
+ let data = {};
|
|
|
if (ruleForm.userzzId == 4) {
|
|
|
data = {
|
|
|
userName: ruleForm.userName, // 名字
|
|
|
userZzid: ruleForm.userzzId, // 身份Id
|
|
|
schoolId: ruleForm.schoolId, // 校区Id
|
|
|
workType: ruleForm.workType, // 工作Id
|
|
|
- teamId: ruleForm.teamId // 维修班Id
|
|
|
- }
|
|
|
+ teamId: ruleForm.teamId, // 维修班Id
|
|
|
+ };
|
|
|
} else {
|
|
|
- let arr = []
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ let arr = [];
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
if (item.article.flag && item.build.length != 0) {
|
|
|
arr.push({
|
|
|
articleId: item.article.id,
|
|
|
- buildIds: item.build
|
|
|
- })
|
|
|
+ buildIds: item.build,
|
|
|
+ });
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
data = {
|
|
|
userName: ruleForm.userName,
|
|
|
cardNumber: ruleForm.cardNumber,
|
|
|
@@ -818,7 +1028,7 @@ const submitAdd = async (formEl) => {
|
|
|
// buildIds: ruleForm.buildIds,
|
|
|
acceptanceAssessTime: ruleForm.acceptanceTime,
|
|
|
maintenanceAssessTime: ruleForm.maintenanceTime,
|
|
|
- articleBuilds: arr
|
|
|
+ articleBuilds: arr,
|
|
|
};
|
|
|
}
|
|
|
console.log(data, "添加员工数据");
|
|
|
@@ -859,27 +1069,27 @@ const submitAdd = async (formEl) => {
|
|
|
}
|
|
|
} else {
|
|
|
// 如果身份为 线下人员(4),做出以下判断
|
|
|
- let data = {}
|
|
|
+ let data = {};
|
|
|
if (ruleForm.userzzId == 4) {
|
|
|
data = {
|
|
|
userName: ruleForm.userName, // 名字
|
|
|
userZzid: ruleForm.userzzId, // 身份Id
|
|
|
schoolId: ruleForm.schoolId, // 校区Id
|
|
|
workType: ruleForm.workType, // 工作Id
|
|
|
- teamId: ruleForm.teamId, // 维修班Id
|
|
|
- id: ruleForm.id // 数据ID
|
|
|
- }
|
|
|
+ teamId: ruleForm.teamId, // 维修班Id
|
|
|
+ id: ruleForm.id, // 数据ID
|
|
|
+ };
|
|
|
} else {
|
|
|
- let arr = []
|
|
|
- articleBuilds.list.forEach(item => {
|
|
|
+ let arr = [];
|
|
|
+ articleBuilds.list.forEach((item) => {
|
|
|
if (item.article.flag && item.build.length != 0) {
|
|
|
arr.push({
|
|
|
articleId: item.article.id,
|
|
|
buildIds: item.build,
|
|
|
- id: item.id
|
|
|
- })
|
|
|
+ id: item.id,
|
|
|
+ });
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
data = {
|
|
|
userName: ruleForm.userName,
|
|
|
cardNumber: ruleForm.cardNumber,
|
|
|
@@ -893,7 +1103,7 @@ const submitAdd = async (formEl) => {
|
|
|
acceptanceAssessTime: ruleForm.acceptanceTime,
|
|
|
maintenanceAssessTime: ruleForm.maintenanceTime,
|
|
|
id: ruleForm.id,
|
|
|
- articleBuilds: arr
|
|
|
+ articleBuilds: arr,
|
|
|
};
|
|
|
}
|
|
|
console.log(data, "修改员工数据");
|
|
|
@@ -1276,9 +1486,6 @@ onUnmounted(() => {
|
|
|
|
|
|
// 关联报修类型样式(-----------------)
|
|
|
.checkbox {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
.el-form-item__content {
|
|
|
// width: 200px;
|
|
|
// display: flex;
|
|
|
@@ -1321,9 +1528,6 @@ onUnmounted(() => {
|
|
|
.articleTitle {
|
|
|
font-weight: 600;
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -1353,7 +1557,6 @@ onUnmounted(() => {
|
|
|
}
|
|
|
|
|
|
.el-pagination {
|
|
|
-
|
|
|
// width: 1600px;
|
|
|
:deep(.el-pagination__total) {
|
|
|
color: #000;
|