Browse Source

工作日志

dev
zhaoqifeng 3 years ago
parent
commit
8dba635743
  1. 10
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/MemoAttachmentDTO.java
  2. 9
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/MemoWorkDiaryDTO.java
  3. 25
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/MemoWorkDiaryFormDTO.java
  4. 16
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/MemoWorkDiaryController.java
  5. 14
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/MemoWorkDiaryDao.java
  6. 7
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/MemoAttachmentEntity.java
  7. 20
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/MemoAttachmentService.java
  8. 14
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/MemoWorkDiaryService.java
  9. 40
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/MemoAttachmentServiceImpl.java
  10. 63
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/MemoWorkDiaryServiceImpl.java
  11. 29
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/MemoWorkDiaryDao.xml

10
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/MemoAttachmentDTO.java

@ -1,5 +1,6 @@
package com.epmet.dto; package com.epmet.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -20,16 +21,19 @@ public class MemoAttachmentDTO implements Serializable {
/** /**
* 主键 * 主键
*/ */
@JsonIgnore
private String id; private String id;
/** /**
* 客户ID * 客户ID
*/ */
@JsonIgnore
private String customerId; private String customerId;
/** /**
* REMIND_MSG.ID * REMIND_MSG.ID
*/ */
@JsonIgnore
private String remindMsgId; private String remindMsgId;
/** /**
@ -70,21 +74,25 @@ public class MemoAttachmentDTO implements Serializable {
/** /**
* 排序字段 * 排序字段
*/ */
@JsonIgnore
private Integer sort; private Integer sort;
/** /**
* 删除标记 0未删除1已删除 * 删除标记 0未删除1已删除
*/ */
@JsonIgnore
private String delFlag; private String delFlag;
/** /**
* 乐观锁 * 乐观锁
*/ */
@JsonIgnore
private Integer revision; private Integer revision;
/** /**
* 创建人 * 创建人
*/ */
@JsonIgnore
private String createdBy; private String createdBy;
/** /**
@ -95,11 +103,13 @@ public class MemoAttachmentDTO implements Serializable {
/** /**
* 更新人 * 更新人
*/ */
@JsonIgnore
private String updatedBy; private String updatedBy;
/** /**
* 更新时间 * 更新时间
*/ */
@JsonIgnore
private Date updatedTime; private Date updatedTime;
} }

9
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/MemoWorkDiaryDTO.java

@ -1,9 +1,11 @@
package com.epmet.dto; package com.epmet.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
@ -40,6 +42,7 @@ public class MemoWorkDiaryDTO implements Serializable {
/** /**
* 提醒时间 * 提醒时间
*/ */
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
private Date remindTime; private Date remindTime;
/** /**
@ -60,6 +63,7 @@ public class MemoWorkDiaryDTO implements Serializable {
/** /**
* 创建时间 * 创建时间
*/ */
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
private Date createdTime; private Date createdTime;
/** /**
@ -72,4 +76,9 @@ public class MemoWorkDiaryDTO implements Serializable {
*/ */
private Date updatedTime; private Date updatedTime;
/**
* 附件
*/
private List<MemoAttachmentDTO> attachmentList;
} }

25
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/MemoWorkDiaryFormDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/3/15 15:09
*/
@NoArgsConstructor
@Data
public class MemoWorkDiaryFormDTO extends PageFormDTO implements Serializable {
private static final long serialVersionUID = 3101320969471756516L;
private String userId;
private String id;
private String readFlag = "0";
private String content;
private String workType;
private String startTime;
private String endTime;
}

16
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/MemoWorkDiaryController.java

@ -1,7 +1,9 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
@ -9,12 +11,11 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.MemoWorkDiaryDTO; import com.epmet.dto.MemoWorkDiaryDTO;
import com.epmet.dto.form.MemoWorkDiaryFormDTO;
import com.epmet.service.MemoWorkDiaryService; import com.epmet.service.MemoWorkDiaryService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.Map;
/** /**
* 备忘录-工作日志 * 备忘录-工作日志
@ -30,14 +31,15 @@ public class MemoWorkDiaryController {
private MemoWorkDiaryService memoWorkDiaryService; private MemoWorkDiaryService memoWorkDiaryService;
@RequestMapping("page") @RequestMapping("page")
public Result<PageData<MemoWorkDiaryDTO>> page(@RequestParam Map<String, Object> params){ public Result<PageData<MemoWorkDiaryDTO>> page(@LoginUser TokenDto tokenDto, @RequestBody MemoWorkDiaryFormDTO formDTO){
PageData<MemoWorkDiaryDTO> page = memoWorkDiaryService.page(params); formDTO.setUserId(tokenDto.getUserId());
PageData<MemoWorkDiaryDTO> page = memoWorkDiaryService.page(formDTO);
return new Result<PageData<MemoWorkDiaryDTO>>().ok(page); return new Result<PageData<MemoWorkDiaryDTO>>().ok(page);
} }
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) @RequestMapping(method = {RequestMethod.POST,RequestMethod.GET})
public Result<MemoWorkDiaryDTO> get(@PathVariable("id") String id){ public Result<MemoWorkDiaryDTO> get(@RequestBody MemoWorkDiaryFormDTO formDTO){
MemoWorkDiaryDTO data = memoWorkDiaryService.get(id); MemoWorkDiaryDTO data = memoWorkDiaryService.get(formDTO);
return new Result<MemoWorkDiaryDTO>().ok(data); return new Result<MemoWorkDiaryDTO>().ok(data);
} }

14
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/MemoWorkDiaryDao.java

@ -1,9 +1,13 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.MemoWorkDiaryDTO;
import com.epmet.dto.form.MemoWorkDiaryFormDTO;
import com.epmet.entity.MemoWorkDiaryEntity; import com.epmet.entity.MemoWorkDiaryEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 备忘录-工作日志 * 备忘录-工作日志
* *
@ -12,5 +16,15 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface MemoWorkDiaryDao extends BaseDao<MemoWorkDiaryEntity> { public interface MemoWorkDiaryDao extends BaseDao<MemoWorkDiaryEntity> {
/**
* 查询列表
*
* @Param formDTO
* @Return {@link List< MemoWorkDiaryDTO>}
* @Author zhaoqifeng
* @Date 2022/3/15 15:31
*/
List<MemoWorkDiaryDTO> getPage(MemoWorkDiaryFormDTO formDTO);
} }

7
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/MemoAttachmentEntity.java

@ -1,5 +1,7 @@
package com.epmet.entity; package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data; import lombok.Data;
@ -68,4 +70,9 @@ public class MemoAttachmentEntity extends BaseEpmetEntity {
*/ */
private Integer sort; private Integer sort;
/**
* 物理删除
*/
@TableField(fill = FieldFill.INSERT)
private String delFlag;
} }

20
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/MemoAttachmentService.java

@ -75,4 +75,24 @@ public interface MemoAttachmentService extends BaseService<MemoAttachmentEntity>
* @date 2022-03-15 * @date 2022-03-15
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* 根据备忘录ID查询附件
*
* @Param memoId
* @Return {@link List< MemoAttachmentDTO>}
* @Author zhaoqifeng
* @Date 2022/3/15 15:56
*/
List<MemoAttachmentDTO> getListByMemoId(String memoId);
/**
* 根据备忘录ID删除附件
*
* @Param memoId
* @Return
* @Author zhaoqifeng
* @Date 2022/3/15 15:57
*/
void deleteByMemoId(String memoId);
} }

14
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/MemoWorkDiaryService.java

@ -3,10 +3,10 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.MemoWorkDiaryDTO; import com.epmet.dto.MemoWorkDiaryDTO;
import com.epmet.dto.form.MemoWorkDiaryFormDTO;
import com.epmet.entity.MemoWorkDiaryEntity; import com.epmet.entity.MemoWorkDiaryEntity;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 备忘录-工作日志 * 备忘录-工作日志
@ -19,32 +19,32 @@ public interface MemoWorkDiaryService extends BaseService<MemoWorkDiaryEntity> {
/** /**
* 默认分页 * 默认分页
* *
* @param params * @param formDTO
* @return PageData<MemoWorkDiaryDTO> * @return PageData<MemoWorkDiaryDTO>
* @author generator * @author generator
* @date 2022-03-15 * @date 2022-03-15
*/ */
PageData<MemoWorkDiaryDTO> page(Map<String, Object> params); PageData<MemoWorkDiaryDTO> page(MemoWorkDiaryFormDTO formDTO);
/** /**
* 默认查询 * 默认查询
* *
* @param params * @param formDTO
* @return java.util.List<MemoWorkDiaryDTO> * @return java.util.List<MemoWorkDiaryDTO>
* @author generator * @author generator
* @date 2022-03-15 * @date 2022-03-15
*/ */
List<MemoWorkDiaryDTO> list(Map<String, Object> params); List<MemoWorkDiaryDTO> list(MemoWorkDiaryFormDTO formDTO);
/** /**
* 单条查询 * 单条查询
* *
* @param id * @param formDTO
* @return MemoWorkDiaryDTO * @return MemoWorkDiaryDTO
* @author generator * @author generator
* @date 2022-03-15 * @date 2022-03-15
*/ */
MemoWorkDiaryDTO get(String id); MemoWorkDiaryDTO get(MemoWorkDiaryFormDTO formDTO);
/** /**
* 默认保存 * 默认保存

40
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/MemoAttachmentServiceImpl.java

@ -1,5 +1,6 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -10,11 +11,13 @@ import com.epmet.dao.MemoAttachmentDao;
import com.epmet.dto.MemoAttachmentDTO; import com.epmet.dto.MemoAttachmentDTO;
import com.epmet.entity.MemoAttachmentEntity; import com.epmet.entity.MemoAttachmentEntity;
import com.epmet.service.MemoAttachmentService; import com.epmet.service.MemoAttachmentService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -80,4 +83,41 @@ public class MemoAttachmentServiceImpl extends BaseServiceImpl<MemoAttachmentDao
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* 根据备忘录ID查询附件
*
* @param memoId
* @Param memoId
* @Return {@link List< MemoAttachmentDTO>}
* @Author zhaoqifeng
* @Date 2022/3/15 15:56
*/
@Override
public List<MemoAttachmentDTO> getListByMemoId(String memoId) {
LambdaQueryWrapper<MemoAttachmentEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MemoAttachmentEntity::getRemindMsgId, memoId);
wrapper.orderByAsc(MemoAttachmentEntity::getSort);
List<MemoAttachmentEntity> list = baseDao.selectList(wrapper);
if (CollectionUtils.isEmpty(list)) {
return Collections.emptyList();
}
return ConvertUtils.sourceToTarget(list, MemoAttachmentDTO.class);
}
/**
* 根据备忘录ID删除附件
*
* @param memoId
* @Param memoId
* @Return
* @Author zhaoqifeng
* @Date 2022/3/15 15:57
*/
@Override
public void deleteByMemoId(String memoId) {
LambdaQueryWrapper<MemoAttachmentEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MemoAttachmentEntity::getRemindMsgId, memoId);
baseDao.delete(wrapper);
}
} }

63
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/MemoWorkDiaryServiceImpl.java

@ -1,22 +1,25 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.MemoWorkDiaryDao; import com.epmet.dao.MemoWorkDiaryDao;
import com.epmet.dto.MemoAttrDTO;
import com.epmet.dto.MemoWorkDiaryDTO; import com.epmet.dto.MemoWorkDiaryDTO;
import com.epmet.dto.form.MemoWorkDiaryFormDTO;
import com.epmet.entity.MemoWorkDiaryEntity; import com.epmet.entity.MemoWorkDiaryEntity;
import com.epmet.service.MemoAttachmentService;
import com.epmet.service.MemoAttrService;
import com.epmet.service.MemoWorkDiaryService; import com.epmet.service.MemoWorkDiaryService;
import org.apache.commons.lang3.StringUtils; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 备忘录-工作日志 * 备忘录-工作日志
@ -27,36 +30,44 @@ import java.util.Map;
@Service @Service
public class MemoWorkDiaryServiceImpl extends BaseServiceImpl<MemoWorkDiaryDao, MemoWorkDiaryEntity> implements MemoWorkDiaryService { public class MemoWorkDiaryServiceImpl extends BaseServiceImpl<MemoWorkDiaryDao, MemoWorkDiaryEntity> implements MemoWorkDiaryService {
@Resource
private MemoAttrService memoAttrService;
@Resource
private MemoAttachmentService memoAttachmentService;
@Override @Override
public PageData<MemoWorkDiaryDTO> page(Map<String, Object> params) { public PageData<MemoWorkDiaryDTO> page(MemoWorkDiaryFormDTO formDTO) {
IPage<MemoWorkDiaryEntity> page = baseDao.selectPage( PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize());
getPage(params, FieldConstant.CREATED_TIME, false), List<MemoWorkDiaryDTO> list = baseDao.getPage(formDTO);
getWrapper(params) PageInfo<MemoWorkDiaryDTO> pageInfo = new PageInfo<>(list);
); return new PageData<>(list, pageInfo.getTotal());
return getPageData(page, MemoWorkDiaryDTO.class);
} }
@Override @Override
public List<MemoWorkDiaryDTO> list(Map<String, Object> params) { public List<MemoWorkDiaryDTO> list(MemoWorkDiaryFormDTO formDTO) {
List<MemoWorkDiaryEntity> entityList = baseDao.selectList(getWrapper(params)); List<MemoWorkDiaryDTO> list = baseDao.getPage(formDTO);
return ConvertUtils.sourceToTarget(entityList, MemoWorkDiaryDTO.class); return list;
}
private QueryWrapper<MemoWorkDiaryEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<MemoWorkDiaryEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
} }
@Override @Override
public MemoWorkDiaryDTO get(String id) { public MemoWorkDiaryDTO get(MemoWorkDiaryFormDTO formDTO) {
MemoWorkDiaryEntity entity = baseDao.selectById(id); MemoWorkDiaryEntity entity = baseDao.selectById(formDTO.getId());
return ConvertUtils.sourceToTarget(entity, MemoWorkDiaryDTO.class); MemoWorkDiaryDTO dto = ConvertUtils.sourceToTarget(entity, MemoWorkDiaryDTO.class);
//获取提醒时间
MemoAttrDTO memoAttr = memoAttrService.get(formDTO.getId());
if (null != memoAttr && null != dto) {
dto.setRemindTime(memoAttr.getRemindTime());
}
//获取附件列表
//更新阅读状态
if (NumConstant.ONE_STR.equals(formDTO.getReadFlag())) {
MemoAttrDTO memoAttrDTO = new MemoAttrDTO();
memoAttrDTO.setId(formDTO.getId());
memoAttrDTO.setReadFlag(NumConstant.ONE);
memoAttrService.update(memoAttrDTO);
}
return dto;
} }
@Override @Override

29
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/MemoWorkDiaryDao.xml

@ -5,4 +5,33 @@
<select id="getPage" resultType="com.epmet.dto.MemoWorkDiaryDTO">
SELECT
a.ID,
a.CUSTOMER_ID,
a.WORK_TYPE,
a.CONTENT,
b.REMIND_TIME,
a.CREATED_TIME
FROM memo_work_diary a
INNER JOIN memo_attr b ON a.ID = b.ID AND b.DEL_FLAG = '0'
WHERE
a.DEL_FLAG = '0'
AND a.CREATED_BY = #{userId}
<if test='null != content and "" != content'>
AND a.CONTENT LIKE concat('%', #{content}, '%')
</if>
<if test='null != workType and "" != workType'>
AND a.WORK_TYPE LIKE concat('%', #{workType}, '%')
</if>
<if test='null != startTime and "" != startTime'>
AND DATE_FORMAT(a.CREATED_TIME, "%Y-%m-%d") &gt;= #{startTime}
</if>
<if test='null != endTime and "" != endTime'>
AND DATE_FORMAT(a.CREATED_TIME, "%Y-%m-%d") &lt;= #{endTime}
</if>
ORDER BY a.CREATED_TIME DESC
</select>
</mapper> </mapper>
Loading…
Cancel
Save