Commit 0595d99f authored by yaobaizheng's avatar yaobaizheng

合伙招商后台

parent c3710fd5
package com.ruoyi.system.VO;
public class ProjectInvestmentPersonVO {
private static final long serialVersionUID = 1L;
/** id */
private Long id;
/** id */
private String investmentPerson = "";
private String investmentPhone = "";
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getInvestmentPerson() {
return investmentPerson;
}
public void setInvestmentPerson(String investmentPerson) {
this.investmentPerson = investmentPerson;
}
public String getInvestmentPhone() {
return investmentPhone;
}
public void setInvestmentPhone(String investmentPhone) {
this.investmentPhone = investmentPhone;
}
@Override
public String toString() {
return "ProjectInvestmentPersonVO{" +
"id=" + id +
", investmentPerson='" + investmentPerson + '\'' +
", investmentPhone='" + investmentPhone + '\'' +
'}';
}
}
package com.ruoyi.system.controller;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.domain.PartnerFeedbackInfo;
import com.ruoyi.system.service.IPartnerFeedbackInfoService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 反馈列表Controller
*
* @author ruoyi
* @date 2023-11-03
*/
@Controller
@RequestMapping("/feedbackInfo/info")
public class PartnerFeedbackInfoController extends BaseController
{
private String prefix = "feedbackInfo/info";
@Autowired
private IPartnerFeedbackInfoService partnerFeedbackInfoService;
@RequiresPermissions("feedbackInfo:info:view")
@GetMapping()
public String info()
{
return prefix + "/info";
}
/**
* 查询反馈列表列表
*/
@RequiresPermissions("feedbackInfo:info:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(PartnerFeedbackInfo partnerFeedbackInfo)
{
startPage();
List<PartnerFeedbackInfo> list = partnerFeedbackInfoService.selectPartnerFeedbackInfoList(partnerFeedbackInfo);
return getDataTable(list);
}
/**
* 导出反馈列表列表
*/
@RequiresPermissions("feedbackInfo:info:export")
@Log(title = "反馈列表", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(PartnerFeedbackInfo partnerFeedbackInfo)
{
List<PartnerFeedbackInfo> list = partnerFeedbackInfoService.selectPartnerFeedbackInfoList(partnerFeedbackInfo);
ExcelUtil<PartnerFeedbackInfo> util = new ExcelUtil<PartnerFeedbackInfo>(PartnerFeedbackInfo.class);
return util.exportExcel(list, "反馈列表数据");
}
/**
* 新增反馈列表
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
* 新增保存反馈列表
*/
@RequiresPermissions("feedbackInfo:info:add")
@Log(title = "反馈列表", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(PartnerFeedbackInfo partnerFeedbackInfo)
{
return toAjax(partnerFeedbackInfoService.insertPartnerFeedbackInfo(partnerFeedbackInfo));
}
/**
* 修改反馈列表
*/
@RequiresPermissions("feedbackInfo:info:edit")
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") Long id, ModelMap mmap)
{
PartnerFeedbackInfo partnerFeedbackInfo = partnerFeedbackInfoService.selectPartnerFeedbackInfoById(id);
mmap.put("partnerFeedbackInfo", partnerFeedbackInfo);
return prefix + "/edit";
}
/**
* 修改反馈列表
*/
@RequiresPermissions("feedbackInfo:info:edit")
@GetMapping("/editFeedbackInfo/{id}")
public String editFeedbackInfo(@PathVariable("id") Long id, ModelMap mmap)
{
PartnerFeedbackInfo partnerFeedbackInfo = partnerFeedbackInfoService.selectPartnerFeedbackInfoById(id);
mmap.put("partnerFeedbackInfo", partnerFeedbackInfo);
return prefix + "/editFeedbackInfo";
}
/**
* 修改保存反馈列表
*/
@RequiresPermissions("feedbackInfo:info:edit")
@Log(title = "反馈列表", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(PartnerFeedbackInfo partnerFeedbackInfo)
{
return toAjax(partnerFeedbackInfoService.updatePartnerFeedbackInfo(partnerFeedbackInfo));
}
/**
* 删除反馈列表
*/
@RequiresPermissions("feedbackInfo:info:remove")
@Log(title = "反馈列表", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(partnerFeedbackInfoService.deletePartnerFeedbackInfoByIds(ids));
}
}
......@@ -9,6 +9,7 @@ import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.system.VO.ChangeStatusVO;
import com.ruoyi.system.VO.PartnerProjectStatusChangeLogVO;
import com.ruoyi.system.VO.ProjectInfoVO;
import com.ruoyi.system.VO.ProjectInvestmentPersonVO;
import com.ruoyi.system.domain.*;
import com.ruoyi.system.enumerate.ImageSourceTypeEnum;
import com.ruoyi.system.enumerate.PartnerProjectExamineEnum;
......@@ -161,6 +162,12 @@ public class PartnerProjectInfoController extends BaseController
List<PartnerImageSource> partnerImageSources = partnerImageSourceService.selectPartnerImageSourceList(partnerImageSource);
mmap.put("partnerImageSources", partnerImageSources);
//获取招商公司联系人
ProjectInvestmentPersonVO projectInvestmentPersonVO = partnerProjectInfoService.selectPartnerProjectZhaoShangInfoById(id);
if(projectInvestmentPersonVO != null){
mmap.put("projectInvestmentPersonVO", projectInvestmentPersonVO);
}
// mmap.put("partnerProjectStatusChangeLogs", partnerProjectStatusChangeLogs);
if(partnerProjectStatusChangeLogs != null && partnerProjectStatusChangeLogs.size()==7){
mmap.put("status1", partnerProjectStatusChangeLogs.get(0));
......@@ -193,7 +200,6 @@ public class PartnerProjectInfoController extends BaseController
List<PartnerProjectStatusChangeLog> partnerProjectStatusChangeLogs = projectStatusChangeService.selectStatusChangeLogList(statusChangeLog);
mmap.put("partnerProjectInfo", partnerProjectInfo);
// mmap.put("partnerProjectInfo", partnerProjectInfo);
// mmap.put("partnerProjectInfo", partnerProjectInfo);
// mmap.put("partnerProjectStatusChangeLogs", partnerProjectStatusChangeLogs);
......
package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 反馈列表对象 partner_feedback_info
*
* @author ruoyi
* @date 2023-11-03
*/
public class PartnerFeedbackInfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键id */
private Long id;
/** 用户id */
@Excel(name = "用户id")
private Long userId;
/** 用户名称 */
@Excel(name = "用户名称")
private String userName;
/** 职务 */
@Excel(name = "职务")
private String position;
/** 信息来源 */
@Excel(name = "信息来源")
private Integer infoSource;
/** 纠错信息 */
@Excel(name = "纠错信息")
private String submitContent;
/** 处理人id */
@Excel(name = "处理人id")
private Long dispUserId;
/** 处理信息 */
@Excel(name = "处理信息")
private String dispContent;
/** 处理人 */
@Excel(name = "处理人")
private String dispUserName;
/** 状态(1-提交;2-处理) */
@Excel(name = "状态(1-提交;2-处理)")
private Integer status;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getUserName()
{
return userName;
}
public void setPosition(String position)
{
this.position = position;
}
public String getPosition()
{
return position;
}
public void setInfoSource(Integer infoSource)
{
this.infoSource = infoSource;
}
public Integer getInfoSource()
{
return infoSource;
}
public void setSubmitContent(String submitContent)
{
this.submitContent = submitContent;
}
public String getSubmitContent()
{
return submitContent;
}
public void setDispUserId(Long dispUserId)
{
this.dispUserId = dispUserId;
}
public Long getDispUserId()
{
return dispUserId;
}
public void setDispContent(String dispContent)
{
this.dispContent = dispContent;
}
public String getDispContent()
{
return dispContent;
}
public void setDispUserName(String dispUserName)
{
this.dispUserName = dispUserName;
}
public String getDispUserName()
{
return dispUserName;
}
public void setStatus(Integer status)
{
this.status = status;
}
public Integer getStatus()
{
return status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("userId", getUserId())
.append("userName", getUserName())
.append("position", getPosition())
.append("infoSource", getInfoSource())
.append("submitContent", getSubmitContent())
.append("dispUserId", getDispUserId())
.append("dispContent", getDispContent())
.append("dispUserName", getDispUserName())
.append("status", getStatus())
.append("createTime", getCreateTime())
.append("updateTime", getUpdateTime())
.toString();
}
}
package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.PartnerFeedbackInfo;
/**
* 反馈列表Mapper接口
*
* @author ruoyi
* @date 2023-11-03
*/
public interface PartnerFeedbackInfoMapper
{
/**
* 查询反馈列表
*
* @param id 反馈列表主键
* @return 反馈列表
*/
public PartnerFeedbackInfo selectPartnerFeedbackInfoById(Long id);
/**
* 查询反馈列表列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 反馈列表集合
*/
public List<PartnerFeedbackInfo> selectPartnerFeedbackInfoList(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 新增反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
public int insertPartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 修改反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
public int updatePartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 删除反馈列表
*
* @param id 反馈列表主键
* @return 结果
*/
public int deletePartnerFeedbackInfoById(Long id);
/**
* 批量删除反馈列表
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deletePartnerFeedbackInfoByIds(String[] ids);
}
......@@ -3,6 +3,7 @@ package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.VO.ProjectInfoVO;
import com.ruoyi.system.VO.ProjectInvestmentPersonVO;
import com.ruoyi.system.domain.PartnerProjectInfo;
/**
......@@ -21,6 +22,8 @@ public interface PartnerProjectInfoMapper
*/
public PartnerProjectInfo selectPartnerProjectInfoById(Long id);
public ProjectInvestmentPersonVO selectPartnerProjectZhaoShangInfoById(Long id);
/**
* 查询合伙人项目列表
*
......
package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.system.domain.PartnerFeedbackInfo;
/**
* 反馈列表Service接口
*
* @author ruoyi
* @date 2023-11-03
*/
public interface IPartnerFeedbackInfoService
{
/**
* 查询反馈列表
*
* @param id 反馈列表主键
* @return 反馈列表
*/
public PartnerFeedbackInfo selectPartnerFeedbackInfoById(Long id);
/**
* 查询反馈列表列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 反馈列表集合
*/
public List<PartnerFeedbackInfo> selectPartnerFeedbackInfoList(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 新增反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
public int insertPartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 修改反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
public int updatePartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo);
/**
* 批量删除反馈列表
*
* @param ids 需要删除的反馈列表主键集合
* @return 结果
*/
public int deletePartnerFeedbackInfoByIds(String ids);
/**
* 删除反馈列表信息
*
* @param id 反馈列表主键
* @return 结果
*/
public int deletePartnerFeedbackInfoById(Long id);
}
......@@ -4,6 +4,7 @@ import java.util.List;
import com.ruoyi.system.VO.ChangeStatusVO;
import com.ruoyi.system.VO.ProjectInfoVO;
import com.ruoyi.system.VO.ProjectInvestmentPersonVO;
import com.ruoyi.system.domain.PartnerProjectInfo;
/**
......@@ -22,6 +23,8 @@ public interface IPartnerProjectInfoService
*/
public PartnerProjectInfo selectPartnerProjectInfoById(Long id);
public ProjectInvestmentPersonVO selectPartnerProjectZhaoShangInfoById(Long id);
/**
* 查询合伙人项目列表
*
......
package com.ruoyi.system.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.PartnerFeedbackInfoMapper;
import com.ruoyi.system.domain.PartnerFeedbackInfo;
import com.ruoyi.system.service.IPartnerFeedbackInfoService;
import com.ruoyi.common.core.text.Convert;
/**
* 反馈列表Service业务层处理
*
* @author ruoyi
* @date 2023-11-03
*/
@Service
public class PartnerFeedbackInfoServiceImpl implements IPartnerFeedbackInfoService
{
@Autowired
private PartnerFeedbackInfoMapper partnerFeedbackInfoMapper;
/**
* 查询反馈列表
*
* @param id 反馈列表主键
* @return 反馈列表
*/
@Override
public PartnerFeedbackInfo selectPartnerFeedbackInfoById(Long id)
{
return partnerFeedbackInfoMapper.selectPartnerFeedbackInfoById(id);
}
/**
* 查询反馈列表列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 反馈列表
*/
@Override
public List<PartnerFeedbackInfo> selectPartnerFeedbackInfoList(PartnerFeedbackInfo partnerFeedbackInfo)
{
return partnerFeedbackInfoMapper.selectPartnerFeedbackInfoList(partnerFeedbackInfo);
}
/**
* 新增反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
@Override
public int insertPartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo)
{
partnerFeedbackInfo.setCreateTime(DateUtils.getNowDate());
return partnerFeedbackInfoMapper.insertPartnerFeedbackInfo(partnerFeedbackInfo);
}
/**
* 修改反馈列表
*
* @param partnerFeedbackInfo 反馈列表
* @return 结果
*/
@Override
public int updatePartnerFeedbackInfo(PartnerFeedbackInfo partnerFeedbackInfo)
{
partnerFeedbackInfo.setUpdateTime(DateUtils.getNowDate());
return partnerFeedbackInfoMapper.updatePartnerFeedbackInfo(partnerFeedbackInfo);
}
/**
* 批量删除反馈列表
*
* @param ids 需要删除的反馈列表主键
* @return 结果
*/
@Override
public int deletePartnerFeedbackInfoByIds(String ids)
{
return partnerFeedbackInfoMapper.deletePartnerFeedbackInfoByIds(Convert.toStrArray(ids));
}
/**
* 删除反馈列表信息
*
* @param id 反馈列表主键
* @return 结果
*/
@Override
public int deletePartnerFeedbackInfoById(Long id)
{
return partnerFeedbackInfoMapper.deletePartnerFeedbackInfoById(id);
}
}
......@@ -8,6 +8,7 @@ import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.VO.ChangeStatusVO;
import com.ruoyi.system.VO.ProjectInfoVO;
import com.ruoyi.system.VO.ProjectInvestmentPersonVO;
import com.ruoyi.system.domain.PartnerProjectStatusChangeLog;
import com.ruoyi.system.enumerate.PartnerProjectExamineEnum;
import com.ruoyi.system.enumerate.PartnerProjectPushEnum;
......@@ -53,6 +54,12 @@ public class PartnerProjectInfoServiceImpl implements IPartnerProjectInfoService
return partnerProjectInfoMapper.selectPartnerProjectInfoById(id);
}
@Override
public ProjectInvestmentPersonVO selectPartnerProjectZhaoShangInfoById(Long id)
{
return partnerProjectInfoMapper.selectPartnerProjectZhaoShangInfoById(id);
}
/**
* 查询合伙人项目列表
*
......
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.system.mapper.PartnerFeedbackInfoMapper">
<resultMap type="PartnerFeedbackInfo" id="PartnerFeedbackInfoResult">
<result property="id" column="id" />
<result property="userId" column="user_id" />
<result property="userName" column="user_name" />
<result property="position" column="position" />
<result property="infoSource" column="info_source" />
<result property="submitContent" column="submit_content" />
<result property="dispUserId" column="disp_user_id" />
<result property="dispContent" column="disp_content" />
<result property="dispUserName" column="disp_user_name" />
<result property="status" column="status" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectPartnerFeedbackInfoVo">
select id, user_id, user_name, position, info_source, submit_content, disp_user_id, disp_content, disp_user_name, status, create_time, update_time from partner_feedback_info
</sql>
<select id="selectPartnerFeedbackInfoList" parameterType="PartnerFeedbackInfo" resultMap="PartnerFeedbackInfoResult">
<include refid="selectPartnerFeedbackInfoVo"/>
<where>
<if test="userId != null "> and user_id = #{userId}</if>
<if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
<if test="position != null and position != ''"> and position = #{position}</if>
<if test="infoSource != null "> and info_source = #{infoSource}</if>
<if test="submitContent != null and submitContent != ''"> and submit_content = #{submitContent}</if>
<if test="dispUserId != null "> and disp_user_id = #{dispUserId}</if>
<if test="dispContent != null and dispContent != ''"> and disp_content = #{dispContent}</if>
<if test="dispUserName != null and dispUserName != ''"> and disp_user_name like concat('%', #{dispUserName}, '%')</if>
<if test="status != null "> and status = #{status}</if>
</where>
</select>
<select id="selectPartnerFeedbackInfoById" parameterType="Long" resultMap="PartnerFeedbackInfoResult">
<include refid="selectPartnerFeedbackInfoVo"/>
where id = #{id}
</select>
<insert id="insertPartnerFeedbackInfo" parameterType="PartnerFeedbackInfo" useGeneratedKeys="true" keyProperty="id">
insert into partner_feedback_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="userId != null">user_id,</if>
<if test="userName != null">user_name,</if>
<if test="position != null">position,</if>
<if test="infoSource != null">info_source,</if>
<if test="submitContent != null">submit_content,</if>
<if test="dispUserId != null">disp_user_id,</if>
<if test="dispContent != null">disp_content,</if>
<if test="dispUserName != null">disp_user_name,</if>
<if test="status != null">status,</if>
<if test="createTime != null">create_time,</if>
<if test="updateTime != null">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="userId != null">#{userId},</if>
<if test="userName != null">#{userName},</if>
<if test="position != null">#{position},</if>
<if test="infoSource != null">#{infoSource},</if>
<if test="submitContent != null">#{submitContent},</if>
<if test="dispUserId != null">#{dispUserId},</if>
<if test="dispContent != null">#{dispContent},</if>
<if test="dispUserName != null">#{dispUserName},</if>
<if test="status != null">#{status},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<update id="updatePartnerFeedbackInfo" parameterType="PartnerFeedbackInfo">
update partner_feedback_info
<trim prefix="SET" suffixOverrides=",">
<if test="userId != null">user_id = #{userId},</if>
<if test="userName != null">user_name = #{userName},</if>
<if test="position != null">position = #{position},</if>
<if test="infoSource != null">info_source = #{infoSource},</if>
<if test="submitContent != null">submit_content = #{submitContent},</if>
<if test="dispUserId != null">disp_user_id = #{dispUserId},</if>
<if test="dispContent != null">disp_content = #{dispContent},</if>
<if test="dispUserName != null">disp_user_name = #{dispUserName},</if>
<if test="status != null">status = #{status},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where id = #{id}
</update>
<delete id="deletePartnerFeedbackInfoById" parameterType="Long">
delete from partner_feedback_info where id = #{id}
</delete>
<delete id="deletePartnerFeedbackInfoByIds" parameterType="String">
delete from partner_feedback_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>
\ No newline at end of file
......@@ -48,6 +48,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="createTime" column="create_time" />
</resultMap>
<resultMap type="com.ruoyi.system.VO.ProjectInvestmentPersonVO" id="ProjectInvestmentPersonVOResult">
<result property="id" column="id" />
<result property="investmentPerson" column="investment_person" />
<result property="investmentPhone" column="investment_phone" />
</resultMap>
<sql id="selectPartnerProjectInfoVo">
select continuous_revenue, id, investment_subject, enterprise_highlights, industrial_base, construction_content, project_investment_total, project_investment_regular, investment_content, project_appeal, intended_region, region_commission_rate, carrier_type, carrier_requirements_land_demand, carrier_requirements_factory_demand, decision_maker, decision_maker_position, status, status_description, partner_id, partner_has_confirm, investment_promotion_company, tenant_id, secretary_id, create_time, update_time, todo_status, project_id, todo_status_description from partner_project_info
</sql>
......@@ -134,6 +142,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where id = #{id}
</select>
<select id="selectPartnerProjectZhaoShangInfoById" parameterType="Long" resultMap="ProjectInvestmentPersonVOResult">
select ppi.id,ui.user_name_zh investment_person,ui.phone investment_phone
from partner_project_info ppi
left join project_info pi on ppi.project_id = pi.id
left join audit_user_tree_table autt on pi.creator = autt.user_name_en
left join user_info ui on pi.creator = ui.user_name_en
where ppi.id = #{id}
</select>
<insert id="insertPartnerProjectInfo" parameterType="PartnerProjectInfo" useGeneratedKeys="true" keyProperty="id">
insert into partner_project_info
<trim prefix="(" suffix=")" suffixOverrides=",">
......
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('新增反馈列表')" />
<th:block th:include="include :: summernote-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-info-add">
<div class="form-group">
<label class="col-sm-3 control-label">用户id:</label>
<div class="col-sm-8">
<input name="userId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">用户名称:</label>
<div class="col-sm-8">
<input name="userName" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">职务:</label>
<div class="col-sm-8">
<input name="position" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">信息来源:</label>
<div class="col-sm-8">
<input name="infoSource" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">纠错信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" name="submitContent">
<div class="summernote" id="submitContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理人id:</label>
<div class="col-sm-8">
<input name="dispUserId" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" name="dispContent">
<div class="summernote" id="dispContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理人:</label>
<div class="col-sm-8">
<input name="dispUserName" class="form-control" type="text">
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: summernote-js" />
<script th:inline="javascript">
var prefix = ctx + "feedbackInfo/info"
$("#form-info-add").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-info-add').serialize());
}
}
$(function() {
$('.summernote').summernote({
lang: 'zh-CN',
dialogsInBody: true,
callbacks: {
onChange: function(contents, $edittable) {
$("input[name='" + this.id + "']").val(contents);
},
onImageUpload: function(files) {
var obj = this;
var data = new FormData();
data.append("file", files[0]);
$.ajax({
type: "post",
url: ctx + "common/upload",
data: data,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function(result) {
if (result.code == web_status.SUCCESS) {
$('#' + obj.id).summernote('insertImage', result.url);
} else {
$.modal.alertError(result.msg);
}
},
error: function(error) {
$.modal.alertWarning("图片上传失败。");
}
});
}
}
});
});
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改反馈列表')" />
<th:block th:include="include :: summernote-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-info-edit" th:object="${partnerFeedbackInfo}">
<input name="id" th:field="*{id}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">用户id:</label>
<div class="col-sm-8">
<input name="userId" th:field="*{userId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">用户名称:</label>
<div class="col-sm-8">
<input name="userName" th:field="*{userName}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">职务:</label>
<div class="col-sm-8">
<input name="position" th:field="*{position}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">信息来源:</label>
<div class="col-sm-8">
<input name="infoSource" th:field="*{infoSource}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">纠错信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" th:field="*{submitContent}">
<div class="summernote" id="submitContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理人id:</label>
<div class="col-sm-8">
<input name="dispUserId" th:field="*{dispUserId}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" th:field="*{dispContent}">
<div class="summernote" id="dispContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">处理人:</label>
<div class="col-sm-8">
<input name="dispUserName" th:field="*{dispUserName}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: summernote-js" />
<script th:inline="javascript">
var prefix = ctx + "feedbackInfo/info";
$("#form-info-edit").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-info-edit').serialize());
}
}
$(function() {
$('.summernote').each(function(i) {
$('#' + this.id).summernote({
lang: 'zh-CN',
dialogsInBody: true,
callbacks: {
onChange: function(contents, $edittable) {
$("input[name='" + this.id + "']").val(contents);
},
onImageUpload: function(files) {
var obj = this;
var data = new FormData();
data.append("file", files[0]);
$.ajax({
type: "post",
url: ctx + "common/upload",
data: data,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function(result) {
if (result.code == web_status.SUCCESS) {
$('#' + obj.id).summernote('insertImage', result.url);
} else {
$.modal.alertError(result.msg);
}
},
error: function(error) {
$.modal.alertWarning("图片上传失败。");
}
});
}
}
});
var content = $("input[name='" + this.id + "']").val();
$('#' + this.id).summernote('code', content);
})
});
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改反馈列表')" />
<th:block th:include="include :: summernote-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-info-edit" th:object="${partnerFeedbackInfo}">
<input name="id" th:field="*{id}" type="hidden">
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">用户id:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input name="userId" th:field="*{userId}" class="form-control" type="text">-->
<!-- </div>-->
<!-- </div>-->
<div class="form-group">
<label class="col-sm-3 control-label">用户名称:</label>
<div class="col-sm-8">
<input name="userName" th:field="*{userName}" class="form-control" type="text" readonly="readonly">
</div>
</div>
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">职务:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input name="position" th:field="*{position}" class="form-control" type="text">-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">信息来源:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input name="infoSource" th:field="*{infoSource}" class="form-control" type="text">-->
<!-- </div>-->
<!-- </div>-->
<div class="form-group">
<label class="col-sm-3 control-label">纠错信息:</label>
<div class="col-sm-8">
<textarea name="submitContent" class="form-control" readonly="readonly" rows="5">[[*{submitContent}]]</textarea>
</div>
</div>
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">处理人id:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input name="dispUserId" th:field="*{dispUserId}" class="form-control" type="text">-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">处理信息:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input type="hidden" class="form-control" th:field="*{dispContent}">-->
<!-- <div class="summernote" id="dispContent"></div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="form-group"> -->
<!-- <label class="col-sm-3 control-label">处理人:</label>-->
<!-- <div class="col-sm-8">-->
<!-- <input name="dispUserName" th:field="*{dispUserName}" class="form-control" type="text">-->
<!-- </div>-->
<!-- </div>-->
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: summernote-js" />
<script th:inline="javascript">
// var prefix = ctx + "feedbackInfo/info";
// $("#form-info-edit").validate({
// focusCleanup: true
// });
//
// function submitHandler() {
// if ($.validate.form()) {
// $.operate.save(prefix + "/edit", $('#form-info-edit').serialize());
// }
// }
//
// $(function() {
// $('.summernote').each(function(i) {
// $('#' + this.id).summernote({
// lang: 'zh-CN',
// dialogsInBody: true,
// callbacks: {
// onChange: function(contents, $edittable) {
// $("input[name='" + this.id + "']").val(contents);
// },
// onImageUpload: function(files) {
// var obj = this;
// var data = new FormData();
// data.append("file", files[0]);
// $.ajax({
// type: "post",
// url: ctx + "common/upload",
// data: data,
// cache: false,
// contentType: false,
// processData: false,
// dataType: 'json',
// success: function(result) {
// if (result.code == web_status.SUCCESS) {
// $('#' + obj.id).summernote('insertImage', result.url);
// } else {
// $.modal.alertError(result.msg);
// }
// },
// error: function(error) {
// $.modal.alertWarning("图片上传失败。");
// }
// });
// }
// }
// });
// var content = $("input[name='" + this.id + "']").val();
// $('#' + this.id).summernote('code', content);
// })
// });
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('反馈列表列表')" />
</head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<!-- <li>-->
<!-- <label>用户id:</label>-->
<!-- <input type="text" name="userId"/>-->
<!-- </li>-->
<li>
<label>用户名称:</label>
<input type="text" name="userName"/>
</li>
<!-- <li>-->
<!-- <label>职务:</label>-->
<!-- <input type="text" name="position"/>-->
<!-- </li>-->
<!-- <li>-->
<!-- <label>信息来源:</label>-->
<!-- <input type="text" name="infoSource"/>-->
<!-- </li>-->
<!-- <li>-->
<!-- <label>处理人id:</label>-->
<!-- <input type="text" name="dispUserId"/>-->
<!-- </li>-->
<!-- <li>-->
<!-- <label>处理人:</label>-->
<!-- <input type="text" name="dispUserName"/>-->
<!-- </li>-->
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<!-- <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="feedbackInfo:info:add">-->
<!-- <i class="fa fa-plus"></i> 添加-->
<!-- </a>-->
<!-- <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="feedbackInfo:info:edit">-->
<!-- <i class="fa fa-edit"></i> 修改-->
<!-- </a>-->
<!-- <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="feedbackInfo:info:remove">-->
<!-- <i class="fa fa-remove"></i> 删除-->
<!-- </a>-->
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="feedbackInfo:info:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('feedbackInfo:info:edit')}]];
var removeFlag = [[${@permission.hasPermi('feedbackInfo:info:remove')}]];
var prefix = ctx + "feedbackInfo/info";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "反馈列表",
columns: [{
checkbox: true
},
{
field: 'id',
title: '主键id',
visible: false
},
{
field: 'userId',
title: '用户id',
visible: false
},
{
field: 'userName',
title: '用户名称'
},
// {
// field: 'position',
// title: '职务'
// },
// {
// field: 'infoSource',
// title: '信息来源'
// },
{
field: 'submitContent',
title: '反馈信息'
},
// {
// field: 'dispUserId',
// title: '处理人id'
// },
// {
// field: 'dispContent',
// title: '处理信息'
// },
// {
// field: 'dispUserName',
// title: '处理人'
// },
// {
// field: 'status',
// title: '状态(1-提交;2-处理)'
// },
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.modal.openTab(\'反馈列表详情\',\'/feedbackInfo/info/editFeedbackInfo/'+ row.id +'\')"><i class="fa fa-edit"></i>详情查看</a> ');
// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
// actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>
\ No newline at end of file
......@@ -382,6 +382,21 @@
th:field="*{decisionMakerPosition}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">招商负责人:</label>
<div class="col-sm-8">
<input readonly="readonly" name="investmentPerson"
th:field="${projectInvestmentPersonVO.investmentPerson}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">招商负责人联系电话:</label>
<div class="col-sm-8">
<input readonly="readonly" name="investmentPhone"
th:field="${projectInvestmentPersonVO.investmentPhone}" class="form-control" type="text">
</div>
</div>
<!-- <div class="form-group">-->
<!-- <label class="col-sm-3 control-label">项目状态</label>-->
<!-- <div class="col-sm-8">-->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment