fix: rpj_show选择证书不显示的bug

This commit is contained in:
caoqianming 2024-02-27 15:20:15 +08:00
parent 6e7b2a9f57
commit f0b16b601c
1 changed files with 97 additions and 124 deletions

View File

@ -14,8 +14,7 @@
<el-descriptions-item label="所属部门:">{{ form.belong_dept_name }}</el-descriptions-item>
<el-descriptions-item label="相关方:">{{ form.rparty_name }}</el-descriptions-item>
</el-descriptions>
<el-button type="primary" size="small"
v-if="form.state==30||form.state==40"
<el-button type="primary" size="small" v-if="form.state == 30 || form.state == 40"
@click="addWorker('add')">添加成员
</el-button>
</el-card>
@ -49,7 +48,8 @@
<el-table-column label="工作职责" prop="duty" width="100"></el-table-column>
<el-table-column label="证书" prop="rcertificates">
<template #default="scope">
<span v-for="cer in scope.row.rcertificates_" :key="cer.id">{{cer.name}}-{{cer.number}}/</span>
<span v-for="cer in scope.row.rcertificates_"
:key="cer.id">{{ cer.name }}-{{ cer.number }}/</span>
</template>
</el-table-column>
<el-table-column label="负责人" prop="is_manager" width="80">
@ -61,15 +61,14 @@
<el-table-column label="备注" prop="note" width="100"></el-table-column>
<el-table-column label="操作" width="150">
<template #default="scope">
<el-button link type="primary" size="small"
v-if="form.state!==50&&form.state!==60"
@click="addWorker('edit',scope.row)" v-auth="'blt_bind.create'">编辑
<el-button link type="primary" size="small" v-if="form.state !== 50 && form.state !== 60"
@click="addWorker('edit', scope.row)" v-auth="'blt_bind.create'">编辑
</el-button>
<el-button link v-if="scope.row.blt_ == null&&(form.state==30||form.state==40)" type="primary" size="small"
@click="bindCard(scope.row, 10)" v-auth="'blt_bind.create'">绑卡
<el-button link v-if="scope.row.blt_ == null && (form.state == 30 || form.state == 40)"
type="primary" size="small" @click="bindCard(scope.row, 10)"
v-auth="'blt_bind.create'">绑卡
</el-button>
<el-button link type="warning" size="small"
v-if="form.state==30||form.state==40"
<el-button link type="warning" size="small" v-if="form.state == 30 || form.state == 40"
@click="leaveDialog(scope.row)">提前离厂
</el-button>
</template>
@ -100,13 +99,9 @@
</el-card>
</el-main>
<ScBind v-model="showBindBlt" :bindBtl="bindBtl" :bindType="bindType" :bindName="bindName"
:bindEmployee="bindEmployee" @success="showBindBltSuccess" @closed="showBindBltClose"
></ScBind>
<el-dialog title="提前离厂" v-model="leaveVisible" width="30%" >
<el-form
ref="dialogForm"
label-width="80px"
>
:bindEmployee="bindEmployee" @success="showBindBltSuccess" @closed="showBindBltClose"></ScBind>
<el-dialog title="提前离厂" v-model="leaveVisible" width="30%">
<el-form ref="dialogForm" label-width="80px">
<el-form-item label="离厂原因">
<el-input v-model="reason" type="text" clearable></el-input>
</el-form-item>
@ -119,75 +114,52 @@
<!-- 人员添加编辑 -->
<el-dialog v-model="workerVisible" :title="workDialogTitle">
<el-form ref="workerForm" :model="formworker" label-width="120px">
<el-row>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="项目成员">
<el-select
v-if="workDialogType=='add'"
v-model="formworker.remployee"
@change="selectWorker"
filterable
placeholder="选择项目成员"
>
<el-option
v-for="item in remployeeoptions"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
<el-input v-else v-model="formworker.remployee_name" type="text" disabled style="width:200px"></el-input>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="是否项目负责人">
<el-radio-group v-model="formworker.is_manager" :disabled="workDialogType=='edit'">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="工作职责">
<el-input
:disabled="workDialogType=='edit'"
v-model="formworker.duty"
type="text"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="证书">
<el-select
v-model="formworker.rcertificates"
multiple
placeholder="选择证书"
>
<el-option
v-for="item in certificatesOptions"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="原因">
<el-input
:disabled="workDialogType=='edit'"
v-model="formworker.reason"
type="text"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="项目成员">
<el-select v-if="workDialogType == 'add'" v-model="formworker.remployee"
@change="selectWorker" filterable placeholder="选择项目成员">
<el-option v-for="item in remployeeoptions" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
<el-input v-else v-model="formworker.remployee_name" type="text" disabled
style="width:200px"></el-input>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="是否项目负责人">
<el-radio-group v-model="formworker.is_manager" :disabled="workDialogType == 'edit'">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="工作职责">
<el-input :disabled="workDialogType == 'edit'" v-model="formworker.duty" type="text"
clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="证书">
<el-select v-model="formworker.rcertificates" multiple placeholder="选择证书">
<el-option v-for="item in certificatesOptions" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :md="24" :sm="12" :xs="24">
<el-form-item label="原因">
<el-input :disabled="workDialogType == 'edit'" v-model="formworker.reason" type="text"
clearable></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<el-button @click="workerdialog = false"> </el-button>
<el-button type="primary" @click="submitWorker" :loading="btnloading" :disabled="btnloading"> </el-button>
<el-button type="primary" @click="submitWorker" :loading="btnloading" :disabled="btnloading">
</el-button>
</template>
</el-dialog>
</el-container>
@ -208,13 +180,14 @@ export default {
},
data() {
return {
leaveVisible:false,
workerVisible:false,
certificatesOptions: [],
leaveVisible: false,
workerVisible: false,
loading: false,
visible: false,
isSaveing: false,
showBindBlt: false,
btnloading:false,
btnloading: false,
state_: {
10: "创建中",
20: "审批中",
@ -228,7 +201,7 @@ export default {
30: "保安保洁服务",
40: "其他",
},
formworker : {
formworker: {
duty: "",
rcertificates: [],
rpj: "",
@ -238,14 +211,14 @@ export default {
bindType: 10,
bindBtl: null,
bindEmployee: '',
logLists:[],
logLists: [],
rpjFileList: [],
memeberList: [],
remployeeoptions:[],
reason:"",
leaveId:"",
workDialogType:"add",
workDialogTitle:"添加项目成员"
remployeeoptions: [],
reason: "",
leaveId: "",
workDialogType: "add",
workDialogTitle: "添加项目成员"
};
},
@ -310,7 +283,7 @@ export default {
});
},
//
getLogs(){
getLogs() {
this.$API.rpm.rpj.logs.req({ rpj: this.form.id, page: 0 }).then((res) => {
debugger;
this.logLists = res;
@ -327,16 +300,16 @@ export default {
this.$API.rpm.rcertificate.list
.req({ remployee: this.formworker.remployee, page: 0 })
.then((res) => {
this.certificatesOptions = res;
});
this.certificatesOptions = res;
});
},
addWorker(type,row){
addWorker(type, row) {
let that = this;
that.workDialogType = type;
if(type=='add'){
if (type == 'add') {
that.workDialogTitle = "添加项目成员";
that.getremployee();
}else{
} else {
that.workDialogTitle = "项目成员编辑";
that.formworker = row;
that.formworker.remployee_name = row.remployee_.name;
@ -346,32 +319,32 @@ export default {
}
that.workerVisible = true;
},
//
submitWorker() {
//
submitWorker() {
let that = this;
that.btnloading = true;
that.formworker.rpj = that.form.id;
if(that.workDialogType=="add"){
if (that.workDialogType == "add") {
that.$refs.workerForm.validate(async (valid) => {
that.$API.rpm.member.create
.req(that.formworker)
.then((res) => {
that.$message.success("项目成员添加成功");
that.workerVisible = false;
that.btnloading = false;
that.getMemberList();
})
.catch((err) => {
this.btnloading = false;
return err;
});
.req(that.formworker)
.then((res) => {
that.$message.success("项目成员添加成功");
that.workerVisible = false;
that.btnloading = false;
that.getMemberList();
})
.catch((err) => {
this.btnloading = false;
return err;
});
});
}else{
} else {
let formworker = {};
formworker.is_manager = that.formworker.is_manager;
formworker.rcertificates = that.formworker.rcertificates;
that.$API.rpm.member.update
.req(that.formworker.id,formworker)
.req(that.formworker.id, formworker)
.then((res) => {
that.$message.success("项目成员证书添加成功");
that.workerVisible = false;
@ -383,31 +356,31 @@ export default {
return err;
});
}
},
leaveDialog(row){
leaveDialog(row) {
// debugger;
this.leaveVisible = true;
this.leaveId=row.id;
this.leaveId = row.id;
console.log(this.leaveId)
},
preLeave(){
preLeave() {
// debugger;
this.btnloading = true;
if(this.reason!=''){
this.$API.rpm.member.leave.req(this.leaveId,{reason:this.reason}).then(res=>{
if (this.reason != '') {
this.$API.rpm.member.leave.req(this.leaveId, { reason: this.reason }).then(res => {
this.leaveVisible = false;
this.btnloading = false;
this.getMemberList();
this.getLogs();
}).catch(e=>{
}).catch(e => {
this.btnloading = false;
})
}else{
} else {
this.btnloading = false;
this.$message.error("请填写离厂原因");
}
},
},
};