diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/domain/TbTemplate.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/domain/TbTemplate.java index b83e8f4..08b2968 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/domain/TbTemplate.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/domain/TbTemplate.java @@ -15,75 +15,64 @@ */ package me.zhengjie.modules.sms.domain; +import lombok.Data; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.bean.copier.CopyOptions; import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; -import me.zhengjie.base.BaseEntity; -import me.zhengjie.base.OperatorBaseEntity; - +import cn.hutool.core.bean.copier.CopyOptions; import javax.persistence.*; -import javax.validation.constraints.NotNull; -import java.io.Serializable; +import javax.validation.constraints.*; import java.sql.Timestamp; +import java.io.Serializable; /** * @website https://el-admin.vip * @description / * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @Entity -@Getter -@Setter +@Data @Table(name="tb_template") -public class TbTemplate extends OperatorBaseEntity implements Serializable { +public class TbTemplate implements Serializable { @Id - @Column(name = "id") - @NotNull(groups = BaseEntity.Update.class) - @ApiModelProperty(value = "ID", hidden = true) @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id") + @ApiModelProperty(value = "id") private Long id; - @Column(name = "template_name") - @ApiModelProperty(value = "模板名称") - private String templateName; - - @Column(name = "template_status") - @ApiModelProperty(value = "审核状态 0-申请中 1-申请通过 1-未通过") - private Integer templateStatus; - @Column(name = "send_message") @ApiModelProperty(value = "发送的信息") private String sendMessage; - @Column(name = "audit_time") - @ApiModelProperty(value = "审核时间") - private Timestamp auditTime; - @Column(name = "last_update_time") @ApiModelProperty(value = "生成时间") private Timestamp lastUpdateTime; - @Column(name = "remark") - @ApiModelProperty(value = "备注") - private String remark; - @Column(name = "reviewer") @ApiModelProperty(value = "审核人员") private String reviewer; - @Column(name = "rejected_msg") - @ApiModelProperty(value = "驳回原因") - private String rejectedMsg; + @Column(name = "gmt_create") + @ApiModelProperty(value = "生成时间") + private Timestamp gmtCreate; + + @Column(name = "gmt_modified") + @ApiModelProperty(value = "修改时间") + private Timestamp gmtModified; + @Column(name = "operator") + @ApiModelProperty(value = "操作人") + private String operator; @Column(name = "link_url") - @ApiModelProperty(value = "跳转链接") + @ApiModelProperty(value = "跳转url") private String linkUrl; + @Column(name = "task_name") + @ApiModelProperty(value = "业务名称") + private String taskName; + public void copy(TbTemplate source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/repository/TbTemplateRepository.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/repository/TbTemplateRepository.java index c41a4f8..348c69d 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/repository/TbTemplateRepository.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/repository/TbTemplateRepository.java @@ -23,15 +23,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; /** * @website https://el-admin.vip * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ public interface TbTemplateRepository extends JpaRepository, JpaSpecificationExecutor { - - /** - * 根据名称查询 - * @param name 名称 - * @return / - */ - TbTemplate findByTemplateName(String name); - } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/rest/TbTemplateController.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/rest/TbTemplateController.java index 10be9ab..d255553 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/rest/TbTemplateController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/rest/TbTemplateController.java @@ -16,7 +16,7 @@ package me.zhengjie.modules.sms.rest; import me.zhengjie.annotation.Log; -; + import me.zhengjie.modules.sms.domain.TbTemplate; import me.zhengjie.modules.sms.service.TbTemplateService; import me.zhengjie.modules.sms.service.dto.TbTemplateQueryCriteria; @@ -34,7 +34,7 @@ import javax.servlet.http.HttpServletResponse; /** * @website https://el-admin.vip * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @RestController @RequiredArgsConstructor @@ -60,14 +60,12 @@ public class TbTemplateController { return new ResponseEntity<>(tbTemplateService.queryAll(criteria,pageable),HttpStatus.OK); } - + @PostMapping @Log("新增TemplateController") @ApiOperation("新增TemplateController") - @PostMapping @PreAuthorize("@el.check('tbTemplate:add')") public ResponseEntity create(@Validated @RequestBody TbTemplate resources){ - tbTemplateService.create(resources); - return new ResponseEntity<>(HttpStatus.CREATED); + return new ResponseEntity<>(tbTemplateService.create(resources),HttpStatus.CREATED); } @PutMapping @@ -87,14 +85,4 @@ public class TbTemplateController { tbTemplateService.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK); } - - - @Log("审核TemplateController") - @ApiOperation("审核TemplateController") - @PreAuthorize("@el.check('tbTemplate:review')") - @PostMapping("/review") - public ResponseEntity review(@Validated @RequestBody TbTemplate resources){ - tbTemplateService.review(resources); - return new ResponseEntity<>(HttpStatus.OK); - } } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/TbTemplateService.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/TbTemplateService.java index e2f3fd2..49dcdf1 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/TbTemplateService.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/TbTemplateService.java @@ -29,7 +29,7 @@ import javax.servlet.http.HttpServletResponse; * @website https://el-admin.vip * @description 服务接口 * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ public interface TbTemplateService { @@ -60,7 +60,7 @@ public interface TbTemplateService { * @param resources / * @return TbTemplateDto */ - void create(TbTemplate resources); + TbTemplateDto create(TbTemplate resources); /** * 编辑 @@ -81,10 +81,4 @@ public interface TbTemplateService { * @throws IOException / */ void download(List all, HttpServletResponse response) throws IOException; - - /** - * 平台审核 - * @param resources - */ - void review(TbTemplate resources); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateDto.java index 6a45fb8..b1989c8 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateDto.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateDto.java @@ -18,46 +18,27 @@ package me.zhengjie.modules.sms.service.dto; import lombok.Data; import java.sql.Timestamp; import java.io.Serializable; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; /** * @website https://el-admin.vip * @description / * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @Data public class TbTemplateDto implements Serializable { - /** 防止精度丢失 */ - @JsonSerialize(using= ToStringSerializer.class) private Long id; - /** 模板名称 */ - private String templateName; - - /** 审核状态 0-申请中 1-申请通过 1-未通过 */ - private Integer templateStatus; - /** 发送的信息 */ private String sendMessage; - /** 审核时间 */ - private Timestamp auditTime; - /** 生成时间 */ private Timestamp lastUpdateTime; - /** 备注 */ - private String remark; - /** 审核人员 */ private String reviewer; - /** 驳回原因 */ - private String rejectedMsg; - /** 生成时间 */ private Timestamp gmtCreate; @@ -67,7 +48,9 @@ public class TbTemplateDto implements Serializable { /** 操作人 */ private String operator; - /** 操作人 */ + /** 跳转url */ private String linkUrl; + /** 业务名称 */ + private String taskName; } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateQueryCriteria.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateQueryCriteria.java index bd02c9e..4132a8c 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateQueryCriteria.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/dto/TbTemplateQueryCriteria.java @@ -22,7 +22,7 @@ import me.zhengjie.annotation.Query; /** * @website https://el-admin.vip * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @Data public class TbTemplateQueryCriteria{ diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/impl/TbTemplateServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/impl/TbTemplateServiceImpl.java index 3e627a8..aaf1e2b 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/impl/TbTemplateServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/impl/TbTemplateServiceImpl.java @@ -15,34 +15,35 @@ */ package me.zhengjie.modules.sms.service.impl; -import lombok.RequiredArgsConstructor; -import me.zhengjie.exception.EntityExistException; + import me.zhengjie.modules.sms.domain.TbTemplate; import me.zhengjie.modules.sms.repository.TbTemplateRepository; import me.zhengjie.modules.sms.service.TbTemplateService; import me.zhengjie.modules.sms.service.dto.TbTemplateDto; import me.zhengjie.modules.sms.service.dto.TbTemplateQueryCriteria; import me.zhengjie.modules.sms.service.mapstruct.TbTemplateMapper; -import me.zhengjie.utils.*; -import me.zhengjie.utils.enums.StatusEnum; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.ValidationUtil; +import me.zhengjie.utils.FileUtil; +import lombok.RequiredArgsConstructor; + import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; - -import javax.servlet.http.HttpServletResponse; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import me.zhengjie.utils.PageUtil; +import me.zhengjie.utils.QueryHelp; +import java.util.List; +import java.util.Map; import java.io.IOException; -import java.sql.Timestamp; +import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; /** * @website https://el-admin.vip * @description 服务实现 * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @Service @RequiredArgsConstructor @@ -72,18 +73,8 @@ public class TbTemplateServiceImpl implements TbTemplateService { @Override @Transactional(rollbackFor = Exception.class) - public void create(TbTemplate resources) { - TbTemplate template = tbTemplateRepository.findByTemplateName(resources.getTemplateName()); - if(template != null){ - throw new EntityExistException(TbTemplate.class,"name",resources.getTemplateName()); - } - Timestamp timestamp = new Timestamp(System.currentTimeMillis()); - resources.setGmtModified(timestamp); - resources.setGmtCreate(timestamp); - resources.setOperator(SecurityUtils.getCurrentUser().getUsername()); - resources.setTemplateStatus(StatusEnum.PROCESSING.getValue()); - - tbTemplateRepository.save(resources); + public TbTemplateDto create(TbTemplate resources) { + return tbTemplateMapper.toDto(tbTemplateRepository.save(resources)); } @Override @@ -91,10 +82,6 @@ public class TbTemplateServiceImpl implements TbTemplateService { public void update(TbTemplate resources) { TbTemplate tbTemplate = tbTemplateRepository.findById(resources.getId()).orElseGet(TbTemplate::new); ValidationUtil.isNull( tbTemplate.getId(),"TbTemplate","id",resources.getId()); - Timestamp timestamp = new Timestamp(System.currentTimeMillis()); - tbTemplate.setReviewer(SecurityUtils.getCurrentUser().getUsername()); - tbTemplate.setAuditTime(timestamp); - tbTemplate.setLastUpdateTime(timestamp); tbTemplate.copy(resources); tbTemplateRepository.save(tbTemplate); } @@ -111,31 +98,16 @@ public class TbTemplateServiceImpl implements TbTemplateService { List> list = new ArrayList<>(); for (TbTemplateDto tbTemplate : all) { Map map = new LinkedHashMap<>(); - map.put("模板名称", tbTemplate.getTemplateName()); - map.put("审核状态 0-申请中 1-申请通过 1-未通过", tbTemplate.getTemplateStatus()); map.put("发送的信息", tbTemplate.getSendMessage()); - map.put("审核时间", tbTemplate.getAuditTime()); - map.put("最后修改时间", tbTemplate.getLastUpdateTime()); - map.put("备注", tbTemplate.getRemark()); + map.put("生成时间", tbTemplate.getLastUpdateTime()); map.put("审核人员", tbTemplate.getReviewer()); - map.put("驳回原因", tbTemplate.getRejectedMsg()); map.put("生成时间", tbTemplate.getGmtCreate()); map.put("修改时间", tbTemplate.getGmtModified()); map.put("操作人", tbTemplate.getOperator()); + map.put("跳转url", tbTemplate.getLinkUrl()); + map.put("业务名称", tbTemplate.getTaskName()); list.add(map); } FileUtil.downloadExcel(list, response); } - - @Override - public void review(TbTemplate resources) { - TbTemplate tbTemplate = tbTemplateRepository.findById(resources.getId()).orElseGet(TbTemplate::new); - ValidationUtil.isNull(tbTemplate.getId(),"TbTemplate","id",resources.getId()); - Timestamp timestamp = new Timestamp(System.currentTimeMillis()); - tbTemplate.copy(resources); - tbTemplate.setAuditTime(timestamp); - tbTemplate.setLastUpdateTime(timestamp); - tbTemplateRepository.save(tbTemplate); - } - } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbBlacklistMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbBlacklistMapper.java new file mode 100644 index 0000000..8fd0c44 --- /dev/null +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbBlacklistMapper.java @@ -0,0 +1,33 @@ +/* +* Copyright 2019-2020 Zheng Jie +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package me.zhengjie.modules.sms.service.mapstruct; + + +import me.zhengjie.base.BaseMapper; +import me.zhengjie.modules.sms.domain.TbBlacklist; +import me.zhengjie.modules.sms.service.dto.TbBlacklistDto; +import org.mapstruct.Mapper; +import org.mapstruct.ReportingPolicy; + +/** +* @website https://el-admin.vip +* @author Enzo +* @date 2021-04-14 +**/ +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface TbBlacklistMapper extends BaseMapper { + +} diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbTemplateMapper.java b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbTemplateMapper.java index 2328d3f..4bfdd74 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbTemplateMapper.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/sms/service/mapstruct/TbTemplateMapper.java @@ -25,7 +25,7 @@ import org.mapstruct.ReportingPolicy; /** * @website https://el-admin.vip * @author Enzo -* @date 2021-04-14 +* @date 2021-04-16 **/ @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) public interface TbTemplateMapper extends BaseMapper {