提交代码

dev_xds
姜玉琦 2024-01-21 16:50:28 +08:00
parent c7d542a769
commit 76014fbd94
11 changed files with 332 additions and 147 deletions

View File

@ -24,7 +24,35 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="验收类型" prop="dataTypeLvl1">
<el-select
v-model="queryParams.dataTypeLvl1"
placeholder="请选择验收类型"
clearable
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl1"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="类型分类" prop="dataTypeLvl2" v-if="queryParams.dataTypeLvl1">
<el-select
v-model="queryParams.dataTypeLvl2"
placeholder="请选择验收类型分类"
clearable
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl2"
v-if="queryParams.dataTypeLvl1 == dict.raw.cssClass"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="质量专员" prop="qualityUser">
<el-input
v-model="queryParams.qualityUser"
@ -153,7 +181,8 @@
<el-table
v-loading="loading"
:data="projectCheckingList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
stripe
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
@ -181,6 +210,23 @@
></el-image>
</template>
</el-table-column>
<el-table-column
label="验收类型"
align="center"
prop="dataTypeLvl1"
show-overflow-tooltip
>
<template slot-scope="scope">
<dict-tag
:options="dict.type.project_checking_data_type_lvl1"
:value="scope.row.dataTypeLvl1"
/>
<dict-tag
:options="dict.type.project_checking_data_type_lvl2"
:value="scope.row.dataTypeLvl2"
/>
</template>
</el-table-column>
<el-table-column
label="验收工序部位"
align="center"
@ -241,7 +287,10 @@
</el-table-column> -->
<el-table-column label="审批状态" align="center" prop="approveStatus" width="120">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
<dict-tag
:options="dict.type.project_check_status"
:value="scope.row.approveStatus"
/>
</template>
</el-table-column>
<el-table-column label="数据状态" align="center" prop="isDel">
@ -249,13 +298,6 @@
<dict-tag :options="dict.type.sys_common_isdel" :value="scope.row.isDel" />
</template>
</el-table-column>
<el-table-column
label="备注"
align="center"
prop="remark"
width="100"
show-overflow-tooltip
/>
<el-table-column
label="操作"
align="center"
@ -291,7 +333,7 @@
>处理审批</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
v-if="findUpdateData(scope.row.approveStatus)"
size="mini"
type="text"
icon="el-icon-edit"
@ -300,7 +342,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -321,10 +363,46 @@
/>
<!-- 添加或修改项目验收对话框 -->
<el-dialog :title="title" :visible.sync="open" width="780px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
<el-dialog
:title="title"
:visible.sync="open"
width="780px"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="验收图片" prop="imageUrls">
<image-upload v-model="form.imageUrls" :limit="9" />
<image-upload v-model="form.dataTypeLvl1" :limit="9" />
</el-form-item>
<el-form-item label="验收类型" prop="dataTypeLvl1">
<el-select
v-model="form.dataTypeLvl1"
placeholder="请选择验收类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl1"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="类型分类" prop="dataTypeLvl2" v-if="form.dataTypeLvl1">
<el-select
v-model="form.dataTypeLvl2"
placeholder="请选择类型分类"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl2"
v-if="form.dataTypeLvl1 == dict.raw.cssClass"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="质量专员" prop="qualityUser">
<el-select
@ -415,7 +493,7 @@
</el-dialog>
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="previewList" />
<index-drawer ref="indexDrawer"></index-drawer>
<approveCheckingDrawer ref="approveCheckingDrawer" :closeCallBack="getList"/>
<approveCheckingDrawer ref="approveCheckingDrawer" :closeCallBack="getList" />
</div>
</template>
@ -439,7 +517,13 @@ export default {
ElImageViewer,
approveCheckingDrawer,
},
dicts: ["sys_common_isdel","project_check_status", "project_checking_result"],
dicts: [
"sys_common_isdel",
"project_check_status",
"project_checking_result",
"project_checking_data_type_lvl1",
"project_checking_data_type_lvl2",
],
data() {
return {
showViewer: false,
@ -484,7 +568,9 @@ export default {
isDel: null,
projectName: null,
deptName: null,
approveStatus:null,
approveStatus: null,
dataTypeLvl1: null,
dataTypeLvl2: null,
activeName: "jxz",
},
tabs: {
@ -497,6 +583,8 @@ export default {
//
rules: {
imageUrls: [{ required: true, message: "请上传验收图片", trigger: "blur" }],
dataTypeLvl1: [{ required: true, message: "请选择验收类型", trigger: "blur" }],
dataTypeLvl2: [{ required: true, message: "请选择类型分类", trigger: "blur" }],
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
checkWorkingPosition: [
@ -511,7 +599,7 @@ export default {
checkResult: [{ required: false, message: "请选择验收结果", trigger: "blur" }],
},
deptUserData: [],
deptUserData2:[],
deptUserData2: [],
previewList: [],
};
},
@ -519,6 +607,15 @@ export default {
this.getList();
},
methods: {
findUpdateData(val) {
// this.$store.getters.userId==1
// val != "4"
if (true) {
return true;
} else {
return false;
}
},
getImageUrl(url) {
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
},
@ -646,7 +743,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
this.form.approveStatus = "1";
if (this.form.id != null) {
updateProjectChecking(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -716,15 +813,15 @@ export default {
},
/** 审批日志 */
handleAuditinfo(row) {
row.title="举牌验收";
row.logType="3";
row.title = "举牌验收";
row.logType = "3";
this.$refs.indexDrawer.show(row);
},
/** 处理审批 */
handleAudit(row){
row.typeName="举牌验收";
handleAudit(row) {
row.typeName = "举牌验收";
this.$refs.approveCheckingDrawer.show(row);
}
},
},
};
</script>

View File

@ -71,7 +71,7 @@
<el-tabs
v-model="queryParams.activeName"
@tab-click="getList"
style="margin-left: 25px; margin-right: 25px"
style="padding-left: 20px; padding-right: 20px"
>
<el-tab-pane :label="tabs.all" name="all"></el-tab-pane>
<el-tab-pane :label="tabs.jxz" name="jxz"></el-tab-pane>
@ -81,7 +81,9 @@
<el-table
v-loading="loading"
:data="projectCheckingList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
style="padding-left: 20px; padding-right: 20px"
stripe
>
<el-table-column label="验收图片" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
@ -93,11 +95,27 @@
></el-image>
</template>
</el-table-column>
<el-table-column
label="验收类型"
align="center"
prop="dataTypeLvl1"
show-overflow-tooltip
>
<template slot-scope="scope">
<dict-tag
:options="dict.type.project_checking_data_type_lvl1"
:value="scope.row.dataTypeLvl1"
/>
<dict-tag
:options="dict.type.project_checking_data_type_lvl2"
:value="scope.row.dataTypeLvl2"
/>
</template>
</el-table-column>
<el-table-column
label="验收工序部位"
align="left"
prop="checkWorkingPosition"
width="220"
show-overflow-tooltip
/>
@ -105,7 +123,6 @@
label="验收描述"
align="left"
prop="intro"
width="220"
show-overflow-tooltip
/>
<el-table-column
@ -136,7 +153,7 @@
label="验收时间"
align="center"
prop="checkingDate"
width="150"
width="140"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -151,9 +168,12 @@
/>
</template>
</el-table-column> -->
<el-table-column label="审批状态" align="center" prop="approveStatus" width="120">
<el-table-column label="审批状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
<dict-tag
:options="dict.type.project_check_status"
:value="scope.row.approveStatus"
/>
</template>
</el-table-column>
<el-table-column
@ -182,7 +202,7 @@
>审批日志</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
v-if="findUpdateData(scope.row.approveStatus)"
size="mini"
type="text"
icon="el-icon-edit"
@ -212,7 +232,14 @@
/>
<!-- 添加或修改项目举牌验收对话框 -->
<el-dialog :title="title" :visible.sync="open" width="780px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
<el-dialog
:title="title"
:visible.sync="open"
width="780px"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="项目名称" prop="projectName">
<el-input
@ -231,6 +258,35 @@
<el-form-item label="验收图片" prop="imageUrls">
<image-upload v-model="form.imageUrls" :limit="9" />
</el-form-item>
<el-form-item label="验收类型" prop="dataTypeLvl1">
<el-select
v-model="form.dataTypeLvl1"
placeholder="请选择验收类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl1"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="类型分类" prop="dataTypeLvl2" v-if="form.dataTypeLvl1">
<el-select
v-model="form.dataTypeLvl2"
placeholder="请选择类型分类"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.project_checking_data_type_lvl2"
v-show="form.dataTypeLvl1 == dict.raw.cssClass"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="质量专员" prop="qualityUser">
<el-select
v-model="form.qualityUser"
@ -344,7 +400,7 @@ export default {
indexDrawer,
ElImageViewer,
},
dicts: ["project_check_status","project_checking_result"],
dicts: ["project_check_status", "project_checking_result", "project_checking_data_type_lvl1", "project_checking_data_type_lvl2"],
data() {
return {
showViewer: false,
@ -357,6 +413,8 @@ export default {
form: {},
rules: {
imageUrls: [{ required: true, message: "请上传验收图片", trigger: "blur" }],
dataTypeLvl1: [{ required: true, message: "请选择验收类型", trigger: "blur" }],
dataTypeLvl2: [{ required: true, message: "请选择类型分类", trigger: "blur" }],
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
checkWorkingPosition: [
@ -398,7 +456,7 @@ export default {
ywc: "已完成0",
},
deptUserData: [],
deptUserData2:[],
deptUserData2: [],
previewList: [],
};
},
@ -406,6 +464,15 @@ export default {
mounted() {},
methods: {
findUpdateData(val){
// this.$store.getters.userId==1
// val != '4'
if(true){
return true;
}else{
return false;
}
},
getImageUrl(url) {
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
},
@ -423,14 +490,14 @@ export default {
this.project = project;
this.title = project.projectName;
this.isOpen = true;
this.tabs.all="全部数据0";
this.tabs.jxz="进行中0";
this.tabs.ywc="已完成0";
this.tabs.all = "全部数据0";
this.tabs.jxz = "进行中0";
this.tabs.ywc = "已完成0";
this.queryParams.projectId = project.id;
this.$api.publics
.queryUnitList({
projectId: project.id,
unitType: 2
unitType: 2,
})
.then((d) => {
this.nodes = d.rows;
@ -562,7 +629,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
this.form.approveStatus = "1";
if (this.form.id != null) {
updateProjectChecking(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -634,10 +701,10 @@ export default {
},
/** 审批日志 */
handleAuditinfo(row) {
row.title="举牌验收";
row.logType="3";
row.title = "举牌验收";
row.logType = "3";
this.$refs.indexDrawer.show(row);
}
},
},
};
</script>

View File

@ -409,7 +409,7 @@
command="handleWorkTrain"
icon="el-icon-notebook-2"
v-hasPermi="['work:workTrain:list']"
>项目专项培训</el-dropdown-item
>项目教育培训</el-dropdown-item
>
<el-dropdown-item
command="handleEmergencyDrill"

View File

@ -152,7 +152,7 @@
</el-table-column>
<el-table-column label="特种人员" align="center" prop="tzry" width="90" show-overflow-tooltip/>
<el-table-column label="应急演练" align="center" prop="yjyl" width="90" show-overflow-tooltip/>
<el-table-column label="专项培训" align="center" prop="zxpx" width="90" show-overflow-tooltip/>
<el-table-column label="教育培训" align="center" prop="zxpx" width="90" show-overflow-tooltip/>
</el-table-column>
<el-table-column label="质量管理" align="center">
<el-table-column label="质量隐患排查" align="center">

View File

@ -105,7 +105,7 @@
<el-table-column label="安全管理" align="center">
<el-table-column label="隐患排查" align="center" prop="aqyhpc_jldw" width="90" show-overflow-tooltip/>
<el-table-column label="应急演练" align="center" prop="yjyl" width="90" show-overflow-tooltip/>
<el-table-column label="专项培训" align="center" prop="zxpx" width="90" show-overflow-tooltip/>
<el-table-column label="教育培训" align="center" prop="zxpx" width="90" show-overflow-tooltip/>
</el-table-column>
<el-table-column label="质量管理" align="center">
<el-table-column label="隐患排查" align="center" prop="zlyhpc_jldw" width="90" show-overflow-tooltip/>

View File

@ -47,7 +47,8 @@
<el-table
v-loading="loading"
:data="workTrainList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
stripe
>
<el-table-column label="演练主图" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
@ -62,15 +63,13 @@
<el-table-column
label="演练类型"
align="center"
prop="trainNature"
width="180"
prop="dataType"
show-overflow-tooltip
v-if="false"
>
<template slot-scope="scope">
<dict-tag
:options="dict.type.train_nature_yjyl"
:value="scope.row.trainNature"
:options="dict.type.work_train_data_type"
:value="scope.row.dataType"
/>
</template>
</el-table-column>
@ -78,7 +77,6 @@
label="演练标题"
align="center"
prop="trainTitle"
width="220"
show-overflow-tooltip
/>
<el-table-column
@ -102,7 +100,7 @@
label="协同部门"
align="center"
prop="trainDeptNames"
width="220"
width="200"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -167,7 +165,7 @@
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="项目名称">
<el-input
placeholder="项目名称"
@ -178,14 +176,15 @@
<el-form-item label="演练主图" prop="mainImage">
<image-upload v-model="form.mainImage" :limit="1" />
</el-form-item>
<el-form-item label="演练类型" prop="trainNature" v-if="false">
<el-form-item label="演练类型" prop="dataType">
<el-select
v-model="form.trainNature"
v-model="form.dataType"
placeholder="请选择演练类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.train_nature_yjyl"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '1'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -196,13 +195,13 @@
<el-input v-model="form.trainTitle" placeholder="请输入演练标题" />
</el-form-item>
<el-form-item label="参与人数" prop="trainParticipants">
<el-input-number
<el-input
v-model="form.trainParticipants"
placeholder="请输入工作参与者"
controls-position="right"
style="width: 100%; text-align: left"
:min="1"
/>
type="number"
placeholder="请输入参与人数"
>
<i slot="suffix"></i>
</el-input>
</el-form-item>
<el-form-item label="演练日期" prop="beginDate">
<el-date-picker
@ -273,7 +272,7 @@ export default {
components: {
ElImageViewer,
},
dicts: ["train_nature_yjyl"],
dicts: ["work_train_data_type"],
data() {
return {
showViewer: false,
@ -309,7 +308,7 @@ export default {
//
rules: {
mainImage: [{ required: true, message: "请上传演练主图", trigger: "blur" }],
trainNature: [{ required: false, message: "请选择演练类型", trigger: "blur" }],
dataType: [{ required: false, message: "请选择演练类型", trigger: "blur" }],
beginDate: [{ required: true, message: "请选择演练时间", trigger: "blur" }],
trainTitle: [
{ required: true, message: "请输入演练标题", trigger: "blur" },
@ -400,7 +399,7 @@ export default {
projectName: null,
mainImage: null,
trainType: null,
trainNature: null,
dataType: null,
trainTitle: null,
trainParticipants: null,
beginDate: null,

View File

@ -16,15 +16,16 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="演练类型" prop="trainNature" v-if="false">
<el-form-item label="演练类型" prop="dataType">
<el-select
v-model="queryParams.trainNature"
v-model="queryParams.dataType"
@keyup.enter.native="handleQuery"
placeholder="请选择演练类型"
clearable
>
<el-option
v-for="dict in dict.type.train_nature_yjyl"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '1'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -125,7 +126,8 @@
<el-table
v-loading="loading"
:data="workTrainList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
stripe
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="项目名称" align="center" prop="projectName" width="200" />
@ -139,11 +141,11 @@
></el-image>
</template>
</el-table-column>
<el-table-column label="演练类型" align="center" prop="trainNature" v-if="false">
<el-table-column label="演练类型" align="center" prop="dataType">
<template slot-scope="scope">
<dict-tag
:options="dict.type.train_nature_yjyl"
:value="scope.row.trainNature"
:options="dict.type.work_train_data_type"
:value="scope.row.dataType"
/>
</template>
</el-table-column>
@ -230,7 +232,14 @@
/>
<!-- 添加或修改演练演练对话框 -->
<el-dialog :title="title" :visible.sync="open" width="680px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
<el-dialog
:title="title"
:visible.sync="open"
width="680px"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="项目名称">
<el-input
@ -242,15 +251,16 @@
<el-form-item label="演练主图" prop="mainImage">
<image-upload v-model="form.mainImage" :limit="1" />
</el-form-item>
<el-form-item label="演练类型" prop="trainNature" v-if="false">
<el-form-item label="演练类型" prop="dataType">
<el-select
v-model="form.trainNature"
v-model="form.dataType"
filterable
placeholder="请选择演练类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.train_nature_yjyl"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '1'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -261,13 +271,13 @@
<el-input placeholder="请输入培训标题" v-model="form.trainTitle"></el-input>
</el-form-item>
<el-form-item label="参与人数" prop="trainParticipants">
<el-input-number
<el-input
v-model="form.trainParticipants"
placeholder="请输入工作参与者"
controls-position="right"
style="width: 100%; text-align: left"
:min="1"
/>
type="number"
placeholder="请输入参与人数"
>
<i slot="suffix"></i>
</el-input>
</el-form-item>
<el-form-item label="演练日期" prop="beginDate">
<el-date-picker
@ -332,7 +342,7 @@ export default {
components: {
ElImageViewer,
},
dicts: ["train_nature_yjyl", "sys_common_isdel"],
dicts: ["work_train_data_type", "sys_common_isdel"],
data() {
return {
showViewer: false,
@ -367,7 +377,7 @@ export default {
pageSize: 10,
projectName: "",
trainType: 1,
trainNature: null,
dataType: null,
isDel: null,
trainTitle: null,
projectDeptId: null,
@ -378,7 +388,7 @@ export default {
//
rules: {
mainImage: [{ required: true, message: "请上传演练主图", trigger: "blur" }],
trainNature: [{ required: false, message: "请选择演练类型", trigger: "blur" }],
dataType: [{ required: false, message: "请选择演练类型", trigger: "blur" }],
beginDate: [{ required: true, message: "请选择演练时间", trigger: "blur" }],
trainTitle: [
{ required: true, message: "请输入演练标题", trigger: "blur" },
@ -449,7 +459,7 @@ export default {
projectName: null,
mainImage: null,
trainType: null,
trainNature: null,
dataType: null,
trainTitle: null,
trainParticipants: null,
beginDate: null,

View File

@ -16,15 +16,16 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="培训类型" prop="trainNature" v-if="false">
<el-form-item label="培训类型" prop="dataType">
<el-select
v-model="queryParams.trainNature"
v-model="queryParams.dataType"
@keyup.enter.native="handleQuery"
placeholder="请选择培训类型"
clearable
>
<el-option
v-for="dict in dict.type.train_nature_zxpx"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '0'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -125,7 +126,8 @@
<el-table
v-loading="loading"
:data="workTrainList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
stripe
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="项目名称" align="center" prop="projectName" width="200" />
@ -139,11 +141,11 @@
></el-image>
</template>
</el-table-column>
<el-table-column label="培训类型" align="center" prop="trainNature" v-if="false">
<el-table-column label="培训类型" align="center" prop="dataType">
<template slot-scope="scope">
<dict-tag
:options="dict.type.train_nature_zxpx"
:value="scope.row.trainNature"
:options="dict.type.work_train_data_type"
:value="scope.row.dataType"
/>
</template>
</el-table-column>
@ -230,20 +232,28 @@
/>
<!-- 添加或修改演练培训对话框 -->
<el-dialog :title="title" :visible.sync="open" width="680px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
<el-dialog
:title="title"
:visible.sync="open"
width="680px"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="培训主图" prop="mainImage">
<image-upload v-model="form.mainImage" :limit="1" />
</el-form-item>
<el-form-item label="培训类型" prop="trainNature" v-if="false">
<el-form-item label="培训类型" prop="dataType">
<el-select
v-model="form.trainNature"
v-model="form.dataType"
filterable
placeholder="请选择培训类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.train_nature_zxpx"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '0'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -254,13 +264,13 @@
<el-input placeholder="请输入培训标题" v-model="form.trainTitle"></el-input>
</el-form-item>
<el-form-item label="参与人数" prop="trainParticipants">
<el-input-number
<el-input
v-model="form.trainParticipants"
type="number"
placeholder="请输入参与人数"
controls-position="right"
style="width: 100%; text-align: left"
:min="1"
/>
>
<i slot="suffix"></i>
</el-input>
</el-form-item>
<el-form-item label="培训日期" prop="beginDate">
<el-date-picker
@ -325,7 +335,7 @@ export default {
components: {
ElImageViewer,
},
dicts: ["train_nature_zxpx", "sys_common_isdel"],
dicts: ["work_train_data_type", "sys_common_isdel"],
data() {
return {
showViewer: false,
@ -360,7 +370,7 @@ export default {
pageSize: 10,
projectName: "",
trainType: 0,
trainNature: null,
dataType: null,
isDel: null,
trainTitle: null,
projectDeptId: null,
@ -371,7 +381,7 @@ export default {
//
rules: {
mainImage: [{ required: true, message: "请上传培训主图", trigger: "blur" }],
trainNature: [{ required: false, message: "请选择培训类型", trigger: "blur" }],
dataType: [{ required: false, message: "请选择培训类型", trigger: "blur" }],
beginDate: [{ required: true, message: "请选择培训时间", trigger: "blur" }],
trainTitle: [
{ required: true, message: "请输入培训标题", trigger: "blur" },
@ -442,7 +452,7 @@ export default {
projectName: null,
mainImage: null,
trainType: null,
trainNature: null,
dataType: null,
trainTitle: null,
trainParticipants: null,
beginDate: null,

View File

@ -8,7 +8,7 @@
style="padding-left: 20px"
>
<template slot="title">
<div>{{ drawerTitle + " 【专项培训管理】" }}</div>
<div>{{ drawerTitle + " 【教育培训管理】" }}</div>
</template>
<el-tabs
v-model="activeName"
@ -47,7 +47,8 @@
<el-table
v-loading="loading"
:data="workTrainList"
@selection-change="handleSelectionChange" stripe
@selection-change="handleSelectionChange"
stripe
>
<el-table-column label="培训主图" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
@ -62,15 +63,13 @@
<el-table-column
label="培训类型"
align="center"
prop="trainNature"
width="180"
prop="dataType"
show-overflow-tooltip
v-if="false"
>
<template slot-scope="scope">
<dict-tag
:options="dict.type.train_nature_zxpx"
:value="scope.row.trainNature"
:options="dict.type.work_train_data_type"
:value="scope.row.dataType"
/>
</template>
</el-table-column>
@ -78,7 +77,6 @@
label="培训标题"
align="center"
prop="trainTitle"
width="220"
show-overflow-tooltip
/>
<el-table-column
@ -102,7 +100,7 @@
label="协同部门"
align="center"
prop="trainDeptNames"
width="220"
width="200"
show-overflow-tooltip
>
<template slot-scope="scope">
@ -167,7 +165,7 @@
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="项目名称">
<el-input
placeholder="请输入项目名称"
@ -178,14 +176,15 @@
<el-form-item label="培训主图" prop="mainImage">
<image-upload v-model="form.mainImage" :limit="1" />
</el-form-item>
<el-form-item label="培训类型" prop="trainNature" v-if="false">
<el-form-item label="培训类型" prop="dataType">
<el-select
v-model="form.trainNature"
v-model="form.dataType"
placeholder="请选择培训类型"
style="width: 100%"
>
<el-option
v-for="dict in dict.type.train_nature_zxpx"
v-for="dict in dict.type.work_train_data_type"
v-show="dict.raw.remark == '0'"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -196,13 +195,13 @@
<el-input v-model="form.trainTitle" placeholder="请输入培训标题" />
</el-form-item>
<el-form-item label="参与人数" prop="trainParticipants">
<el-input-number
<el-input
v-model="form.trainParticipants"
placeholder="请输入工作参与者"
controls-position="right"
style="width: 100%; text-align: left"
:min="1"
/>
type="number"
placeholder="请输入参与人数"
>
<i slot="suffix"></i>
</el-input>
</el-form-item>
<el-form-item label="培训日期" prop="beginDate">
<el-date-picker
@ -273,7 +272,7 @@ export default {
ElImageViewer,
},
props: {},
dicts: ["train_nature_zxpx"],
dicts: ["work_train_data_type"],
data() {
return {
showViewer: false,
@ -283,7 +282,7 @@ export default {
ids: [],
//
total: 0,
//
//
workTrainList: [],
//
single: true,
@ -309,7 +308,7 @@ export default {
//
rules: {
mainImage: [{ required: true, message: "请上传培训主图", trigger: "blur" }],
trainNature: [{ required: false, message: "请选择培训类型", trigger: "blur" }],
dataType: [{ required: false, message: "请选择培训类型", trigger: "blur" }],
beginDate: [{ required: true, message: "请选择培训时间", trigger: "blur" }],
trainTitle: [
{ required: true, message: "请输入培训标题", trigger: "blur" },
@ -376,7 +375,7 @@ export default {
}
});
},
/** 查询专项培训列表 */
/** 查询教育培训列表 */
getworkTrainList() {
this.loading = true;
this.queryParams.deptId = this.activeName;
@ -400,7 +399,7 @@ export default {
projectName: null,
mainImage: null,
trainType: null,
trainNature: null,
dataType: null,
trainTitle: null,
trainParticipants: null,
beginDate: null,
@ -422,7 +421,7 @@ export default {
this.form.projectId = this.project.id;
this.form.projectName = this.project.projectName;
this.open = true;
this.title = "添加专项培训";
this.title = "添加教育培训";
this.getDeptList();
},
//
@ -473,7 +472,7 @@ export default {
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.title = "修改专项培训";
this.title = "修改教育培训";
const id = row.id || this.ids;
let param = {
projectId: this.project.id,
@ -500,7 +499,7 @@ export default {
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal
.confirm('是否确认删除专项培训编号为"' + ids + '"的数据项?')
.confirm('是否确认删除教育培训编号为"' + ids + '"的数据项?')
.then(function () {
return delWorkTrain(ids);
})

View File

@ -39,13 +39,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectSurProjectCheckingVo">
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, sp.projectName, sd.dept_name from sur_project_checking spc
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, spc.data_type_lvl1, spc.data_type_lvl2, sp.projectName, sd.dept_name from sur_project_checking spc
left join sur_project sp on spc.project_id = sp.id
left join sys_dept sd on sd.dept_id = spc.dept_id
</sql>
<select id="selectSurProjectCheckingList" parameterType="SurProjectChecking" resultMap="SurProjectCheckingResult">
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, sp.projectName, sd.dept_name from sur_project_checking spc
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, spc.data_type_lvl1, spc.data_type_lvl2, sp.projectName, sd.dept_name from sur_project_checking spc
left join sur_project sp on spc.project_id = sp.id
left join sys_dept sd on sd.dept_id = spc.dept_id
<where>
@ -57,6 +57,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</if>
<if test="deptName != null and deptName != ''"> and sd.dept_name like concat('%', #{deptName}, '%')</if>
<if test="groupDeptId != null "> and spc.group_dept_id = #{groupDeptId}</if>
<if test="dataTypeLvl1 != null "> and spc.data_type_lvl1 = #{dataTypeLvl1}</if>
<if test="dataTypeLvl2 != null "> and spc.data_type_lvl2 = #{dataTypeLvl2}</if>
<if test="checkType != null and checkType != ''"> and spc.check_type = #{checkType}</if>
<if test="approveStatus != null and approveStatus != ''"> and spc.approve_status = #{approveStatus}</if>
<if test="workingPositionType != null and workingPositionType != ''"> and spc.working_position_type = #{workingPositionType}</if>
@ -199,7 +201,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectSurProjectCheckingById" parameterType="Long" resultMap="SurProjectCheckingResult">
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, sp.projectName, sd.dept_name from sur_project_checking spc
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, spc.approve_status, spc.data_type_lvl1, spc.data_type_lvl2, sp.projectName, sd.dept_name from sur_project_checking spc
left join sur_project sp on spc.project_id = sp.id
left join sys_dept sd on sd.dept_id = spc.dept_id
where spc.id = #{id}

View File

@ -40,11 +40,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectWorkTrainVo">
select id, project_id, project_name, main_image, train_type, train_title,train_nature, train_participants, begin_date, end_date, train_content, train_file, is_del, create_by, create_time, update_by, update_time, remark from work_train
select id, project_id, project_name, main_image, train_type, train_title,train_nature, train_participants, begin_date, end_date, train_content, train_file, is_del, create_by, create_time, update_by, update_time, remark, data_type from work_train
</sql>
<select id="selectWorkTrainList" parameterType="WorkTrain" resultMap="WorkTrainResult">
select wt.id, wt.project_id, wt.project_name, wt.main_image, wt.train_type, wt.train_title, wt.train_nature, wt.train_participants, wt.begin_date, wt.end_date, wt.train_content, wt.train_file, wt.is_del, wt.create_by, wt.create_time, wt.update_by, wt.update_time, wt.remark, group_concat(sd.dept_id) as trainDeptIds, group_concat(sd.dept_name) as trainDeptNames
select wt.id, wt.project_id, wt.project_name, wt.main_image, wt.train_type, wt.train_title, wt.train_nature, wt.train_participants, wt.begin_date, wt.end_date, wt.train_content, wt.train_file, wt.is_del, wt.create_by, wt.create_time, wt.update_by, wt.update_time, wt.remark, wt.data_type, group_concat(sd.dept_id) as trainDeptIds, group_concat(sd.dept_name) as trainDeptNames
from work_train wt
left join work_train_dept wtd on wtd.train_id = wt.id
left join sys_dept sd on sd.dept_id = wtd.dept_id
@ -57,6 +57,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<where>
<if test="projectId != null"> and wt.project_id = #{projectId}</if>
<if test="deptId != null"> and wtd2.dept_id = #{deptId}</if>
<if test="dataType != null"> and wt.data_type = #{dataType}</if>
<if test="projectName != null and projectName != ''"> and wt.project_name like concat('%', #{projectName}, '%')</if>
<if test="trainType != null and trainType != ''"> and train_type = #{trainType}</if>
<if test="trainTitle != null and trainTitle != ''"> and train_title like concat('%', #{trainTitle}, '%')</if>
@ -123,7 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectWorkTrainById" parameterType="Long" resultMap="WorkTrainWorkTrainDeptResult">
select a.id, a.project_id, a.project_name, a.main_image, a.train_type, a.train_title, a.train_nature, a.train_participants, a.begin_date, a.end_date, a.train_content, a.train_file, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
select a.id, a.project_id, a.project_name, a.main_image, a.train_type, a.train_title, a.train_nature, a.train_participants, a.begin_date, a.end_date, a.train_content, a.train_file, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time, a.remark, a.data_type,
b.train_id as sub_train_id, b.dept_id as sub_dept_id, b.is_main as sub_is_main
from work_train a
left join work_train_dept b on b.train_id = a.id and b.is_main ='N'
@ -131,7 +132,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectById" parameterType="Long" resultMap="WorkTrainWorkTrainDeptResult">
select a.id, a.project_id, a.project_name, a.main_image, a.train_type, a.train_title, a.train_nature, a.train_participants, a.begin_date, a.end_date, a.train_content, a.train_file, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
select a.id, a.project_id, a.project_name, a.main_image, a.train_type, a.train_title, a.train_nature, a.train_participants, a.begin_date, a.end_date, a.train_content, a.train_file, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time, a.remark, a.data_type,
b.train_id as sub_train_id, b.dept_id as sub_dept_id, b.is_main as sub_is_main, d.dept_name as sub_dept_name
from work_train a
left join work_train_dept b on b.train_id = a.id