Commit c5e5d1ef authored by 竹天卫's avatar 竹天卫

安全隐患台账 照片上传 列表不展示图片

parent 6a3eebae
......@@ -3,8 +3,7 @@ package cn.wise.sc.acquisition.business.controller;
import cn.wise.im.common.http.R;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentAccountQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckMainQuery;
import cn.wise.sc.acquisition.business.service.ITEquipmentCheckService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -35,8 +34,8 @@ public class TEquipmentCheckController {
@ApiImplicitParam(name = "EquipmentName", value = "设备名称", paramType = "query", dataType = "EquipmentName")
})
@GetMapping("/getPage")
public R getPage(PageQuery pageQuery, String EquipmentName) {
return equipmentCheckService.getPage(pageQuery, EquipmentName);
public R getPage(PageQuery pageQuery, String EquipmentName, String selectMonth) {
return equipmentCheckService.getPage(pageQuery, EquipmentName, selectMonth);
}
@ApiOperation(value = "设备点检详情")
......@@ -47,7 +46,7 @@ public class TEquipmentCheckController {
@ApiOperation(value = "保存设备点检结果")
@PostMapping("/checking")
public R update(@RequestBody TEquipmentCheckQuery query) {
public R update(@RequestBody TEquipmentCheckMainQuery query) {
return equipmentCheckService.checking(query);
}
......
......@@ -21,8 +21,8 @@ import lombok.experimental.Accessors;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_Equipment_Check")
public class TEquipmentCheck implements Serializable {
@TableName("T_Equipment_Check_Main")
public class TEquipmentCheckMain implements Serializable {
private static final long serialVersionUID=1L;
......@@ -45,58 +45,18 @@ public class TEquipmentCheck implements Serializable {
private String EquipmentName;
/**
* 点检部位
*/
@TableField("Djbw")
private String Djbw;
/**
* 点检内容
*/
@TableField("Djnr")
private String Djnr;
/**
* 点检标准
*/
@TableField("Djbz")
private String Djbz;
/**
* 点检周期
*/
@TableField("Djzq")
private Integer Djzq;
/**
* 周期类型,天、月等
*/
@TableField("Zqlx")
private String Zqlx;
/**
* 点检结果,正常、异常
* 点检日期
*/
@TableField("Djjg")
private String Djjg;
@TableField("Djrq")
private LocalDateTime Djrq;
/**
* 异常记录
*/
@TableField("Ycjl")
private String Ycjl;
/**
* 点检人
* 日期标记,如:2021年01月
*/
@TableField("Djr")
private String Djr;
@TableField("Tag")
private String Tag;
/**
* 点检日期
*/
@TableField("Djrq")
private LocalDateTime Djrq;
}
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheck;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.UserVo;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheckMain;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckMainVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -18,9 +17,9 @@ import java.util.Map;
* @author ztw
* @since 2021-04-25
*/
public interface TEquipmentCheckMapper extends BaseMapper<TEquipmentCheck> {
public interface TEquipmentCheckMapper extends BaseMapper<TEquipmentCheckMain> {
IPage<TEquipmentCheckVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
IPage<TEquipmentCheckMainVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
}
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TEquipmentRun;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentRunVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
......
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TEquipmentTrouble;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentTroubleVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
......
......@@ -2,21 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.acquisition.business.mapper.TEquipmentCheckMapper">
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo">
select tea.EquipmentID,tea.EquipmentName,
tec.Uid,tec.Djbw,tec.Djnr,tec.Djbz,tec.Djzq,tec.Zqlx,tec.Djjg,tec.Ycjl,tec.Djr,tec.Djrq
from T_Equipment_Account tea
left join T_Equipment_Check tec on tec.EquipmentID = tea.EquipmentID
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckMainVo">
select tecm.*
from T_Equipment_Check_Main tecm
<include refid="where"/>
order by tea.Ccrq desc
order by tecm.Djrq desc
</select>
<sql id="where">
<where>
<if test="params.Djr != null and params.Djr != ''">
and tec.Djr = #{params.Djr}
<if test="params.selectMonth != null and params.selectMonth != ''">
and tecm.Tag = #{params.selectMonth}
</if>
<if test="params.EquipmentName != null and params.EquipmentName != ''">
and tea.EquipmentName like concat('%', #{params.EquipmentName}, '%')
and tecm.EquipmentName like concat('%', #{params.EquipmentName}, '%')
</if>
</where>
</sql>
......
package cn.wise.sc.acquisition.business.model.query;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -16,7 +17,7 @@ import java.time.LocalDateTime;
*/
@Data
@ApiModel("设备点检Query")
public class TEquipmentCheckQuery {
public class TEquipmentCheckMainQuery {
/**
......@@ -37,54 +38,6 @@ public class TEquipmentCheckQuery {
@ApiModelProperty("设备名称")
private String equipmentName;
/**
* 点检部位
*/
@ApiModelProperty("点检部位")
private String djbw;
/**
* 点检内容
*/
@ApiModelProperty("点检内容")
private String djnr;
/**
* 点检标准
*/
@ApiModelProperty("点检标准")
private String djbz;
/**
* 点检周期
*/
@ApiModelProperty("点检周期")
private Integer djzq;
/**
* 周期类型,天、月等
*/
@ApiModelProperty("周期类型,天、月等")
private String zqlx;
/**
* 点检结果,正常、异常
*/
@ApiModelProperty("点检结果,正常、异常")
private String djjg;
/**
* 异常记录
*/
@ApiModelProperty("异常记录")
private String ycjl;
/**
* 点检人
*/
@ApiModelProperty("点检人")
private String djr;
/**
* 点检日期
*/
......@@ -92,4 +45,6 @@ public class TEquipmentCheckQuery {
private LocalDateTime djrq;
}
package cn.wise.sc.acquisition.business.model.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -12,7 +13,7 @@ import java.time.LocalDateTime;
**/
@Data
@ApiModel("设备点检Vo")
public class TEquipmentCheckVo {
public class TEquipmentCheckMainVo {
@ApiModelProperty("Uid")
private String Uid;
......@@ -29,54 +30,6 @@ public class TEquipmentCheckVo {
@ApiModelProperty("设备名称")
private String EquipmentName;
/**
* 点检部位
*/
@ApiModelProperty("点检部位")
private String Djbw;
/**
*
*/
@ApiModelProperty("点检内容")
private String Djnr;
/**
* 点检标准
*/
@ApiModelProperty("点检标准")
private String Djbz;
/**
* 点检周期
*/
@ApiModelProperty("点检周期")
private Integer Djzq;
/**
* 周期类型,天、月等
*/
@ApiModelProperty("周期类型,天、月等")
private String Zqlx;
/**
* 点检结果,正常、异常
*/
@ApiModelProperty("点检结果,正常、异常")
private String Djjg;
/**
* 异常记录
*/
@ApiModelProperty("异常记录")
private String Ycjl;
/**
* 点检人
*/
@ApiModelProperty("点检人")
private String Djr;
/**
* 点检日期
*/
......@@ -84,4 +37,5 @@ public class TEquipmentCheckVo {
private LocalDateTime Djrq;
}
package cn.wise.sc.acquisition.business.service;
import cn.wise.im.common.http.R;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheck;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheckMain;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckMainQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckMainVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
......@@ -16,13 +16,13 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @author ztw
* @since 2021-04-25
*/
public interface ITEquipmentCheckService extends IService<TEquipmentCheck> {
public interface ITEquipmentCheckService extends IService<TEquipmentCheckMain> {
R<IPage<TEquipmentCheckVo>> getPage(PageQuery pageQuery, String EquipmentName);
R<IPage<TEquipmentCheckMainVo>> getPage(PageQuery pageQuery, String EquipmentName, String selectMonth);
R<TEquipmentCheck> getDetail(String EquipmentID);
R<TEquipmentCheckMain> getDetail(String EquipmentID);
R checking(TEquipmentCheckQuery query);
R checking(TEquipmentCheckMainQuery query);
}
......@@ -3,7 +3,6 @@ package cn.wise.sc.acquisition.business.service;
import cn.wise.im.common.http.R;
import cn.wise.sc.acquisition.business.entity.TEquipmentTrouble;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentTroubleQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentTroubleVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
......
......@@ -22,7 +22,7 @@ import java.util.List;
*/
public interface ITSafeTroubleService extends IService<TSafeTrouble> {
R<IPage<TSafeTroubleVo>> getPage(PageQuery pageQuery);
R<IPage<TSafeTrouble>> getPage(PageQuery pageQuery);
R save(TSafeTroubleQuery query);
......
package cn.wise.sc.acquisition.business.service.impl;
import cn.wise.im.common.http.R;
import cn.wise.im.common.http.ResponseEnum;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TEquipmentAccount;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheck;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheckContent;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheckDetail;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheckMain;
import cn.wise.sc.acquisition.business.mapper.TEquipmentAccountMapper;
import cn.wise.sc.acquisition.business.mapper.TEquipmentCheckContentMapper;
import cn.wise.sc.acquisition.business.mapper.TEquipmentCheckDetailMapper;
import cn.wise.sc.acquisition.business.mapper.TEquipmentCheckMapper;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentAccountQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.UserVo;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckMainQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckMainVo;
import cn.wise.sc.acquisition.business.service.ITEquipmentCheckService;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import cn.wise.sc.acquisition.business.service.ITSysDictService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestBody;
import javax.annotation.Resource;
import java.util.HashMap;
......@@ -37,75 +42,136 @@ import java.util.Map;
*/
@Service
@Transactional
public class TEquipmentCheckServiceImpl extends ServiceImpl<TEquipmentCheckMapper, TEquipmentCheck> implements ITEquipmentCheckService {
public class TEquipmentCheckServiceImpl extends ServiceImpl<TEquipmentCheckMapper, TEquipmentCheckMain> implements ITEquipmentCheckService {
@Resource
private TEquipmentCheckMapper equipmentCheckMapper;
@Resource
private TEquipmentAccountMapper equipmentAccountMapper;
@Resource
private TEquipmentCheckContentMapper equipmentCheckContentMapper;
@Resource
private TEquipmentCheckDetailMapper equipmentCheckDetailMapper;
@Autowired
private ITSysDictService itSysDictService;
/**
* 新增修改设备点检结果
* @param query
* @return
*/
@Override
public R checking(TEquipmentCheckMainQuery query) {
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotNull(query.getEquipmentID());
Rcode.NOT_PARAM.assertNotNull(query.getEquipmentName());
TEquipmentCheckMain checkMain = new TEquipmentCheckMain();
BeanUtils.copyProperties(query, checkMain);
com.baomidou.mybatisplus.extension.api.R<String> r = itSysDictService.getTagDate(null);
if (r.getCode()!=0){
return R.fail(ResponseEnum.FAIL,r.getMsg());
}
checkMain.setTag(r.getData());
//Uid=null新增,Uid!=null 修改
if(StringUtils.isNoneBlank(checkMain.getUid())){
equipmentCheckMapper.updateById(checkMain);
}else{
equipmentCheckMapper.insert(checkMain);
}
//根据设备id查找点检内容表信息,插入点检详情表
QueryWrapper<TEquipmentCheckContent> contentWrapper = new QueryWrapper<>();
contentWrapper.eq("EquipmentID", checkMain.getEquipmentID());
List<TEquipmentCheckContent> checkContentList = equipmentCheckContentMapper.selectList(contentWrapper);
if(checkContentList != null && checkContentList.size()>0){
for(TEquipmentCheckContent content : checkContentList){
TEquipmentCheckDetail checkDetail = new TEquipmentCheckDetail();
checkDetail.setMainUid(checkMain.getUid())
.setEquipmentID(checkMain.getEquipmentID())
.setEquipmentName(checkMain.getEquipmentName())
.setDjbw(content.getDjbw())
.setDjnr(content.getDjnr())
.setDjbz(content.getDjbz())
.setDjzq(content.getDjzq())
.setTag(checkMain.getTag());
equipmentCheckDetailMapper.insert(checkDetail);
}
}
return R.ok();
}
/**
* 设备点检分页
* 分页-设备点检主表
* @param pageQuery
* @param EquipmentName
* @return
*/
@Override
public R<IPage<TEquipmentCheckVo>> getPage(PageQuery pageQuery, String EquipmentName) {
public R<IPage<TEquipmentCheckMainVo>> getPage(PageQuery pageQuery, String EquipmentName, String selectMonth) {
Map<String, Object> params = new HashMap<>();
params.put("EquipmentName", EquipmentName);
Page<TEquipmentCheckVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<TEquipmentCheckVo> pages = equipmentCheckMapper.getPage(page, params);
params.put("selectMonth", selectMonth);
Page<TEquipmentCheckMainVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<TEquipmentCheckMainVo> pages = equipmentCheckMapper.getPage(page, params);
return R.ok(pages);
}
/**
* 设备点检详情
* @param EquipmentID
* @param Uid
* @return
*/
@Override
public R<TEquipmentCheck> getDetail(String EquipmentID) {
Rcode.NOT_PARAM.assertNotNull(EquipmentID);
TEquipmentAccount account = equipmentAccountMapper.selectById(EquipmentID);
Rcode.NOT_FOUND.assertNotNull(account);
QueryWrapper<TEquipmentCheck> checkWrapper = new QueryWrapper<>();
checkWrapper.eq("EquipmentID", account.getEquipmentID());
List<TEquipmentCheck> checkList = equipmentCheckMapper.selectList(checkWrapper);
TEquipmentCheck check = null;
if(checkList != null && checkList.size()>0){ //已经点检过的
check = checkList.get(0);
}else{
check = new TEquipmentCheck();
check.setEquipmentID(account.getEquipmentID()).setEquipmentName(account.getEquipmentName());
}
Rcode.NOT_FOUND.assertNotNull(check);
return R.ok(check);
public R<TEquipmentCheckMain> getDetail(String Uid) {
Rcode.NOT_PARAM.assertNotNull(Uid);
TEquipmentCheckMain checkMain = equipmentCheckMapper.selectById(Uid);
Rcode.NOT_FOUND.assertNotNull(checkMain);
return R.ok(checkMain);
}
/**
* 保存设备点检结果
* @param query
* @return
*/
@Override
public R checking(TEquipmentCheckQuery query) {
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotNull(query.getEquipmentID());
Rcode.NOT_PARAM.assertNotNull(query.getEquipmentName());
TEquipmentCheck check = new TEquipmentCheck();
BeanUtils.copyProperties(query, check);
//Uid=null新增,Uid!=null 修改
if(StringUtils.isNoneBlank(check.getUid())){
equipmentCheckMapper.updateById(check);
}else{
equipmentCheckMapper.insert(check);
}
return R.ok();
//点检内容列表
public R getContentList(String EquipmentID) {
Rcode.NOT_PARAM.assertNotNull(EquipmentID);
QueryWrapper<TEquipmentCheckContent> contentWrapper = new QueryWrapper<>();
contentWrapper.eq("EquipmentID", EquipmentID);
List<TEquipmentCheckContent> checkList = equipmentCheckContentMapper.selectList(contentWrapper);
return R.ok(checkList);
}
//点检详情列表
public R getDetailList(String MainUid) {
Rcode.NOT_PARAM.assertNotNull(MainUid);
QueryWrapper<TEquipmentCheckDetail> detailWrapper = new QueryWrapper<>();
detailWrapper.eq("MainUid", MainUid);
List<TEquipmentCheckDetail> checkList = equipmentCheckDetailMapper.selectList(detailWrapper);
return R.ok(checkList);
}
......
......@@ -4,14 +4,11 @@ import cn.wise.im.common.http.R;
import cn.wise.im.common.http.ResponseEnum;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TEquipmentAccount;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheck;
import cn.wise.sc.acquisition.business.entity.TEquipmentRun;
import cn.wise.sc.acquisition.business.mapper.TEquipmentAccountMapper;
import cn.wise.sc.acquisition.business.mapper.TEquipmentRunMapper;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentRunQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentRunVo;
import cn.wise.sc.acquisition.business.service.ITEquipmentRunService;
import cn.wise.sc.acquisition.business.service.ITSysDictService;
......
......@@ -3,14 +3,11 @@ package cn.wise.sc.acquisition.business.service.impl;
import cn.wise.im.common.http.R;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TEquipmentAccount;
import cn.wise.sc.acquisition.business.entity.TEquipmentCheck;
import cn.wise.sc.acquisition.business.entity.TEquipmentTrouble;
import cn.wise.sc.acquisition.business.mapper.TEquipmentAccountMapper;
import cn.wise.sc.acquisition.business.mapper.TEquipmentTroubleMapper;
import cn.wise.sc.acquisition.business.model.PageQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentCheckQuery;
import cn.wise.sc.acquisition.business.model.query.TEquipmentTroubleQuery;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentCheckVo;
import cn.wise.sc.acquisition.business.model.vo.TEquipmentTroubleVo;
import cn.wise.sc.acquisition.business.service.ITEquipmentTroubleService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
......
......@@ -59,13 +59,13 @@ public class TSafeTroubleServiceImpl extends ServiceImpl<TSafeTroubleMapper, TSa
* @return
*/
@Override
public R<IPage<TSafeTroubleVo>> getPage(PageQuery pageQuery) {
public R<IPage<TSafeTrouble>> getPage(PageQuery pageQuery) {
QueryWrapper<TSafeTrouble> qw = new QueryWrapper<>();
qw.orderByDesc("Fxrq");
IPage<TSafeTrouble> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
page = safeTroubleMapper.selectPage(page, qw);
QueryWrapper<TSafeTroubleImg> imgWrapper = new QueryWrapper<>();
/* QueryWrapper<TSafeTroubleImg> imgWrapper = new QueryWrapper<>();
List<TSafeTroubleImg> checkList = safeTroubleImgMapper.selectList(imgWrapper);
List<TSafeTroubleVo> voList = new ArrayList<>();
......@@ -84,8 +84,9 @@ public class TSafeTroubleServiceImpl extends ServiceImpl<TSafeTroubleMapper, TSa
voList.add(safeTroubleVo);
}
IPage<TSafeTroubleVo> pagevo = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
pagevo.setRecords(voList);
return R.ok(pagevo);
pagevo.setRecords(voList);*/
return R.ok(page);
}
......
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