dev_xds
姜玉琦 2024-04-17 02:18:42 +08:00
commit ebfd22a37b
11 changed files with 203 additions and 302 deletions

View File

@ -52,6 +52,9 @@ spring:
url: jdbc:mysql://cd-cynosdbmysql-grp-9rqrhxsm.sql.tencentcdb.com:27981/yanzhu_jh_test?useSSL=false&characterEncoding=UTF-8&serverTimezone=GMT%2B8
username: root
password: Sxyanzhu@cf
#url: jdbc:mysql://192.168.126.19:3306/yanzhu_jh?useSSL=false&characterEncoding=UTF-8&serverTimezone=GMT%2B8
#username: root
#password: hadoopspring123
# 从库数据源
slave:
# 从数据源开关/默认关闭

View File

@ -40,6 +40,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="title != null and title != ''">
AND title like concat('%', #{title}, '%')
</if>
<if test="operUrl != null and operUrl != ''">
AND oper_url like concat('%', #{operUrl}, '%')
</if>
<if test="operParam != null and operParam != ''">
AND oper_param like concat('%', #{operParam}, '%')
</if>
<if test="requestMethod != null and requestMethod != ''">
AND request_method like concat('%', #{requestMethod}, '%')
</if>
<if test="businessType != null">
AND business_type = #{businessType}
</if>

View File

@ -27,7 +27,7 @@
<el-col :span="8">
<el-form-item label="部门" prop="deptid">
<treeselect v-model="form.deptid" :options="deptOptions" :show-count="true"
placeholder="请选择归属部门" @select="doDeptChange(0)" />
placeholder="请选择归属部门" @select="doDeptSelect" />
<!--
<el-select v-model="form.deptid" filterable placeholder="请选择单位" style="width: 100%;"
@change="doDeptChange()">
@ -125,13 +125,29 @@ export default {
methods: {
/** 查询部门下拉树结构 */
getDeptTree() {
deptTreeSelect().then(response => {
this.deptOptions = response.data;
deptTreeSelect().then(response => {
let tmps=response.data;
let objs=response.data[0].children.filter(d=>d.label.indexOf("产业")>=0);
tmps[0].children=tmps[0].children.filter(d=>d.label.indexOf("分包")==-1 && d.label.indexOf("产业")==-1);
if(objs.length>0){
let names="产发城投,产发置业,产发投资,产发绿能,产发智能,产发医疗,产业发展部".split(",");
objs[0].children=objs[0].children.filter(d=>names.indexOf(d.label)>=0);
objs[0].children.forEach(d=>{
delete d.children;
});
tmps=[...objs[0].children,...tmps[0].children];
}
this.deptOptions = tmps;
});
},
doImageInput() {
this.$refs.fiImage.clearValidate()
},
doDeptSelect(){
setTimeout(()=>{
this.doDeptChange(0);
},400);
},
doDeptChange(init) {
let param = {
deptId: this.form.deptid
@ -148,18 +164,8 @@ export default {
this.form.authorName="";
this.form.authorPhone="";
}else if(init==1){
let user=this.$store.state.user;
if(user){
let tmps=this.userList.filter(d=>d.userId==user.userId);
if(tmps.length>0){
let tmp=tmps[0];
let phone=tmp.phonenumber;
if(!phone){
phone=tmp.userId+" --- ";
}
this.form.authorPhone=phone;
}
}
this.form.authorName="";
this.form.authorPhone="";
}
else if (init==2) {
if (this.oldData && this.userList.length > 0) {
@ -210,20 +216,16 @@ export default {
return { name: d, url: d };
})
this.form.content = row.content;
} else {
let user=this.$store.state.user;
} else {
this.form.title = "";
this.form.magid = 0;
this.form.topic = "1";
this.form.authorName = user?user.nickname:"";
this.form.authorName = "";
this.form.authorPhone = "";
this.form.deptid = user && user.dept?user.dept.deptId:"";
this.form.deptid = undefined;
this.form.imageUrl = [];
this.form.content = "";
this.form.images = "";
if(user){
this.doDeptChange(1);
}
this.form.images = "";
}
},
submitForm() {
@ -238,11 +240,15 @@ export default {
let tmps = this.userList.filter(d => d.phonenumber == this.form.authorPhone);
this.form.authorName = tmps.length > 0 ? tmps[0].nickName : "";
let user=tmps.length>0?tmps[0]:null;
let depts=this.deptOptions.filter(d=>d.id== this.form.deptid);
if(user){
this.form.authorName=user.nickName;
this.form.authorPhone=user.phonenumber;
if(user.dept){
this.form.deptid=user.dept.deptId;
if(depts.length>0 && depts[0].children &&depts[0].children.length>0){
this.form.deptid=user.dept.deptId;
}
}
}
if (this.oldData && this.oldData.id) {

View File

@ -2,331 +2,124 @@
<div class="app-container">
<el-row>
<el-col :span="24">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="68px">
<el-form-item label="项目名称" prop="projectId">
<el-input
v-model="queryParams.projectName"
placeholder="请输入项目名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item
label="责任主体"
prop="projectDeptId"
v-hasPermi="['project:project:zgs']"
>
<el-select
v-model="queryParams.projectDeptId"
placeholder="请选择责任主体"
clearable
>
<el-option
v-for="dict in depts"
:key="dict.deptId"
:label="dict.deptName"
:value="dict.deptId"
></el-option>
<el-form-item label="责任主体" prop="projectDeptId" v-hasPermi="['project:project:zgs']">
<el-select v-model="queryParams.projectDeptId" placeholder="请选择责任主体" clearable>
<el-option v-for="dict in depts" :key="dict.deptId" :label="dict.deptName"
:value="dict.deptId"></el-option>
</el-select>
</el-form-item>
<el-form-item label="提交时间">
<el-date-picker
v-model="daterangeMarksTime"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
<el-date-picker v-model="daterangeMarksTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</el-form-item>
<el-form-item>
<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-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-col>
<el-col :span="24">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
v-if="1 == 2"
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['project:surProjectSchedule:add']"
>新增</el-button
>
<el-button v-if="1 == 2" type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['project:surProjectSchedule: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:surProjectSchedule:edit']"
>修改</el-button
>
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
v-hasPermi="['project:surProjectSchedule: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:surProjectSchedule:remove']"
>删除</el-button
>
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
v-hasPermi="['project:surProjectSchedule:remove']">删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['project:surProjectSchedule:export']"
>导出</el-button
>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
v-hasPermi="['project:surProjectSchedule:export']">导出</el-button>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</el-col>
</el-row>
<el-table
v-loading="loading"
:data="surProjectScheduleList"
@selection-change="handleSelectionChange" stripe
>
<el-table v-loading="loading" :data="surProjectScheduleList" @selection-change="handleSelectionChange" stripe>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="编号" align="center" prop="id" />
<el-table-column
label="项目名称"
align="left"
prop="projectName"
show-overflow-tooltip
width="200"
/>
<el-table-column label="项目名称" align="left" prop="projectName" show-overflow-tooltip width="200" />
<el-table-column label="形象图片" align="center" prop="image" width="100">
<template slot-scope="scope">
<el-image
ref="preview"
style="width: 50px; height: 50px"
:src="getImageUrl(scope.row.image)"
@click="onPreview(scope.row.image)"
></el-image>
<el-image ref="preview" style="width: 50px; height: 50px" :src="getImageUrl(scope.row.image)"
@click="onPreview(scope.row.image)"></el-image>
</template>
</el-table-column>
<el-table-column
label="计划节点"
align="left"
prop="plannedNode"
show-overflow-tooltip
/>
<el-table-column
label="实际节点"
align="left"
prop="actualNode"
show-overflow-tooltip
/>
<el-table-column
label="融资、招采进展"
align="left"
prop="purchaseProgress"
show-overflow-tooltip
width="160"
/>
<el-table-column
label="报建、设计进展"
align="left"
prop="designProgress"
show-overflow-tooltip
width="160"
/>
<el-table-column
label="施工进展"
align="left"
prop="constructionProgress"
show-overflow-tooltip
/>
<el-table-column
label="验收进展"
align="left"
prop="acceptanceProgress"
show-overflow-tooltip
/>
<el-table-column
label="下周计划"
align="left"
prop="planForNextWeek"
show-overflow-tooltip
/>
<el-table-column
label="存在问题"
align="celeftnter"
prop="existingProblem"
show-overflow-tooltip
/>
<el-table-column
label="问题推进情况"
align="left"
prop="problemProgress"
show-overflow-tooltip
width="160"
/>
<el-table-column label="计划节点" align="left" prop="plannedNode" show-overflow-tooltip />
<el-table-column label="实际节点" align="left" prop="actualNode" show-overflow-tooltip />
<el-table-column label="融资、招采进展" align="left" prop="purchaseProgress" show-overflow-tooltip width="160" />
<el-table-column label="报建、设计进展" align="left" prop="designProgress" show-overflow-tooltip width="160" />
<el-table-column label="施工进展" align="left" prop="constructionProgress" show-overflow-tooltip />
<el-table-column label="验收进展" align="left" prop="acceptanceProgress" show-overflow-tooltip />
<el-table-column label="下周计划" align="left" prop="planForNextWeek" show-overflow-tooltip />
<el-table-column label="存在问题" align="celeftnter" prop="existingProblem" show-overflow-tooltip />
<el-table-column label="问题推进情况" align="left" prop="problemProgress" show-overflow-tooltip width="160" />
<el-table-column label="提交人" align="left" prop="createUser" show-overflow-tooltip width="160" />
<el-table-column label="提交时间" align="left" prop="createTime" width="160">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d} {h}:{i}") }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
width="200"
fixed="right"
>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200" fixed="right">
<template slot-scope="scope">
<el-button
v-if="1 == 2"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['project:surProjectSchedule:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['project:surProjectSchedule:remove']"
>删除</el-button
>
<el-button v-if="1 == 2" size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['project:surProjectSchedule:edit']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['project:surProjectSchedule: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"
/>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<!-- 添加或修改形象进度对话框 -->
<el-dialog
:title="title"
v-if="open"
:visible.sync="open"
width="1200px"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-dialog :title="title" v-if="open" :visible.sync="open" width="1200px" append-to-body
:close-on-click-modal="false" :close-on-press-escape="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-col :span="24">
<el-form-item label="形象图片" prop="image">
<image-upload v-model="form.image" :limit="5" :fileSize="15"/>
<image-upload v-model="form.image" :limit="5" :fileSize="15" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划节点" prop="plannedNode">
<el-input
v-model="form.plannedNode"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="12">
<el-input v-model="form.plannedNode" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="12">
<el-form-item label="实际节点" prop="actualNode">
<el-input
v-model="form.actualNode"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="12">
<el-input v-model="form.actualNode" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="12">
<el-form-item label="融资、招采进展" prop="purchaseProgress">
<el-input
v-model="form.purchaseProgress"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="12">
<el-input v-model="form.purchaseProgress" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="12">
<el-form-item label="报建、设计进展" prop="designProgress">
<el-input
v-model="form.designProgress"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="24">
<el-input v-model="form.designProgress" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="24">
<el-form-item label="施工进展" prop="constructionProgress">
<el-input
v-model="form.constructionProgress"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="12">
<el-input v-model="form.constructionProgress" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="12">
<el-form-item label="验收进展" prop="acceptanceProgress">
<el-input
v-model="form.acceptanceProgress"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="12">
<el-input v-model="form.acceptanceProgress" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="12">
<el-form-item label="下周计划" prop="planForNextWeek">
<el-input
v-model="form.planForNextWeek"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="24">
<el-input v-model="form.planForNextWeek" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="24">
<el-form-item label="存在问题" prop="existingProblem">
<el-input
v-model="form.existingProblem"
type="textarea"
placeholder="请输入内容"
/>
</el-form-item> </el-col
><el-col :span="24">
<el-input v-model="form.existingProblem" type="textarea" placeholder="请输入内容" />
</el-form-item> </el-col><el-col :span="24">
<el-form-item label="问题推进情况" prop="problemProgress">
<el-input
v-model="form.problemProgress"
type="textarea"
placeholder="请输入内容"
/>
<el-input v-model="form.problemProgress" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-col>
</el-form>
@ -530,7 +323,7 @@ export default {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
.catch(() => { });
},
/** 导出按钮操作 */
handleExport() {

View File

@ -1,5 +1,6 @@
package com.yanzhu.jh.bigscreen.web.controller;
import cn.hutool.core.util.StrUtil;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
@ -7,6 +8,8 @@ import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.sign.Md5Utils;
import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.service.ISysOperLogService;
import com.yanzhu.jh.project.domain.SurProjectSchedule;
import com.yanzhu.jh.project.domain.vo.SurProjectScheduleWhere;
import com.yanzhu.jh.project.service.ISurProjectScheduleService;
@ -28,6 +31,9 @@ public class ProjectScheduleController extends BaseController {
@Autowired
private ISurProjectScheduleService isurProjectScheduleService;
@Autowired
ISysOperLogService logService;
@GetMapping("/projectConstructionProgress")
public AjaxResult getProjectConstructionProgress(Long projectId){
SurProjectSchedule surProjectSchedule= isurProjectScheduleService.getProjectConstructionProgress(projectId);
@ -71,4 +77,51 @@ public class ProjectScheduleController extends BaseController {
redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES);
return AjaxResult.success(list);
}
/*
@GetMapping("/up")
public AjaxResult upData(){
SysOperLog where=new SysOperLog();
where.setOperUrl("schedule");
where.setRequestMethod("POST");
where.setOperParam("acceptance");
List<SysOperLog> list=logService.selectOperLogList(where);
SurProjectSchedule schWhere=new SurProjectSchedule();
List<SurProjectSchedule> slist=isurProjectScheduleService.selectSurProjectScheduleList(schWhere);
for(int i=0;i<slist.size();i++){
SurProjectSchedule it=slist.get(i);
String name=findOper(it,list);
if(StrUtil.isEmpty(name)){
name=list.get(i).getOperName();
}
it.setCreateBy(name);
isurProjectScheduleService.updateSurProjectSchedule(it);
}
return AjaxResult.success("-100-");
}
private String findOper(SurProjectSchedule it, List<SysOperLog> list) {
String findStr=it.getImage();
if(StrUtil.isEmpty(findStr)){
findStr=it.getPlannedNode();
if(StrUtil.isEmpty(findStr) || findStr.length()<10){
findStr=it.getDesignProgress();
if(StrUtil.isEmpty(findStr) || findStr.length()<10){
findStr=it.getExistingProblem();
}
}
}
if(StrUtil.isEmpty(findStr)){
return null;
}
for(SysOperLog log :list){
if(log.getOperParam().contains(findStr)){
return log.getOperName();
}
}
return null;
}
*/
}

View File

@ -1,10 +1,13 @@
package com.yanzhu.jh.project.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
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;
import java.util.Date;
/**
* sur_project_schedule
*
@ -18,6 +21,26 @@ public class SurProjectSchedule extends BaseEntity
/** 编号 */
private Long id;
public String getCreateUser() {
return createUser;
}
public void setCreateUser(String createUser) {
this.createUser = createUser;
}
public Date getCreateDate() {
return createDate;
}
public void setCreateDate(Date createDate) {
this.createDate = createDate;
}
/** 项目主键 */
@Excel(name = "项目主键")
private Long projectId;
@ -80,6 +103,12 @@ public class SurProjectSchedule extends BaseEntity
@Excel(name = "数据状态")
private Long isDel;
@Excel(name = "提交人")
private String createUser;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "提交时间",dateFormat = "YYYY-MM-dd HH:mm:ss")
private Date createDate;
private String mainImage;
private SurProject surProject;

View File

@ -2,6 +2,7 @@ package com.yanzhu.jh.project.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProject;
import com.yanzhu.jh.project.domain.vo.SurProjectScheduleWhere;
@ -71,6 +72,7 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
SurProject surProject = surProjectMapper.selectSurProjectById(surProjectSchedule.getProjectId());
surProjectSchedule.setDataTemplate(surProject.getProjectType());
}
surProjectSchedule.setCreateBy(SecurityUtils.getUsername());
surProjectSchedule.setCreateTime(DateUtils.getNowDate());
surProjectSchedule.setIsDel(0l);
return surProjectScheduleMapper.insertSurProjectSchedule(surProjectSchedule);
@ -86,6 +88,7 @@ public class SurProjectScheduleServiceImpl implements ISurProjectScheduleService
public int updateSurProjectSchedule(SurProjectSchedule surProjectSchedule)
{
surProjectSchedule.setUpdateTime(DateUtils.getNowDate());
surProjectSchedule.setUpdateBy(SecurityUtils.getUsername());
return surProjectScheduleMapper.updateSurProjectSchedule(surProjectSchedule);
}

View File

@ -3,6 +3,7 @@ package com.yanzhu.jh.project.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectMapper;
@ -69,6 +70,7 @@ public class SurProjectServiceImpl implements ISurProjectService
public int updateSurProject(SurProject surProject)
{
surProject.setUpdateTime(DateUtils.getNowDate());
surProject.setUpdateBy(SecurityUtils.getUsername());
return surProjectMapper.updateSurProject(surProject);
}

View File

@ -158,6 +158,6 @@ select * from (select a.id,
select COUNT(1) id, a.deptid ,b.dept_name title from base_mag_detail a,sys_dept b where a.deptid=b.dept_id
<if test="magid!=null and magid!='' and magid &gt; 0 ">and magid=#{magid}</if>
group by a.deptid,b.dept_name
order by count(1) desc
order by count(1) desc,a.deptid
</select>
</mapper>

View File

@ -27,6 +27,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="mainImage" column="mainImage" />
<result property="dataTemplate" column="data_template" />
<result property="projectType" column="projectType" />
<result property="createUser" column="createUser"/>
<result property="createDate" column="createDate"/>
<association property="surProject" javaType="SurProject">
<result property="id" column="project_id" />
<result property="projectName" column="projectName"/>
@ -36,14 +38,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectSurProjectScheduleVo">
SELECT * from (
SELECT s.*,p.projectType,p.projectName
FROM sur_project_schedule AS s LEFT JOIN sur_project AS p ON s.project_id=p.id ) as a
SELECT s.*,p.projectType,p.projectName,u.nick_name createUser,s.create_time createDate
FROM sur_project_schedule AS s LEFT JOIN sur_project AS p ON s.project_id=p.id left join sys_user u on s.create_by=u.phonenumber ) as a
</sql>
<select id="selectSurProjectScheduleList" parameterType="SurProjectSchedule" resultMap="SurProjectScheduleResult">
SELECT * from (
SELECT s.*,substring_index(s.image,',',1) as mainImage,p.projectName
FROM sur_project_schedule AS s LEFT JOIN sur_project AS p ON s.project_id=p.id
SELECT s.*,substring_index(s.image,',',1) as mainImage,p.projectName,u.nick_name createUser,s.create_time createDate
FROM sur_project_schedule AS s LEFT JOIN sur_project AS p ON s.project_id=p.id left join sys_user u on s.create_by=u.phonenumber
<!--监理单位/总包公司/分包单位-->
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> left join sur_project_unit_info spui on spui.projectId = p.id</if>
<!--普通用户查询项目人员-->

View File

@ -63,7 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<!--监理单位/总包公司/分包单位-->
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> left join sur_project_unit_info spui on spui.projectId = sp.id</if>
<where>
and ssp.isDel=0
and ssp.isDel=0 and sp.progressVisible=0
<if test="projectId != null "> and ssp.projectId = #{projectId}</if>
<if test="infoType != null "> and ssp.infoType = #{infoType}</if>
<if test="roleType != null and roleType >0 "> and ssp.roleType = #{roleType}</if>
@ -212,7 +212,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN sys_user su ON ssp.createUser = su.phonenumber
<!--监理单位/总包公司/分包单位-->
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> left join sur_project_unit_info spui on spui.projectId = sp.id</if>
WHERE ssp.isDel=0
WHERE ssp.isDel=0 and sp.progressVisible=0
<if test="projectId != null "> and ssp.projectId = #{projectId}</if>
<if test="infoType !=null">and infoType=#{infoType}</if>
<if test="problemArea != null and problemArea != ''"> and ssp.problemArea like concat('%', #{problemArea}, '%')</if>
@ -244,7 +244,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN sys_user su ON ssp.createUser = su.phonenumber
<!--监理单位/总包公司/分包单位-->
<if test='nowRole == "5" or nowRole == "6" or nowRole == "7"'> left join sur_project_unit_info spui on spui.projectId = sp.id</if>
WHERE ssp.isDel=0
WHERE ssp.isDel=0 and sp.progressVisible=0
<if test="projectId != null "> and ssp.projectId = #{projectId}</if>
and (date(NOW())<![CDATA[ > ]]> date(ssp.nickedTime) and (ssp.updateTime is null or date(ssp.updateTime) <![CDATA[ > ]]> date(ssp.nickedTime)))
<if test="infoType !=null">and infoType=#{infoType}</if>