31a1a3fb 康伟

kangwei: 会议纪要下载

1 个父辈 8e5b9f5d
......@@ -2,6 +2,7 @@ package com.skua.modules.ajh.controller;
import java.io.*;
import java.net.URLEncoder;
import java.util.*;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
......@@ -23,23 +24,23 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.skua.modules.ajh.service.IAjhMeetingSendService;
import com.skua.modules.ajh.service.IAjhMeetingService;
import com.skua.modules.ajh.util.Base64Utils;
import com.skua.modules.ajh.util.WordUtil;
import com.skua.modules.ajh.vo.ExportAjhMeetingMinutesVO;
import com.skua.modules.guest.util.DateUtil;
import com.skua.modules.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.bytedeco.javacv.FrameFilter;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecgframework.poi.word.WordExportUtil;
import org.jeecgframework.poi.word.entity.MyXWPFDocument;
import org.jeecgframework.poi.word.entity.WordImageEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
......@@ -48,6 +49,8 @@ import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* <pre>
* 会议纪要管理
......@@ -60,7 +63,8 @@ import io.swagger.annotations.ApiOperation;
@RestController
@RequestMapping("/ajh/meetingMinutes")
public class AjhMeetingMinutesController {
@Value("${skua.path.upload}")
private String upLoadPath;
@Autowired
private IAjhMeetingMinutesService ajhMeetingMinutesService;//会议纪要
......@@ -73,6 +77,9 @@ public class AjhMeetingMinutesController {
@Autowired
private IAjhMeetingAttendService meetingAttendService;//会议签到记录
@Autowired
private ISysUserService userService;
/**
* <pre>
......@@ -91,9 +98,9 @@ public class AjhMeetingMinutesController {
@ApiOperation(value="会议纪要管理-分页列表查询", notes="会议纪要管理-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<AjhMeetingMinutes>> queryPageList(AjhMeetingMinutes ajhMeetingMinutes,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
Result<IPage<AjhMeetingMinutes>> result = new Result<IPage<AjhMeetingMinutes>>();
QueryWrapper<AjhMeetingMinutes> queryWrapper = QueryGenerator.initQueryWrapper(ajhMeetingMinutes, req.getParameterMap());
Page<AjhMeetingMinutes> page = new Page<AjhMeetingMinutes>(pageNo, pageSize);
......@@ -211,7 +218,7 @@ public class AjhMeetingMinutesController {
@GetMapping(value = "/getByMeetId")
public Result<AjhMeetingMinutes> queryByMeetId(@RequestParam(name="meetId",required=true) String meetId) {
Result<AjhMeetingMinutes> result = new Result<AjhMeetingMinutes>();
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesService.queryByMeetId(meetId);
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesService.queryByMeetsId(meetId);
if(ajhMeetingMinutes != null) {
result.setResult(ajhMeetingMinutes);
result.setSuccess(true);
......@@ -243,7 +250,7 @@ public class AjhMeetingMinutesController {
return result;
}
/**
/**
* <pre>
* 导出excel
* </pre>
......@@ -254,33 +261,33 @@ public class AjhMeetingMinutesController {
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
// Step.1 组装查询条件
QueryWrapper<AjhMeetingMinutes> queryWrapper = null;
try {
String paramsStr = request.getParameter("paramsStr");
if (ConvertUtils.isNotEmpty(paramsStr)) {
String deString = URLDecoder.decode(paramsStr, "UTF-8");
AjhMeetingMinutes ajhMeetingMinutes = JSON.parseObject(deString, AjhMeetingMinutes.class);
queryWrapper = QueryGenerator.initQueryWrapper(ajhMeetingMinutes, request.getParameterMap());
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//Step.2 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
List<AjhMeetingMinutes> pageList = ajhMeetingMinutesService.list(queryWrapper);
//导出文件名称
mv.addObject(NormalExcelConstants.FILE_NAME, "会议纪要管理列表");
mv.addObject(NormalExcelConstants.CLASS, AjhMeetingMinutes.class);
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("会议纪要管理列表数据", "导出人:Jeecg", "导出信息"));
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
return mv;
}
/**
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
// Step.1 组装查询条件
QueryWrapper<AjhMeetingMinutes> queryWrapper = null;
try {
String paramsStr = request.getParameter("paramsStr");
if (ConvertUtils.isNotEmpty(paramsStr)) {
String deString = URLDecoder.decode(paramsStr, "UTF-8");
AjhMeetingMinutes ajhMeetingMinutes = JSON.parseObject(deString, AjhMeetingMinutes.class);
queryWrapper = QueryGenerator.initQueryWrapper(ajhMeetingMinutes, request.getParameterMap());
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//Step.2 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
List<AjhMeetingMinutes> pageList = ajhMeetingMinutesService.list(queryWrapper);
//导出文件名称
mv.addObject(NormalExcelConstants.FILE_NAME, "会议纪要管理列表");
mv.addObject(NormalExcelConstants.CLASS, AjhMeetingMinutes.class);
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("会议纪要管理列表数据", "导出人:Jeecg", "导出信息"));
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
return mv;
}
/**
* <pre>
* 通过excel导入数据
* </pre>
......@@ -290,96 +297,136 @@ public class AjhMeetingMinutesController {
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
MultipartFile file = entity.getValue();// 获取上传文件对象
ImportParams params = new ImportParams();
params.setTitleRows(2);
params.setHeadRows(1);
params.setNeedSave(true);
try {
List<AjhMeetingMinutes> listAjhMeetingMinutess = ExcelImportUtil.importExcel(file.getInputStream(), AjhMeetingMinutes.class, params);
ajhMeetingMinutesService.saveBatch(listAjhMeetingMinutess);
return Result.ok("文件导入成功!数据行数:" + listAjhMeetingMinutess.size());
} catch (Exception e) {
log.error(e.getMessage(),e);
return Result.error("文件导入失败:"+e.getMessage());
} finally {
try {
file.getInputStream().close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return Result.ok("文件导入失败!");
}
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
MultipartFile file = entity.getValue();// 获取上传文件对象
ImportParams params = new ImportParams();
params.setTitleRows(2);
params.setHeadRows(1);
params.setNeedSave(true);
try {
List<AjhMeetingMinutes> listAjhMeetingMinutess = ExcelImportUtil.importExcel(file.getInputStream(), AjhMeetingMinutes.class, params);
ajhMeetingMinutesService.saveBatch(listAjhMeetingMinutess);
return Result.ok("文件导入成功!数据行数:" + listAjhMeetingMinutess.size());
} catch (Exception e) {
log.error(e.getMessage(),e);
return Result.error("文件导入失败:"+e.getMessage());
} finally {
try {
file.getInputStream().close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return Result.ok("文件导入失败!");
}
/***
* 下载会议纪要
* @param meetsId
* @param response
*/
@AutoLog(value = "会议纪要管理-通过会议纪要id下载会议纪要")
@ApiOperation(value="会议纪要管理-通过id下载会议纪要", notes="会议纪要管理-通过id下载会议纪要")
@GetMapping("/exportWord")
public void exportWordData(@RequestParam(name="id",required=true) String meetsId,HttpServletResponse response ) {
String templatePath = "D:\\test\\会议模板-2.docx";//导出模板文件名称
public void exportWordData(@RequestParam(name="id",required=true) String meetsId, HttpServletResponse response ) {
//String templatePath = "D:\\test\\会议模板-2.docx";//导出模板文件名称
String templatePath = upLoadPath + File.separator ;
String exportName = "会议纪要.docx";//导出文件名称
String exportName = "****---会议纪要.docx";//导出文件名称
Map<String ,Object> paramMap = new HashMap<String,Object>();
Map<String ,Object> paramMap = initParamMap();//参数map集合
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesService.queryByMeetId(meetsId);
ExportAjhMeetingMinutesVO exprotVo = new ExportAjhMeetingMinutesVO();
// 标题:meetTitile 机构名称:orgDepart 纪要图片 , 住持人 ;纪要内容 ; 会议地点
exprotVo.convert( exprotVo , ajhMeetingMinutes);
// 会议记录
AjhMeetingSend meetingSend = meetingSendService.getById( meetsId );
//会议通知
AjhMeeting meeting = meetingService.getById( meetsId );
// 会议通知
AjhMeeting meeting = meetingService.getById( meetingSend.getMeetId() );
//会议纪要
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesService.queryByMeetsId(meetsId);
//ExportAjhMeetingMinutesVO exprotVo = new ExportAjhMeetingMinutesVO();
/****************会议通知**********************/
if(meeting != null ){
templatePath = templatePath + meeting.getMinutesTemplate();// 会议纪要导出模板路径
paramMap.put("meetTitile", meeting.getMeetTitile() );//会议标题
paramMap.put( "sender",meeting.getSender());//发起人
paramMap.put("sendTime",null);
if(meeting.getSendTime() != null ){
paramMap.put("sendTime",DateUtil.formatDate(meeting.getSendTime(),"yyyy年MM月dd日"));//会议发送时间
}
}
//paramMap.put("startTime",meeting.getStartTime());// 会议通知 开始时间
//paramMap.put("endTime",meeting.getEndTime());//会议通知 结束时间
/**************会议记录内容****************/
if(meetingSend != null ){
paramMap.put("startTime",null);
if(meetingSend.getMeetStartTime() != null ){
paramMap.put("startTime", DateUtil.formatDate(meetingSend.getMeetStartTime() ,"yyyy年MM月dd日") );// 会议记录 开始时间
}
paramMap.put("endTime",meetingSend.getMeetEndTime());// 会议记录 结束时间
paramMap.put("meetingPlace",meetingSend.getMeetLocation());//会议地址:
if(meetingSend.getMeetContent() != null ){
String meetingContent =meetingSend.getMeetContent() ;
meetingContent = meetingContent.replaceAll("<.*?>", "");
paramMap.put("meetingContent",meetingContent);//会议内容
}
String participantsName = userService.getUserNameByUserIds(meetingSend.getUserIds());
paramMap.put("participantsName",participantsName);//参会人员
}
// exprotVo.setOrgDepart( );
// 会议模板:files/20240903/中冶智慧水务运营管控平台项目阶段性汇报会议纪要20240805_1725342900006.doc
String templateDocPath = meetingSend.getMinutesTemplate();//会议纪要模板
/****************会议纪要**********************/
String minutesimage = null; //会议既要图片
if(ajhMeetingMinutes != null ){
paramMap.put("orgDepart",ajhMeetingMinutes.getOrgDepart());//集团名称
paramMap.put("compere",ajhMeetingMinutes.getCompere());//会议主持人
if(ajhMeetingMinutes.getDetail() != null ){
String minutesContent =ajhMeetingMinutes.getDetail() ;
minutesContent = minutesContent.replaceAll("<.*?>", "");
paramMap.put("minutesContent",minutesContent);//会议纪要内容
}
minutesimage = upLoadPath + File.separator + ajhMeetingMinutes.getImage();
}
//签到集合
int supplementNum = 0;//后续添加补全表格记录16
List<AjhMeetingAttend> meetingAttendList = meetingAttendService.getByMeetsId( meetsId );
if(meetingAttendList == null || meetingAttendList.isEmpty()){
meetingAttendList = new ArrayList<AjhMeetingAttend>();
supplementNum = 16;
}else{
supplementNum = 16 - meetingAttendList.size();
List<AjhMeetingAttend> meetingAttendList = meetingAttendService.getByMeetsId( meetsId );
int index = 1;
if(meetingAttendList != null && !meetingAttendList.isEmpty()){
for(AjhMeetingAttend ajhMeetingAttend : meetingAttendList){
ajhMeetingAttend.setIndex(index++);
ajhMeetingAttend.setDuties("");
}
}
//补全签到表格集合
supplementList( meetingAttendList , supplementNum );
//签到表集合
supplementList( meetingAttendList , index );
// //签到表集合
paramMap.put("attendList",meetingAttendList);
//添加图片
// 第三部分:图片
WordImageEntity img = new WordImageEntity();
img.setType(WordImageEntity.URL);
img.setUrl("D:\\test\\123.jpg");
//img.setUrl("https://s2.51cto.com/media/2024/blog/logo.png");
img.setWidth(550);
img.setHeight(500);
paramMap.put("meetingPlace" , img);
File minutesimageFile = new File(minutesimage);
if(minutesimageFile.exists()){
WordImageEntity img = new WordImageEntity();
img.setType(WordImageEntity.URL);
img.setUrl(minutesimage);
//img.setUrl("https://s2.51cto.com/media/2024/blog/logo.png");
img.setWidth(550);
img.setHeight(500);
paramMap.put("meetingImg" , img);
}
//导出word
exportWordData( templatePath , exportName , paramMap ,response);
}
/***
* 补全签到表格集合
* @param meetingAttendList
* @param supplementNum
*/
private void supplementList(List<AjhMeetingAttend> meetingAttendList ,int supplementNum){
if(supplementNum > 0){
for(int i = 0 ;i <supplementNum ;i ++){
meetingAttendList.add( new AjhMeetingAttend() );
}
}
}
/**
* 导出word模板
* @param templatePath
......@@ -388,16 +435,19 @@ public class AjhMeetingMinutesController {
* @param response
*/
private void exportWordData(String templatePath , String exportName , Map<String ,Object> paramMap, HttpServletResponse response ){
InputStream is = null;
InputStream inputStream = null;
//具体业务处理方法
try {
//获取word文档解析对象
is = new FileInputStream(templatePath);
File file = new File(templatePath);
if(file.exists()){
inputStream = new FileInputStream(templatePath);
}else{//判断文件是否存在,如果不存在使用默认模板
Resource resource = new ClassPathResource("templates" + File.separator + "template_AjhMeetingMinutes.docx");
inputStream = resource.getInputStream();
}
//加载模板文件
MyXWPFDocument document = new MyXWPFDocument(is);
MyXWPFDocument document = new MyXWPFDocument(inputStream);
//解析07版的Word并且进行赋值
//WordExportUtil.exportWord07(document, paramMap);
//解析07版的Word并且进行赋值
......@@ -411,12 +461,10 @@ public class AjhMeetingMinutesController {
response.setHeader("Content-Disposition", "attachment;filename=".concat(String.valueOf(URLEncoder.encode(exportName , "UTF-8"))));
// 将文档写入响应的输出流
// 输出文件路径 --测试
/* String outputPath = "D:\\test\\会议纪要导出记录.docx";
FileOutputStream outputFile = new FileOutputStream(outputPath);
document.write( outputFile);*/
document.write(response.getOutputStream());
// 刷新和关闭输出流
response.getOutputStream().flush();
......@@ -427,11 +475,49 @@ public class AjhMeetingMinutesController {
catch (Exception e) {
e.printStackTrace();
}finally {
System.out.println("关闭输入流");
try{
if(is != null ) is.close();//关闭输入流
if(inputStream != null ) inputStream.close();//关闭输入流
}catch (Exception e1){
e1.printStackTrace();
}
}
}
/***
* 补全签到表格集合
* @param meetingAttendList
* @param index
*/
private void supplementList(List<AjhMeetingAttend> meetingAttendList ,int index){
if(index < 17 ){
for(int i = index ;i < 17 ;i ++){
meetingAttendList.add( new AjhMeetingAttend( index++,"","","" ) );
}
}
}
/***
* 初始化Map参数
* @return
*/
private Map<String ,Object> initParamMap(){
Map<String ,Object> paramMap = new HashMap<String,Object>();
paramMap.put("meetTitile", "" );//会议标题
paramMap.put( "sender","");//发起人
paramMap.put("sendTime","");//发送时间
paramMap.put("startTime","");
paramMap.put("endTime","");// 会议记录 结束时间
paramMap.put("meetingPlace","");//会议地址:
paramMap.put("meetingContent","");//会议内容
paramMap.put("participantsName","");//参会人员
paramMap.put("orgDepart","");//集团名称
paramMap.put("compere","");//会议主持人
paramMap.put("minutesContent","");//会议纪要内容
paramMap.put("attendList",new ArrayList<AjhMeetingAttend>());//签到记录
paramMap.put("meetingImg","");//会议纪要图片
return paramMap;
}
}
......
......@@ -96,4 +96,23 @@ public class AjhMeetingAttend {
@TableField(exist = false)
@ApiModelProperty(value = "序号")
private Integer index;
@TableField(exist = false)
@ApiModelProperty(value = "职务")
private String duties;
public AjhMeetingAttend() {
}
public AjhMeetingAttend(Integer index ,String duties) {
this.index = index;
this.duties = duties;
}
public AjhMeetingAttend( Integer index,String departName, String userName, String duties) {
this.index = index;
this.departName = departName;
this.userName = userName;
this.duties = duties;
}
}
......
......@@ -11,7 +11,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface AjhMeetingMinutesMapper extends BaseMapper<AjhMeetingMinutes> {
AjhMeetingMinutes queryByMeetId(@Param("meetId") String meetId);
/**
* 根据会议记录编号获取最新的会议纪要内容
* @param meetsId
* @return
*/
AjhMeetingMinutes queryByMeetsId(@Param("meetsId") String meetsId);
AjhMeetingMinutes getDataById(@Param("id") String id);
}
......
......@@ -2,8 +2,9 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.skua.modules.ajh.mapper.AjhMeetingMinutesMapper">
<select id="queryByMeetId" resultType="com.skua.modules.ajh.entity.AjhMeetingMinutes">
select * from ajh_meeting_minutes where meets_id = #{meetId} order by create_time desc limit 1
<!-- 根据会议记录编号获取最新的会议纪要内容-->
<select id="queryByMeetsId" resultType="com.skua.modules.ajh.entity.AjhMeetingMinutes">
select * from ajh_meeting_minutes where meets_id = #{meetsId} order by create_time desc limit 1
</select>
<select id="getDataById" resultType="com.skua.modules.ajh.entity.AjhMeetingMinutes">
......
......@@ -3,7 +3,6 @@ package com.skua.modules.ajh.service;
import com.skua.modules.ajh.entity.AjhMeetingAttend;
import com.baomidou.mybatisplus.extension.service.IService;
import com.skua.modules.ajh.entity.AjhMeetingSend;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -19,6 +18,6 @@ public interface IAjhMeetingAttendService extends IService<AjhMeetingAttend> {
* @param meetsId
* @return
*/
public List<AjhMeetingAttend> getByMeetsId(@Param("meetsId")String meetsId);
public List<AjhMeetingAttend> getByMeetsId(String meetsId);
}
......
......@@ -8,7 +8,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IAjhMeetingMinutesService extends IService<AjhMeetingMinutes> {
AjhMeetingMinutes queryByMeetId(String meetId);
/***
* 根据会议记录编号获取最细的会议纪要
* @param meetsId
* @return
*/
public AjhMeetingMinutes queryByMeetsId(String meetsId);
AjhMeetingMinutes getDataById(String id);
}
......
......@@ -32,31 +32,17 @@ public class AjhMeetingMinutesServiceImpl extends ServiceImpl<AjhMeetingMinutesM
@Autowired
private ISysUserService sysUserService;
/***
* 根据会议记录编号获取最细的会议纪要
* @param meetsId
* @return
*/
@Override
public AjhMeetingMinutes queryByMeetId(String meetId) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
//获取会议记录信息
AjhMeetingSend ajhMeetingSend = ajhMeetingSendService.getById(meetId);
//获取会议纪要
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesMapper.queryByMeetId(meetId);
if(ajhMeetingMinutes != null){
//会议时间
if(ajhMeetingSend.getMeetTime()!=null){
ajhMeetingMinutes.setAnnTime(ajhMeetingSend.getMeetTime());
}
//主持人
SysUser user = sysUserService.getById(ajhMeetingSend.getMeetCompere());
ajhMeetingMinutes.setCompere(user.getRealname());
//参与人
//创建会议时间
ajhMeetingMinutes.setSendDate(formatter.format(ajhMeetingSend.getCreateTime()));
//组织单位
SysDepart sysDepart = sysDepartService.getById(ajhMeetingSend.getDepartId());
ajhMeetingMinutes.setOrgDepart(sysDepart.getDepartName());
return ajhMeetingMinutes;
}else{
return new AjhMeetingMinutes();
}
public AjhMeetingMinutes queryByMeetsId(String meetsId) {
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesMapper.queryByMeetsId(meetsId);
return ajhMeetingMinutes;
}
@Override
......
......@@ -149,7 +149,7 @@ public class AjhMeetingSendServiceImpl extends ServiceImpl<AjhMeetingSendMapper,
dataMap.put("departMeetContent" ,meetingSend.getMeetContent() );//会议内容
//会议纪要
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesMapper.queryByMeetId(meetingSend.getId());
AjhMeetingMinutes ajhMeetingMinutes = ajhMeetingMinutesMapper.queryByMeetsId(meetingSend.getId());
if(ajhMeetingMinutes != null ){
// dataMap.put("meetImage", Pictures.ofLocal(upLoadPath+ File.separator+ ajhMeetingMinutes.getImage() ).size(550, 500).create());
//dataMap.put("meetImage" ,ajhMeetingMinutes.getImage() );//会议图片 需要转化为图片
......
......@@ -83,29 +83,7 @@ public class DateUtil {
}
/***
* 字符串日期格式化
* @param date
* @param format
* @return
*/
public static String formatDate(String date , String format){
if(format == null ){
format = "yyyy-MM-dd";
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat formatSDF = new SimpleDateFormat(format);
// 转化成日期类型
try {
Date startDate = sdf.parse(date);
date = formatSDF.format(startDate);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
/**
* 获取两个日期之间的所有日期 (年月日)
*
......@@ -271,4 +249,42 @@ public class DateUtil {
public static LocalDateTime dateToLocalDateTime(Date date){
return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
}
/***
* 字符串日期格式化
* @param date
* @param format
* @return
*/
public static String formatDate(String date , String format){
if(format == null ){
format = "yyyy-MM-dd";
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat formatSDF = new SimpleDateFormat(format);
// 转化成日期类型
try {
Date startDate = sdf.parse(date);
date = formatSDF.format(startDate);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
public static String formatDate(Date dateTime , String format){
if(format == null ){
format = "yyyy-MM-dd";
}
String date = "";
SimpleDateFormat formatSDF = new SimpleDateFormat(format);
// 转化成日期类型
try {
date = formatSDF.format(dateTime);
} catch (Exception e) {
e.printStackTrace();
}
return date;
}
}
......
......@@ -104,6 +104,21 @@
'${item}'
</foreach>
</select>
<select id="getUserNameByUserIds" resultType="java.lang.String">
SELECT
username
FROM
sys_user
WHERE
id IN
<foreach item="item" index="index" collection="userIds.split(',')" open="(" separator="," close=")">
'${item}'
</foreach>
</select>
<select id="getUserByUserIds" resultType="com.skua.modules.system.entity.SysUser">
SELECT
*
......
......@@ -146,4 +146,11 @@ public interface ISysUserService extends IService<SysUser> {
List<SysUser> getUserByUserIds(String userIds);
List<SysUser> operationUserList(String departId);
/***
* 根据userids返回userName
* @param userIds
* @return
*/
public String getUserNameByUserIds(String userIds);
}
......
......@@ -304,6 +304,24 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
return list;
}
/***
* 根据userids返回userName
* @param userIds
* @return
*/
public String getUserNameByUserIds(String userIds){
List<SysUser> userList = baseMapper.getUserByUserIds(userIds);
StringBuffer sb = new StringBuffer("");
if(userList != null ){
for(SysUser user : userList){
if(sb.length() >0 ) sb.append(",");
sb.append(user.getUsername());
}
}
return sb.toString();
}
@Override
public List<SysUser> operationUserList(String departId) {
return userMapper.operationUserList(departId);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!