选人调整。样式调整

v1.2.0
‘wangjiuyun 2025-01-10 11:55:36 +08:00
parent 829acc5857
commit 3a7e373394
5 changed files with 84 additions and 54 deletions

View File

@ -13,12 +13,14 @@
:row-key="rowKey"
:height="tableHeight"
@select="selected"
@select-all="selectAll"
>
<el-table-column
reserve-selection
v-if="showSelection"
type="selection"
width="55"
:selectable="selectable"
/>
<el-table-column v-if="showIndex" type="index" width="50" label="序号" />
<template>
@ -154,6 +156,10 @@ export default {
type: String,
default: "100%",
},
selectable:{
type: Function,
default: ()=>true,
}
},
data() {
return {
@ -192,6 +198,9 @@ export default {
selected(arr, row) {
this.$emit("selected", { arr, row });
},
selectAll(arr) {
this.$emit("selectAll", arr);
},
},
updated() {
if (this.$refs.elTableRef && this.$refs.elTableRef.doLayout) {

View File

@ -24,10 +24,12 @@
:show-index="true"
:table-height="tableHeight"
:multiSelect="multiSelect"
:selectable="selectable"
@selection-change="handleSelectionChange"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
@selected="selectRow"
@selectAll="selectAll"
rowKey="userId"
:rowClick="
(row) => {
@ -95,6 +97,10 @@ export default {
type: Boolean,
default: true,
},
selectable: {
type: Function,
default: () => true,
},
},
data() {
return {
@ -126,6 +132,7 @@ export default {
],
userData: [],
isInternalChange: false,
selectAllData: [],
};
},
emits: ["close", "confirm"],
@ -151,9 +158,9 @@ export default {
else
this.$emit(
"confirm",
this.currentSelectedUser.map((ele, index) => ({
userId: ele,
nickName: this.currentSelectedUserName[index],
this.selectedUsers.map((ele, index) => ({
userId: ele.userId,
nickName: ele.nickName,
}))
);
@ -175,32 +182,37 @@ export default {
this.isInternalChange = false;
});
} else {
this.selectedUsers = val;
// this.selectedUsers = val;
}
},
selectRow({ arr, row }) {
if (
this.currentSelectedUser.filter((ele) => ele.userId == row.userId)
.length
) {
this.currentSelectedUser = this.currentSelectedUser.filter(
(ele) => ele != row.userId
if (!row) return;
if (this.selectedUsers.filter((ele) => ele.userId == row.userId).length) {
this.selectedUsers = this.selectedUsers.filter(
(ele) => ele.userId != row.userId
);
} else {
this.currentSelectedUser.push(row.userId);
this.selectedUsers.push({ userId: row.userId, nickName: row.nickName });
}
if (
this.currentSelectedUserName.filter((ele) => ele == row.nickName).length
) {
this.currentSelectedUserName = this.currentSelectedUserName.filter(
(ele) => ele != row.nickName
);
} else {
this.currentSelectedUserName.push(row.nickName);
}
console.log(this.currentSelectedUserName,22);
},
selectAll(arr) {
let filterArr = this.selectAllData.filter((ele) =>
!arr.some((item) => item.userId == ele.userId)
);
console.log(filterArr,11);
arr.forEach((ele) => {
if (
!this.selectedUsers.filter((item) => item.userId == ele.userId).length
)
this.selectRow({ row: ele });
});
filterArr.forEach((ele) => {
this.selectRow({ row: ele});
});
},
fetchUserList: async function () {
const response = await systemApi.getUserList({
@ -227,28 +239,6 @@ export default {
},
},
watch: {
// currentSelectedUser: {
// handler(newVal) {
// this.isInternalChange = true;
// this.$nextTick(() => {
// this.selectedUsers = newVal;
// if (this.$refs.customTableRef) {
// this.$refs.customTableRef.clearSelection();
// newVal.forEach((user) => {
// const row = this.userData.find(
// (item) => item.userId === user.userId
// );
// if (row) {
// this.$refs.customTableRef.toggleRowSelection(row, true);
// }
// });
// }
// this.isInternalChange = false;
// });
// },
// immediate: true,
// deep: true,
// },
currentSelectedUser: {
handler(newVal) {
this.$nextTick(() => {
@ -263,16 +253,23 @@ export default {
this.selectedUsers = [];
this.$refs.customTableRef?.setCurrentRow();
}
} else {
} else {
if (!newVal.length) {
this.selectedUsers = [];
this.$refs.customTableRef?.clearSelection();
} else {
// this.$refs.customTableRef?.clearSelection();
newVal.forEach((item) => {
this.selectedUsers = [];
newVal.forEach((item, index) => {
this.selectedUsers.push({
userId: item,
nickName: this.currentSelectedUserName[index],
});
let row = this.userData.find((ele) => ele.userId == item);
if (row)
if (row) {
this.selectAllData.push(row);
this.$refs.customTableRef?.toggleRowSelection(row, true);
}
});
}
}
@ -293,9 +290,14 @@ export default {
this.$refs.customTableRef?.setCurrentRow(row);
}
} else {
this.selectAllData = [];
this.currentSelectedUser.forEach((item) => {
let row = newVal.find((ele) => ele.userId == item);
if (row) this.$refs.customTableRef?.toggleRowSelection(row, true);
if (row) {
this.selectAllData.push(row);
this.$refs.customTableRef?.toggleRowSelection(row, true);
}
});
}
});

View File

@ -122,7 +122,7 @@
</div>
</template>
</el-table-column>
<el-table-column label="自评总结" prop="score" v-if="isNormal" width="150">
<el-table-column class-name="editCell" label="自评总结" prop="score" v-if="isNormal" minWidth="140">
<template slot-scope="scope">
<div>
<el-button
@ -211,11 +211,11 @@ export default {
remark: "",
isEdit: "",
headers: [
{ label: "考核项", prop: "reviewItem", minWidth: 200 },
{ label: "考核项", prop: "reviewItem", minWidth: 150 },
{
label: "评分标准",
prop: "remarks",
minWidth: 300,
minWidth:this.$route.query.isNormal? 240:360,
},
],
//
@ -521,13 +521,24 @@ export default {
font-weight: 700;
color: #ff7d00;
}
::v-deep .sorceTableCell .cell {
::v-deep .el-table__body .sorceTableCell .cell {
margin-bottom: 20px;
}
::v-deep .sorceTableCell.el-table__cell{
padding-right: 10px !important;
}
::v-deep .el-table__body .el-table__cell {
padding: 20px 40px;
}
::v-deep .el-table__header .el-table__cell {
padding: 14px 30px;
}
::v-deep .el-table__header .el-table__cell .cell{
padding-left: 20px !important;
}
::v-deep .editCell{
padding-right: 20px !important;
}
</style>

View File

@ -92,6 +92,7 @@
:currentSelectedUserName="currentSelectedUserName"
:showSelection="true"
:highligt="false"
:selectable="selectable"
ref="selectUserRef"
@confirm="handleUserConfirm"
@close="handleUserClose"
@ -681,8 +682,14 @@ export default {
);
});
});
console.log(this.scoreList, 11);
},
selectable(row,index){
if(row.roles.find((ele)=>ele.roleName=='普通员工')){
return true
}else{
return false
}
}
},
mounted() {
this.getTaskList();

View File

@ -249,10 +249,11 @@ export default {
this.logData.map((item) => {
var ele = document.getElementById(item.date.split(" ")[0]);
if (ele) {
if (item.state == -1) {
ele.style = "background:#ecf5ff";
} else if (item.state == 0) {
} else if (item.state == 0||item.state == 1) {
ele.style = `background:linear-gradient(to right, #409eff ${
(item.workTime || 1) * 100
}% , #ecf5ff ${(item.workTime || 1) * 100}%);color:${