提交代码
parent
b9613287b6
commit
1909a4d9eb
|
@ -56,7 +56,7 @@ public class SysLoginController
|
|||
*
|
||||
* @return 用户信息
|
||||
*/
|
||||
@GetMapping("getInfo")
|
||||
@GetMapping("/getInfo")
|
||||
public AjaxResult getInfo()
|
||||
{
|
||||
SysUser user = SecurityUtils.getLoginUser().getUser();
|
||||
|
@ -76,7 +76,7 @@ public class SysLoginController
|
|||
*
|
||||
* @return 路由信息
|
||||
*/
|
||||
@GetMapping("getRouters")
|
||||
@GetMapping("/getRouters")
|
||||
public AjaxResult getRouters()
|
||||
{
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
|
|
|
@ -10,6 +10,11 @@ public enum PublicStateEnum {
|
|||
OK("0", "正常"),
|
||||
DISABLE("1", "停用"),
|
||||
DELETED("2", "删除"),
|
||||
USERTYPE_JFJL("21", "甲方经理"),
|
||||
/**********************************项目验收***************************************/
|
||||
PROJECT_CHECK_TYPE_JPYS("1", "举牌验收"),
|
||||
PROJECT_CHECK_POSITION_TYPE("1", "默认工序部位类型"),
|
||||
/**********************************项目验收***************************************/
|
||||
COMZGS("1","子公司状态标识");
|
||||
|
||||
private final String code;
|
||||
|
|
|
@ -17,14 +17,6 @@ export function deptWroksViewData(query) {
|
|||
})
|
||||
}
|
||||
|
||||
export function unitList(query) {
|
||||
return request({
|
||||
url: '/project/projectDeptWroks/unitList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询在岗人员详细
|
||||
export function getProjectDeptWroks(id) {
|
||||
return request({
|
||||
|
|
|
@ -37,11 +37,29 @@ const getUserList = (data) => {
|
|||
})
|
||||
}
|
||||
|
||||
const queryUnitList = (query) => {
|
||||
return request({
|
||||
url: '/publics/queryUnitList',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
const selectProjectUnitUser = (query) => {
|
||||
return request({
|
||||
url: '/publics/selectProjectUnitUser',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
export default{
|
||||
getMyDeptList,
|
||||
getDeptTree,
|
||||
getZgsDeptList,
|
||||
getMyProjectList,
|
||||
getUserList
|
||||
getUserList,
|
||||
queryUnitList,
|
||||
selectProjectUnitUser,
|
||||
}
|
||||
|
||||
|
|
|
@ -1,40 +1,59 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="项目主键" prop="projectId">
|
||||
<el-form
|
||||
:model="queryParams"
|
||||
ref="queryForm"
|
||||
size="small"
|
||||
:inline="true"
|
||||
v-show="showSearch"
|
||||
label-width="68px"
|
||||
>
|
||||
<el-form-item label="项目名称" prop="projectName">
|
||||
<el-input
|
||||
v-model="queryParams.projectId"
|
||||
placeholder="请输入项目主键"
|
||||
v-model="queryParams.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="部门主键" prop="deptId">
|
||||
<el-form-item label="单位名称" prop="deptName">
|
||||
<el-input
|
||||
v-model="queryParams.deptId"
|
||||
placeholder="请输入部门主键"
|
||||
v-model="queryParams.deptName"
|
||||
placeholder="请输入单位名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位主键" prop="groupDeptId">
|
||||
<el-input
|
||||
v-model="queryParams.groupDeptId"
|
||||
placeholder="请输入分包单位主键"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收工序部位" prop="checkWorkingPosition">
|
||||
<el-form-item label="工序部位" prop="checkWorkingPosition">
|
||||
<el-input
|
||||
v-model="queryParams.checkWorkingPosition"
|
||||
placeholder="请输入验收工序部位"
|
||||
placeholder="请输入工序部位"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="质量专员" prop="qualityUser">
|
||||
<el-input
|
||||
v-model="queryParams.qualityUser"
|
||||
placeholder="请输入质量专员"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="监理专员" prop="superviseUser">
|
||||
<el-input
|
||||
v-model="queryParams.superviseUser"
|
||||
placeholder="请输入监理专员"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收结果" prop="checkResult">
|
||||
<el-select v-model="queryParams.checkResult" placeholder="请选择验收结果" clearable>
|
||||
<el-select
|
||||
v-model="queryParams.checkResult"
|
||||
placeholder="请选择验收结果"
|
||||
clearable
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.project_checking_result"
|
||||
:key="dict.value"
|
||||
|
@ -43,54 +62,6 @@
|
|||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="质量用户" prop="qualityUser">
|
||||
<el-input
|
||||
v-model="queryParams.qualityUser"
|
||||
placeholder="请输入质量用户"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="质量用户名称" prop="qualityUserName">
|
||||
<el-input
|
||||
v-model="queryParams.qualityUserName"
|
||||
placeholder="请输入质量用户名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="监理用户" prop="superviseUser">
|
||||
<el-input
|
||||
v-model="queryParams.superviseUser"
|
||||
placeholder="请输入监理用户"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="监理用户名称" prop="superviseUserName">
|
||||
<el-input
|
||||
v-model="queryParams.superviseUserName"
|
||||
placeholder="请输入监理用户名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位用户" prop="groupDeptUser">
|
||||
<el-input
|
||||
v-model="queryParams.groupDeptUser"
|
||||
placeholder="请输入分包单位用户"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位用户名称" prop="groupDeptUserName">
|
||||
<el-input
|
||||
v-model="queryParams.groupDeptUserName"
|
||||
placeholder="请输入分包单位用户名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收时间">
|
||||
<el-date-picker
|
||||
v-model="daterangeCheckingDate"
|
||||
|
@ -102,24 +73,16 @@
|
|||
end-placeholder="结束日期"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据状态" prop="isDel">
|
||||
<el-select v-model="queryParams.isDel" placeholder="请选择数据状态" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_common_isdel"
|
||||
: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>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"
|
||||
>搜索</el-button
|
||||
>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
|
@ -127,8 +90,9 @@
|
|||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['project:projectChecking:add']"
|
||||
>新增</el-button>
|
||||
</el-col>
|
||||
>新增</el-button
|
||||
>
|
||||
</el-col> -->
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
|
@ -138,7 +102,8 @@
|
|||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['project:projectChecking:edit']"
|
||||
>修改</el-button>
|
||||
>修改</el-button
|
||||
>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
|
@ -149,7 +114,8 @@
|
|||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['project:projectChecking:remove']"
|
||||
>删除</el-button>
|
||||
>删除</el-button
|
||||
>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
|
@ -159,67 +125,146 @@
|
|||
size="mini"
|
||||
@click="handleExport"
|
||||
v-hasPermi="['project:projectChecking:export']"
|
||||
>导出</el-button>
|
||||
>导出</el-button
|
||||
>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="projectCheckingList" @selection-change="handleSelectionChange">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="projectCheckingList"
|
||||
@selection-change="handleSelectionChange"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="主键" align="center" prop="id" />
|
||||
<el-table-column label="项目主键" align="center" prop="projectId" />
|
||||
<el-table-column label="部门主键" align="center" prop="deptId" />
|
||||
<el-table-column label="分包单位主键" align="center" prop="groupDeptId" />
|
||||
<el-table-column label="验收类型" align="center" prop="checkType" />
|
||||
<el-table-column label="验收主图" align="center" prop="mainImage" width="100">
|
||||
<el-table-column
|
||||
label="项目名称"
|
||||
align="center"
|
||||
prop="projectName"
|
||||
width="200"
|
||||
fixed="left"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="部门名称"
|
||||
align="center"
|
||||
prop="deptName"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column label="验收主图" align="center" prop="mainImage" width="220">
|
||||
<template slot-scope="scope">
|
||||
<image-preview :src="scope.row.mainImage" :width="50" :height="50"/>
|
||||
<el-image
|
||||
ref="preview"
|
||||
style="width: 200px; height: 100px"
|
||||
:src="getImageUrl(scope.row.mainImage)"
|
||||
@click="onPreview(scope.row.imageUrls)"
|
||||
></el-image>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="验收工序部位"
|
||||
align="center"
|
||||
prop="checkWorkingPosition"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
|
||||
<el-table-column
|
||||
label="验收描述"
|
||||
align="center"
|
||||
prop="intro"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="质量专员"
|
||||
align="left"
|
||||
prop="qualityUser"
|
||||
width="130"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.qualityUserName }}</div>
|
||||
<div>{{ scope.row.qualityUser }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="监理专员"
|
||||
align="left"
|
||||
prop="superviseUser"
|
||||
width="130"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.superviseUserName }}</div>
|
||||
<div>{{ scope.row.superviseUser }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="验收时间"
|
||||
align="center"
|
||||
prop="checkingDate"
|
||||
width="180"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.checkingDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="图片列表" align="center" prop="imageUrls" />
|
||||
<el-table-column label="验收工序部位类型" align="center" prop="workingPositionType" />
|
||||
<el-table-column label="验收工序部位" align="center" prop="checkWorkingPosition" />
|
||||
<el-table-column label="验收次数" align="center" prop="checkingNum" />
|
||||
<el-table-column label="验收结果" align="center" prop="checkResult">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.project_checking_result" :value="scope.row.checkResult"/>
|
||||
<dict-tag
|
||||
:options="dict.type.project_checking_result"
|
||||
:value="scope.row.checkResult"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="验收描述" align="center" prop="intro" />
|
||||
<el-table-column label="质量用户" align="center" prop="qualityUser" />
|
||||
<el-table-column label="质量用户名称" align="center" prop="qualityUserName" />
|
||||
<el-table-column label="监理用户" align="center" prop="superviseUser" />
|
||||
<el-table-column label="监理用户名称" align="center" prop="superviseUserName" />
|
||||
<el-table-column label="分包单位用户" align="center" prop="groupDeptUser" />
|
||||
<el-table-column label="分包单位用户名称" align="center" prop="groupDeptUserName" />
|
||||
<el-table-column label="验收时间" align="center" prop="checkingDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.checkingDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="验收附件" align="center" prop="checkingFiles" />
|
||||
<el-table-column label="数据状态" align="center" prop="isDel">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.sys_common_isdel" :value="scope.row.isDel" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" align="center" prop="remark" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<el-table-column
|
||||
label="备注"
|
||||
align="center"
|
||||
prop="remark"
|
||||
width="100"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
align="center"
|
||||
class-name="small-padding fixed-width"
|
||||
width="120"
|
||||
fixed="right"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
v-if="scope.row.checkingFiles != null"
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-paperclip"
|
||||
@click="handledownload(scope.row)"
|
||||
v-hasPermi="['project:projectChecking:list']"
|
||||
>下载附件</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['project:projectChecking:edit']"
|
||||
>修改</el-button>
|
||||
>修改</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['project:projectChecking:remove']"
|
||||
>删除</el-button>
|
||||
>删除</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -233,80 +278,87 @@
|
|||
/>
|
||||
|
||||
<!-- 添加或修改项目验收对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-dialog :title="title" :visible.sync="open" width="780px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="项目主键" prop="projectId">
|
||||
<el-input v-model="form.projectId" placeholder="请输入项目主键" />
|
||||
<el-form-item label="验收图片" prop="imageUrls">
|
||||
<image-upload v-model="form.imageUrls" :limit="9" />
|
||||
</el-form-item>
|
||||
<el-form-item label="部门主键" prop="deptId">
|
||||
<el-input v-model="form.deptId" placeholder="请输入部门主键" />
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位主键" prop="groupDeptId">
|
||||
<el-input v-model="form.groupDeptId" placeholder="请输入分包单位主键" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收主图" prop="mainImage">
|
||||
<image-upload v-model="form.mainImage"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="图片列表" prop="imageUrls">
|
||||
<el-input v-model="form.imageUrls" placeholder="请输入图片列表" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收工序部位" prop="checkWorkingPosition">
|
||||
<el-input v-model="form.checkWorkingPosition" placeholder="请输入验收工序部位" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收次数" prop="checkingNum">
|
||||
<el-input v-model="form.checkingNum" placeholder="请输入验收次数" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收结果" prop="checkResult">
|
||||
<el-select v-model="form.checkResult" placeholder="请选择验收结果">
|
||||
<el-form-item label="质量专员" prop="qualityUser">
|
||||
<el-select
|
||||
v-model="form.qualityUser"
|
||||
placeholder="请选择质量专员"
|
||||
filterable
|
||||
style="width: 100%"
|
||||
@change="selectQualityUser"
|
||||
>
|
||||
<el-option-group
|
||||
v-for="group in deptUserData"
|
||||
:key="group.unitId + ''"
|
||||
:label="group.unitName + ' [' + group.unitTypeName + '] '"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.project_checking_result"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
></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="superviseUser">
|
||||
<el-select
|
||||
v-model="form.superviseUser"
|
||||
placeholder="请选择监理专员"
|
||||
filterable
|
||||
style="width: 100%"
|
||||
@change="selectSuperviseUser"
|
||||
>
|
||||
<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="checkWorkingPosition">
|
||||
<el-input
|
||||
type="textarea"
|
||||
v-model="form.checkWorkingPosition"
|
||||
placeholder="请输入验收工序部位"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收描述" prop="intro">
|
||||
<el-input v-model="form.intro" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="质量用户" prop="qualityUser">
|
||||
<el-input v-model="form.qualityUser" placeholder="请输入质量用户" />
|
||||
</el-form-item>
|
||||
<el-form-item label="质量用户名称" prop="qualityUserName">
|
||||
<el-input v-model="form.qualityUserName" placeholder="请输入质量用户名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="监理用户" prop="superviseUser">
|
||||
<el-input v-model="form.superviseUser" placeholder="请输入监理用户" />
|
||||
</el-form-item>
|
||||
<el-form-item label="监理用户名称" prop="superviseUserName">
|
||||
<el-input v-model="form.superviseUserName" placeholder="请输入监理用户名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位用户" prop="groupDeptUser">
|
||||
<el-input v-model="form.groupDeptUser" placeholder="请输入分包单位用户" />
|
||||
</el-form-item>
|
||||
<el-form-item label="分包单位用户名称" prop="groupDeptUserName">
|
||||
<el-input v-model="form.groupDeptUserName" placeholder="请输入分包单位用户名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收时间" prop="checkingDate">
|
||||
<el-date-picker clearable
|
||||
<el-date-picker
|
||||
style="width: 100%"
|
||||
v-model="form.checkingDate"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd"
|
||||
placeholder="请选择验收时间">
|
||||
type="datetime"
|
||||
placeholder="选择日期时间"
|
||||
default-time="10:00:00"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收附件" prop="checkingFiles">
|
||||
<el-input v-model="form.checkingFiles" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="数据状态" prop="isDel">
|
||||
<el-select v-model="form.isDel" placeholder="请选择数据状态">
|
||||
<el-option
|
||||
v-for="dict in dict.type.sys_common_isdel"
|
||||
<el-form-item label="验收结果" prop="checkResult">
|
||||
<el-radio
|
||||
v-model="form.checkResult"
|
||||
v-for="dict in dict.type.project_checking_result"
|
||||
:label="dict.value"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="parseInt(dict.value)"
|
||||
></el-option>
|
||||
</el-select>
|
||||
border
|
||||
size="small"
|
||||
>{{ dict.label }}</el-radio
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" placeholder="请输入备注" />
|
||||
|
@ -317,17 +369,29 @@
|
|||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="previewList" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listProjectChecking, getProjectChecking, delProjectChecking, addProjectChecking, updateProjectChecking } from "@/api/project/projectChecking";
|
||||
import {
|
||||
listProjectChecking,
|
||||
getProjectChecking,
|
||||
delProjectChecking,
|
||||
addProjectChecking,
|
||||
updateProjectChecking,
|
||||
} from "@/api/project/projectChecking";
|
||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||
|
||||
export default {
|
||||
name: "ProjectChecking",
|
||||
dicts: ['project_checking_result', 'sys_common_isdel'],
|
||||
components: {
|
||||
ElImageViewer,
|
||||
},
|
||||
dicts: ["sys_common_isdel", "project_checking_result"],
|
||||
data() {
|
||||
return {
|
||||
showViewer: false,
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
|
@ -367,27 +431,57 @@ export default {
|
|||
groupDeptUserName: null,
|
||||
checkingDate: null,
|
||||
isDel: null,
|
||||
projectName: null,
|
||||
deptName: null,
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
}
|
||||
imageUrls: [{ required: true, message: "请上传验收图片", trigger: "blur" }],
|
||||
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
|
||||
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
|
||||
checkWorkingPosition: [
|
||||
{ required: true, message: "请输入验收工序部位", trigger: "blur" },
|
||||
{ max: 200, message: "验收工序部位最多200字符", trigger: "blur" },
|
||||
],
|
||||
intro: [
|
||||
{ required: true, message: "请输入验收描述", trigger: "blur" },
|
||||
{ max: 200, message: "验收描述最多200字符", trigger: "blur" },
|
||||
],
|
||||
checkingDate: [{ required: true, message: "请选择验收时间", trigger: "blur" }],
|
||||
checkResult: [{ required: true, message: "请选择验收结果", trigger: "blur" }],
|
||||
},
|
||||
deptUserData: [],
|
||||
previewList: [],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
getImageUrl(url) {
|
||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||
},
|
||||
onPreview(urls) {
|
||||
this.previewList = [];
|
||||
urls.split(",").forEach((item) => {
|
||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||
});
|
||||
this.showViewer = true;
|
||||
},
|
||||
closeViewer() {
|
||||
this.showViewer = false;
|
||||
},
|
||||
/** 查询项目验收列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
this.queryParams.params = {};
|
||||
if (null != this.daterangeCheckingDate && '' != this.daterangeCheckingDate) {
|
||||
if (null != this.daterangeCheckingDate && "" != this.daterangeCheckingDate) {
|
||||
this.queryParams.params["beginCheckingDate"] = this.daterangeCheckingDate[0];
|
||||
this.queryParams.params["endCheckingDate"] = this.daterangeCheckingDate[1];
|
||||
}
|
||||
listProjectChecking(this.queryParams).then(response => {
|
||||
listProjectChecking(this.queryParams).then((response) => {
|
||||
this.projectCheckingList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
|
@ -426,7 +520,7 @@ export default {
|
|||
createTime: null,
|
||||
updateBy: null,
|
||||
updateTime: null,
|
||||
remark: null
|
||||
remark: null,
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
|
@ -443,9 +537,9 @@ export default {
|
|||
},
|
||||
// 多选框选中数据
|
||||
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;
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
|
@ -456,25 +550,32 @@ export default {
|
|||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids
|
||||
getProjectChecking(id).then(response => {
|
||||
const id = row.id || this.ids;
|
||||
getProjectChecking(id).then((response) => {
|
||||
this.form = response.data;
|
||||
this.open = true;
|
||||
this.title = "修改项目验收";
|
||||
this.$api.publics
|
||||
.selectProjectUnitUser({
|
||||
projectId: response.data.projectId,
|
||||
})
|
||||
.then((d) => {
|
||||
this.deptUserData = d.data;
|
||||
});
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
this.$refs["form"].validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
updateProjectChecking(this.form).then(response => {
|
||||
updateProjectChecking(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addProjectChecking(this.form).then(response => {
|
||||
addProjectChecking(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
|
@ -486,19 +587,54 @@ export default {
|
|||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除项目验收编号为"' + ids + '"的数据项?').then(function() {
|
||||
this.$modal
|
||||
.confirm('是否确认删除项目验收编号为"' + ids + '"的数据项?')
|
||||
.then(function () {
|
||||
return delProjectChecking(ids);
|
||||
}).then(() => {
|
||||
})
|
||||
.then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => {});
|
||||
})
|
||||
.catch(() => {});
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download('project/projectChecking/export', {
|
||||
...this.queryParams
|
||||
}, `projectChecking_${new Date().getTime()}.xlsx`)
|
||||
this.download(
|
||||
"project/projectChecking/export",
|
||||
{
|
||||
...this.queryParams,
|
||||
},
|
||||
`projectChecking_${new Date().getTime()}.xlsx`
|
||||
);
|
||||
},
|
||||
/** 选择质量专员*/
|
||||
selectQualityUser(val) {
|
||||
this.deptUserData.forEach((item) => {
|
||||
item.userinfoList.forEach((u) => {
|
||||
if (u.phonenumber == val) {
|
||||
this.form.qualityUserName = u.nickName + " [" + u.jobTypeName + "] ";
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
/** 选择监理专员*/
|
||||
selectSuperviseUser(val) {
|
||||
this.deptUserData.forEach((item) => {
|
||||
item.userinfoList.forEach((u) => {
|
||||
if (u.phonenumber == val) {
|
||||
this.form.superviseUserName = u.nickName + " [" + u.jobTypeName + "] ";
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
/** 下载附件 */
|
||||
handleDownload(row) {
|
||||
this.files = row.checkingFiles.split(",");
|
||||
this.files.forEach((item) => {
|
||||
this.$download.resource(item);
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -0,0 +1,583 @@
|
|||
<template>
|
||||
<div class="projectect-attendance-drawer">
|
||||
<el-drawer
|
||||
v-if="isOpen"
|
||||
:visible.sync="isOpen"
|
||||
direction="rtl"
|
||||
size="65%"
|
||||
style="padding-left: 20px"
|
||||
>
|
||||
<template slot="title">
|
||||
<div>{{ title + " 【举牌验收管理】" }}</div>
|
||||
</template>
|
||||
<el-tabs
|
||||
v-model="activeName"
|
||||
style="margin-left: 20px; margin-right: 20px"
|
||||
@tab-click="getList"
|
||||
>
|
||||
<el-tab-pane
|
||||
v-for="(it, idx) in nodes"
|
||||
:label="it.unitName + ''"
|
||||
:name="it.unitId + ''"
|
||||
:key="idx"
|
||||
></el-tab-pane>
|
||||
</el-tabs>
|
||||
<el-row
|
||||
:gutter="10"
|
||||
class="mb8"
|
||||
style="margin-left: 20px; margin-top: 10px; margin-right: 20px"
|
||||
>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['project:projectChecking: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:projectChecking: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:projectChecking:remove']"
|
||||
>删除</el-button
|
||||
>
|
||||
</el-col>
|
||||
<right-toolbar
|
||||
:showSearch.sync="showSearch"
|
||||
@queryTable="getList"
|
||||
></right-toolbar>
|
||||
</el-row>
|
||||
<el-table v-loading="loading" :data="projectCheckingList">
|
||||
<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
|
||||
ref="preview"
|
||||
style="width: 50px; height: 50px"
|
||||
:src="getImageUrl(scope.row.mainImage)"
|
||||
@click="onPreview(scope.row.imageUrls)"
|
||||
></el-image>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="验收工序部位"
|
||||
align="left"
|
||||
prop="checkWorkingPosition"
|
||||
width="220"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
|
||||
<el-table-column
|
||||
label="验收描述"
|
||||
align="left"
|
||||
prop="intro"
|
||||
width="220"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column
|
||||
label="质量专员"
|
||||
align="left"
|
||||
prop="qualityUser"
|
||||
width="120"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.qualityUserName }}</div>
|
||||
<div>{{ scope.row.qualityUser }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="监理专员"
|
||||
align="left"
|
||||
prop="superviseUser"
|
||||
width="120"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div>{{ scope.row.superviseUserName }}</div>
|
||||
<div>{{ scope.row.superviseUser }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="验收时间"
|
||||
align="center"
|
||||
prop="checkingDate"
|
||||
width="150"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.checkingDate, "{y}-{m}-{d} {h}:{i}") }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="验收结果" align="center" prop="checkResult" width="80">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag
|
||||
:options="dict.type.project_checking_result"
|
||||
:value="scope.row.checkResult"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
align="center"
|
||||
class-name="small-padding fixed-width"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
v-if="scope.row.checkingFiles != null"
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-paperclip"
|
||||
@click="handledownload(scope.row)"
|
||||
v-hasPermi="['project:projectChecking:list']"
|
||||
>下载附件</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['project:projectChecking:edit']"
|
||||
>修改</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['project:projectChecking: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" :visible.sync="open" width="780px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="项目名称" prop="projectName">
|
||||
<el-input
|
||||
v-model="form.projectName"
|
||||
placeholder="请输入项目名称"
|
||||
:disabled="true"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位名称" prop="deptName">
|
||||
<el-input
|
||||
v-model="form.deptName"
|
||||
placeholder="请输入单位名称"
|
||||
:disabled="true"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收图片" prop="imageUrls">
|
||||
<image-upload v-model="form.imageUrls" :limit="9" />
|
||||
</el-form-item>
|
||||
<el-form-item label="质量专员" prop="qualityUser">
|
||||
<el-select
|
||||
v-model="form.qualityUser"
|
||||
placeholder="请选择质量专员"
|
||||
filterable
|
||||
style="width: 100%"
|
||||
@change="selectQualityUser"
|
||||
>
|
||||
<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="superviseUser">
|
||||
<el-select
|
||||
v-model="form.superviseUser"
|
||||
placeholder="请选择监理专员"
|
||||
filterable
|
||||
style="width: 100%"
|
||||
@change="selectSuperviseUser"
|
||||
>
|
||||
<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="checkWorkingPosition">
|
||||
<el-input
|
||||
type="textarea"
|
||||
v-model="form.checkWorkingPosition"
|
||||
placeholder="请输入验收工序部位"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收描述" prop="intro">
|
||||
<el-input v-model="form.intro" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="验收时间" prop="checkingDate">
|
||||
<el-date-picker
|
||||
style="width: 100%"
|
||||
v-model="form.checkingDate"
|
||||
type="datetime"
|
||||
placeholder="选择日期时间"
|
||||
default-time="10:00:00"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="验收结果" prop="checkResult">
|
||||
<el-radio
|
||||
v-model="form.checkResult"
|
||||
v-for="dict in dict.type.project_checking_result"
|
||||
:label="dict.value"
|
||||
:key="dict.value"
|
||||
border
|
||||
size="small"
|
||||
>{{ dict.label }}</el-radio
|
||||
>
|
||||
</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>
|
||||
<el-image-viewer
|
||||
v-if="showViewer"
|
||||
:on-close="closeViewer"
|
||||
:url-list="previewList"
|
||||
style="z-index: 2050"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapGetters } from "vuex";
|
||||
import {
|
||||
listProjectChecking,
|
||||
getProjectChecking,
|
||||
delProjectChecking,
|
||||
addProjectChecking,
|
||||
updateProjectChecking,
|
||||
} from "@/api/project/projectChecking";
|
||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||
|
||||
export default {
|
||||
name: "RuoyiUiProjectDeptWroksDrawer",
|
||||
components: {
|
||||
ElImageViewer,
|
||||
},
|
||||
dicts: ["project_checking_result"],
|
||||
data() {
|
||||
return {
|
||||
showViewer: false,
|
||||
open: false,
|
||||
isOpen: false,
|
||||
project: null,
|
||||
title: "",
|
||||
isUnit: true,
|
||||
nodes: [],
|
||||
form: {},
|
||||
rules: {
|
||||
imageUrls: [{ required: true, message: "请上传验收图片", trigger: "blur" }],
|
||||
qualityUser: [{ required: true, message: "请选择质量专员", trigger: "blur" }],
|
||||
superviseUser: [{ required: true, message: "请选择监理专员", trigger: "blur" }],
|
||||
checkWorkingPosition: [
|
||||
{ required: true, message: "请输入验收工序部位", trigger: "blur" },
|
||||
{ max: 200, message: "验收工序部位最多200字符", trigger: "blur" },
|
||||
],
|
||||
intro: [
|
||||
{ required: true, message: "请输入验收描述", trigger: "blur" },
|
||||
{ max: 200, message: "验收描述最多200字符", trigger: "blur" },
|
||||
],
|
||||
checkingDate: [{ required: true, message: "请选择验收时间", trigger: "blur" }],
|
||||
checkResult: [{ required: true, message: "请选择验收结果", trigger: "blur" }],
|
||||
},
|
||||
projectCheckingList: [],
|
||||
activeName: "",
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
projectId: null,
|
||||
deptId: null,
|
||||
},
|
||||
deptUserData: [],
|
||||
previewList: [],
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(["dept"]),
|
||||
},
|
||||
mounted() {},
|
||||
|
||||
methods: {
|
||||
getImageUrl(url) {
|
||||
return process.env.VUE_APP_BASE_API + url + ".min.jpg";
|
||||
},
|
||||
onPreview(urls) {
|
||||
this.previewList = [];
|
||||
urls.split(",").forEach((item) => {
|
||||
this.previewList.push(process.env.VUE_APP_BASE_API + item);
|
||||
});
|
||||
this.showViewer = true;
|
||||
},
|
||||
closeViewer() {
|
||||
this.showViewer = false;
|
||||
},
|
||||
doOk() {
|
||||
updateProjectDeptWroks(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("保存成功");
|
||||
this.isOpen = false;
|
||||
});
|
||||
},
|
||||
doCanel() {
|
||||
this.isOpen = false;
|
||||
},
|
||||
show(project) {
|
||||
this.project = project;
|
||||
this.title = project.projectName;
|
||||
this.isOpen = true;
|
||||
this.queryParams.projectId = project.id;
|
||||
this.$api.publics
|
||||
.queryUnitList({
|
||||
projectId: project.id,
|
||||
unitType: 2,
|
||||
})
|
||||
.then((d) => {
|
||||
this.nodes = d.rows;
|
||||
if (d.rows.length > 0) {
|
||||
this.activeName = this.nodes[0].unitId + "";
|
||||
this.isUnit = true;
|
||||
this.getList();
|
||||
} else {
|
||||
this.$message.error("当前项目未分配总包单位,不能办理举牌验收!");
|
||||
this.isUnit = false;
|
||||
}
|
||||
});
|
||||
this.$api.publics
|
||||
.selectProjectUnitUser({
|
||||
projectId: project.id,
|
||||
})
|
||||
.then((d) => {
|
||||
this.deptUserData = d.data;
|
||||
});
|
||||
},
|
||||
// 页签点击
|
||||
getList() {
|
||||
this.queryParams.deptId = this.activeName;
|
||||
this.loading = true;
|
||||
listProjectChecking(this.queryParams).then((response) => {
|
||||
this.projectCheckingList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false;
|
||||
this.reset();
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
id: null,
|
||||
projectId: null,
|
||||
deptId: null,
|
||||
insuranceType: null,
|
||||
insuranceNumber: null,
|
||||
insuranceFile: null,
|
||||
insuranceState: null,
|
||||
beginDate: null,
|
||||
endDate: null,
|
||||
companyName: null,
|
||||
isDel: null,
|
||||
createBy: null,
|
||||
createTime: null,
|
||||
updateBy: null,
|
||||
updateTime: null,
|
||||
remark: null,
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map((item) => item.id);
|
||||
this.single = selection.length !== 1;
|
||||
this.multiple = !selection.length;
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
if (this.nodes.length > 0) {
|
||||
this.reset();
|
||||
this.form.projectId = this.project.id;
|
||||
this.form.projectName = this.project.projectName;
|
||||
this.form.deptId = this.activeName;
|
||||
this.nodes.forEach((item) => {
|
||||
if (item.unitId == this.activeName) {
|
||||
this.form.deptName = item.unitName;
|
||||
}
|
||||
});
|
||||
this.open = true;
|
||||
this.title = "添加项目举牌验收";
|
||||
} else {
|
||||
this.$message.error("当前项目未分配总包单位,不能办理举牌验收!");
|
||||
}
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids;
|
||||
getProjectChecking(id).then((response) => {
|
||||
this.form = response.data;
|
||||
this.form.projectName = this.project.projectName;
|
||||
this.nodes.forEach((item) => {
|
||||
if (item.unitId == this.activeName) {
|
||||
this.form.deptName = item.unitName;
|
||||
}
|
||||
});
|
||||
this.open = true;
|
||||
this.title = "修改项目举牌验收";
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
updateProjectChecking(this.form).then((response) => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addProjectChecking(this.form).then((response) => {
|
||||
if (response.code == 200) {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal
|
||||
.confirm('是否确认删除项目举牌验收编号为"' + ids + '"的数据项?')
|
||||
.then(function () {
|
||||
return delProjectChecking(ids);
|
||||
})
|
||||
.then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
})
|
||||
.catch(() => {});
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download(
|
||||
"project/ProjectChecking/export",
|
||||
{
|
||||
...this.queryParams,
|
||||
},
|
||||
`ProjectChecking_${new Date().getTime()}.xlsx`
|
||||
);
|
||||
},
|
||||
/** 选择质量专员*/
|
||||
selectQualityUser(val) {
|
||||
this.deptUserData.forEach((item) => {
|
||||
item.userinfoList.forEach((u) => {
|
||||
if (u.phonenumber == val) {
|
||||
this.form.qualityUserName = u.nickName + " [" + u.jobTypeName + "] ";
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
/** 选择监理专员*/
|
||||
selectSuperviseUser(val) {
|
||||
this.deptUserData.forEach((item) => {
|
||||
item.userinfoList.forEach((u) => {
|
||||
if (u.phonenumber == val) {
|
||||
this.form.superviseUserName = u.nickName + " [" + u.jobTypeName + "] ";
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
/** 下载附件 */
|
||||
handleDownload(row) {
|
||||
this.files = row.checkingFiles.split(",");
|
||||
this.files.forEach((item) => {
|
||||
this.$download.resource(item);
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped></style>
|
|
@ -58,7 +58,6 @@
|
|||
<script>
|
||||
import { mapGetters } from "vuex";
|
||||
import {
|
||||
unitList,
|
||||
deptWroksViewData,
|
||||
updateProjectDeptWroks,
|
||||
} from "@/api/project/projectDeptWroks";
|
||||
|
@ -102,10 +101,12 @@ export default {
|
|||
this.project = project;
|
||||
this.title = project.projectName;
|
||||
this.isOpen = true;
|
||||
unitList({
|
||||
this.$api.publics
|
||||
.queryUnitList({
|
||||
projectId: project.id,
|
||||
unitType: 2,
|
||||
}).then((d) => {
|
||||
})
|
||||
.then((d) => {
|
||||
this.nodes = d.rows;
|
||||
if (d.rows.length > 0) {
|
||||
this.activeName = this.nodes[0].unitId + "";
|
||||
|
|
|
@ -362,10 +362,12 @@
|
|||
size="mini"
|
||||
@command="(command) => handleCommand(command, scope.row)"
|
||||
v-hasPermi="[
|
||||
'system:assess:list',
|
||||
'project:assess:list',
|
||||
'project:build_node_data:list',
|
||||
'project:projectChecking:list',
|
||||
'work:workTrain:list',
|
||||
'work:emergencyDrill:list',
|
||||
'project:surProjectInsurance:list',
|
||||
'project:surProjectSpecial:list',
|
||||
'project:projectDeptWroks:list',
|
||||
'project:surProjectAttendance:add',
|
||||
|
@ -379,7 +381,7 @@
|
|||
<el-dropdown-item
|
||||
command="handleAssess"
|
||||
icon="el-icon-coordinate"
|
||||
v-hasPermi="['system:assess:list']"
|
||||
v-hasPermi="['project:assess:list']"
|
||||
>季度考核管理</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item
|
||||
|
@ -388,6 +390,12 @@
|
|||
v-hasPermi="['project:build_node_data:list']"
|
||||
>计划节点管理</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item
|
||||
command="handleProjectChecking"
|
||||
icon="el-icon-s-help"
|
||||
v-hasPermi="['project:projectChecking:list']"
|
||||
>举牌验收管理</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item
|
||||
command="handleWorkTrain"
|
||||
icon="el-icon-notebook-2"
|
||||
|
@ -424,6 +432,7 @@
|
|||
v-hasPermi="['project:surProjectAttendance:add']"
|
||||
>今日出勤</el-dropdown-item
|
||||
>
|
||||
|
||||
<el-dropdown-item
|
||||
command="handleDelete"
|
||||
icon="el-icon-delete"
|
||||
|
@ -754,6 +763,7 @@
|
|||
<attendance-drawer ref="attDrawer"></attendance-drawer>
|
||||
<projectDeptWroksDrawer ref="deptWroksDrawer"></projectDeptWroksDrawer>
|
||||
<insuranceDrawer ref="insurance"></insuranceDrawer>
|
||||
<projectCheckingDrawer ref="projectChecking"></projectCheckingDrawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -778,6 +788,7 @@ import surProjectSpecialDrawer from "../surProjectSpecial/surProjectSpecialDrawe
|
|||
import attendanceDrawer from "../surProjectAttendance/attendanceDrawer.vue";
|
||||
import projectDeptWroksDrawer from "../projectDeptWroks/projectDeptWroksDrawer.vue";
|
||||
import insuranceDrawer from "../surProjectInsurance/insuranceDrawer.vue";
|
||||
import projectCheckingDrawer from "../projectChecking/projectCheckingDrawer.vue";
|
||||
import { checkPermi, checkRole } from "@/utils/permission"; // 权限判断函数
|
||||
|
||||
export default {
|
||||
|
@ -794,6 +805,7 @@ export default {
|
|||
surProjectSpecialDrawer,
|
||||
projectDeptWroksDrawer,
|
||||
insuranceDrawer,
|
||||
projectCheckingDrawer,
|
||||
},
|
||||
dicts: [
|
||||
"sys_check_state",
|
||||
|
@ -1031,6 +1043,9 @@ export default {
|
|||
case "handleProjectInsurance":
|
||||
this.$refs.insurance.show(row);
|
||||
break;
|
||||
case "handleProjectChecking":
|
||||
this.$refs.projectChecking.show(row);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -14,7 +14,9 @@
|
|||
-->
|
||||
<div class="prj-nav">
|
||||
<el-radio-group v-model="selPrj" @input="doSelPrj">
|
||||
<el-radio-button v-for="(it, idx) in prjs" :key="idx" :label="it.id">{{ it.projectName }}</el-radio-button>
|
||||
<el-radio-button v-for="(it, idx) in prjs" :key="idx" :label="it.id">{{
|
||||
it.projectName
|
||||
}}</el-radio-button>
|
||||
</el-radio-group>
|
||||
</div>
|
||||
<div class="prj-info">
|
||||
|
@ -49,19 +51,25 @@
|
|||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">工程期限:</span>
|
||||
<span class="sp-text">{{ prj.projectTimeLimit?prj.projectTimeLimit+'天':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.projectTimeLimit ? prj.projectTimeLimit + "天" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">总投资:</span>
|
||||
<span class="sp-text">{{ prj.totalInvestment?prj.totalInvestment+'万元':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.totalInvestment ? prj.totalInvestment + "万元" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">建筑面积:</span>
|
||||
<span class="sp-text">{{ prj.floorArea?prj.floorArea+'平方米':'' }}</span>
|
||||
<span class="sp-text">{{ prj.floorArea ? prj.floorArea + "平方米" : "" }}</span>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<span class="sp-label">开累产值:</span>
|
||||
<span class="sp-text">{{ prj.totalOutputValue?prj.totalOutputValue+'万元':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.totalOutputValue ? prj.totalOutputValue + "万元" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">计划完成时间:</span>
|
||||
|
@ -82,17 +90,21 @@
|
|||
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">合同总额:</span>
|
||||
<span class="sp-text">{{ prj.contractAmount?prj.contractAmount+'万元':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.contractAmount ? prj.contractAmount + "万元" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">付款金额:</span>
|
||||
<span class="sp-text">{{ prj.paidAmount?prj.paidAmount+'万元':'' }}</span>
|
||||
<span class="sp-text">{{ prj.paidAmount ? prj.paidAmount + "万元" : "" }}</span>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">挂账金额:</span>
|
||||
<span class="sp-text">{{ prj.onAccountAmount?prj.onAccountAmount+'万元':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.onAccountAmount ? prj.onAccountAmount + "万元" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="6">
|
||||
|
@ -102,15 +114,21 @@
|
|||
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">劳务人员数:</span>
|
||||
<span class="sp-text">{{ prj.servicePersonnel?prj.servicePersonnel+'人':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.servicePersonnel ? prj.servicePersonnel + "人" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span class="sp-label">监理人员数:</span>
|
||||
<span class="sp-text">{{ prj.supervisorPersonnel?prj.supervisorPersonnel+'人':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.supervisorPersonnel ? prj.supervisorPersonnel + "人" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<span class="sp-label">总包人员数:</span>
|
||||
<span class="sp-text">{{ prj.generalContractor?prj.generalContractor+'人':'' }}</span>
|
||||
<span class="sp-text">{{
|
||||
prj.generalContractor ? prj.generalContractor + "人" : ""
|
||||
}}</span>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="24">
|
||||
|
@ -120,10 +138,34 @@
|
|||
</div>
|
||||
|
||||
<div class="tool-bar">
|
||||
<el-button type="primary" @click="doPrjProcessMgr" v-hasPermi="['project:surProject:edit']" icon="el-icon-time">进度管理</el-button>
|
||||
<el-button type="primary" @click="doPrjAssess" v-hasPermi="['system:assess:list']" icon="el-icon-coordinate">季度考核管理</el-button>
|
||||
<el-button type="primary" @click="doPrjBuildNode" v-hasPermi="['project:build_node_data:list']" icon="el-icon-data-analysis">计划节点管理</el-button>
|
||||
<el-button type="primary" @click="doPrjAttendance" v-hasPermi="['project:surProjectAttendance:add']" icon="el-icon-s-check">今日出勤</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="doPrjProcessMgr"
|
||||
v-hasPermi="['project:surProject:edit']"
|
||||
icon="el-icon-time"
|
||||
>进度管理</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="doPrjAssess"
|
||||
v-hasPermi="['project:assess:list']"
|
||||
icon="el-icon-coordinate"
|
||||
>季度考核管理</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="doPrjBuildNode"
|
||||
v-hasPermi="['project:build_node_data:list']"
|
||||
icon="el-icon-data-analysis"
|
||||
>计划节点管理</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
@click="doPrjAttendance"
|
||||
v-hasPermi="['project:surProjectAttendance:add']"
|
||||
icon="el-icon-s-check"
|
||||
>今日出勤</el-button
|
||||
>
|
||||
</div>
|
||||
<ProjectScheduleDlg ref="prjSchDlg"></ProjectScheduleDlg>
|
||||
<assess-drawer ref="assessDrawer"></assess-drawer>
|
||||
|
@ -134,21 +176,32 @@
|
|||
|
||||
<script>
|
||||
import { listSurProject } from "@/api/project/surProject";
|
||||
import ProjectScheduleDlg from '../surProjectSchedule/ProjectScheduleDlg.vue'
|
||||
import AssessDrawer from '../surProjectQuarterlyAssess/assessDrawer.vue'
|
||||
import buildNodeDrawer from '../surBuildNode/buildNodeDrawer.vue'
|
||||
import attendanceDrawer from '../surProjectAttendance/attendanceDrawer.vue'
|
||||
import ProjectScheduleDlg from "../surProjectSchedule/ProjectScheduleDlg.vue";
|
||||
import AssessDrawer from "../surProjectQuarterlyAssess/assessDrawer.vue";
|
||||
import buildNodeDrawer from "../surBuildNode/buildNodeDrawer.vue";
|
||||
import attendanceDrawer from "../surProjectAttendance/attendanceDrawer.vue";
|
||||
export default {
|
||||
dicts: ['sys_check_state','sur_project_xmjd', 'project_build_type', 'sys_common_isdel', 'project_category','project_level','sur_project_weight'],
|
||||
name: 'RuoyiUiMyIndex',
|
||||
dicts: [
|
||||
"sys_check_state",
|
||||
"sur_project_xmjd",
|
||||
"project_build_type",
|
||||
"sys_common_isdel",
|
||||
"project_category",
|
||||
"project_level",
|
||||
"sur_project_weight",
|
||||
],
|
||||
name: "RuoyiUiMyIndex",
|
||||
components: {
|
||||
ProjectScheduleDlg,AssessDrawer,buildNodeDrawer,attendanceDrawer
|
||||
ProjectScheduleDlg,
|
||||
AssessDrawer,
|
||||
buildNodeDrawer,
|
||||
attendanceDrawer,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
prjs: [],
|
||||
selPrj: 0,
|
||||
prj: {}
|
||||
prj: {},
|
||||
};
|
||||
},
|
||||
|
||||
|
@ -161,16 +214,16 @@ export default {
|
|||
this.$refs.attDrawer.show(this.prj);
|
||||
},
|
||||
getWeight(v) {
|
||||
let tmps=this.dict.type.sur_project_weight.filter(d=>d.value==v);
|
||||
return tmps.length>0?tmps[0].label:'';
|
||||
let tmps = this.dict.type.sur_project_weight.filter((d) => d.value == v);
|
||||
return tmps.length > 0 ? tmps[0].label : "";
|
||||
},
|
||||
getprojectType(v) {
|
||||
let tmps=this.dict.type.project_category.filter(d=>d.value==v);
|
||||
return tmps.length>0?tmps[0].label:'';
|
||||
let tmps = this.dict.type.project_category.filter((d) => d.value == v);
|
||||
return tmps.length > 0 ? tmps[0].label : "";
|
||||
},
|
||||
getprojectLvl(v) {
|
||||
let tmps=this.dict.type.project_level.filter(d=>d.value==v);
|
||||
return tmps.length>0?tmps[0].label:'';
|
||||
let tmps = this.dict.type.project_level.filter((d) => d.value == v);
|
||||
return tmps.length > 0 ? tmps[0].label : "";
|
||||
},
|
||||
doPrjProcessMgr() {
|
||||
this.$refs.prjSchDlg.showDialog(this.prj);
|
||||
|
@ -182,7 +235,7 @@ export default {
|
|||
this.$refs.nodeDrawer.show(this.prj);
|
||||
},
|
||||
doSelPrj(a, b) {
|
||||
let tmps = this.prjs.filter(d => d.id == this.selPrj);
|
||||
let tmps = this.prjs.filter((d) => d.id == this.selPrj);
|
||||
this.prj = tmps.length > 0 ? tmps[0] : {};
|
||||
},
|
||||
loadData() {
|
||||
|
@ -190,14 +243,14 @@ export default {
|
|||
pageNum: 1,
|
||||
pageSize: 40,
|
||||
};
|
||||
listSurProject(queryParams).then(d => {
|
||||
listSurProject(queryParams).then((d) => {
|
||||
this.prjs = d.rows || [];
|
||||
if (this.prjs.length > 0) {
|
||||
this.selPrj = this.prjs[0].id;
|
||||
this.prj = this.prjs[0];
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
@ -216,7 +269,7 @@ export default {
|
|||
margin-bottom: 4px;
|
||||
|
||||
.el-radio-button__inner {
|
||||
border: 1px solid #DCDFE6;
|
||||
border: 1px solid #dcdfe6;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -148,10 +148,12 @@ export default {
|
|||
this.project = project;
|
||||
this.title = project.projectName;
|
||||
this.isOpen = true;
|
||||
unitList({
|
||||
this.$api.publics
|
||||
.queryUnitList({
|
||||
projectId: project.id,
|
||||
unitType: 2,
|
||||
}).then((d1) => {
|
||||
})
|
||||
.then((d1) => {
|
||||
this.nodes = d1.rows;
|
||||
if (this.nodes.length > 0) {
|
||||
this.activeName = this.nodes[0].unitId + "";
|
||||
|
|
|
@ -348,7 +348,7 @@ export default {
|
|||
{ max: 20, message: "请输入", trigger: "blur" },
|
||||
],
|
||||
insuranceNumber: [
|
||||
{ required: true, message: "请输入保险单编号", trigger: "blur" },
|
||||
{ required: false, message: "请输入保险单编号", trigger: "blur" },
|
||||
],
|
||||
insuranceFile: [{ required: true, message: "请上传保险合同", trigger: "blur" }],
|
||||
},
|
||||
|
|
|
@ -157,7 +157,6 @@
|
|||
|
||||
<script>
|
||||
import { mapGetters } from "vuex";
|
||||
import { unitList } from "@/api/project/projectDeptWroks";
|
||||
import {
|
||||
listSurProjectInsurance,
|
||||
listSurProjectInsurancev2,
|
||||
|
@ -186,7 +185,7 @@ export default {
|
|||
{ max: 20, message: "请输入", trigger: "blur" },
|
||||
],
|
||||
insuranceNumber: [
|
||||
{ required: true, message: "请输入保险单编号", trigger: "blur" },
|
||||
{ required: false, message: "请输入保险单编号", trigger: "blur" },
|
||||
],
|
||||
insuranceFile: [{ required: true, message: "请上传保险合同", trigger: "blur" }],
|
||||
},
|
||||
|
@ -233,10 +232,12 @@ export default {
|
|||
this.title = project.projectName;
|
||||
this.isOpen = true;
|
||||
this.queryParams.projectId = project.id;
|
||||
unitList({
|
||||
this.$api.publics
|
||||
.queryUnitList({
|
||||
projectId: project.id,
|
||||
unitType: 2,
|
||||
}).then((d) => {
|
||||
})
|
||||
.then((d) => {
|
||||
this.nodes = d.rows;
|
||||
if (d.rows.length > 0) {
|
||||
this.activeName = this.nodes[0].unitId + "";
|
||||
|
|
|
@ -494,17 +494,18 @@ export default {
|
|||
projectId: row.projectId,
|
||||
};
|
||||
this.open = true;
|
||||
let that = this;
|
||||
//获取项目部门列表的接口
|
||||
listProjectUnit(param).then((response) => {
|
||||
this.deptOptions = response.data;
|
||||
});
|
||||
getWorkTrain(id).then((response) => {
|
||||
this.form = response.data;
|
||||
that.form = response.data;
|
||||
let depts = [];
|
||||
this.form.workTrainDeptList.forEach((item) => {
|
||||
that.form.workTrainDeptList.forEach((item) => {
|
||||
depts.push(item.deptId);
|
||||
});
|
||||
this.form.workTrainDeptList = depts;
|
||||
that.form.workTrainDeptList = depts;
|
||||
if (that.form.trainFile) {
|
||||
that.files = that.form.trainFile.split(",");
|
||||
}
|
||||
|
|
|
@ -177,7 +177,7 @@
|
|||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-refresh-left"
|
||||
@click="handleUpdateStatus(scope.row, 3)"
|
||||
@click="handleUpdateStatus(scope.row, 1)"
|
||||
v-hasPermi="['work:workJournalism:edit']"
|
||||
>撤回</el-button
|
||||
>
|
||||
|
|
|
@ -232,13 +232,6 @@
|
|||
<!-- 添加或修改演练培训对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="680px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="项目名称">
|
||||
<el-input
|
||||
placeholder="请输入项目名称"
|
||||
v-model="form.projectName"
|
||||
:disabled="true"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="培训主图" prop="mainImage">
|
||||
<image-upload v-model="form.mainImage" :limit="1" />
|
||||
</el-form-item>
|
||||
|
@ -494,17 +487,18 @@ export default {
|
|||
projectId: row.projectId,
|
||||
};
|
||||
this.open = true;
|
||||
let that = this;
|
||||
//获取项目部门列表的接口
|
||||
listProjectUnit(param).then((response) => {
|
||||
this.deptOptions = response.data;
|
||||
that.deptOptions = response.data;
|
||||
});
|
||||
getWorkTrain(id).then((response) => {
|
||||
this.form = response.data;
|
||||
that.form = response.data;
|
||||
let depts = [];
|
||||
this.form.workTrainDeptList.forEach((item) => {
|
||||
that.form.workTrainDeptList.forEach((item) => {
|
||||
depts.push(item.deptId);
|
||||
});
|
||||
this.form.workTrainDeptList = depts;
|
||||
that.form.workTrainDeptList = depts;
|
||||
if (that.form.trainFile) {
|
||||
that.files = that.form.trainFile.split(",");
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.ruoyi.common.config.RuoYiConfig;
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.enums.DeptTypeEnum;
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
import com.ruoyi.common.enums.SysRoleEnum;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.common.utils.QiniuBase64UploadUtil;
|
||||
|
@ -147,7 +148,7 @@ public class PshServiceImpl implements IPshService {
|
|||
String roleType = "";
|
||||
if(DeptTypeEnum.JTGS.getCode().equals(deptMap.get("type_flag"))){
|
||||
List<Map<String,Object>> datalist = pshMapper.queryProjectUserinfo(map);
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && "21".equals(datalist.get(0).get("job_type"))){
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && PublicStateEnum.USERTYPE_JFJL.getCode().equals(datalist.get(0).get("job_type"))){
|
||||
//说明是甲方经理
|
||||
roleType = DeptTypeEnum.JFDBTYPE.getCode();
|
||||
}else{
|
||||
|
@ -155,7 +156,7 @@ public class PshServiceImpl implements IPshService {
|
|||
}
|
||||
}else if(DeptTypeEnum.ZGS.getCode().equals(deptMap.get("type_flag"))){
|
||||
List<Map<String,Object>> datalist = pshMapper.queryProjectUserinfo(map);
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && "21".equals(datalist.get(0).get("job_type"))){
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && PublicStateEnum.USERTYPE_JFJL.getCode().equals(datalist.get(0).get("job_type"))){
|
||||
//说明是甲方经理
|
||||
roleType = DeptTypeEnum.JFDBTYPE.getCode();
|
||||
}else{
|
||||
|
|
|
@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
|
|||
import com.ruoyi.common.config.RuoYiConfig;
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.enums.DeptTypeEnum;
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
import com.ruoyi.common.enums.SysRoleEnum;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.common.utils.QiniuBase64UploadUtil;
|
||||
|
@ -149,7 +150,7 @@ public class SspServiceImpl implements ISspService {
|
|||
String roleType = "";
|
||||
if(DeptTypeEnum.JTGS.getCode().equals(deptMap.get("type_flag"))){
|
||||
List<Map<String,Object>> datalist = sspMapper.queryProjectUserinfo(map);
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && "21".equals(datalist.get(0).get("job_type"))){
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && PublicStateEnum.USERTYPE_JFJL.getCode().equals(datalist.get(0).get("job_type"))){
|
||||
//说明是甲方经理
|
||||
roleType = DeptTypeEnum.JFDBTYPE.getCode();
|
||||
}else{
|
||||
|
@ -157,7 +158,7 @@ public class SspServiceImpl implements ISspService {
|
|||
}
|
||||
}else if(DeptTypeEnum.ZGS.getCode().equals(deptMap.get("type_flag"))){
|
||||
List<Map<String,Object>> datalist = sspMapper.queryProjectUserinfo(map);
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && "21".equals(datalist.get(0).get("job_type"))){
|
||||
if(datalist!=null && datalist.size()>0 && datalist.get(0)!=null && PublicStateEnum.USERTYPE_JFJL.getCode().equals(datalist.get(0).get("job_type"))){
|
||||
//说明是甲方经理
|
||||
roleType = DeptTypeEnum.JFDBTYPE.getCode();
|
||||
}else{
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
package com.yanzhu.jh.bigscreen.web.controller;
|
||||
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.yanzhu.jh.project.domain.SurProjectInsurance;
|
||||
import com.yanzhu.jh.project.service.ISurProjectCheckingService;
|
||||
import com.yanzhu.jh.project.service.ISurProjectInsuranceService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 项目验收Conller
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/bgscreen/projectChecking")
|
||||
public class ProjectCheckingController {
|
||||
|
||||
@Autowired
|
||||
private ISurProjectCheckingService surProjectCheckingService;
|
||||
|
||||
/**
|
||||
* 根据条件查询项目保险
|
||||
* @param deptId
|
||||
* @param projectId
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getProjectInsuranceList")
|
||||
public TableDataInfo getProjectInsuranceList(String deptId, String projectId){
|
||||
SurProjectInsurance surProjectInsurance = new SurProjectInsurance();
|
||||
if(deptId!=null && !"0".equals(deptId)){
|
||||
surProjectInsurance.setNowDept(deptId);
|
||||
}
|
||||
if(projectId!=null && !"0".equals(projectId)){
|
||||
surProjectInsurance.setProjectId(Convert.toLong(projectId));
|
||||
}
|
||||
return getDataTable(surProjectInsuranceService.selectBgscreenInsuranceList(surProjectInsurance));
|
||||
}
|
||||
}
|
|
@ -2,6 +2,10 @@ package com.yanzhu.jh.project.controller;
|
|||
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.enums.SysRoleEnum;
|
||||
import com.ruoyi.system.service.ISysDeptService;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
@ -34,6 +38,9 @@ public class SurProjectCheckingController extends BaseController
|
|||
@Autowired
|
||||
private ISurProjectCheckingService surProjectCheckingService;
|
||||
|
||||
@Autowired
|
||||
private ISysDeptService sysDeptService;
|
||||
|
||||
/**
|
||||
* 查询项目验收列表
|
||||
*/
|
||||
|
@ -42,6 +49,13 @@ public class SurProjectCheckingController extends BaseController
|
|||
public TableDataInfo list(SurProjectChecking surProjectChecking)
|
||||
{
|
||||
startPage();
|
||||
surProjectChecking.setNowRole(Convert.toStr(getUserFirstRole()));
|
||||
if(SysRoleEnum.ZGS.getCode().equals(surProjectChecking.getNowRole())){
|
||||
surProjectChecking.setNowDept(Convert.toStr(sysDeptService.getZGSDeptId(getDeptId())));
|
||||
}else{
|
||||
surProjectChecking.setNowDept(Convert.toStr(getDeptId()));
|
||||
}
|
||||
surProjectChecking.setNowUser(Convert.toStr(getUserId()));
|
||||
List<SurProjectChecking> list = surProjectCheckingService.selectSurProjectCheckingList(surProjectChecking);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
@ -101,4 +115,5 @@ public class SurProjectCheckingController extends BaseController
|
|||
{
|
||||
return toAjax(surProjectCheckingService.deleteSurProjectCheckingByIds(ids));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -40,9 +40,6 @@ public class SurProjectDeptWroksController extends BaseController
|
|||
@Autowired
|
||||
private ISurProjectDeptWroksService surProjectDeptWroksService;
|
||||
|
||||
@Autowired
|
||||
private ISurProjectUnitInfoService surProjectUnitInfoService;
|
||||
|
||||
@Autowired
|
||||
private ISysDeptService sysDeptService;
|
||||
|
||||
|
@ -69,20 +66,6 @@ public class SurProjectDeptWroksController extends BaseController
|
|||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询项目部门在册人员列表
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('project:projectDeptWroks:list')")
|
||||
@GetMapping("/unitList")
|
||||
public TableDataInfo unitList(SurProjectUnitInfo surProjectUnitInfo)
|
||||
{
|
||||
surProjectUnitInfo.setNowRole(Convert.toStr(getUserFirstRole()));
|
||||
if(SysRoleEnum.ZBDW.getCode().equals(surProjectUnitInfo.getNowRole())){
|
||||
surProjectUnitInfo.setUnitId(getDeptId());
|
||||
}
|
||||
return getDataTable(surProjectUnitInfoService.selectSurProjectUnitInfoList(surProjectUnitInfo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出项目部门在册人员列表
|
||||
*/
|
||||
|
|
|
@ -89,8 +89,7 @@ public class SurProjectChecking extends BaseEntity
|
|||
private String groupDeptUserName;
|
||||
|
||||
/** 验收时间 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "验收时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
@Excel(name = "验收时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date checkingDate;
|
||||
|
||||
/** 验收附件 */
|
||||
|
@ -101,6 +100,9 @@ public class SurProjectChecking extends BaseEntity
|
|||
@Excel(name = "数据状态")
|
||||
private Long isDel;
|
||||
|
||||
private String projectName;
|
||||
private String deptName;
|
||||
|
||||
public void setId(Long id)
|
||||
{
|
||||
this.id = id;
|
||||
|
@ -291,6 +293,22 @@ public class SurProjectChecking extends BaseEntity
|
|||
return isDel;
|
||||
}
|
||||
|
||||
public String getProjectName() {
|
||||
return projectName;
|
||||
}
|
||||
|
||||
public void setProjectName(String projectName) {
|
||||
this.projectName = projectName;
|
||||
}
|
||||
|
||||
public String getDeptName() {
|
||||
return deptName;
|
||||
}
|
||||
|
||||
public void setDeptName(String deptName) {
|
||||
this.deptName = deptName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -5,6 +5,8 @@ import org.apache.commons.lang3.builder.ToStringStyle;
|
|||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 建设单位信息对象 sur_project_unit_info
|
||||
*
|
||||
|
@ -28,8 +30,8 @@ public class SurProjectUnitInfo extends BaseEntity
|
|||
|
||||
private Long deptId;
|
||||
|
||||
/** 单位分类(1 建设单位 2 设计单位 3 施工单位 4监理单位 5 监测机构) */
|
||||
@Excel(name = "单位分类", readConverterExp = "1=,建=设单位,2=,设=计单位,3=,施=工单位,4=监理单位,5=,监=测机构")
|
||||
/** 单位分类(11 责任主体 2 总包单位 3 分包单位 4 监理单位) 具体参考数据字典sys_dept_type */
|
||||
@Excel(name = "单位分类", readConverterExp = "1=,责任主体,2=,总包单位,3=,分包单位,4=监理单位")
|
||||
private Long unitType;
|
||||
|
||||
/** 单位名称 */
|
||||
|
@ -53,6 +55,10 @@ public class SurProjectUnitInfo extends BaseEntity
|
|||
/** 删除状态(0 未删除 1 已删除) */
|
||||
private Long delFlag;
|
||||
|
||||
private String unitTypeName;
|
||||
|
||||
private List<SurProjectUserinfo> userinfoList;
|
||||
|
||||
public void setId(Long id)
|
||||
{
|
||||
this.id = id;
|
||||
|
@ -150,6 +156,22 @@ public class SurProjectUnitInfo extends BaseEntity
|
|||
this.deptName = deptName;
|
||||
}
|
||||
|
||||
public String getUnitTypeName() {
|
||||
return unitTypeName;
|
||||
}
|
||||
|
||||
public void setUnitTypeName(String unitTypeName) {
|
||||
this.unitTypeName = unitTypeName;
|
||||
}
|
||||
|
||||
public List<SurProjectUserinfo> getUserinfoList() {
|
||||
return userinfoList;
|
||||
}
|
||||
|
||||
public void setUserinfoList(List<SurProjectUserinfo> userinfoList) {
|
||||
this.userinfoList = userinfoList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -60,6 +60,7 @@ public class SurProjectUserinfo extends BaseEntity
|
|||
|
||||
private Long[] projectIds;
|
||||
private Long[] userIds;
|
||||
private String jobTypeName;
|
||||
|
||||
public void setProjectName(String projectName) {
|
||||
this.projectName = projectName;
|
||||
|
@ -174,6 +175,14 @@ public class SurProjectUserinfo extends BaseEntity
|
|||
this.phonenumber = phonenumber;
|
||||
}
|
||||
|
||||
public String getJobTypeName() {
|
||||
return jobTypeName;
|
||||
}
|
||||
|
||||
public void setJobTypeName(String jobTypeName) {
|
||||
this.jobTypeName = jobTypeName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
package com.yanzhu.jh.project.service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.yanzhu.jh.project.domain.SurProject;
|
||||
import com.yanzhu.jh.project.domain.SurProjectUnitInfo;
|
||||
import com.yanzhu.jh.project.domain.SurProjectUserinfo;
|
||||
|
||||
/**
|
||||
|
@ -30,6 +32,14 @@ public interface ISurProjectUserinfoService
|
|||
*/
|
||||
public List<SurProjectUserinfo> selectSurProjectUserinfoList(SurProjectUserinfo surProjectUserinfo);
|
||||
|
||||
/**
|
||||
* 查询项目部门人员
|
||||
*
|
||||
* @param surProjectUserinfo 项目用户
|
||||
* @return 项目用户集合
|
||||
*/
|
||||
public List<SurProjectUnitInfo> selectProjectUnitUser(SurProjectUserinfo surProjectUserinfo);
|
||||
|
||||
/**
|
||||
* 新增项目用户
|
||||
*
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
package com.yanzhu.jh.project.service.impl;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -53,9 +57,18 @@ public class SurProjectCheckingServiceImpl implements ISurProjectCheckingService
|
|||
@Override
|
||||
public int insertSurProjectChecking(SurProjectChecking surProjectChecking)
|
||||
{
|
||||
|
||||
surProjectChecking.setCheckType(PublicStateEnum.PROJECT_CHECK_TYPE_JPYS.getCode());
|
||||
surProjectChecking.setWorkingPositionType(PublicStateEnum.PROJECT_CHECK_POSITION_TYPE.getCode());
|
||||
if(surProjectChecking.getCheckingDate()==null){
|
||||
//添加默认时间
|
||||
surProjectChecking.setCheckingDate(new Date());
|
||||
}
|
||||
//默认第一张图是主图
|
||||
surProjectChecking.setMainImage(surProjectChecking.getImageUrls().split(",")[0]);
|
||||
surProjectChecking.setIsDel(Convert.toLong(PublicStateEnum.OK.getCode()));
|
||||
surProjectChecking.setCreateBy(SecurityUtils.getUsername());
|
||||
surProjectChecking.setCreateTime(DateUtils.getNowDate());
|
||||
surProjectChecking.setIsDel(0l);
|
||||
return surProjectCheckingMapper.insertSurProjectChecking(surProjectChecking);
|
||||
}
|
||||
|
||||
|
@ -68,6 +81,7 @@ public class SurProjectCheckingServiceImpl implements ISurProjectCheckingService
|
|||
@Override
|
||||
public int updateSurProjectChecking(SurProjectChecking surProjectChecking)
|
||||
{
|
||||
surProjectChecking.setMainImage(surProjectChecking.getImageUrls().split(",")[0]);
|
||||
surProjectChecking.setUpdateBy(SecurityUtils.getUsername());
|
||||
surProjectChecking.setUpdateTime(DateUtils.getNowDate());
|
||||
return surProjectCheckingMapper.updateSurProjectChecking(surProjectChecking);
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
package com.yanzhu.jh.project.service.impl;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.ruoyi.common.annotation.DataScope;
|
||||
import com.ruoyi.common.core.domain.entity.SysDept;
|
||||
|
@ -10,6 +12,7 @@ import com.ruoyi.common.core.text.Convert;
|
|||
import com.ruoyi.common.enums.DeptTypeEnum;
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.system.mapper.SysDeptMapper;
|
||||
import com.ruoyi.system.mapper.SysUserMapper;
|
||||
import com.yanzhu.jh.project.domain.SurProject;
|
||||
|
@ -71,6 +74,32 @@ public class SurProjectUserinfoServiceImpl implements ISurProjectUserinfoService
|
|||
return surProjectUserinfoMapper.selectSurProjectUserinfoList(surProjectUserinfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询项目部门人员
|
||||
*
|
||||
* @param surProjectUserinfo 项目用户
|
||||
* @return 项目用户集合
|
||||
*/
|
||||
public List<SurProjectUnitInfo> selectProjectUnitUser(SurProjectUserinfo surProjectUserinfo) {
|
||||
SurProjectUnitInfo surProjectUnitInfo = new SurProjectUnitInfo();
|
||||
surProjectUnitInfo.setProjectId(surProjectUserinfo.getProjectId());
|
||||
List<SurProjectUnitInfo> projectUnitUserInfoList = surProjectUnitInfoMapper.selectSurProjectUnitInfoList(surProjectUnitInfo);
|
||||
List<SurProjectUserinfo> projectUserinfoList = surProjectUserinfoMapper.selectSurProjectUserinfoList(surProjectUserinfo);
|
||||
for(SurProjectUnitInfo projectUnitInfo:projectUnitUserInfoList){
|
||||
List<SurProjectUserinfo> unitUserList = new ArrayList<>();
|
||||
for(SurProjectUserinfo projectUserinfo:projectUserinfoList){
|
||||
//同一部门组装数据
|
||||
if(projectUnitInfo.getUnitId().equals(projectUserinfo.getDeptId())){
|
||||
unitUserList.add(projectUserinfo);
|
||||
}else if(DeptTypeEnum.ZGS.getCode().equals(projectUnitInfo.getUnitType().toString()) && PublicStateEnum.USERTYPE_JFJL.getCode().equals(projectUserinfo.getJobType())) {
|
||||
unitUserList.add(projectUserinfo);
|
||||
}
|
||||
}
|
||||
projectUnitInfo.setUserinfoList(unitUserList);
|
||||
}
|
||||
return projectUnitUserInfoList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增项目用户
|
||||
*
|
||||
|
@ -88,7 +117,7 @@ public class SurProjectUserinfoServiceImpl implements ISurProjectUserinfoService
|
|||
if(DeptTypeEnum.ZGS.getCode().equals(sysDept.getTypeFlag())){
|
||||
SurProject surProject = surProjectMapper.selectSurProjectById(surProjectUserinfo.getProjectId());
|
||||
//选择人员职务是甲方经理时,同步到项目负责人
|
||||
if("21".equals(surProjectUserinfo.getJobType())){
|
||||
if(PublicStateEnum.USERTYPE_JFJL.getCode().equals(surProjectUserinfo.getJobType())){
|
||||
SysUser sysUser = sysUserMapper.selectUserById(surProjectUserinfo.getUserIds()[0]);
|
||||
surProject.setProjectPerson(sysUser.getNickName());
|
||||
surProject.setProjectPhone(sysUser.getPhonenumber());
|
||||
|
|
|
@ -5,12 +5,20 @@ import com.ruoyi.common.core.domain.AjaxResult;
|
|||
import com.ruoyi.common.core.domain.entity.SysDept;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.enums.PublicStateEnum;
|
||||
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.SurProjectChecking;
|
||||
import com.yanzhu.jh.project.domain.SurProjectUnitInfo;
|
||||
import com.yanzhu.jh.project.domain.SurProjectUserinfo;
|
||||
import com.yanzhu.jh.project.service.ISurProjectService;
|
||||
import com.yanzhu.jh.project.service.ISurProjectUnitInfoService;
|
||||
import com.yanzhu.jh.project.service.ISurProjectUserinfoService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
@ -37,6 +45,12 @@ PublicsController extends BaseController {
|
|||
@Autowired
|
||||
private ISurProjectService surProjectService;
|
||||
|
||||
@Autowired
|
||||
private ISurProjectUnitInfoService surProjectUnitInfoService;
|
||||
|
||||
@Autowired
|
||||
private ISurProjectUserinfoService surProjectUserinfoService;
|
||||
|
||||
/**
|
||||
* 获取部门列表
|
||||
*/
|
||||
|
@ -88,4 +102,26 @@ PublicsController extends BaseController {
|
|||
{
|
||||
return success(deptService.selectDeptTreeList(dept));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询项目部门列表
|
||||
*/
|
||||
@GetMapping("/queryUnitList")
|
||||
public TableDataInfo queryUnitList(SurProjectUnitInfo surProjectUnitInfo)
|
||||
{
|
||||
surProjectUnitInfo.setNowRole(Convert.toStr(getUserFirstRole()));
|
||||
if(SysRoleEnum.ZBDW.getCode().equals(surProjectUnitInfo.getNowRole())){
|
||||
surProjectUnitInfo.setUnitId(getDeptId());
|
||||
}
|
||||
return getDataTable(surProjectUnitInfoService.selectSurProjectUnitInfoList(surProjectUnitInfo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 选择项目部门人员
|
||||
*/
|
||||
@GetMapping("/selectProjectUnitUser")
|
||||
public AjaxResult selectProjectUnitUser(SurProjectUserinfo surProjectUserinfo)
|
||||
{
|
||||
return success(surProjectUserinfoService.selectProjectUnitUser(surProjectUserinfo));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -49,13 +49,11 @@ public class WorkTrain extends BaseEntity
|
|||
private Long trainParticipants;
|
||||
|
||||
/** 开始时间 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
@Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date beginDate;
|
||||
|
||||
/** 结束时间 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
@Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date endDate;
|
||||
|
||||
/** 删除标识 */
|
||||
|
|
|
@ -31,6 +31,8 @@ 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="projectName" column="projectName" />
|
||||
<result property="deptName" column="dept_name" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectSurProjectCheckingVo">
|
||||
|
@ -38,24 +40,42 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</sql>
|
||||
|
||||
<select id="selectSurProjectCheckingList" parameterType="SurProjectChecking" resultMap="SurProjectCheckingResult">
|
||||
<include refid="selectSurProjectCheckingVo"/>
|
||||
select spc.id, spc.project_id, spc.dept_id, spc.group_dept_id, spc.check_type, spc.main_image, spc.image_urls, spc.working_position_type, spc.check_working_position, spc.checking_num, spc.check_result, spc.intro, spc.quality_user, spc.quality_user_name, spc.supervise_user, spc.supervise_user_name, spc.group_dept_user, spc.group_dept_user_name, spc.checking_date, spc.checking_files, spc.is_del, spc.create_by, spc.create_time, spc.update_by, spc.update_time, spc.remark, 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
|
||||
<!--监理单位/总包公司/分包单位-->
|
||||
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> left join sur_project_unit_info spui on spui.projectId = sp.id</if>
|
||||
<!--普通用户查询项目人员-->
|
||||
<if test='nowRole == "99"'> left join sur_project_userinfo spu on spu.project_id = sp.id</if>
|
||||
<where>
|
||||
<if test="projectId != null "> and project_id = #{projectId}</if>
|
||||
<if test="deptId != null "> and dept_id = #{deptId}</if>
|
||||
<if test="groupDeptId != null "> and group_dept_id = #{groupDeptId}</if>
|
||||
<if test="checkType != null and checkType != ''"> and check_type = #{checkType}</if>
|
||||
<if test="workingPositionType != null and workingPositionType != ''"> and working_position_type = #{workingPositionType}</if>
|
||||
<if test="checkWorkingPosition != null and checkWorkingPosition != ''"> and check_working_position like concat('%', #{checkWorkingPosition}, '%')</if>
|
||||
<if test="checkResult != null and checkResult != ''"> and check_result = #{checkResult}</if>
|
||||
<if test="qualityUser != null and qualityUser != ''"> and quality_user like concat('%', #{qualityUser}, '%')</if>
|
||||
<if test="qualityUserName != null and qualityUserName != ''"> and quality_user_name like concat('%', #{qualityUserName}, '%')</if>
|
||||
<if test="superviseUser != null and superviseUser != ''"> and supervise_user like concat('%', #{superviseUser}, '%')</if>
|
||||
<if test="superviseUserName != null and superviseUserName != ''"> and supervise_user_name like concat('%', #{superviseUserName}, '%')</if>
|
||||
<if test="groupDeptUser != null and groupDeptUser != ''"> and group_dept_user like concat('%', #{groupDeptUser}, '%')</if>
|
||||
<if test="groupDeptUserName != null and groupDeptUserName != ''"> and group_dept_user_name like concat('%', #{groupDeptUserName}, '%')</if>
|
||||
<if test="params.beginCheckingDate != null and params.beginCheckingDate != '' and params.endCheckingDate != null and params.endCheckingDate != ''"> and checking_date between #{params.beginCheckingDate} and #{params.endCheckingDate}</if>
|
||||
<if test="isDel != null "> and is_del = #{isDel}</if>
|
||||
and is_del=0
|
||||
<if test="projectId != null "> and spc.project_id = #{projectId}</if>
|
||||
<if test="projectName != null and projectName != ''"> and sp.projectName like concat('%', #{projectName}, '%')</if>
|
||||
<if test="deptId != null "> and spc.dept_id = #{deptId}</if>
|
||||
<if test="deptName != null and deptName != ''"> and sd.dept_name like concat('%', #{deptName}, '%')</if>
|
||||
<if test="groupDeptId != null "> and spc.group_dept_id = #{groupDeptId}</if>
|
||||
<if test="checkType != null and checkType != ''"> and spc.check_type = #{checkType}</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>
|
||||
<if test="qualityUser != null and qualityUser != ''"> and (spc.quality_user like concat('%', #{qualityUser}, '%') or spc.quality_user_name like concat('%', #{qualityUser}, '%'))</if>
|
||||
<if test="qualityUserName != null and qualityUserName != ''"> and spc.quality_user_name like concat('%', #{qualityUserName}, '%')</if>
|
||||
<if test="superviseUser != null and superviseUser != ''"> and (spc.supervise_user like concat('%', #{superviseUser}, '%') or spc.supervise_user_name like concat('%', #{superviseUser}, '%'))</if>
|
||||
<if test="superviseUserName != null and superviseUserName != ''"> and spc.supervise_user_name like concat('%', #{superviseUserName}, '%')</if>
|
||||
<if test="groupDeptUser != null and groupDeptUser != ''"> and spc.group_dept_user like concat('%', #{groupDeptUser}, '%')</if>
|
||||
<if test="groupDeptUserName != null and groupDeptUserName != ''"> and spc.group_dept_user_name like concat('%', #{groupDeptUserName}, '%')</if>
|
||||
<if test="params.beginCheckingDate != null and params.beginCheckingDate != '' and params.endCheckingDate != null and params.endCheckingDate != ''"> and spc.checking_date between #{params.beginCheckingDate} and #{params.endCheckingDate}</if>
|
||||
<if test="isDel != null "> and spc.is_del = #{isDel}</if>
|
||||
<!-- 查询条件-项目部门 -->
|
||||
<if test="projectDeptId != null "> and sp.deptId = #{projectDeptId}</if>
|
||||
<!--子部门数据-->
|
||||
<if test='nowRole == "4"'> and sp.deptId = #{nowDept}</if>
|
||||
<!--监理单位/总包公司/分包单位查询当前关联数据-->
|
||||
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> and spui.unitId = #{nowDept}</if>
|
||||
<!--普通用户查询项目人员-->
|
||||
<if test='nowRole == "99"'> and spu.user_id = #{nowUser} and spu.is_del=0</if>
|
||||
</where>
|
||||
order by checking_date desc
|
||||
</select>
|
||||
|
||||
<select id="selectSurProjectCheckingById" parameterType="Long" resultMap="SurProjectCheckingResult">
|
||||
|
|
|
@ -10,6 +10,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="unitId" column="unitId" />
|
||||
<result property="deptId" column="deptId" />
|
||||
<result property="unitType" column="unitType" />
|
||||
<result property="unitTypeName" column="unitTypeName" />
|
||||
<result property="unitName" column="unitName" />
|
||||
<result property="deptName" column="deptName" />
|
||||
<result property="unitPersonName" column="unitPersonName" />
|
||||
|
@ -24,18 +25,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</sql>
|
||||
|
||||
<select id="selectSurProjectUnitInfoList" parameterType="SurProjectUnitInfo" resultMap="SurProjectUnitInfoResult">
|
||||
<include refid="selectSurProjectUnitInfoVo"/>
|
||||
select spui.id, spui.projectId, spui.unitId, spui.unitId as deptId, spui.unitType, sdd.dict_label as unitTypeName, spui.unitName, spui.unitName as deptName, spui.unitPersonName, spui.unitPersonPhone, spui.createUser, spui.createTime, spui.del_flag from sur_project_unit_info spui
|
||||
left join sys_dict_data sdd on sdd.dict_type='sys_dept_type' and dict_value=spui.unitType
|
||||
<where>
|
||||
and del_flag=0
|
||||
<if test="projectId != null "> and projectId = #{projectId}</if>
|
||||
<if test="unitId != null "> and unitId = #{unitId}</if>
|
||||
<if test="unitType != null "> and unitType = #{unitType}</if>
|
||||
<if test="unitName != null and unitName != ''"> and unitName like concat('%', #{unitName}, '%')</if>
|
||||
<if test="unitPersonName != null and unitPersonName != ''"> and unitPersonName like concat('%', #{unitPersonName}, '%')</if>
|
||||
<if test="unitPersonPhone != null and unitPersonPhone != ''"> and unitPersonPhone = #{unitPersonPhone}</if>
|
||||
<if test="createUser != null and createUser != ''"> and createUser = #{createUser}</if>
|
||||
<if test="createTime != null "> and createTime = #{createTime}</if>
|
||||
<if test="nowDept != null and nowDept != ''"> and unitId != #{nowDept}</if>
|
||||
<if test="projectId != null "> and spui.projectId = #{projectId}</if>
|
||||
<if test="unitId != null "> and spui.unitId = #{unitId}</if>
|
||||
<if test="unitType != null "> and spui.unitType = #{unitType}</if>
|
||||
<if test="unitName != null and unitName != ''"> and spui.unitName like concat('%', #{unitName}, '%')</if>
|
||||
<if test="unitPersonName != null and unitPersonName != ''"> and spui.unitPersonName like concat('%', #{unitPersonName}, '%')</if>
|
||||
<if test="unitPersonPhone != null and unitPersonPhone != ''"> and spui.unitPersonPhone = #{unitPersonPhone}</if>
|
||||
<if test="createUser != null and createUser != ''"> and spui.createUser = #{createUser}</if>
|
||||
<if test="createTime != null "> and spui.createTime = #{createTime}</if>
|
||||
<if test="nowDept != null and nowDept != ''"> and spui.unitId != #{nowDept}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="deptName" column="dept_name" />
|
||||
<result property="deptType" column="dept_type" />
|
||||
<result property="jobType" column="job_type" />
|
||||
<result property="jobTypeName" column="job_type_name" />
|
||||
<result property="userId" column="user_id" />
|
||||
<result property="isDel" column="is_del" />
|
||||
<result property="createBy" column="create_by" />
|
||||
|
@ -28,9 +29,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</sql>
|
||||
|
||||
<select id="selectSurProjectUserinfoList" parameterType="SurProjectUserinfo" resultMap="SurProjectUserinfoResult">
|
||||
select spu.id, spu.project_id, spu.dept_id, spu.dept_name, spu.dept_type, spu.job_type, spu.user_id, spu.is_del, spu.create_by, spu.create_time, spu.update_by, spu.update_time, spu.remark, sp.projectName, su.nick_name, su.phonenumber from sur_project_userinfo spu
|
||||
select spu.id, spu.project_id, spu.dept_id, spu.dept_name, spu.dept_type, spu.job_type, sdd.dict_label as job_type_name, spu.user_id, spu.is_del, spu.create_by, spu.create_time, spu.update_by, spu.update_time, spu.remark, sp.projectName, su.nick_name, su.phonenumber from sur_project_userinfo spu
|
||||
left join sur_project sp on spu.project_id = sp.id
|
||||
left join sys_user su on spu.user_id = su.user_id
|
||||
left join sys_dict_data sdd on sdd.dict_type='sys_job_type' and spu.job_type = sdd.dict_value
|
||||
<!--监理单位/总包公司/分包单位-->
|
||||
<where>
|
||||
and spu.is_del=0
|
||||
|
|
|
@ -129,9 +129,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
select a.id, a.project_id, a.project_name, a.main_image, a.train_type, a.train_title, a.train_nature, a.train_participants, a.begin_date, a.end_date, a.train_content, a.train_file, a.is_del, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
|
||||
b.train_id as sub_train_id, b.dept_id as sub_dept_id, b.is_main as sub_is_main
|
||||
from work_train a
|
||||
left join work_train_dept b on b.train_id = a.id
|
||||
left join work_train_dept b on b.train_id = a.id and b.is_main ='N'
|
||||
where a.id = #{id}
|
||||
and b.is_main ='N'
|
||||
</select>
|
||||
|
||||
<insert id="insertWorkTrain" parameterType="WorkTrain" useGeneratedKeys="true" keyProperty="id">
|
||||
|
|
Loading…
Reference in New Issue