Compare commits

...

2 Commits

Author SHA1 Message Date
姜玉琦 b842ee2035 Merge branch 'dev' of http://62.234.3.186:3000/sxyanzhu/jhprjv2 into dev 2023-09-21 23:17:26 +08:00
姜玉琦 024956fc84 提交代码 2023-09-21 23:17:15 +08:00
34 changed files with 1450 additions and 121 deletions

View File

@ -44,6 +44,7 @@ public class BaseEntity implements Serializable
private String nowUser;
private String nowUserName;
private String projectDeptId;
private String comment;
/** 请求参数 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@ -157,6 +158,14 @@ public class BaseEntity implements Serializable
this.projectDeptId = projectDeptId;
}
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
public Map<String, Object> getParams()
{
if (params == null)

View File

@ -16,6 +16,16 @@ public enum PublicStateEnum {
PROJECT_CHECK_POSITION_TYPE("1", "默认工序部位类型"),
/**********************************项目验收***************************************/
/**********************************审批相关***************************************/
AUDIT_TYPE_QYFS("1", "取样复试"),
AUDIT_TYPE_CLFY("4", "材料封样"),
AUDIT_TYPE_JPYS("3", "举牌验收"),
AUDIT_TYPE_SCSL("2", "实测实量"),
AUDITINFO_DSH("1", "待审核"),
AUDITINFO_SHBH("3", "审核驳回"),
AUDITINFO_SHTG("4", "审核通过"),
/**********************************审批相关***************************************/
/**********************************视频设备***************************************/
VIDEO_ONLINE("1", "在线"),
VIDEO_OFFLINE("2", "离线"),

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

View File

@ -68,6 +68,14 @@ const selectProjectUnitUser = (query) => {
})
}
const selectProjectAuditinfo = (query) => {
return request({
url: '/publics/selectProjectAuditinfo',
method: 'get',
params: query
})
}
export default{
getMyDeptList,
getDeptTree,
@ -78,5 +86,6 @@ export default{
queryUnitList,
selectProjectAllUnitUser,
selectProjectUnitUser,
selectProjectAuditinfo,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -38,7 +38,7 @@
>添加</el-button
>
</el-col>
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -61,7 +61,7 @@
v-hasPermi="['project:checkDetection:remove']"
>删除</el-button
>
</el-col>
</el-col> -->
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
@ -80,7 +80,6 @@
:data="checkDetectionList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="送检类型" align="center" prop="checkType">
<template slot-scope="scope">
<dict-tag
@ -93,16 +92,13 @@
label="材料名称"
align="center"
prop="materialName"
width="100"
show-overflow-tooltip
/>
<el-table-column
label="使用部位"
align="center"
prop="usePosition"
width="120"
show-overflow-tooltip
/>
width="160"
>
<template slot-scope="scope">
<div>{{ scope.row.materialName }}</div>
<div>{{ scope.row.usePosition }}</div>
</template>
</el-table-column>
<el-table-column
label="取样数量"
align="center"
@ -117,7 +113,7 @@
</template>
</el-table-column>
<el-table-column
label="见证人"
label="监理人"
align="left"
prop="witnessUser"
width="120"
@ -128,16 +124,10 @@
<div>{{ scope.row.witnessUser }}</div>
</template>
</el-table-column>
<el-table-column
label="实验室名称"
align="center"
prop="laboratoryName"
width="120"
show-overflow-tooltip
/>
<el-table-column label="送检时间" align="center" prop="checkTime" width="95">
<el-table-column label="送检时间" align="center" prop="checkTime" width="150">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.checkTime, "{y}-{m}-{d}") }}</span>
<div>{{ parseTime(scope.row.checkTime, "{y}-{m}-{d}") }}</div>
<div>{{ scope.row.laboratoryName }}</div>
</template>
</el-table-column>
<el-table-column label="检测结果" align="center" prop="detectionResult">
@ -148,6 +138,14 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag
:options="dict.type.project_check_status"
:value="scope.row.approveStatus"
/>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -174,6 +172,14 @@
v-hasPermi="['project:checkDetection:editResult']"
>登记检测结果</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.checkState == '1'"
size="mini"
@ -184,6 +190,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -263,10 +270,10 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="见证人" prop="witnessUser">
<el-form-item label="监理人" prop="witnessUser">
<el-select
v-model="form.witnessUser"
placeholder="请选择见证人"
placeholder="请选择监理人"
filterable
style="width: 100%"
@change="selectWitnessUser"
@ -372,7 +379,7 @@
:disabled="true"
/>
</el-form-item>
<el-form-item label="检测结果" prop="detectionResult">
<el-form-item label="检测结果" prop="detectionResult" v-if="false">
<el-radio
v-model="resultform.detectionResult"
v-for="dict in dict.type.project_checking_result"
@ -398,6 +405,7 @@
</div>
</el-dialog>
</el-drawer>
<indexDrawer ref="indexDrawer"/>
</div>
</template>
@ -411,10 +419,14 @@ import {
findCheckDetectionCount,
updateCheckDetectionResult,
} from "@/api/project/checkDetection";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
components: {
indexDrawer,
},
props: {},
dicts: ["sys_yes_no", "project_checking_result", "check_detection_check_type"],
dicts: ["sys_yes_no","project_check_status", "project_checking_result", "check_detection_check_type"],
data() {
return {
showViewer: false,
@ -470,7 +482,7 @@ export default {
{ required: true, message: "请选择是否提供合格证", trigger: "blur" },
],
witnessUser: [
{ required: true, message: "请选择监理单位见证人", trigger: "blur" },
{ required: true, message: "请选择监理单位监理人", trigger: "blur" },
],
laboratoryName: [
{ required: true, message: "请输入实验室名称", trigger: "blur" },
@ -479,7 +491,7 @@ export default {
checkTime: [{ required: true, message: "请选择送检时间", trigger: "blur" }],
},
resultrules: {
detectionResult: [{ required: true, message: "请选择检测结果", trigger: "blur" }],
detectionResult: [{ required: false, message: "请选择检测结果", trigger: "blur" }],
detectionFile: [{ required: true, message: "请上传检测报告", trigger: "blur" }],
},
deptUserData: [],
@ -488,6 +500,7 @@ export default {
sjz: "送检中0",
ywc: "已完成0",
},
checkDetectionList:[],
project: null,
nodes: [],
unitActiveName: "",
@ -517,10 +530,13 @@ export default {
this.drawerTitle = project.projectName;
this.onOpen = true;
this.queryParams.projectId = project.id;
this.tabs.all="全部数据0";
this.tabs.sjz="送检中0";
this.tabs.ywc="已完成0";
this.$api.publics
.queryUnitList({
projectId: project.id,
unitTypes: "2,4".split(","),
unitType: 2
})
.then((d) => {
this.nodes = d.rows;
@ -679,6 +695,7 @@ export default {
if (valid) {
//
this.resultform.checkState = "2";
this.resultform.approveStatus = "1";
updateCheckDetectionResult(this.resultform).then((response) => {
this.$modal.msgSuccess("登记结果成功");
this.resultopen = false;
@ -701,7 +718,7 @@ export default {
})
.catch(() => {});
},
/** 选择见证人*/
/** 选择监理人*/
selectWitnessUser(val) {
this.deptUserData.forEach((item) => {
item.userinfoList.forEach((u) => {
@ -718,7 +735,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="材料取样复试";
row.logType="1";
this.$refs.indexDrawer.show(row);
}
},
};
</script>
<style lang="scss" scoped></style>

View File

@ -48,6 +48,20 @@
/>
</el-select>
</el-form-item>
<el-form-item label="审核状态" prop="approveStatus">
<el-select
v-model="queryParams.approveStatus"
placeholder="请选择审核状态"
clearable
>
<el-option
v-for="dict in dict.type.project_check_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="送检时间">
<el-date-picker
v-model="daterangeCheckTime"
@ -75,10 +89,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="见证人" prop="witnessUserName">
<el-form-item label="监理人" prop="witnessUserName">
<el-input
v-model="queryParams.witnessUserName"
placeholder="请输入见证人名称"
placeholder="请输入监理人名称"
clearable
@keyup.enter.native="handleQuery"
/>
@ -99,7 +113,7 @@
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-row :gutter="10" class="mb8"> -->
<!-- <el-col :span="1.5">
<el-button
type="primary"
@ -111,7 +125,7 @@
>新增</el-button
>
</el-col> -->
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -147,7 +161,7 @@
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</el-row> -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane :label="tabs.all" name="all"></el-tab-pane>
<el-tab-pane :label="tabs.sjz" name="sjz"></el-tab-pane>
@ -210,7 +224,7 @@
</template>
</el-table-column>
<el-table-column
label="见证人"
label="监理人"
align="left"
prop="witnessUser"
width="140"
@ -241,6 +255,14 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag
:options="dict.type.project_check_status"
:value="scope.row.approveStatus"
/>
</template>
</el-table-column>
<el-table-column label="提交用户" align="center" prop="createBy" width="110" />
<el-table-column label="提交时间" align="center" prop="createTime" width="95">
<template slot-scope="scope">
@ -253,13 +275,7 @@
<span>{{ parseTime(scope.row.checkTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
fixed="right"
class-name="small-padding fixed-width"
width="150"
>
<el-table-column label="检测报告" align="center" prop="updateTime" width="80">
<template slot-scope="scope">
<el-button
v-if="scope.row.checkState == '2'"
@ -270,6 +286,16 @@
v-hasPermi="['project:surProjectSpecial:list']"
>下载检测报告</el-button
>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
fixed="right"
class-name="small-padding fixed-width"
width="120"
>
<template slot-scope="scope">
<el-button
v-if="scope.row.checkState == '1'"
size="mini"
@ -280,6 +306,14 @@
v-hasPermi="['project:checkDetection:editResult']"
>登记检测结果</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.checkState == '1'"
size="mini"
@ -290,6 +324,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -363,10 +398,10 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="见证人" prop="witnessUser">
<el-form-item label="监理人" prop="witnessUser">
<el-select
v-model="form.witnessUser"
placeholder="请选择见证人"
placeholder="请选择监理人"
filterable
style="width: 100%"
@change="selectWitnessUser"
@ -470,7 +505,7 @@
:disabled="true"
/>
</el-form-item>
<el-form-item label="检测结果" prop="detectionResult">
<el-form-item label="检测结果" prop="detectionResult" v-if="false">
<el-radio
v-model="resultform.detectionResult"
v-for="dict in dict.type.project_checking_result"
@ -495,6 +530,7 @@
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<indexDrawer ref="indexDrawer"/>
</div>
</template>
@ -508,10 +544,14 @@ import {
findCheckDetectionCount,
updateCheckDetectionResult,
} from "@/api/project/checkDetection";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "CheckDetection",
dicts: ["sys_yes_no", "project_checking_result", "check_detection_check_type"],
components: {
indexDrawer,
},
dicts: ["sys_yes_no","project_check_status", "project_checking_result", "check_detection_check_type"],
data() {
return {
//
@ -554,6 +594,7 @@ export default {
checkState: null,
detectionResult: null,
activeName: "sjz",
approveStatus:null,
},
activeName: "sjz",
//
@ -583,7 +624,7 @@ export default {
{ required: true, message: "请选择是否提供合格证", trigger: "blur" },
],
witnessUser: [
{ required: true, message: "请选择监理单位见证人", trigger: "blur" },
{ required: true, message: "请选择监理单位监理人", trigger: "blur" },
],
laboratoryName: [
{ required: true, message: "请输入实验室名称", trigger: "blur" },
@ -592,7 +633,7 @@ export default {
checkTime: [{ required: true, message: "请选择送检时间", trigger: "blur" }],
},
resultrules: {
detectionResult: [{ required: true, message: "请选择检测结果", trigger: "blur" }],
detectionResult: [{ required: false, message: "请选择检测结果", trigger: "blur" }],
detectionFile: [{ required: true, message: "请上传检测报告", trigger: "blur" }],
},
deptUserData: [],
@ -767,6 +808,7 @@ export default {
if (valid) {
//
this.resultform.checkState = "2";
this.resultform.approveStatus = "1";
updateCheckDetectionResult(this.resultform).then((response) => {
this.$modal.msgSuccess("登记结果成功");
this.resultopen = false;
@ -816,6 +858,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="材料取样复试";
row.logType="1";
this.$refs.indexDrawer.show(row);
}
},
};
</script>

View File

@ -67,6 +67,42 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="封样结果" prop="materialResult">
<el-select
v-model="queryParams.materialResult"
placeholder="请选择封样结果"
clearable
>
<el-option
v-for="dict in dict.type.project_checking_result"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="审核状态" prop="approveStatus">
<el-select
v-model="queryParams.approveStatus"
placeholder="请选择审核状态"
clearable
>
<el-option
v-for="dict in dict.type.project_check_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="监理人" prop="witnessUser">
<el-input
v-model="queryParams.witnessUser"
placeholder="请输入监理人名称/电话"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"
>搜索</el-button
@ -75,7 +111,7 @@
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-row :gutter="10" class="mb8"> -->
<!-- <el-col :span="1.5">
<el-button
type="primary"
@ -87,7 +123,7 @@
>新增</el-button
>
</el-col> -->
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -123,7 +159,7 @@
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</el-row> -->
<el-table
v-loading="loading"
@ -189,6 +225,28 @@
<span>{{ parseTime(scope.row.sealDate, "{y}-{m}-{d} {h}:{i}") }}</span>
</template>
</el-table-column>
<el-table-column
label="监理人"
align="center"
prop="witnessUser"
width="120"
show-overflow-tooltip
>
<template slot-scope="scope">
<div>{{ scope.row.witnessUserName }}</div>
<div>{{ scope.row.witnessUser }}</div>
</template>
</el-table-column>
<el-table-column label="封样结果" align="center" prop="materialResult">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_checking_result" :value="scope.row.materialResult" />
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column label="会签单" align="center" prop="signFiles" width="120">
<template slot-scope="scope">
<el-button
@ -231,6 +289,15 @@
>
<template slot-scope="scope">
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -239,6 +306,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -310,6 +378,29 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="监理人" prop="witnessUser">
<el-select
v-model="form.witnessUser"
placeholder="请选择监理人"
filterable
style="width: 100%"
@change="selectWitnessUser"
>
<el-option-group
v-for="group in deptUserData"
:key="group.unitId + ''"
:label="group.unitName + ' [' + group.unitTypeName + '] '"
>
<el-option
v-for="item in group.userinfoList"
:key="item.phonenumber"
:label="item.nickName + ' [' + item.jobTypeName + '] '"
:value="item.phonenumber"
>
</el-option>
</el-option-group>
</el-select>
</el-form-item>
<el-form-item label="会签单" prop="signFiles">
<file-upload
v-model="form.signFiles"
@ -333,6 +424,7 @@
</div>
</el-dialog>
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="previewList" />
<indexDrawer ref="indexDrawer"></indexDrawer>
</div>
</template>
@ -345,13 +437,15 @@ import {
updateMaterialSeal,
} from "@/api/project/materialSeal";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "MaterialSeal",
components: {
indexDrawer,
ElImageViewer,
},
dicts: ["sys_common_isdel"],
dicts: ["sys_common_isdel","project_check_status","project_checking_result"],
data() {
return {
showViewer: false,
@ -390,6 +484,9 @@ export default {
useBrand: null,
sealDate: null,
isDel: null,
approveStatus:null,
materialResult:null,
witnessUser:null,
},
//
form: {},
@ -413,12 +510,16 @@ export default {
{ max: 100, message: "使用品牌最多100字符", trigger: "blur" },
],
sealDate: [{ required: true, message: "请选择封样时间", trigger: "blur" }],
witnessUser: [
{ required: true, message: "请选择监理单位监理人", trigger: "blur" },
],
signFiles: [{ required: true, message: "请上传会签单附件", trigger: "blur" }],
alterationFiles: [
{ required: false, message: "请上传变更单附件", trigger: "blur" },
],
},
previewList: [],
deptUserData: [],
isOnly: false,
};
},
@ -552,11 +653,21 @@ export default {
this.open = true;
this.title = "修改材料封样";
});
//
this.$api.publics
.selectProjectUnitUser({
unitType: "4",
projectId: row.projectId,
})
.then((d) => {
this.deptUserData = d.data;
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateMaterialSeal(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -597,6 +708,16 @@ export default {
`materialSeal_${new Date().getTime()}.xlsx`
);
},
/** 选择见证人*/
selectWitnessUser(val) {
this.deptUserData.forEach((item) => {
item.userinfoList.forEach((u) => {
if (u.phonenumber == val) {
this.form.witnessUserName = u.nickName + " [" + u.jobTypeName + "] ";
}
});
});
},
/** 下载附件 */
handledownloadSignFiles(row) {
this.files = row.signFiles.split(",");
@ -611,6 +732,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="材料封样";
row.logType="4";
this.$refs.indexDrawer.show(row);
}
},
};
</script>

View File

@ -38,7 +38,7 @@
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -61,7 +61,7 @@
v-hasPermi="['project:materialSeal:remove']"
>删除</el-button
>
</el-col>
</el-col> -->
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
@ -72,7 +72,6 @@
:data="projectMaterialSealList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="封样图片" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
<el-image
@ -87,35 +86,51 @@
label="封样名称"
align="center"
prop="materialName"
width="180"
show-overflow-tooltip
/>
width="250"
>
<template slot-scope="scope">
<div>{{ scope.row.materialName }}</div>
<div>{{ scope.row.usePosition }}</div>
</template>
</el-table-column>
<el-table-column
label="使用部位"
align="center"
prop="usePosition"
width="150"
show-overflow-tooltip
/>
<el-table-column
label="指定品牌"
label="品牌"
align="center"
prop="contractBrand"
width="120"
show-overflow-tooltip
/>
<el-table-column
label="拟用品牌"
align="center"
prop="useBrand"
width="120"
show-overflow-tooltip
/>
<el-table-column label="封样时间" align="center" prop="sealDate" width="160">
width="200"
>
<template slot-scope="scope">
<div>指定{{ scope.row.contractBrand }}</div>
<div>拟用{{ scope.row.useBrand }}</div>
</template>
</el-table-column>
<el-table-column label="封样时间" align="center" prop="sealDate" width="120">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.sealDate, "{y}-{m}-{d} {h}:{i}") }}</span>
</template>
</el-table-column>
<el-table-column
label="监理人"
align="center"
prop="witnessUser"
width="120"
show-overflow-tooltip
>
<template slot-scope="scope">
<div>{{ scope.row.witnessUserName }}</div>
<div>{{ scope.row.witnessUser }}</div>
</template>
</el-table-column>
<el-table-column label="封样结果" align="center" prop="materialResult">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_checking_result" :value="scope.row.materialResult" />
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column label="会签单" align="center" prop="signFiles" width="100">
<template slot-scope="scope">
<el-button
@ -151,6 +166,15 @@
>
<template slot-scope="scope">
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -159,6 +183,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -230,6 +255,29 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="监理人" prop="witnessUser">
<el-select
v-model="form.witnessUser"
placeholder="请选择监理人"
filterable
style="width: 100%"
@change="selectWitnessUser"
>
<el-option-group
v-for="group in deptUserData"
:key="group.unitId + ''"
:label="group.unitName + ' [' + group.unitTypeName + '] '"
>
<el-option
v-for="item in group.userinfoList"
:key="item.phonenumber"
:label="item.nickName + ' [' + item.jobTypeName + '] '"
:value="item.phonenumber"
>
</el-option>
</el-option-group>
</el-select>
</el-form-item>
<el-form-item label="会签单" prop="signFiles">
<file-upload
v-model="form.signFiles"
@ -259,6 +307,7 @@
:url-list="previewList"
style="z-index: 2050"
/>
<indexDrawer ref="indexDrawer"></indexDrawer>
</div>
</template>
@ -272,12 +321,15 @@ import {
updateMaterialSeal,
} from "@/api/project/materialSeal";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "RuoyiUiProjectDeptWroksDrawer",
components: {
indexDrawer,
ElImageViewer,
},
dicts: ["project_check_status"],
data() {
return {
showViewer: false,
@ -307,6 +359,9 @@ export default {
{ max: 100, message: "使用品牌最多100字符", trigger: "blur" },
],
sealDate: [{ required: true, message: "请选择封样时间", trigger: "blur" }],
witnessUser: [
{ required: true, message: "请选择监理单位监理人", trigger: "blur" },
],
signFiles: [{ required: true, message: "请上传会签单附件", trigger: "blur" }],
alterationFiles: [
{ required: false, message: "请上传变更单附件", trigger: "blur" },
@ -333,6 +388,7 @@ export default {
projectId: null,
deptId: null,
},
deptUserData:[],
previewList: [],
isOnly: false,
};
@ -491,6 +547,15 @@ export default {
});
this.open = true;
this.title = "添加项目材料封样";
//
this.$api.publics
.selectProjectUnitUser({
unitType: "4",
projectId: this.project.id,
})
.then((d) => {
this.deptUserData = d.data;
});
} else {
this.$message.error("当前项目未分配总包单位,不能办理材料封样!");
}
@ -510,11 +575,21 @@ export default {
this.open = true;
this.title = "修改项目材料封样";
});
//
this.$api.publics
.selectProjectUnitUser({
unitType: "4",
projectId: this.project.id,
})
.then((d) => {
this.deptUserData = d.data;
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateMaterialSeal(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -557,6 +632,16 @@ export default {
`materialSeal_${new Date().getTime()}.xlsx`
);
},
/** 选择见证人*/
selectWitnessUser(val) {
this.deptUserData.forEach((item) => {
item.userinfoList.forEach((u) => {
if (u.phonenumber == val) {
this.form.witnessUserName = u.nickName + " [" + u.jobTypeName + "] ";
}
});
});
},
/** 下载附件 */
handleDownload(row) {
this.files = row.checkingFiles.split(",");
@ -578,7 +663,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="材料封样";
row.logType="4";
this.$refs.indexDrawer.show(row);
}
},
};
</script>
<style lang="scss" scoped></style>

View File

@ -0,0 +1,118 @@
<template>
<div class="projectect-attendance-drawer">
<el-drawer
v-if="isOpen"
:visible.sync="isOpen"
v-loading="loading"
direction="ltr"
size="30%"
>
<template slot="title">
<div>{{ title + '流程日志' }}</div>
</template>
<div class="block" style="padding-right: 20px;">
<el-timeline>
<el-timeline-item
v-for="(item, index) in flowRecordList"
:key="index"
:icon="setIcon(item.approveStatus)"
:color="setColor(item.approveStatus)"
>
<p style="font-weight: 700">
{{ getProcess(index, item.approveStatusName) }}
</p>
<el-card :body-style="{ padding: '10px' }">
<el-descriptions class="margin-top" :column="1" size="small" border>
<el-descriptions-item
v-if="item.userName"
label-class-name="my-label"
:labelStyle="labelStyle"
>
<template slot="label"><i class="el-icon-user"></i>办理用户</template>
{{ item.userName }}
<el-tag type="info" size="mini">{{ item.deptName }}</el-tag>
</el-descriptions-item>
<el-descriptions-item
v-if="item.createTime"
label-class-name="my-label"
:labelStyle="labelStyle"
>
<template slot="label"><i class="el-icon-date"></i>办理时间</template>
{{ item.createTime }}
</el-descriptions-item>
<el-descriptions-item
v-if="item.comment"
label-class-name="my-label"
:labelStyle="labelStyle"
>
<template slot="label"
><i class="el-icon-tickets"></i>处理意见</template
>
{{ item.comment }}
</el-descriptions-item>
</el-descriptions>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
</el-drawer>
</div>
</template>
<script>
export default {
name: "projectAuditinfoDrawer",
components: {},
data() {
return {
isOpen: false,
title: "",
//
loading: true,
//
flowRecordList: [],
// label
labelStyle: { width: "200px" },
};
},
computed: {},
mounted() {},
methods: {
getProcess(i, v) {
let num = this.flowRecordList.length - i;
if (num < 10) {
num = "0" + num;
}
return num + ". " + v;
},
setIcon(val) {
if (val == 3) {
return "el-icon-close";
} else {
return "el-icon-check";
}
},
setColor(val) {
if (val == 3) {
return "#f56c6c";
} else {
return "#2bc418";
}
},
show(options){
this.title=options.title;
this.isOpen=true;
this.$api.publics
.selectProjectAuditinfo({
fromType: options.logType,
fromId: options.id
})
.then((res) => {
this.flowRecordList = res.data;
this.loading = false;
});
}
},
};
</script>

View File

@ -74,6 +74,20 @@
/>
</el-select>
</el-form-item>
<el-form-item label="审核状态" prop="approveStatus">
<el-select
v-model="queryParams.approveStatus"
placeholder="请选择审核状态"
clearable
>
<el-option
v-for="dict in dict.type.project_check_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"
>搜索</el-button
@ -82,7 +96,7 @@
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-row :gutter="10" class="mb8"> -->
<!-- <el-col :span="1.5">
<el-button
type="primary"
@ -94,7 +108,7 @@
>新增</el-button
>
</el-col> -->
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -130,7 +144,7 @@
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</el-row> -->
<el-table
v-loading="loading"
@ -221,6 +235,11 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column label="数据状态" align="center" prop="isDel">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_common_isdel" :value="scope.row.isDel" />
@ -251,6 +270,15 @@
>下载附件</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -259,6 +287,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus!='4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -351,7 +380,7 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="验收结果" prop="checkResult">
<el-form-item label="验收结果" prop="checkResult" v-if="false">
<el-radio
v-model="form.checkResult"
v-for="dict in dict.type.project_checking_result"
@ -372,6 +401,7 @@
</div>
</el-dialog>
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="previewList" />
<index-drawer ref="indexDrawer"></index-drawer>
</div>
</template>
@ -384,13 +414,15 @@ import {
updateProjectChecking,
} from "@/api/project/projectChecking";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "ProjectChecking",
components: {
indexDrawer,
ElImageViewer,
},
dicts: ["sys_common_isdel", "project_checking_result"],
dicts: ["sys_common_isdel","project_check_status", "project_checking_result"],
data() {
return {
showViewer: false,
@ -435,6 +467,7 @@ export default {
isDel: null,
projectName: null,
deptName: null,
approveStatus:null,
},
//
form: {},
@ -452,7 +485,7 @@ export default {
{ max: 200, message: "验收描述最多200字符", trigger: "blur" },
],
checkingDate: [{ required: true, message: "请选择验收时间", trigger: "blur" }],
checkResult: [{ required: true, message: "请选择验收结果", trigger: "blur" }],
checkResult: [{ required: false, message: "请选择验收结果", trigger: "blur" }],
},
deptUserData: [],
previewList: [],
@ -560,6 +593,7 @@ export default {
});
this.$api.publics
.selectProjectAllUnitUser({
unitType: "4",
projectId: row.projectId,
})
.then((d) => {
@ -570,6 +604,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateProjectChecking(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -637,6 +672,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="举牌验收";
row.logType="3";
this.$refs.indexDrawer.show(row);
}
},
};
</script>

View File

@ -38,7 +38,7 @@
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -61,7 +61,7 @@
v-hasPermi="['project:projectChecking:remove']"
>删除</el-button
>
</el-col>
</el-col> -->
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
@ -72,7 +72,6 @@
:data="projectCheckingList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="验收图片" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
<el-image
@ -141,6 +140,11 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
@ -157,6 +161,15 @@
>下载附件</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -165,6 +178,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -271,7 +285,7 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="验收结果" prop="checkResult">
<el-form-item label="验收结果" prop="checkResult" v-if="false">
<el-radio
v-model="form.checkResult"
v-for="dict in dict.type.project_checking_result"
@ -295,6 +309,7 @@
:url-list="previewList"
style="z-index: 2050"
/>
<index-drawer ref="indexDrawer"></index-drawer>
</div>
</template>
@ -307,13 +322,15 @@ import {
updateProjectChecking,
} from "@/api/project/projectChecking";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "RuoyiUiProjectDeptWroksDrawer",
components: {
indexDrawer,
ElImageViewer,
},
dicts: ["project_checking_result"],
dicts: ["project_check_status","project_checking_result"],
data() {
return {
showViewer: false,
@ -337,7 +354,7 @@ export default {
{ max: 200, message: "验收描述最多200字符", trigger: "blur" },
],
checkingDate: [{ required: true, message: "请选择验收时间", trigger: "blur" }],
checkResult: [{ required: true, message: "请选择验收结果", trigger: "blur" }],
checkResult: [{ required: false, message: "请选择验收结果", trigger: "blur" }],
},
projectCheckingList: [],
activeName: "",
@ -398,7 +415,7 @@ export default {
this.$api.publics
.queryUnitList({
projectId: project.id,
unitTypes: "2,4".split(","),
unitType: 2
})
.then((d) => {
this.nodes = d.rows;
@ -511,6 +528,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateProjectChecking(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -580,7 +598,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="举牌验收";
row.logType="3";
this.$refs.indexDrawer.show(row);
}
},
};
</script>
<style lang="scss" scoped></style>

View File

@ -117,7 +117,7 @@
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-row :gutter="10" class="mb8"> -->
<!--<el-col :span="1.5">
<el-button
type="primary"
@ -129,7 +129,7 @@
>新增</el-button
>
</el-col> -->
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -165,7 +165,7 @@
>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</el-row> -->
<el-table
v-loading="loading"
@ -241,6 +241,11 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column
label="质量专员"
align="left"
@ -289,6 +294,15 @@
>下载附件</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -297,6 +311,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -428,7 +443,7 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="测量结果" prop="measureResult">
<el-form-item label="测量结果" prop="measureResult" v-if="false">
<el-radio
v-model="form.measureResult"
v-for="dict in dict.type.project_checking_result"
@ -449,6 +464,7 @@
</div>
</el-dialog>
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="previewList" />
<indexDrawer ref="indexDrawer"></indexDrawer>
</div>
</template>
@ -461,13 +477,16 @@ import {
updateProjectMeasure,
} from "@/api/project/projectMeasure";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "ProjectMeasure",
components: {
indexDrawer,
ElImageViewer,
},
dicts: [
"project_check_status",
"project_measure_type",
"project_measure_info_type",
"project_checking_result",
@ -532,7 +551,7 @@ export default {
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
measureTime: [{ required: true, message: "请选择测量时间", trigger: "blur" }],
measureResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
measureResult: [{ required: false, message: "请选择测量结果", trigger: "blur" }],
measureFiles: [{ required: false, message: "请上传测量附件", trigger: "blur" }],
},
deptUserData: [],
@ -660,6 +679,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateProjectMeasure(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -727,6 +747,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="实测实量";
row.logType="2";
this.$refs.indexDrawer.show(row);
}
},
};
</script>

View File

@ -38,7 +38,7 @@
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
type="success"
plain
@ -61,7 +61,7 @@
v-hasPermi="['project:projectMeasure:remove']"
>删除</el-button
>
</el-col>
</el-col> -->
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
@ -72,7 +72,6 @@
:data="projectMeasureList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="测量图片" align="center" prop="mainImage" width="80">
<template slot-scope="scope">
<el-image
@ -125,6 +124,11 @@
/>
</template>
</el-table-column>
<el-table-column label="审核状态" align="center" prop="approveStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.project_check_status" :value="scope.row.approveStatus" />
</template>
</el-table-column>
<el-table-column
label="质量专员"
align="center"
@ -166,6 +170,15 @@
>下载附件</el-button
>
<el-button
v-if="scope.row.approveStatus != null"
size="mini"
type="text"
icon="el-icon-tickets"
@click="handleAuditinfo(scope.row)"
>流程日志</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-edit"
@ -174,6 +187,7 @@
>修改</el-button
>
<el-button
v-if="scope.row.approveStatus != '4'"
size="mini"
type="text"
icon="el-icon-delete"
@ -305,7 +319,7 @@
>
</el-date-picker>
</el-form-item>
<el-form-item label="测量结果" prop="measureResult">
<el-form-item label="测量结果" prop="measureResult" v-if="false">
<el-radio
v-model="form.measureResult"
v-for="dict in dict.type.project_checking_result"
@ -332,6 +346,7 @@
:url-list="previewList"
style="z-index: 2050"
/>
<indexDrawer ref="indexDrawer"></indexDrawer>
</div>
</template>
@ -345,13 +360,15 @@ import {
updateProjectMeasure,
} from "@/api/project/projectMeasure";
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
import indexDrawer from "../projectAuditinfo/indexDrawer.vue";
export default {
name: "RuoyiUiProjectDeptWroksDrawer",
components: {
indexDrawer,
ElImageViewer,
},
dicts: ["project_measure_type", "project_checking_result", "project_measure_info_type"],
dicts: ["project_check_status","project_measure_type", "project_checking_result", "project_measure_info_type"],
data() {
return {
showViewer: false,
@ -377,7 +394,7 @@ export default {
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
measureTime: [{ required: true, message: "请选择测量时间", trigger: "blur" }],
measureResult: [{ required: true, message: "请选择测量结果", trigger: "blur" }],
measureResult: [{ required: false, message: "请选择测量结果", trigger: "blur" }],
measureFiles: [{ required: false, message: "请上传测量附件", trigger: "blur" }],
},
projectMeasureList: [],
@ -452,7 +469,7 @@ export default {
this.$api.publics
.queryUnitList({
projectId: project.id,
unitTypes: "2,4".split(","),
unitType: 2
})
.then((d) => {
this.nodes = d.rows;
@ -565,6 +582,7 @@ export default {
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.approveStatus="1";
if (this.form.id != null) {
updateProjectMeasure(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
@ -634,7 +652,12 @@ export default {
this.$download.resource(item);
});
},
/** 流程日志 */
handleAuditinfo(row) {
row.title="实测实量";
row.logType="2";
this.$refs.indexDrawer.show(row);
}
},
};
</script>
<style lang="scss" scoped></style>

View File

@ -813,7 +813,6 @@ export default {
standardDrawer
},
dicts: [
"sys_check_state",
"sur_project_xmjd",
"project_build_type",
"sys_common_isdel",

View File

@ -178,7 +178,6 @@ import standardDrawer from '@/views/project/projectStandard/projectStandardDrawe
export default {
dicts: [
"sys_check_state",
"sur_project_xmjd",
"project_build_type",
"sys_common_isdel",

View File

@ -0,0 +1,112 @@
package com.yanzhu.jh.project.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* sur_project_auditinfo
*
* @author JiangYuQi
* @date 2023-09-20
*/
public class SurProjectAuditinfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键 */
private Long id;
/** 来自类型 */
@Excel(name = "来自类型")
private String fromType;
/** 来自主键 */
@Excel(name = "来自主键")
private Long fromId;
/** 审批状态 */
@Excel(name = "审批状态")
private String approveStatus;
/** 数据状态 */
@Excel(name = "数据状态")
private String isDel;
/** 审核意见 */
@Excel(name = "审核意见")
private String comment;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setFromType(String fromType)
{
this.fromType = fromType;
}
public String getFromType()
{
return fromType;
}
public void setFromId(Long fromId)
{
this.fromId = fromId;
}
public Long getFromId()
{
return fromId;
}
public void setApproveStatus(String approveStatus)
{
this.approveStatus = approveStatus;
}
public String getApproveStatus()
{
return approveStatus;
}
public void setIsDel(String isDel)
{
this.isDel = isDel;
}
public String getIsDel()
{
return isDel;
}
public void setComment(String comment)
{
this.comment = comment;
}
public String getComment()
{
return comment;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("fromType", getFromType())
.append("fromId", getFromId())
.append("approveStatus", getApproveStatus())
.append("isDel", getIsDel())
.append("comment", getComment())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -93,6 +93,10 @@ public class SurProjectCheckDetection extends BaseEntity
@Excel(name = "数据状态")
private String isDel;
/** 审核状态 */
@Excel(name = "审核状态")
private String approveStatus;
private String checkTypeName;
private String projectName;
private String deptName;
@ -311,6 +315,14 @@ public class SurProjectCheckDetection extends BaseEntity
this.checkTypeName = checkTypeName;
}
public String getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(String approveStatus) {
this.approveStatus = approveStatus;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

View File

@ -101,6 +101,10 @@ public class SurProjectChecking extends BaseEntity
@Excel(name = "数据状态")
private Long isDel;
/** 审核状态 */
@Excel(name = "审核状态")
private String approveStatus;
private String projectName;
private String deptName;
@ -310,6 +314,14 @@ public class SurProjectChecking extends BaseEntity
this.deptName = deptName;
}
public String getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(String approveStatus) {
this.approveStatus = approveStatus;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

View File

@ -69,6 +69,22 @@ public class SurProjectMaterialSeal extends BaseEntity
@Excel(name = "数据状态")
private String isDel;
/** 审核状态 */
@Excel(name = "审核状态")
private String approveStatus;
/** 封样状态 */
@Excel(name = "封样状态")
private String materialResult;
/** 监理人 */
@Excel(name = "监理人")
private String witnessUser;
/** 监理人名称 */
@Excel(name = "监理人名称")
private String witnessUserName;
private String projectName;
private String deptName;
@ -206,6 +222,38 @@ public class SurProjectMaterialSeal extends BaseEntity
this.deptName = deptName;
}
public String getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(String approveStatus) {
this.approveStatus = approveStatus;
}
public String getMaterialResult() {
return materialResult;
}
public void setMaterialResult(String materialResult) {
this.materialResult = materialResult;
}
public String getWitnessUser() {
return witnessUser;
}
public void setWitnessUser(String witnessUser) {
this.witnessUser = witnessUser;
}
public String getWitnessUserName() {
return witnessUserName;
}
public void setWitnessUserName(String witnessUserName) {
this.witnessUserName = witnessUserName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

View File

@ -85,6 +85,10 @@ public class SurProjectMeasure extends BaseEntity
@Excel(name = "数据状态")
private String isDel;
/** 审核状态 */
@Excel(name = "审核状态")
private String approveStatus;
private String projectName;
private String deptName;
private String measureTypeName;
@ -294,6 +298,14 @@ public class SurProjectMeasure extends BaseEntity
this.measureInfoName = measureInfoName;
}
public String getApproveStatus() {
return approveStatus;
}
public void setApproveStatus(String approveStatus) {
this.approveStatus = approveStatus;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

View File

@ -0,0 +1,73 @@
package com.yanzhu.jh.project.mapper;
import java.util.List;
import java.util.Map;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
/**
* Mapper
*
* @author JiangYuQi
* @date 2023-09-20
*/
public interface SurProjectAuditinfoMapper
{
/**
*
*
* @param id
* @return
*/
public SurProjectAuditinfo selectSurProjectAuditinfoById(Long id);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public List<SurProjectAuditinfo> selectSurProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public List<Map<String, Object>> selectProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public int insertSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public int updateSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param id
* @return
*/
public int deleteSurProjectAuditinfoById(Long id);
/**
*
*
* @param ids
* @return
*/
public int deleteSurProjectAuditinfoByIds(Long[] ids);
public int batch(List<SurProjectAuditinfo> surProjectAuditinfoList);
}

View File

@ -0,0 +1,72 @@
package com.yanzhu.jh.project.service;
import java.util.List;
import java.util.Map;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
/**
* Service
*
* @author JiangYuQi
* @date 2023-09-20
*/
public interface ISurProjectAuditinfoService
{
/**
*
*
* @param id
* @return
*/
public SurProjectAuditinfo selectSurProjectAuditinfoById(Long id);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public List<SurProjectAuditinfo> selectSurProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public List<Map<String, Object>> selectProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public int insertSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param surProjectAuditinfo
* @return
*/
public int updateSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo);
/**
*
*
* @param ids
* @return
*/
public int deleteSurProjectAuditinfoByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
public int deleteSurProjectAuditinfoById(Long id);
}

View File

@ -0,0 +1,124 @@
package com.yanzhu.jh.project.service.impl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import com.ruoyi.common.utils.DateUtils;
import com.yanzhu.jh.project.domain.*;
import com.yanzhu.jh.project.mapper.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.service.ISurProjectAuditinfoService;
import com.ruoyi.common.utils.SecurityUtils;
/**
* Service
*
* @author JiangYuQi
* @date 2023-09-20
*/
@Service
public class SurProjectAuditinfoServiceImpl implements ISurProjectAuditinfoService
{
@Autowired
private SurProjectAuditinfoMapper surProjectAuditinfoMapper;
@Autowired
private SurProjectCheckDetectionMapper surProjectCheckDetectionMapper;
@Autowired
private SurProjectCheckingMapper surProjectCheckingMapper;
@Autowired
private SurProjectMaterialSealMapper surProjectMaterialSealMapper;
@Autowired
private SurProjectMeasureMapper surProjectMeasureMapper;
/**
*
*
* @param id
* @return
*/
@Override
public SurProjectAuditinfo selectSurProjectAuditinfoById(Long id)
{
return surProjectAuditinfoMapper.selectSurProjectAuditinfoById(id);
}
/**
*
*
* @param surProjectAuditinfo
* @return
*/
@Override
public List<SurProjectAuditinfo> selectSurProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo)
{
return surProjectAuditinfoMapper.selectSurProjectAuditinfoList(surProjectAuditinfo);
}
/**
*
*
* @param surProjectAuditinfo
* @return
*/
@Override
public List<Map<String, Object>> selectProjectAuditinfoList(SurProjectAuditinfo surProjectAuditinfo){
return surProjectAuditinfoMapper.selectProjectAuditinfoList(surProjectAuditinfo);
}
/**
*
*
* @param surProjectAuditinfo
* @return
*/
@Override
public int insertSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo)
{
surProjectAuditinfo.setCreateBy(SecurityUtils.getUsername());
surProjectAuditinfo.setCreateTime(DateUtils.getNowDate());
return surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
/**
*
*
* @param surProjectAuditinfo
* @return
*/
@Override
public int updateSurProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo)
{
surProjectAuditinfo.setUpdateBy(SecurityUtils.getUsername());
surProjectAuditinfo.setUpdateTime(DateUtils.getNowDate());
return surProjectAuditinfoMapper.updateSurProjectAuditinfo(surProjectAuditinfo);
}
/**
*
*
* @param ids
* @return
*/
@Override
public int deleteSurProjectAuditinfoByIds(Long[] ids)
{
return surProjectAuditinfoMapper.deleteSurProjectAuditinfoByIds(ids);
}
/**
*
*
* @param id
* @return
*/
@Override
public int deleteSurProjectAuditinfoById(Long id)
{
return surProjectAuditinfoMapper.deleteSurProjectAuditinfoById(id);
}
}

View File

@ -1,11 +1,15 @@
package com.yanzhu.jh.project.service.impl;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.ruoyi.common.enums.PublicStateEnum;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.mapper.SurProjectAuditinfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectCheckDetectionMapper;
@ -21,6 +25,9 @@ import com.ruoyi.common.utils.SecurityUtils;
@Service
public class SurProjectCheckDetectionServiceImpl implements ISurProjectCheckDetectionService
{
@Autowired
private SurProjectAuditinfoMapper surProjectAuditinfoMapper;
@Autowired
private SurProjectCheckDetectionMapper surProjectCheckDetectionMapper;
@ -78,6 +85,21 @@ public class SurProjectCheckDetectionServiceImpl implements ISurProjectCheckDete
if(surProjectCheckDetection.getUpdateBy()==null){
surProjectCheckDetection.setUpdateBy(SecurityUtils.getUsername());
}
//操作日志
if(StringUtils.isNotBlank(surProjectCheckDetection.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_QYFS.getCode());
surProjectAuditinfo.setFromId(surProjectCheckDetection.getId());
surProjectAuditinfo.setApproveStatus(surProjectCheckDetection.getApproveStatus());
if(StringUtils.isNotBlank(surProjectCheckDetection.getComment())){
surProjectAuditinfo.setComment(surProjectCheckDetection.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectCheckDetection.getUpdateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
surProjectCheckDetection.setUpdateTime(DateUtils.getNowDate());
return surProjectCheckDetectionMapper.updateSurProjectCheckDetection(surProjectCheckDetection);
}
@ -150,4 +172,5 @@ public class SurProjectCheckDetectionServiceImpl implements ISurProjectCheckDete
public List<SurProjectCheckDetection> getList(SurProjectCheckDetection where) {
return surProjectCheckDetectionMapper.getList(where);
}
}

View File

@ -8,6 +8,9 @@ import java.util.Map;
import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.enums.PublicStateEnum;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.mapper.SurProjectAuditinfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectCheckingMapper;
@ -23,6 +26,9 @@ import com.ruoyi.common.utils.SecurityUtils;
@Service
public class SurProjectCheckingServiceImpl implements ISurProjectCheckingService
{
@Autowired
private SurProjectAuditinfoMapper surProjectAuditinfoMapper;
@Autowired
private SurProjectCheckingMapper surProjectCheckingMapper;
@ -105,6 +111,21 @@ public class SurProjectCheckingServiceImpl implements ISurProjectCheckingService
surProjectChecking.setMainImage(surProjectChecking.getImageUrls().split(",")[0]);
surProjectChecking.setIsDel(Convert.toLong(PublicStateEnum.OK.getCode()));
surProjectChecking.setCreateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectChecking.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_JPYS.getCode());
surProjectAuditinfo.setFromId(surProjectChecking.getId());
surProjectAuditinfo.setApproveStatus(surProjectChecking.getApproveStatus());
if(StringUtils.isNotBlank(surProjectChecking.getComment())){
surProjectAuditinfo.setComment(surProjectChecking.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectChecking.getCreateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectCheckingMapper.insertSurProjectChecking(surProjectChecking);
}
@ -118,8 +139,25 @@ public class SurProjectCheckingServiceImpl implements ISurProjectCheckingService
public int updateSurProjectChecking(SurProjectChecking surProjectChecking)
{
surProjectChecking.setMainImage(surProjectChecking.getImageUrls().split(",")[0]);
surProjectChecking.setUpdateBy(SecurityUtils.getUsername());
if(surProjectChecking.getUpdateBy()==null){
surProjectChecking.setUpdateBy(SecurityUtils.getUsername());
}
surProjectChecking.setUpdateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectChecking.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_JPYS.getCode());
surProjectAuditinfo.setFromId(surProjectChecking.getId());
surProjectAuditinfo.setApproveStatus(surProjectChecking.getApproveStatus());
if(StringUtils.isNotBlank(surProjectChecking.getComment())){
surProjectAuditinfo.setComment(surProjectChecking.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectChecking.getUpdateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectCheckingMapper.updateSurProjectChecking(surProjectChecking);
}

View File

@ -1,10 +1,14 @@
package com.yanzhu.jh.project.service.impl;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.ruoyi.common.enums.PublicStateEnum;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.mapper.SurProjectAuditinfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectMaterialSealMapper;
@ -20,6 +24,10 @@ import com.ruoyi.common.utils.SecurityUtils;
@Service
public class SurProjectMaterialSealServiceImpl implements ISurProjectMaterialSealService
{
@Autowired
private SurProjectAuditinfoMapper surProjectAuditinfoMapper;
@Autowired
private SurProjectMaterialSealMapper surProjectMaterialSealMapper;
@ -62,6 +70,21 @@ public class SurProjectMaterialSealServiceImpl implements ISurProjectMaterialSea
surProjectMaterialSeal.setIsDel(PublicStateEnum.OK.getCode());
surProjectMaterialSeal.setMainImage(surProjectMaterialSeal.getImageUrls().split(",")[0]);
surProjectMaterialSeal.setCreateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectMaterialSeal.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_CLFY.getCode());
surProjectAuditinfo.setFromId(surProjectMaterialSeal.getId());
surProjectAuditinfo.setApproveStatus(surProjectMaterialSeal.getApproveStatus());
if(StringUtils.isNotBlank(surProjectMaterialSeal.getComment())){
surProjectAuditinfo.setComment(surProjectMaterialSeal.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectMaterialSeal.getCreateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectMaterialSealMapper.insertSurProjectMaterialSeal(surProjectMaterialSeal);
}
@ -74,9 +97,26 @@ public class SurProjectMaterialSealServiceImpl implements ISurProjectMaterialSea
@Override
public int updateSurProjectMaterialSeal(SurProjectMaterialSeal surProjectMaterialSeal)
{
if(surProjectMaterialSeal.getUpdateBy()==null){
surProjectMaterialSeal.setUpdateBy(SecurityUtils.getUsername());
}
surProjectMaterialSeal.setMainImage(surProjectMaterialSeal.getImageUrls().split(",")[0]);
surProjectMaterialSeal.setUpdateBy(SecurityUtils.getUsername());
surProjectMaterialSeal.setUpdateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectMaterialSeal.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_CLFY.getCode());
surProjectAuditinfo.setFromId(surProjectMaterialSeal.getId());
surProjectAuditinfo.setApproveStatus(surProjectMaterialSeal.getApproveStatus());
if(StringUtils.isNotBlank(surProjectMaterialSeal.getComment())){
surProjectAuditinfo.setComment(surProjectMaterialSeal.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectMaterialSeal.getUpdateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectMaterialSealMapper.updateSurProjectMaterialSeal(surProjectMaterialSeal);
}

View File

@ -1,10 +1,14 @@
package com.yanzhu.jh.project.service.impl;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.ruoyi.common.enums.PublicStateEnum;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.mapper.SurProjectAuditinfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectMeasureMapper;
@ -20,6 +24,9 @@ import com.ruoyi.common.utils.SecurityUtils;
@Service
public class SurProjectMeasureServiceImpl implements ISurProjectMeasureService
{
@Autowired
private SurProjectAuditinfoMapper surProjectAuditinfoMapper;
@Autowired
private SurProjectMeasureMapper surProjectMeasureMapper;
@ -62,6 +69,21 @@ public class SurProjectMeasureServiceImpl implements ISurProjectMeasureService
surProjectMeasure.setMainImage(surProjectMeasure.getImageUrls().split(",")[0]);
surProjectMeasure.setIsDel(PublicStateEnum.OK.getCode());
surProjectMeasure.setCreateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectMeasure.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_SCSL.getCode());
surProjectAuditinfo.setFromId(surProjectMeasure.getId());
surProjectAuditinfo.setApproveStatus(surProjectMeasure.getApproveStatus());
if(StringUtils.isNotBlank(surProjectMeasure.getComment())){
surProjectAuditinfo.setComment(surProjectMeasure.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectMeasure.getCreateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectMeasureMapper.insertSurProjectMeasure(surProjectMeasure);
}
@ -74,9 +96,27 @@ public class SurProjectMeasureServiceImpl implements ISurProjectMeasureService
@Override
public int updateSurProjectMeasure(SurProjectMeasure surProjectMeasure)
{
if(surProjectMeasure.getCreateBy()==null){
surProjectMeasure.setUpdateBy(SecurityUtils.getUsername());
}
surProjectMeasure.setMainImage(surProjectMeasure.getImageUrls().split(",")[0]);
surProjectMeasure.setUpdateBy(SecurityUtils.getUsername());
surProjectMeasure.setUpdateTime(DateUtils.getNowDate());
//操作日志
if(StringUtils.isNotBlank(surProjectMeasure.getApproveStatus())){
SurProjectAuditinfo surProjectAuditinfo = new SurProjectAuditinfo();
surProjectAuditinfo.setFromType(PublicStateEnum.AUDIT_TYPE_SCSL.getCode());
surProjectAuditinfo.setFromId(surProjectMeasure.getId());
surProjectAuditinfo.setApproveStatus(surProjectMeasure.getApproveStatus());
if(StringUtils.isNotBlank(surProjectMeasure.getComment())){
surProjectAuditinfo.setComment(surProjectMeasure.getComment());
}
surProjectAuditinfo.setCreateBy(surProjectMeasure.getUpdateBy());
surProjectAuditinfo.setCreateTime(new Date());
surProjectAuditinfoMapper.insertSurProjectAuditinfo(surProjectAuditinfo);
}
return surProjectMeasureMapper.updateSurProjectMeasure(surProjectMeasure);
}

View File

@ -11,8 +11,10 @@ import com.ruoyi.common.enums.SysRoleEnum;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysUserService;
import com.yanzhu.jh.project.domain.SurProject;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.domain.SurProjectUnitInfo;
import com.yanzhu.jh.project.domain.SurProjectUserinfo;
import com.yanzhu.jh.project.service.ISurProjectAuditinfoService;
import com.yanzhu.jh.project.service.ISurProjectService;
import com.yanzhu.jh.project.service.ISurProjectUnitInfoService;
import com.yanzhu.jh.project.service.ISurProjectUserinfoService;
@ -49,6 +51,10 @@ PublicsController extends BaseController {
@Autowired
private ISurProjectUserinfoService surProjectUserinfoService;
@Autowired
private ISurProjectAuditinfoService surProjectAuditinfoService;
/**
*
*/
@ -151,4 +157,13 @@ PublicsController extends BaseController {
{
return success(surProjectUserinfoService.selectProjectUnitUser(surProjectUnitInfo));
}
/**
*
*/
@GetMapping("/selectProjectAuditinfo")
public AjaxResult selectProjectAuditinfo(SurProjectAuditinfo surProjectAuditinfo)
{
return success(surProjectAuditinfoService.selectProjectAuditinfoList(surProjectAuditinfo));
}
}

View File

@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yanzhu.jh.project.mapper.SurProjectAuditinfoMapper">
<resultMap type="SurProjectAuditinfo" id="SurProjectAuditinfoResult">
<result property="id" column="id" />
<result property="fromType" column="from_type" />
<result property="fromId" column="from_id" />
<result property="approveStatus" column="approve_status" />
<result property="isDel" column="is_del" />
<result property="comment" column="comment" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectSurProjectAuditinfoVo">
select id, from_type, from_id, approve_status, is_del, comment, create_by, create_time, update_by, update_time, remark from sur_project_auditinfo
</sql>
<select id="selectSurProjectAuditinfoList" parameterType="SurProjectAuditinfo" resultMap="SurProjectAuditinfoResult">
<include refid="selectSurProjectAuditinfoVo"/>
<where>
<if test="fromType != null and fromType != ''"> and from_type = #{fromType}</if>
<if test="fromId != null "> and from_id = #{fromId}</if>
<if test="approveStatus != null and approveStatus != ''"> and approve_status = #{approveStatus}</if>
<if test="isDel != null and isDel != ''"> and is_del = #{isDel}</if>
</where>
</select>
<select id="selectProjectAuditinfoList" parameterType="SurProjectAuditinfo" resultType="map">
SELECT
pa.approve_status as approveStatus,
CASE pa.approve_status
WHEN '1' THEN
'提交申请'
ELSE
sdd.dict_label
END AS approveStatusName,
DATE_FORMAT(pa.create_time, '%Y-%m-%d %H:%i') as createTime,
u.nick_name as userName,
d.dept_name as deptName,
pa.`comment`
FROM
sur_project_auditinfo pa
LEFT JOIN sys_user u ON u.phonenumber = pa.create_by
left JOIN sys_dept d on d.dept_id = u.dept_id
LEFT JOIN sys_dict_data sdd ON sdd.dict_type = 'project_check_status'
AND sdd.dict_value = pa.approve_status
<where>
is_del = 0
<if test="fromType != null and fromType != ''"> and pa.from_type = #{fromType}</if>
<if test="fromId != null "> and pa.from_id = #{fromId}</if>
<if test="approveStatus != null and approveStatus != ''"> and pa.approve_status = #{approveStatus}</if>
</where>
order by pa.create_time desc
</select>
<select id="selectSurProjectAuditinfoById" parameterType="Long" resultMap="SurProjectAuditinfoResult">
<include refid="selectSurProjectAuditinfoVo"/>
where id = #{id}
</select>
<insert id="insertSurProjectAuditinfo" parameterType="SurProjectAuditinfo" useGeneratedKeys="true" keyProperty="id">
insert into sur_project_auditinfo
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="fromType != null">from_type,</if>
<if test="fromId != null">from_id,</if>
<if test="approveStatus != null">approve_status,</if>
<if test="isDel != null">is_del,</if>
<if test="comment != null">comment,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="fromType != null">#{fromType},</if>
<if test="fromId != null">#{fromId},</if>
<if test="approveStatus != null">#{approveStatus},</if>
<if test="isDel != null">#{isDel},</if>
<if test="comment != null">#{comment},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
</trim>
</insert>
<update id="updateSurProjectAuditinfo" parameterType="SurProjectAuditinfo">
update sur_project_auditinfo
<trim prefix="SET" suffixOverrides=",">
<if test="fromType != null">from_type = #{fromType},</if>
<if test="fromId != null">from_id = #{fromId},</if>
<if test="approveStatus != null">approve_status = #{approveStatus},</if>
<if test="isDel != null">is_del = #{isDel},</if>
<if test="comment != null">comment = #{comment},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteSurProjectAuditinfoById" parameterType="Long">
delete from sur_project_auditinfo where id = #{id}
</delete>
<delete id="deleteSurProjectAuditinfoByIds" parameterType="String">
delete from sur_project_auditinfo where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<insert id="batch">
insert into sur_project_auditinfo( from_type, from_id, approve_status, comment, create_by, create_time) values
<foreach item="item" index="index" collection="list" separator=",">
( #{item.fromType}, #{item.fromId}, #{item.approveStatus}, #{item.comment}, #{item.createBy}, #{item.createTime})
</foreach>
</insert>
</mapper>

View File

@ -34,10 +34,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="remark" column="remark" />
<result property="createByName" column="create_by_name"/>
<result property="updateByName" column="update_by_name"/>
<result property="approveStatus" column="approve_status"/>
</resultMap>
<sql id="selectSurProjectCheckDetectionVo">
SELECT spcd.id, spcd.project_id, sp.projectName, spcd.dept_id, sd.dept_name, spcd.check_type, sdd.dict_label AS check_type_name, spcd.material_name, spcd.use_position, spcd.sample_num, spcd.qualified_flag, spcd.represen_num, spcd.sample_user, spcd.sample_user_name, spcd.witness_user, spcd.witness_user_name, spcd.laboratory_name, spcd.check_time, spcd.check_state, spcd.detection_result, spcd.detection_file, spcd.create_by, spcd.create_time, spcd.is_del, spcd.update_by, spcd.update_time, spcd.remark ,u1.nick_name create_by_name,u2.nick_name update_by_name
SELECT spcd.id, spcd.project_id, sp.projectName, spcd.dept_id, sd.dept_name, spcd.check_type, sdd.dict_label AS check_type_name, spcd.material_name, spcd.use_position, spcd.sample_num, spcd.qualified_flag, spcd.represen_num, spcd.sample_user, spcd.sample_user_name, spcd.witness_user, spcd.witness_user_name, spcd.laboratory_name, spcd.check_time, spcd.check_state, spcd.detection_result, spcd.detection_file, spcd.create_by, spcd.create_time, spcd.is_del, spcd.update_by, spcd.update_time, spcd.remark, spcd.approve_status, u1.nick_name create_by_name,u2.nick_name update_by_name
FROM sur_project_check_detection spcd
LEFT JOIN sur_project sp ON spcd.project_id = sp.id
LEFT JOIN sys_dept sd ON sd.dept_id = spcd.dept_id
@ -57,6 +58,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="projectId != null "> and spcd.project_id = #{projectId}</if>
<if test="deptId != null "> and spcd.dept_id = #{deptId}</if>
<if test="checkType != null and checkType != ''"> and spcd.check_type = #{checkType}</if>
<if test="approveStatus != null and approveStatus != ''"> and spcd.approve_status = #{approveStatus}</if>
<if test="materialName != null and materialName != ''"> and spcd.material_name like concat('%', #{materialName}, '%')</if>
<if test="usePosition != null and usePosition != ''"> and spcd.use_position like concat('%', #{usePosition}, '%')</if>
<if test="sampleNum != null and sampleNum != ''"> and spcd.sample_num = #{sampleNum}</if>
@ -156,6 +158,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
<if test="approveStatus != null">approve_status,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="projectId != null">#{projectId},</if>
@ -181,6 +184,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
<if test="approveStatus != null">#{approveStatus},</if>
</trim>
</insert>
@ -210,6 +214,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="approveStatus != null">approve_status = #{approveStatus},</if>
</trim>
where id = #{id}
</update>

View File

@ -33,14 +33,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="remark" column="remark" />
<result property="projectName" column="projectName" />
<result property="deptName" column="dept_name" />
<result property="approveStatus" column="approve_status" />
</resultMap>
<sql id="selectSurProjectCheckingVo">
select id, project_id, dept_id, group_dept_id, check_type, main_image, image_urls, working_position_type, check_working_position, checking_num, check_result, intro, quality_user, quality_user_name, supervise_user, supervise_user_name, group_dept_user, group_dept_user_name, checking_date, checking_files, is_del, create_by, create_time, update_by, update_time, remark from sur_project_checking
select id, project_id, dept_id, group_dept_id, check_type, main_image, image_urls, working_position_type, check_working_position, checking_num, check_result, intro, quality_user, quality_user_name, supervise_user, supervise_user_name, group_dept_user, group_dept_user_name, checking_date, checking_files, is_del, create_by, create_time, update_by, update_time, remark, approve_status from sur_project_checking
</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, 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, 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
<!--监理单位/总包公司/分包单位-->
@ -57,6 +58,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<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="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>
<if test="checkWorkingPosition != null and checkWorkingPosition != ''"> and spc.check_working_position like concat('%', #{checkWorkingPosition}, '%')</if>
<if test="checkResult != null and checkResult != ''"> and spc.check_result = #{checkResult}</if>
@ -81,7 +83,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectBgscreenProjectCheckingList" 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, 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, 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
<!--监理单位/总包公司/分包单位-->
@ -132,7 +134,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, 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, 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}
@ -193,6 +195,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
<if test="approveStatus != null">approve_status,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="projectId != null">#{projectId},</if>
@ -220,6 +223,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
<if test="approveStatus != null">#{approveStatus},</if>
</trim>
</insert>
@ -251,6 +255,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="approveStatus != null">approve_status = #{approveStatus},</if>
</trim>
where id = #{id}
</update>

View File

@ -25,10 +25,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
<result property="materialResult" column="material_result" />
<result property="witnessUser" column="witness_user" />
<result property="witnessUserName" column="witness_user_name" />
<result property="approveStatus" column="approve_status" />
</resultMap>
<sql id="selectSurProjectMaterialSealVo">
select spme.id, spme.project_id, spme.dept_id, spme.main_image, spme.image_urls, spme.material_name, spme.use_position, spme.contract_brand, spme.use_brand, spme.seal_date, spme.sign_files, spme.alteration_files, spme.is_del, spme.create_by, spme.create_time, spme.update_by, spme.update_time, spme.remark, sp.projectName, sd.dept_name from sur_project_material_seal spme
select spme.id, spme.project_id, spme.dept_id, spme.main_image, spme.image_urls, spme.material_name, spme.use_position, spme.contract_brand, spme.use_brand, spme.seal_date, spme.sign_files, spme.alteration_files, spme.is_del, spme.create_by, spme.create_time, spme.update_by, spme.update_time, spme.remark, spme.witness_user, spme.witness_user_name, spme.approve_status, spme.material_result, sp.projectName, sd.dept_name from sur_project_material_seal spme
left join sur_project sp on spme.project_id = sp.id
left join sys_dept sd on sd.dept_id = spme.dept_id
</sql>
@ -50,6 +54,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="useBrand != null and useBrand != ''"> and spme.use_brand like concat('%', #{useBrand}, '%')</if>
<if test="params.beginSealDate != null and params.beginSealDate != '' and params.endSealDate != null and params.endSealDate != ''"> and spme.seal_date between #{params.beginSealDate} and #{params.endSealDate}</if>
<if test="isDel != null and isDel != ''"> and spme.is_del = #{isDel}</if>
<if test="materialResult != null and materialResult != ''"> and spme.material_result = #{materialResult}</if>
<if test="approveStatus != null and approveStatus != ''"> and spme.approve_status = #{approveStatus}</if>
<if test="witnessUser != null and witnessUser != ''"> and (spme.witness_user like concat('%', #{witnessUser}, '%') or spme.witness_user_name like concat('%', #{witnessUser}, '%'))</if>
<!-- 查询条件-项目部门 -->
<if test="projectDeptId != null "> and sp.deptId = #{projectDeptId}</if>
<!--子部门数据-->
@ -98,6 +105,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
<if test="materialResult != null">material_result,</if>
<if test="witnessUser != null">witness_user,</if>
<if test="witnessUserName != null">witness_user_name,</if>
<if test="approveStatus != null">approve_status,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="projectId != null">#{projectId},</if>
@ -117,6 +128,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
<if test="materialResult != null">#{materialResult},</if>
<if test="witnessUser != null">#{witnessUser},</if>
<if test="witnessUserName != null">#{witnessUserName},</if>
<if test="approveStatus != null">#{approveStatus},</if>
</trim>
</insert>
@ -140,6 +155,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="materialResult != null">material_result = #{materialResult},</if>
<if test="witnessUser != null">witness_user = #{witnessUser},</if>
<if test="witnessUserName != null">witness_user_name = #{witnessUserName},</if>
<if test="approveStatus != null">approve_status = #{approveStatus},</if>
</trim>
where id = #{id}
</update>

View File

@ -33,10 +33,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="measureInfoName" column="measure_info_name" />
<result property="createByName" column="create_by_name"/>
<result property="updateByName" column="update_by_name"/>
<result property="approveStatus" column="approve_status"/>
</resultMap>
<sql id="selectSurProjectMeasureVo">
select spm.id, spm.project_id, spm.dept_id, spm.main_image, spm.image_urls, spm.measure_type, sdd1.dict_label as measure_type_name, spm.measure_position, spm.measure_info, sdd2.dict_label as measure_info_name, spm.measure_time, spm.measure_point_position, spm.measure_result, spm.measure_files, spm.quality_user, spm.quality_user_name, spm.supervise_user, spm.supervise_user_name, spm.is_del, spm.create_by, spm.create_time, spm.update_by, spm.update_time, spm.remark, sp.projectName, sd.dept_name from sur_project_measure spm
select spm.id, spm.project_id, spm.dept_id, spm.main_image, spm.image_urls, spm.measure_type, sdd1.dict_label as measure_type_name, spm.measure_position, spm.measure_info, sdd2.dict_label as measure_info_name, spm.measure_time, spm.measure_point_position, spm.measure_result, spm.measure_files, spm.quality_user, spm.quality_user_name, spm.supervise_user, spm.supervise_user_name, spm.is_del, spm.create_by, spm.create_time, spm.update_by, spm.update_time, spm.remark, sp.projectName, sd.dept_name, spm.approve_status from sur_project_measure spm
left join sur_project sp on spm.project_id = sp.id
left join sys_dept sd on sd.dept_id = spm.dept_id
left join sys_dict_data sdd1 on sdd1.dict_type = 'project_measure_type' and sdd1.dict_value = spm.measure_type
@ -65,6 +66,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="qualityUser != null and qualityUser != ''"> and (spm.quality_user like concat('%', #{qualityUser}, '%') or spm.quality_user_name like concat('%', #{qualityUser}, '%'))</if>
<if test="superviseUser != null and superviseUser != ''"> and (spm.supervise_user like concat('%', #{superviseUser}, '%') or spm.supervise_user_name like concat('%', #{superviseUser}, '%'))</if>
<if test="isDel != null and isDel != ''"> and spm.is_del like concat('%', #{isDel}, '%')</if>
<if test="approveStatus != null and approveStatus != ''"> and spm.approve_status = #{approveStatus}</if>
<!-- 查询条件-项目部门 -->
<if test="projectDeptId != null "> and sp.deptId = #{projectDeptId}</if>
<!--子部门数据-->
@ -113,6 +115,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
<if test="approveStatus != null">approve_status,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="projectId != null">#{projectId},</if>
@ -136,6 +139,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
<if test="approveStatus != null">#{approveStatus},</if>
</trim>
</insert>
@ -163,6 +167,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="approveStatus != null">approveStatus = #{approveStatus},</if>
</trim>
where id = #{id}
</update>
@ -199,7 +204,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ON a.dict_value=b.measure_info
</select>
<select id="getList" parameterType="SurProjectMeasure" resultMap="SurProjectMeasureResult">
SELECT spm.id, spm.project_id, spm.dept_id, spm.main_image, spm.image_urls, spm.measure_type, sdd1.dict_label AS measure_type_name, spm.measure_position, spm.measure_info, sdd2.dict_label AS measure_info_name, spm.measure_time, spm.measure_point_position, spm.measure_result, spm.measure_files, spm.quality_user, spm.quality_user_name, spm.supervise_user, spm.supervise_user_name, spm.is_del, spm.create_by, spm.create_time, spm.update_by, spm.update_time, spm.remark, sp.projectName, sd.dept_name ,u1.nick_name create_by_name,u2.nick_name update_by_name
SELECT spm.id, spm.project_id, spm.dept_id, spm.main_image, spm.image_urls, spm.measure_type, sdd1.dict_label AS measure_type_name, spm.measure_position, spm.measure_info, sdd2.dict_label AS measure_info_name, spm.measure_time, spm.measure_point_position, spm.measure_result, spm.measure_files, spm.quality_user, spm.quality_user_name, spm.supervise_user, spm.supervise_user_name, spm.is_del, spm.create_by, spm.create_time, spm.update_by, spm.update_time, spm.remark, spm.approve_status, sp.projectName, sd.dept_name ,u1.nick_name create_by_name,u2.nick_name update_by_name
FROM sur_project_measure spm
LEFT JOIN sur_project sp ON spm.project_id = sp.id
LEFT JOIN sys_dept sd ON sd.dept_id = spm.dept_id