提交代码
parent
722633ea2e
commit
7f26ccc344
|
@ -1,6 +1,6 @@
|
|||
import request from '@/utils/request'
|
||||
|
||||
// 查询项目进度列表
|
||||
// 查询形象进度列表
|
||||
export function listSurProjectSchedule(query) {
|
||||
return request({
|
||||
url: '/project/surProjectSchedule/list',
|
||||
|
@ -9,7 +9,7 @@ export function listSurProjectSchedule(query) {
|
|||
})
|
||||
}
|
||||
|
||||
// 查询项目进度详细
|
||||
// 查询形象进度详细
|
||||
export function getSurProjectSchedule(Id) {
|
||||
return request({
|
||||
url: '/project/surProjectSchedule/' + Id,
|
||||
|
@ -17,7 +17,7 @@ export function getSurProjectSchedule(Id) {
|
|||
})
|
||||
}
|
||||
|
||||
// 新增项目进度
|
||||
// 新增形象进度
|
||||
export function addSurProjectSchedule(data) {
|
||||
return request({
|
||||
url: '/project/surProjectSchedule',
|
||||
|
@ -26,7 +26,7 @@ export function addSurProjectSchedule(data) {
|
|||
})
|
||||
}
|
||||
|
||||
// 修改项目进度
|
||||
// 修改形象进度
|
||||
export function updateSurProjectSchedule(data) {
|
||||
return request({
|
||||
url: '/project/surProjectSchedule',
|
||||
|
@ -35,7 +35,7 @@ export function updateSurProjectSchedule(data) {
|
|||
})
|
||||
}
|
||||
|
||||
// 删除项目进度
|
||||
// 删除形象进度
|
||||
export function delSurProjectSchedule(Id) {
|
||||
return request({
|
||||
url: '/project/surProjectSchedule/' + Id,
|
||||
|
|
|
@ -655,10 +655,10 @@
|
|||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8"
|
||||
><el-form-item label="项目进度" prop="projectSchedule">
|
||||
><el-form-item label="形象进度" prop="projectSchedule">
|
||||
<el-select
|
||||
v-model="form.projectSchedule"
|
||||
placeholder="请选择项目进度"
|
||||
placeholder="请选择形象进度"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option
|
||||
|
|
|
@ -206,7 +206,7 @@ export default {
|
|||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
projectId: null,
|
||||
nowDept: null,
|
||||
deptId: null,
|
||||
},
|
||||
};
|
||||
},
|
||||
|
@ -247,7 +247,7 @@ export default {
|
|||
},
|
||||
// 页签点击
|
||||
getList() {
|
||||
this.queryParams.nowDept = this.activeName;
|
||||
this.queryParams.deptId = this.activeName;
|
||||
this.loading = true;
|
||||
listSurProjectInsurancev2(this.queryParams).then((response) => {
|
||||
this.surProjectInsuranceList = response.rows;
|
||||
|
@ -319,6 +319,12 @@ export default {
|
|||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
this.form.projectName = this.project.projectName;
|
||||
this.nodes.forEach((item) => {
|
||||
if (item.unitId == this.activeName) {
|
||||
this.form.deptName = item.unitName;
|
||||
}
|
||||
});
|
||||
const id = row.id || this.ids;
|
||||
getSurProjectInsurance(id).then((response) => {
|
||||
this.form = response.data;
|
||||
|
@ -330,6 +336,16 @@ export default {
|
|||
submitForm() {
|
||||
this.$refs["form"].validate((valid) => {
|
||||
if (valid) {
|
||||
if (
|
||||
this.form.insuranceFile != null &&
|
||||
this.form.insuranceFile != "" &&
|
||||
this.form.insuranceFile.length > 0
|
||||
) {
|
||||
this.form.insuranceFile = this.form.insuranceFile[0].url;
|
||||
} else {
|
||||
this.$modal.msgWarning("请上传保险合同");
|
||||
return false;
|
||||
}
|
||||
if (this.form.id != null) {
|
||||
updateSurProjectInsurance(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
|
@ -338,9 +354,13 @@ export default {
|
|||
});
|
||||
} else {
|
||||
addSurProjectInsurance(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
if (response.code == 200) {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
} else {
|
||||
this.$message.error("当前项目单位已办理该保险,请勿重复办理!!");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -370,6 +390,10 @@ export default {
|
|||
`surProjectInsurance_${new Date().getTime()}.xlsx`
|
||||
);
|
||||
},
|
||||
/** 下载证书 */
|
||||
handledownload(row) {
|
||||
window.open("/jhapi" + row.credentialFile);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<div class="project-schedule-dlg">
|
||||
<el-dialog title="项目进度管理" :visible.sync="open" width="1200px" append-to-body :close-on-click-modal="false"
|
||||
<el-dialog title="形象进度管理" :visible.sync="open" width="1200px" append-to-body :close-on-click-modal="false"
|
||||
:close-on-press-escape="false">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
||||
<el-col :span="24">
|
||||
|
|
|
@ -137,7 +137,7 @@
|
|||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<!-- 添加或修改项目进度对话框 -->
|
||||
<!-- 添加或修改形象进度对话框 -->
|
||||
<el-dialog :title="title" v-if="open" :visible.sync="open" width="1200px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
||||
<el-col :span="24">
|
||||
|
@ -211,7 +211,7 @@ export default {
|
|||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 项目进度表格数据
|
||||
// 形象进度表格数据
|
||||
surProjectScheduleList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
|
@ -251,7 +251,7 @@ export default {
|
|||
})
|
||||
},
|
||||
methods: {
|
||||
/** 查询项目进度列表 */
|
||||
/** 查询形象进度列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
this.queryParams.params = {};
|
||||
|
@ -314,7 +314,7 @@ export default {
|
|||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "添加项目进度";
|
||||
this.title = "添加形象进度";
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
|
@ -323,7 +323,7 @@ export default {
|
|||
getSurProjectSchedule(id).then(response => {
|
||||
this.form = response.data;
|
||||
this.open = true;
|
||||
this.title = "修改项目进度";
|
||||
this.title = "修改形象进度";
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
|
@ -349,7 +349,7 @@ export default {
|
|||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除项目进度编号为"' + ids + '"的数据项?').then(function() {
|
||||
this.$modal.confirm('是否确认删除形象进度编号为"' + ids + '"的数据项?').then(function() {
|
||||
return delSurProjectSchedule(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
|
|
|
@ -1,296 +1,389 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-drawer v-bind="$attrs" v-if="onOpen" v-on="$listeners" @opened="onOpen" @close="onClose" style="padding-left: 20px;">
|
||||
<el-row :gutter="10" class="mb8" style="margin-left: 25px; margin-top:10px;margin-right:0px;">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['project:surProjectSpecial:add']"
|
||||
>添加</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['project:surProjectSpecial:edit']"
|
||||
>修改</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-delete"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['project:surProjectSpecial:remove']"
|
||||
>删除</el-button>
|
||||
<div class="app-container">
|
||||
<el-drawer
|
||||
v-bind="$attrs"
|
||||
v-if="onOpen"
|
||||
v-on="$listeners"
|
||||
@opened="onOpen"
|
||||
@close="onClose"
|
||||
style="padding-left: 20px"
|
||||
>
|
||||
<el-row
|
||||
:gutter="10"
|
||||
class="mb8"
|
||||
style="margin-left: 25px; margin-top: 10px; margin-right: 0px"
|
||||
>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['project:surProjectSpecial:add']"
|
||||
>添加</el-button
|
||||
>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table v-loading="loading" :data="surProjectSpecialList" @selection-change="handleSelectionChange">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['project:surProjectSpecial:edit']"
|
||||
>修改</el-button
|
||||
>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-delete"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['project:surProjectSpecial:remove']"
|
||||
>删除</el-button
|
||||
>
|
||||
</el-col>
|
||||
<right-toolbar
|
||||
:showSearch.sync="showSearch"
|
||||
@queryTable="getList"
|
||||
></right-toolbar>
|
||||
</el-row>
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="surProjectSpecialList"
|
||||
@selection-change="handleSelectionChange"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="人员姓名" align="center" prop="name" width="80" show-overflow-tooltip/>
|
||||
<el-table-column
|
||||
label="人员姓名"
|
||||
align="center"
|
||||
prop="name"
|
||||
width="80"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column label="性别" align="center" prop="sex" width="60">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex"/>
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="联系方式" align="center" prop="phoneNumber" width="130" show-overflow-tooltip/>
|
||||
<el-table-column label="证书编号" align="center" prop="credentialNumber" show-overflow-tooltip/>
|
||||
<el-table-column label="证书过期时间" align="center" prop="credentialExpirationTime" width="100">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.credentialExpirationTime, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
<el-table-column
|
||||
label="联系方式"
|
||||
align="center"
|
||||
prop="phoneNumber"
|
||||
width="130"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="证书编号"
|
||||
align="center"
|
||||
prop="credentialNumber"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="证书过期时间"
|
||||
align="center"
|
||||
prop="credentialExpirationTime"
|
||||
width="100"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{
|
||||
parseTime(scope.row.credentialExpirationTime, "{y}-{m}-{d}")
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="证书预览" align="center" prop="credentialFile" width="75">
|
||||
<template slot-scope="scope">
|
||||
<svg v-if="scope.row.credentialType=='PDF'" style="vertical-align: middle;fill: currentColor;overflow: hidden;" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1379" width="50" height="50"><path d="M905.185809 178.844158C898.576738 172.685485 891.19337 165.824412 883.21687 158.436127 860.422682 137.322863 837.434925 116.207791 815.697647 96.487895 813.243072 94.261877 813.243072 94.261877 810.786411 92.037081 781.783552 65.781062 757.590948 44.376502 739.713617 29.293612 729.254178 20.469111 721.020606 13.860686 714.970549 9.501727 710.955023 6.608611 707.690543 4.524745 704.47155 2.998714 700.417679 1.07689 696.638044-0.094029 691.307277 0.005928 677.045677 0.273349 665.6 11.769337 665.6 26.182727L665.6 77.352844 665.6 128.522961 665.6 230.863194 665.6 256.448252 691.2 256.448252 896 256.448252 870.4 230.863194 870.4 998.414942 896 972.829884 230.381436 972.829884C187.90385 972.829884 153.6 938.623723 153.6 896.20663L153.6 26.182727 128 51.767786 588.8 51.767786C602.93849 51.767786 614.4 40.312965 614.4 26.182727 614.4 12.05249 602.93849 0.597669 588.8 0.597669L128 0.597669 102.4 0.597669 102.4 26.182727 102.4 896.20663C102.4 966.91021 159.652833 1024 230.381436 1024L896 1024 921.6 1024 921.6 998.414942 921.6 230.863194 921.6 205.278135 896 205.278135 691.2 205.278135 716.8 230.863194 716.8 128.522961 716.8 77.352844 716.8 26.182727C716.8 39.813762 705.748075 50.91427 692.267725 51.167041 687.705707 51.252584 685.069822 50.435995 682.52845 49.231204 682.259458 49.103682 683.344977 49.796618 685.029451 51.010252 689.779394 54.432502 697.145822 60.34494 706.686383 68.394196 724.009052 83.009121 747.816448 104.072869 776.413589 129.961594 778.850014 132.168064 778.850014 132.168064 781.285216 134.376514 802.876774 153.964212 825.739479 174.96442 848.413564 195.966437 856.350957 203.3185 863.697005 210.144893 870.269888 216.269843 874.209847 219.941299 877.019309 222.565641 878.499674 223.951409 888.81866 233.610931 905.019017 233.081212 914.684179 222.768247 924.349344 212.455283 923.819315 196.264383 913.500326 186.604861 911.981323 185.182945 909.155025 182.542876 905.185809 178.844158ZM102.4 461.128719 0 461.128719 0 896.074709 512 896.074709 1024 896.074709 1024 461.128719 153.6 461.128719 153.6 460.531049 102.4 460.531049 102.4 461.128719ZM208.2 711 208.2 819.2 157.6 819.2 157.6 528 269 528C301.533495 528 327.366571 536.466581 346.5 553.4 365.633429 570.333419 375.2 592.733195 375.2 620.6 375.2 649.133476 365.833427 671.333254 347.1 687.2 328.366573 703.066746 302.133502 711 268.4 711L208.2 711ZM208.2 670.4 269 670.4C287.00009 670.4 300.733286 666.166709 310.2 657.7 319.666714 649.233291 324.4 637.000079 324.4 621 324.4 605.266588 319.600047 592.700047 310 583.3 300.399951 573.899953 287.200083 569.066669 270.4 568.8L208.2 568.8 208.2 670.4ZM419.4 819.2 419.4 528 505.4 528C531.133461 528 553.966566 533.733276 573.9 545.2 593.833434 556.666724 609.266611 572.933229 620.2 594 631.133389 615.066771 636.6 639.199863 636.6 666.4L636.6 681C636.6 708.600139 631.100055 732.866562 620.1 753.8 609.099945 774.733438 593.433436 790.866609 573.1 802.2 552.766564 813.533391 529.466799 819.2 503.2 819.2L419.4 819.2ZM470 568.8 470 778.8 503 778.8C529.533466 778.8 549.89993 770.500083 564.1 753.9 578.30007 737.299917 585.533331 713.466822 585.8 682.4L585.8 666.2C585.8 634.599842 578.933402 610.46675 565.2 593.8 551.466598 577.13325 531.533463 568.8 505.4 568.8L470 568.8ZM854.8 695.8 737.6 695.8 737.6 819.2 687 819.2 687 528 872 528 872 568.8 737.6 568.8 737.6 655.4 854.8 655.4 854.8 695.8Z" fill="#01A9FF" p-id="1380"></path></svg>
|
||||
<image-preview v-if="scope.row.credentialType=='JPG' || scope.row.credentialType=='PNG' || scope.row.credentialType=='JPEG'" :src="scope.row.credentialFile" :width="50" :height="50"/>
|
||||
<svg
|
||||
v-if="scope.row.credentialType == 'PDF'"
|
||||
style="vertical-align: middle; fill: currentColor; overflow: hidden"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1379"
|
||||
width="50"
|
||||
height="50"
|
||||
>
|
||||
<path
|
||||
d="M905.185809 178.844158C898.576738 172.685485 891.19337 165.824412 883.21687 158.436127 860.422682 137.322863 837.434925 116.207791 815.697647 96.487895 813.243072 94.261877 813.243072 94.261877 810.786411 92.037081 781.783552 65.781062 757.590948 44.376502 739.713617 29.293612 729.254178 20.469111 721.020606 13.860686 714.970549 9.501727 710.955023 6.608611 707.690543 4.524745 704.47155 2.998714 700.417679 1.07689 696.638044-0.094029 691.307277 0.005928 677.045677 0.273349 665.6 11.769337 665.6 26.182727L665.6 77.352844 665.6 128.522961 665.6 230.863194 665.6 256.448252 691.2 256.448252 896 256.448252 870.4 230.863194 870.4 998.414942 896 972.829884 230.381436 972.829884C187.90385 972.829884 153.6 938.623723 153.6 896.20663L153.6 26.182727 128 51.767786 588.8 51.767786C602.93849 51.767786 614.4 40.312965 614.4 26.182727 614.4 12.05249 602.93849 0.597669 588.8 0.597669L128 0.597669 102.4 0.597669 102.4 26.182727 102.4 896.20663C102.4 966.91021 159.652833 1024 230.381436 1024L896 1024 921.6 1024 921.6 998.414942 921.6 230.863194 921.6 205.278135 896 205.278135 691.2 205.278135 716.8 230.863194 716.8 128.522961 716.8 77.352844 716.8 26.182727C716.8 39.813762 705.748075 50.91427 692.267725 51.167041 687.705707 51.252584 685.069822 50.435995 682.52845 49.231204 682.259458 49.103682 683.344977 49.796618 685.029451 51.010252 689.779394 54.432502 697.145822 60.34494 706.686383 68.394196 724.009052 83.009121 747.816448 104.072869 776.413589 129.961594 778.850014 132.168064 778.850014 132.168064 781.285216 134.376514 802.876774 153.964212 825.739479 174.96442 848.413564 195.966437 856.350957 203.3185 863.697005 210.144893 870.269888 216.269843 874.209847 219.941299 877.019309 222.565641 878.499674 223.951409 888.81866 233.610931 905.019017 233.081212 914.684179 222.768247 924.349344 212.455283 923.819315 196.264383 913.500326 186.604861 911.981323 185.182945 909.155025 182.542876 905.185809 178.844158ZM102.4 461.128719 0 461.128719 0 896.074709 512 896.074709 1024 896.074709 1024 461.128719 153.6 461.128719 153.6 460.531049 102.4 460.531049 102.4 461.128719ZM208.2 711 208.2 819.2 157.6 819.2 157.6 528 269 528C301.533495 528 327.366571 536.466581 346.5 553.4 365.633429 570.333419 375.2 592.733195 375.2 620.6 375.2 649.133476 365.833427 671.333254 347.1 687.2 328.366573 703.066746 302.133502 711 268.4 711L208.2 711ZM208.2 670.4 269 670.4C287.00009 670.4 300.733286 666.166709 310.2 657.7 319.666714 649.233291 324.4 637.000079 324.4 621 324.4 605.266588 319.600047 592.700047 310 583.3 300.399951 573.899953 287.200083 569.066669 270.4 568.8L208.2 568.8 208.2 670.4ZM419.4 819.2 419.4 528 505.4 528C531.133461 528 553.966566 533.733276 573.9 545.2 593.833434 556.666724 609.266611 572.933229 620.2 594 631.133389 615.066771 636.6 639.199863 636.6 666.4L636.6 681C636.6 708.600139 631.100055 732.866562 620.1 753.8 609.099945 774.733438 593.433436 790.866609 573.1 802.2 552.766564 813.533391 529.466799 819.2 503.2 819.2L419.4 819.2ZM470 568.8 470 778.8 503 778.8C529.533466 778.8 549.89993 770.500083 564.1 753.9 578.30007 737.299917 585.533331 713.466822 585.8 682.4L585.8 666.2C585.8 634.599842 578.933402 610.46675 565.2 593.8 551.466598 577.13325 531.533463 568.8 505.4 568.8L470 568.8ZM854.8 695.8 737.6 695.8 737.6 819.2 687 819.2 687 528 872 528 872 568.8 737.6 568.8 737.6 655.4 854.8 655.4 854.8 695.8Z"
|
||||
fill="#01A9FF"
|
||||
p-id="1380"
|
||||
></path>
|
||||
</svg>
|
||||
<image-preview
|
||||
v-if="
|
||||
scope.row.credentialType == 'JPG' ||
|
||||
scope.row.credentialType == 'PNG' ||
|
||||
scope.row.credentialType == 'JPEG'
|
||||
"
|
||||
:src="scope.row.credentialFile"
|
||||
:width="50"
|
||||
:height="50"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-download"
|
||||
@click="handledownload(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:list']"
|
||||
>下载证书</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:edit']"
|
||||
>修改</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:remove']"
|
||||
>删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
<el-dialog :title="title" v-if="open" :visible.sync="open" width="680px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
|
||||
<el-table-column
|
||||
label="操作"
|
||||
align="center"
|
||||
width="180"
|
||||
class-name="small-padding fixed-width"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-download"
|
||||
@click="handledownload(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:list']"
|
||||
>下载证书</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:edit']"
|
||||
>修改</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['project:surProjectSpecial:remove']"
|
||||
>删除</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
<el-dialog
|
||||
:title="title"
|
||||
v-if="open"
|
||||
: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="120px">
|
||||
<el-form-item label="项目名称" prop="projectName">
|
||||
<el-input v-model="form.projectName" placeholder="请输入项目名称" disabled/>
|
||||
</el-form-item>
|
||||
<el-form-item label="人员姓名" prop="name">
|
||||
<el-input v-model="form.name" placeholder="请输入人员姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="sex">
|
||||
<el-select v-model="form.sex" placeholder="请选择性别" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_user_sex"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="联系方式" prop="phoneNumber">
|
||||
<el-input v-model="form.phoneNumber" placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否有证书" prop="isCredential" v-if="false">
|
||||
<el-select v-model="form.isCredential" placeholder="请选择是否有证书" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_yes_no"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- v-show="credential" -->
|
||||
<el-form-item label="证书编号" prop="credentialNumber">
|
||||
<el-input v-model="form.credentialNumber" placeholder="请输入证书编号" />
|
||||
</el-form-item>
|
||||
<!-- v-show="credential" -->
|
||||
<el-form-item label="证书过期时间" prop="credentialExpirationTime">
|
||||
<el-date-picker clearable
|
||||
v-model="form.credentialExpirationTime"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd"
|
||||
placeholder="请选择证书过期时间" style="width: 100%;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="证书附件" prop="remark">
|
||||
<FileUpload @input="fileInput" :limit="1" :fileType="['pdf','png','jpg','jpeg']" v-model="files"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" placeholder="请输入备注" />
|
||||
</el-form-item>
|
||||
<el-form-item label="项目名称" prop="projectName">
|
||||
<el-input v-model="form.projectName" placeholder="请输入项目名称" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="人员姓名" prop="name">
|
||||
<el-input v-model="form.name" placeholder="请输入人员姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="sex">
|
||||
<el-select v-model="form.sex" placeholder="请选择性别" style="width: 100%">
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_user_sex"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="联系方式" prop="phoneNumber">
|
||||
<el-input v-model="form.phoneNumber" placeholder="请输入联系方式" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否有证书" prop="isCredential" v-if="false">
|
||||
<el-select
|
||||
v-model="form.isCredential"
|
||||
placeholder="请选择是否有证书"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_yes_no"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- v-show="credential" -->
|
||||
<el-form-item label="证书编号" prop="credentialNumber">
|
||||
<el-input v-model="form.credentialNumber" placeholder="请输入证书编号" />
|
||||
</el-form-item>
|
||||
<!-- v-show="credential" -->
|
||||
<el-form-item label="证书过期时间" prop="credentialExpirationTime">
|
||||
<el-date-picker
|
||||
clearable
|
||||
v-model="form.credentialExpirationTime"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd"
|
||||
placeholder="请选择证书过期时间"
|
||||
style="width: 100%"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="证书附件" prop="remark">
|
||||
<FileUpload
|
||||
@input="fileInput"
|
||||
:limit="1"
|
||||
:fileType="['pdf', 'png', 'jpg', 'jpeg']"
|
||||
v-model="files"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" placeholder="请输入备注" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listSurProjectSpecial, getSurProjectSpecial, delSurProjectSpecial, addSurProjectSpecial, updateSurProjectSpecial } from "@/api/project/surProjectSpecial";
|
||||
<script>
|
||||
import {
|
||||
listSurProjectSpecial,
|
||||
getSurProjectSpecial,
|
||||
delSurProjectSpecial,
|
||||
addSurProjectSpecial,
|
||||
updateSurProjectSpecial,
|
||||
} from "@/api/project/surProjectSpecial";
|
||||
|
||||
export default {
|
||||
components: {},
|
||||
props: {
|
||||
formData: {
|
||||
projectId: String,
|
||||
projectName: String
|
||||
}
|
||||
export default {
|
||||
components: {},
|
||||
props: {
|
||||
formData: {
|
||||
projectId: String,
|
||||
projectName: String,
|
||||
},
|
||||
dicts: ['sys_yes_no', 'sys_user_sex'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
credential: false,
|
||||
surProjectSpecialList: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 20,
|
||||
projectId: null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
files: [],
|
||||
// 表单校验
|
||||
rules: {
|
||||
name: [
|
||||
{ required: true, message: "请输入人员姓名", trigger: "blur" },
|
||||
{ maxlength: 20, message: "人员姓名最多20字符", trigger: "blur" }
|
||||
],
|
||||
sex: [
|
||||
{ required: true, message: "请选择人员性别", trigger: "blur" }
|
||||
],
|
||||
phoneNumber: [
|
||||
{ required: true, message: "请输入联系方式", trigger: "blur" },
|
||||
{
|
||||
validator: function(rule, value, callback) {
|
||||
if (/^1[34578]\d{9}$/.test(value) == false) {
|
||||
callback(new Error("联系手机格式错误"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
},
|
||||
trigger: "blur"
|
||||
}
|
||||
],
|
||||
isCredential: [
|
||||
{ required: false, message: "请选择是否有证书", trigger: "blur" }
|
||||
],
|
||||
credentialNumber: [
|
||||
{ required: true, message: "请输入证书编号", trigger: "blur" },
|
||||
{ maxlength: 50, message: "证书编号最多50字符", trigger: "blur" }
|
||||
],
|
||||
credentialExpirationTime: [
|
||||
{ required: true, message: "请选择证书过期时间", trigger: "blur" }
|
||||
],
|
||||
remark: [
|
||||
{ required: false, message: "请输入备注", trigger: "blur" },
|
||||
{ maxlength: 200, message: "备注最多200字符", trigger: "blur" }
|
||||
]
|
||||
}
|
||||
},
|
||||
dicts: ["sys_yes_no", "sys_user_sex"],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
credential: false,
|
||||
surProjectSpecialList: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 20,
|
||||
projectId: null,
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
files: [],
|
||||
// 表单校验
|
||||
rules: {
|
||||
name: [
|
||||
{ required: true, message: "请输入人员姓名", trigger: "blur" },
|
||||
{ maxlength: 20, message: "人员姓名最多20字符", trigger: "blur" },
|
||||
],
|
||||
sex: [{ required: true, message: "请选择人员性别", trigger: "blur" }],
|
||||
phoneNumber: [
|
||||
{ required: true, message: "请输入联系方式", trigger: "blur" },
|
||||
{
|
||||
validator: function (rule, value, callback) {
|
||||
if (/^1[34578]\d{9}$/.test(value) == false) {
|
||||
callback(new Error("联系手机格式错误"));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
},
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
isCredential: [{ required: false, message: "请选择是否有证书", trigger: "blur" }],
|
||||
credentialNumber: [
|
||||
{ required: true, message: "请输入证书编号", trigger: "blur" },
|
||||
{ maxlength: 50, message: "证书编号最多50字符", trigger: "blur" },
|
||||
],
|
||||
credentialExpirationTime: [
|
||||
{ required: true, message: "请选择证书过期时间", trigger: "blur" },
|
||||
],
|
||||
remark: [
|
||||
{ required: false, message: "请输入备注", trigger: "blur" },
|
||||
{ maxlength: 200, message: "备注最多200字符", trigger: "blur" },
|
||||
],
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {},
|
||||
watch: {
|
||||
formData: {
|
||||
handler(value) {
|
||||
this.formData = value;
|
||||
},
|
||||
immediate: true,
|
||||
},
|
||||
},
|
||||
created() {},
|
||||
mounted() {},
|
||||
beforeDestroy() {},
|
||||
methods: {
|
||||
fileInput(files) {
|
||||
if (files.length > 0) {
|
||||
this.form.credentialFile = files[0].url;
|
||||
} else {
|
||||
this.form.credentialFile = null;
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {
|
||||
formData: {
|
||||
handler(value) {
|
||||
this.formData = value
|
||||
},
|
||||
immediate: true
|
||||
}
|
||||
// 是否有证书
|
||||
credentialChange(val) {
|
||||
if (val == "Y") {
|
||||
this.credential = true;
|
||||
this.rules.credentialNumber[0].required = true;
|
||||
this.rules.credentialExpirationTime[0].required = true;
|
||||
} else {
|
||||
this.credential = false;
|
||||
this.credentialNumber = null;
|
||||
this.credentialExpirationTime = null;
|
||||
this.rules.credentialNumber[0].required = false;
|
||||
this.rules.credentialExpirationTime[0].required = false;
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
onOpen() {
|
||||
this.getList();
|
||||
},
|
||||
mounted() {
|
||||
|
||||
onClose() {},
|
||||
/** 查询特种人员列表 */
|
||||
getList() {
|
||||
if (this.formData.projectId) {
|
||||
this.loading = true;
|
||||
this.queryParams.projectId = this.formData.projectId;
|
||||
listSurProjectSpecial(this.queryParams).then((response) => {
|
||||
this.surProjectSpecialList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
beforeDestroy() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
fileInput(files){
|
||||
if(files.length>0){
|
||||
this.form.credentialFile = files[0].url;
|
||||
}else{
|
||||
this.form.credentialFile = null;
|
||||
}
|
||||
},
|
||||
// 是否有证书
|
||||
credentialChange(val){
|
||||
if(val=="Y"){
|
||||
this.credential = true;
|
||||
this.rules.credentialNumber[0].required = true;
|
||||
this.rules.credentialExpirationTime[0].required = true;
|
||||
}else{
|
||||
this.credential = false;
|
||||
this.credentialNumber = null;
|
||||
this.credentialExpirationTime = null;
|
||||
this.rules.credentialNumber[0].required = false;
|
||||
this.rules.credentialExpirationTime[0].required = false;
|
||||
}
|
||||
},
|
||||
onOpen() {
|
||||
this.getList();
|
||||
},
|
||||
onClose() {},
|
||||
/** 查询特种人员列表 */
|
||||
getList() {
|
||||
if(this.formData.projectId){
|
||||
this.loading = true;
|
||||
this.queryParams.projectId = this.formData.projectId;
|
||||
listSurProjectSpecial(this.queryParams).then(response => {
|
||||
this.surProjectSpecialList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
}
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
this.ids = selection.map((item) => item.id);
|
||||
this.single = selection.length !== 1;
|
||||
this.multiple = !selection.length;
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
|
@ -312,7 +405,7 @@
|
|||
createTime: null,
|
||||
updateBy: null,
|
||||
updateTime: null,
|
||||
remark: null
|
||||
remark: null,
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
|
@ -320,8 +413,8 @@
|
|||
handleAdd() {
|
||||
this.reset();
|
||||
this.credential = false;
|
||||
this.form.projectId=this.formData.projectId;
|
||||
this.form.projectName=this.formData.projectName;
|
||||
this.form.projectId = this.formData.projectId;
|
||||
this.form.projectName = this.formData.projectName;
|
||||
this.open = true;
|
||||
this.title = "添加特种人员";
|
||||
},
|
||||
|
@ -333,8 +426,8 @@
|
|||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids
|
||||
getSurProjectSpecial(id).then(response => {
|
||||
const id = row.id || this.ids;
|
||||
getSurProjectSpecial(id).then((response) => {
|
||||
this.form = response.data;
|
||||
this.files = this.form.credentialFile;
|
||||
this.open = true;
|
||||
|
@ -343,21 +436,22 @@
|
|||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
this.$refs["form"].validate((valid) => {
|
||||
if (valid) {
|
||||
if(!this.form.credentialFile){
|
||||
if (!this.form.credentialFile) {
|
||||
this.$modal.msgWarning("请上传证书附件");
|
||||
return false;
|
||||
}
|
||||
if (this.form.id != null) {
|
||||
updateSurProjectSpecial(this.form).then(response => {
|
||||
updateSurProjectSpecial(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
this.form.isCredential="Y";
|
||||
this.form.isDel=0;
|
||||
addSurProjectSpecial(this.form).then(response => {
|
||||
this.form.isCredential = "Y";
|
||||
this.form.isDel = 0;
|
||||
addSurProjectSpecial(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("添加成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
|
@ -369,29 +463,33 @@
|
|||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除特种人员编号为"' + ids + '"的数据项?').then(function() {
|
||||
return delSurProjectSpecial(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => {});
|
||||
this.$modal
|
||||
.confirm('是否确认删除特种人员编号为"' + ids + '"的数据项?')
|
||||
.then(function () {
|
||||
return delSurProjectSpecial(ids);
|
||||
})
|
||||
.then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
})
|
||||
.catch(() => {});
|
||||
},
|
||||
/** 下载证书 */
|
||||
handledownload(row){
|
||||
window.open('/jhapi'+row.credentialFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
@import '@/styles/mixin.scss';
|
||||
handledownload(row) {
|
||||
window.open("/jhapi" + row.credentialFile);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
@import "@/styles/mixin.scss";
|
||||
|
||||
::v-deep .el-drawer__header {
|
||||
display: none;
|
||||
}
|
||||
@include action-bar;
|
||||
::v-deep .el-drawer__header {
|
||||
display: none;
|
||||
}
|
||||
@include action-bar;
|
||||
|
||||
.json-editor{
|
||||
height: calc(100vh - 33px);
|
||||
}
|
||||
.json-editor {
|
||||
height: calc(100vh - 33px);
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -26,7 +26,7 @@ import com.ruoyi.common.utils.poi.ExcelUtil;
|
|||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 项目进度Controller
|
||||
* 形象进度Controller
|
||||
*
|
||||
* @author Jiangdu
|
||||
* @date 2023-07-29
|
||||
|
@ -42,7 +42,7 @@ public class SurProjectScheduleController extends BaseController
|
|||
private ISysDeptService sysDeptService;
|
||||
|
||||
/**
|
||||
* 查询项目进度列表
|
||||
* 查询形象进度列表
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:list')")
|
||||
@GetMapping("/list")
|
||||
|
@ -63,10 +63,10 @@ public class SurProjectScheduleController extends BaseController
|
|||
}
|
||||
|
||||
/**
|
||||
* 导出项目进度列表
|
||||
* 导出形象进度列表
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:export')")
|
||||
@Log(title = "项目进度", businessType = BusinessType.EXPORT)
|
||||
@Log(title = "形象进度", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(HttpServletResponse response, SurProjectSchedule surProjectSchedule)
|
||||
{
|
||||
|
@ -80,11 +80,11 @@ public class SurProjectScheduleController extends BaseController
|
|||
surProjectSchedule.setCreateBy(Convert.toStr(getLoginUser().getUser().getUserId()));
|
||||
List<SurProjectSchedule> list = surProjectScheduleService.selectSurProjectScheduleList(surProjectSchedule);
|
||||
ExcelUtil<SurProjectSchedule> util = new ExcelUtil<SurProjectSchedule>(SurProjectSchedule.class);
|
||||
util.exportExcel(response, list, "项目进度数据");
|
||||
util.exportExcel(response, list, "形象进度数据");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目进度详细信息
|
||||
* 获取形象进度详细信息
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:query')")
|
||||
@GetMapping(value = "/{id}")
|
||||
|
@ -94,10 +94,10 @@ public class SurProjectScheduleController extends BaseController
|
|||
}
|
||||
|
||||
/**
|
||||
* 新增项目进度
|
||||
* 新增形象进度
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:add')")
|
||||
@Log(title = "项目进度", businessType = BusinessType.INSERT)
|
||||
@Log(title = "形象进度", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public AjaxResult add(@RequestBody SurProjectSchedule surProjectSchedule)
|
||||
{
|
||||
|
@ -105,10 +105,10 @@ public class SurProjectScheduleController extends BaseController
|
|||
}
|
||||
|
||||
/**
|
||||
* 修改项目进度
|
||||
* 修改形象进度
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:edit')")
|
||||
@Log(title = "项目进度", businessType = BusinessType.UPDATE)
|
||||
@Log(title = "形象进度", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public AjaxResult edit(@RequestBody SurProjectSchedule surProjectSchedule)
|
||||
{
|
||||
|
@ -116,10 +116,10 @@ public class SurProjectScheduleController extends BaseController
|
|||
}
|
||||
|
||||
/**
|
||||
* 删除项目进度
|
||||
* 删除形象进度
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:surProjectSchedule:remove')")
|
||||
@Log(title = "项目进度", businessType = BusinessType.DELETE)
|
||||
@Log(title = "形象进度", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
|
|
|
@ -133,8 +133,8 @@ public class SurProject extends BaseEntity
|
|||
@Excel(name = "挂账金额")
|
||||
private String onAccountAmount;
|
||||
|
||||
/** 项目进度情况 */
|
||||
@Excel(name = "项目进度情况")
|
||||
/** 形象进度情况 */
|
||||
@Excel(name = "形象进度情况")
|
||||
private String projectSchedule;
|
||||
|
||||
/** 项目概述 */
|
||||
|
|
|
@ -6,7 +6,7 @@ import com.ruoyi.common.annotation.Excel;
|
|||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
/**
|
||||
* 项目进度对象 sur_project_schedule
|
||||
* 形象进度对象 sur_project_schedule
|
||||
*
|
||||
* @author Jiangdu
|
||||
* @date 2023-07-29
|
||||
|
|
|
@ -4,7 +4,7 @@ import java.util.List;
|
|||
import com.yanzhu.jh.project.domain.SurProjectSchedule;
|
||||
|
||||
/**
|
||||
* 项目进度Mapper接口
|
||||
* 形象进度Mapper接口
|
||||
*
|
||||
* @author Jiangdu
|
||||
* @date 2023-07-29
|
||||
|
@ -12,49 +12,49 @@ import com.yanzhu.jh.project.domain.SurProjectSchedule;
|
|||
public interface SurProjectScheduleMapper
|
||||
{
|
||||
/**
|
||||
* 查询项目进度
|
||||
* 查询形象进度
|
||||
*
|
||||
* @param id 项目进度主键
|
||||
* @return 项目进度
|
||||
* @param id 形象进度主键
|
||||
* @return 形象进度
|
||||
*/
|
||||
public SurProjectSchedule selectSurProjectScheduleById(Long id);
|
||||
|
||||
/**
|
||||
* 查询项目进度列表
|
||||
* 查询形象进度列表
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @return 项目进度集合
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 形象进度集合
|
||||
*/
|
||||
public List<SurProjectSchedule> selectSurProjectScheduleList(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
|
||||
public SurProjectSchedule getProjectConstructionProgress(Long projectId);
|
||||
/**
|
||||
* 新增项目进度
|
||||
* 新增形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertSurProjectSchedule(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
/**
|
||||
* 修改项目进度
|
||||
* 修改形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateSurProjectSchedule(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
/**
|
||||
* 删除项目进度
|
||||
* 删除形象进度
|
||||
*
|
||||
* @param id 项目进度主键
|
||||
* @param id 形象进度主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSurProjectScheduleById(Long id);
|
||||
|
||||
/**
|
||||
* 批量删除项目进度
|
||||
* 批量删除形象进度
|
||||
*
|
||||
* @param ids 需要删除的数据主键集合
|
||||
* @return 结果
|
||||
|
|
|
@ -4,7 +4,7 @@ import java.util.List;
|
|||
import com.yanzhu.jh.project.domain.SurProjectSchedule;
|
||||
|
||||
/**
|
||||
* 项目进度Service接口
|
||||
* 形象进度Service接口
|
||||
*
|
||||
* @author Jiangdu
|
||||
* @date 2023-07-29
|
||||
|
@ -12,50 +12,50 @@ import com.yanzhu.jh.project.domain.SurProjectSchedule;
|
|||
public interface ISurProjectScheduleService
|
||||
{
|
||||
/**
|
||||
* 查询项目进度
|
||||
* 查询形象进度
|
||||
*
|
||||
* @param Id 项目进度主键
|
||||
* @return 项目进度
|
||||
* @param Id 形象进度主键
|
||||
* @return 形象进度
|
||||
*/
|
||||
public SurProjectSchedule selectSurProjectScheduleById(Long id);
|
||||
|
||||
/**
|
||||
* 查询项目进度列表
|
||||
* 查询形象进度列表
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @return 项目进度集合
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 形象进度集合
|
||||
*/
|
||||
public List<SurProjectSchedule> selectSurProjectScheduleList(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
public SurProjectSchedule getProjectConstructionProgress(Long projectId);
|
||||
/**
|
||||
* 新增项目进度
|
||||
* 新增形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertSurProjectSchedule(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
/**
|
||||
* 修改项目进度
|
||||
* 修改形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateSurProjectSchedule(SurProjectSchedule surProjectSchedule);
|
||||
|
||||
/**
|
||||
* 批量删除项目进度
|
||||
* 批量删除形象进度
|
||||
*
|
||||
* @param ids 需要删除的项目进度主键集合
|
||||
* @param ids 需要删除的形象进度主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSurProjectScheduleByIds(Long[] ids);
|
||||
|
||||
/**
|
||||
* 删除项目进度信息
|
||||
* 删除形象进度信息
|
||||
*
|
||||
* @param id 项目进度主键
|
||||
* @param id 形象进度主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteSurProjectScheduleById(Long id);
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package com.yanzhu.jh.project.service.impl;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -8,6 +10,8 @@ import com.yanzhu.jh.project.mapper.SurProjectInsuranceMapper;
|
|||
import com.yanzhu.jh.project.domain.SurProjectInsurance;
|
||||
import com.yanzhu.jh.project.service.ISurProjectInsuranceService;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
/**
|
||||
* 项目保险Service业务层处理
|
||||
*
|
||||
|
@ -63,10 +67,24 @@ public class SurProjectInsuranceServiceImpl implements ISurProjectInsuranceServi
|
|||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public int insertSurProjectInsurance(SurProjectInsurance surProjectInsurance)
|
||||
{
|
||||
surProjectInsurance.setCreateBy(SecurityUtils.getUsername());
|
||||
surProjectInsurance.setCreateTime(DateUtils.getNowDate());
|
||||
surProjectInsurance.setInsuranceState(PublicStateEnum.YES.getCode());
|
||||
surProjectInsurance.setIsDel(PublicStateEnum.OK.getCode());
|
||||
int res = -1;
|
||||
//效验保险是否已办理
|
||||
SurProjectInsurance _search = new SurProjectInsurance();
|
||||
_search.setIsDel(surProjectInsurance.getIsDel());
|
||||
_search.setInsuranceType(surProjectInsurance.getInsuranceType());
|
||||
_search.setProjectId(surProjectInsurance.getProjectId());
|
||||
_search.setDeptId(surProjectInsurance.getDeptId());
|
||||
List<SurProjectInsurance> list = surProjectInsuranceMapper.selectSurProjectInsuranceList(_search);
|
||||
if(list!=null && list.size()>0){
|
||||
return res;
|
||||
}
|
||||
return surProjectInsuranceMapper.insertSurProjectInsurance(surProjectInsurance);
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ import com.yanzhu.jh.project.domain.SurProjectSchedule;
|
|||
import com.yanzhu.jh.project.service.ISurProjectScheduleService;
|
||||
|
||||
/**
|
||||
* 项目进度Service业务层处理
|
||||
* 形象进度Service业务层处理
|
||||
*
|
||||
* @author Jiangdu
|
||||
* @date 2023-07-29
|
||||
|
@ -21,10 +21,10 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
private SurProjectScheduleMapper surProjectScheduleMapper;
|
||||
|
||||
/**
|
||||
* 查询项目进度
|
||||
* 查询形象进度
|
||||
*
|
||||
* @param id 项目进度主键
|
||||
* @return 项目进度
|
||||
* @param id 形象进度主键
|
||||
* @return 形象进度
|
||||
*/
|
||||
@Override
|
||||
public SurProjectSchedule selectSurProjectScheduleById(Long id)
|
||||
|
@ -33,10 +33,10 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
}
|
||||
|
||||
/**
|
||||
* 查询项目进度列表
|
||||
* 查询形象进度列表
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @return 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 形象进度
|
||||
*/
|
||||
@Override
|
||||
public List<SurProjectSchedule> selectSurProjectScheduleList(SurProjectSchedule surProjectSchedule)
|
||||
|
@ -50,9 +50,9 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
}
|
||||
|
||||
/**
|
||||
* 新增项目进度
|
||||
* 新增形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
|
@ -63,9 +63,9 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
}
|
||||
|
||||
/**
|
||||
* 修改项目进度
|
||||
* 修改形象进度
|
||||
*
|
||||
* @param surProjectSchedule 项目进度
|
||||
* @param surProjectSchedule 形象进度
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
|
@ -76,9 +76,9 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
}
|
||||
|
||||
/**
|
||||
* 批量删除项目进度
|
||||
* 批量删除形象进度
|
||||
*
|
||||
* @param ids 需要删除的项目进度主键
|
||||
* @param ids 需要删除的形象进度主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
|
@ -88,9 +88,9 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
|
|||
}
|
||||
|
||||
/**
|
||||
* 删除项目进度信息
|
||||
* 删除形象进度信息
|
||||
*
|
||||
* @param id 项目进度主键
|
||||
* @param id 形象进度主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
|
|
|
@ -71,7 +71,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<where>
|
||||
and sdd.dict_type = 'sur_project_insurance_type'
|
||||
<if test="projectId != null "> and sp.id = #{projectId}</if>
|
||||
<if test="deptId != null "> and dept_id = </if>
|
||||
</where>
|
||||
ORDER BY
|
||||
sp.projectSort,
|
||||
|
|
Loading…
Reference in New Issue