Commit 5e33acae authored by taabe's avatar taabe

警情任务派发接口、短信模板获取接口

parent 743ceb4b
package com.yeejoin.amos.boot.biz.common.utils;
import lombok.extern.slf4j.Slf4j;
import java.util.Arrays;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Predicate;
/**
* @Author: songLei
* @Description:
* @Date: 2020/12/23 20:21
* @Version: 1.0
*/
@Slf4j
public class EnumsUtils {
private static Map<Class, Object> map = new ConcurrentHashMap<>();
/**
* 根据条件获取枚举对象
*
* @param className 枚举类
* @param predicate 筛选条件
* @param <T>
* @return
*/
public static <T> Optional<T> getEnumObject(Class<T> className, Predicate<T> predicate) {
if (!className.isEnum()) {
log.info("Class 不是枚举类");
return null;
}
Object obj = map.get(className);
T[] ts = null;
if (obj == null) {
ts = className.getEnumConstants();
map.put(className, ts);
} else {
ts = (T[]) obj;
}
return Arrays.stream(ts).filter(predicate).findAny();
}
}
...@@ -20,12 +20,21 @@ import java.util.List; ...@@ -20,12 +20,21 @@ import java.util.List;
public class AlertSubmittedDto { public class AlertSubmittedDto {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long sequenceNbr;
@ApiModelProperty(value = "警情id") @ApiModelProperty(value = "警情id")
private Long alertCalledId; private Long alertCalledId;
@ApiModelProperty(value = "业务类型code(警情续报、非警情确认、警情结案)") @ApiModelProperty(value = "业务类型code(警情续报、非警情确认、警情结案)")
private String businessTypeCode; private String businessTypeCode;
@ApiModelProperty(value = "通话记录id")
private String callLogId;
@ApiModelProperty(value = "调度类型code(融合调度、外部协调)")
private String schedulingTypeCode;
/** /**
* 区分是警情报送还是融合调度 * 区分是警情报送还是融合调度
* 电话:融合调度 * 电话:融合调度
...@@ -38,10 +47,16 @@ public class AlertSubmittedDto { ...@@ -38,10 +47,16 @@ public class AlertSubmittedDto {
* 报送对象 * 报送对象
*/ */
@ApiModelProperty(value = "报送对象") @ApiModelProperty(value = "报送对象")
private List<SubmitTargetCompanyDto> submitTargetList; private List<SubmitTargetCompanyDto> submitCompanyList;
/** /**
* 报送内容 * 报送内容
*/ */
private JSONObject submitContent; private JSONObject submitContent;
/**
* 发送对象类型(0:人员,1:单位)
*/
@ApiModelProperty(value = "报送对象类型0:人员,1:单位")
private String type;
} }
package com.yeejoin.amos.boot.module.jcs.api.dto; package com.yeejoin.amos.boot.module.jcs.api.dto;
import lombok.Data;
import java.util.List; import java.util.List;
/** /**
* 警情报送公司对象dto * 警情报送公司对象dto
* @author DELL * @author DELL
*/ */
@Data
public class SubmitTargetCompanyDto { public class SubmitTargetCompanyDto {
/** /**
......
package com.yeejoin.amos.boot.module.jcs.api.dto; package com.yeejoin.amos.boot.module.jcs.api.dto;
import lombok.Data;
/** /**
* 警情报送目标人员dto * 警情报送目标人员dto
* @author DELL * @author DELL
*/ */
@Data
public class SubmitTargetPersonDto { public class SubmitTargetPersonDto {
/** /**
......
...@@ -25,12 +25,12 @@ import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; ...@@ -25,12 +25,12 @@ import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@ApiModel(value="Template对象", description="模板表") @ApiModel(value="Template对象", description="模板表")
public class Template extends BaseEntity { public class Template extends BaseEntity {
@ApiModelProperty(value = "模板类型") @ApiModelProperty(value = "模板类型")
private String type; private String type;
@ApiModelProperty(value = "模板类型code")
private String typeCode;
@ApiModelProperty(value = "模板内容") @ApiModelProperty(value = "模板内容")
private String content; private String content;
......
package com.yeejoin.amos.boot.module.jcs.api.enums; package com.yeejoin.amos.boot.module.jcs.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/** /**
* 警情填报类型枚举 * 警情填报类型枚举
* *
* @author DELL * @author DELL
*/ */
@Getter
@AllArgsConstructor
public enum AlertBusinessTypeEnum { public enum AlertBusinessTypeEnum {
/** /**
...@@ -19,9 +23,6 @@ public enum AlertBusinessTypeEnum { ...@@ -19,9 +23,6 @@ public enum AlertBusinessTypeEnum {
private String code; private String code;
private String name; private String name;
AlertBusinessTypeEnum(String key, String code, String name) {
}
public String getKey() { public String getKey() {
return key; return key;
} }
......
package com.yeejoin.amos.boot.module.jcs.api.enums; package com.yeejoin.amos.boot.module.jcs.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/** /**
* 警情调度类型枚举 * 警情调度类型枚举
* *
* @author DELL * @author DELL
*/ */
@Getter
@AllArgsConstructor
public enum AlertSchedulingTypeEnum { public enum AlertSchedulingTypeEnum {
/** /**
...@@ -18,9 +22,6 @@ public enum AlertSchedulingTypeEnum { ...@@ -18,9 +22,6 @@ public enum AlertSchedulingTypeEnum {
private String code; private String code;
private String name; private String name;
AlertSchedulingTypeEnum(String key, String code, String name) {
}
public String getKey() { public String getKey() {
return key; return key;
} }
......
package com.yeejoin.amos.boot.module.jcs.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 警情报送类型(0:人员,1:单位)
*
* @author DELL
*/
@Getter
@AllArgsConstructor
public enum AlertSubmitTypeEnum {
//人员
Person("0", "人员"),
// 单位
Org("1", "单位");
/**
* key
*/
private String key;
/**
* 名称
*/
private String name;
}
package com.yeejoin.amos.boot.module.jcs.api.enums; package com.yeejoin.amos.boot.module.jcs.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/** /**
* 报送方式枚举 * 报送方式枚举
* *
* @author DELL * @author DELL
*/ */
@Getter
@AllArgsConstructor
public enum SubmissionMethodEnum { public enum SubmissionMethodEnum {
PHONE("phone", "311", "电话"), PHONE("phone", "311", "电话"),
SMS("sms", "312", "短信"); SMS("sms", "312", "短信");
...@@ -14,9 +18,6 @@ public enum SubmissionMethodEnum { ...@@ -14,9 +18,6 @@ public enum SubmissionMethodEnum {
private String code; private String code;
private String name; private String name;
SubmissionMethodEnum(String key, String code, String name) {
}
public String getKey() { public String getKey() {
return key; return key;
} }
......
...@@ -35,5 +35,5 @@ public interface IAlertSubmittedService extends IService<AlertSubmitted> { ...@@ -35,5 +35,5 @@ public interface IAlertSubmittedService extends IService<AlertSubmitted> {
* @param alertSubmittedDto * @param alertSubmittedDto
* @return * @return
*/ */
Object save(AlertSubmittedDto alertSubmittedDto); Boolean save(AlertSubmittedDto alertSubmittedDto);
} }
...@@ -11,4 +11,11 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -11,4 +11,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface ITemplateService extends IService<Template> { public interface ITemplateService extends IService<Template> {
/**
* 根据模板类型获取模板信息
*
* @param type
* @return
*/
Template getByType(String type);
} }
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
jas.submission_method_code, jas.submission_method_code,
jas.update_time, jas.update_time,
jaso.sequence_nbr, jaso.sequence_nbr,
group_concat(jaso.company_name) companyNames, group_concat(distinct jaso.company_name) companyName,
group_concat(jaso.user_name) userNames group_concat(distinct jaso.user_name) userName
from jc_alert_submitted jas from jc_alert_submitted jas
left join jc_alert_submitted_object jaso on jas.sequence_nbr = jaso.alert_submitted_id left join jc_alert_submitted_object jaso on jas.sequence_nbr = jaso.alert_submitted_id
where 1=1 where 1=1
......
...@@ -99,7 +99,7 @@ public class AlertSubmittedController extends BaseController { ...@@ -99,7 +99,7 @@ public class AlertSubmittedController extends BaseController {
@RequestMapping(value = "/reporting/list", method = RequestMethod.POST) @RequestMapping(value = "/reporting/list", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "根据警情id查询警情报送列表", notes = "根据警情id查询警情报送列表") @ApiOperation(httpMethod = "POST", value = "根据警情id查询警情报送列表", notes = "根据警情id查询警情报送列表")
public ResponseModel listReportingByParam(@RequestBody AlertSubmittedDto queryParam) { public ResponseModel listReportingByParam(@RequestBody AlertSubmittedDto queryParam) {
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.SMS.getCode()); queryParam.setSubmissionMethodCode(SubmissionMethodEnum.PHONE.getCode());
return CommonResponseUtil.success(iAlertSubmittedService.listReportingByParam(queryParam)); return CommonResponseUtil.success(iAlertSubmittedService.listReportingByParam(queryParam));
} }
......
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.jcs.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.jcs.api.service.ITemplateService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jcs.api.entity.Template; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import com.yeejoin.amos.boot.module.jcs.api.entity.Template;
import com.yeejoin.amos.boot.module.jcs.api.service.ITemplateService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays; import java.util.Arrays;
...@@ -39,7 +41,7 @@ public class TemplateController extends BaseController { ...@@ -39,7 +41,7 @@ public class TemplateController extends BaseController {
* 新增模板表 * 新增模板表
* @return * @return
*/ */
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/save", method = RequestMethod.POST) @RequestMapping(value = "/save", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "新增模板表", notes = "新增模板表") @ApiOperation(httpMethod = "POST", value = "新增模板表", notes = "新增模板表")
public boolean saveTemplate(HttpServletRequest request, @RequestBody Template template){ public boolean saveTemplate(HttpServletRequest request, @RequestBody Template template){
...@@ -51,42 +53,47 @@ public class TemplateController extends BaseController { ...@@ -51,42 +53,47 @@ public class TemplateController extends BaseController {
* @param id * @param id
* @return * @return
*/ */
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE) @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
@ApiOperation(httpMethod = "DELETE", value = "根据id删除", notes = "根据id删除") @ApiOperation(httpMethod = "DELETE", value = "根据id删除", notes = "根据id删除")
public boolean deleteById(HttpServletRequest request, @PathVariable Long id){ public boolean deleteById(HttpServletRequest request, @PathVariable Long id){
return iTemplateService.removeById(id); return iTemplateService.removeById(id);
} }
/** /**
* 修改模板表 * 修改模板表
* @return * @return
*/ */
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/updateById", method = RequestMethod.PUT) @RequestMapping(value = "/updateById", method = RequestMethod.PUT)
@ApiOperation(httpMethod = "PUT", value = "修改模板表", notes = "修改模板表") @ApiOperation(httpMethod = "PUT", value = "修改模板表", notes = "修改模板表")
public boolean updateByIdTemplate(HttpServletRequest request, @RequestBody Template template){ public boolean updateByIdTemplate(HttpServletRequest request, @RequestBody Template template){
return iTemplateService.updateById(template); return iTemplateService.updateById(template);
} }
/** /**
* 根据id查询 * 根据id查询
* @param id * @param id
* @return * @return
*/ */
@TycloudOperation(needAuth = true, ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/{id}", method = RequestMethod.GET) @RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据id查询", notes = "根据id查询") @ApiOperation(httpMethod = "GET", value = "根据id查询", notes = "根据id查询")
public Template selectById(HttpServletRequest request, @PathVariable Long id){ public Template selectById(HttpServletRequest request, @PathVariable Long id){
return iTemplateService.getById(id); return iTemplateService.getById(id);
} }
/**
* 根据模板类型查询
* @param type
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/info/{type}", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据模板类型查询", notes = "根据模板类型查询")
public Template getByType(@PathVariable String type){
return iTemplateService.getByType(type);
}
/** /**
* 列表分页查询 * 列表分页查询
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils;
import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto; import com.yeejoin.amos.boot.module.jcs.api.dto.AlertSubmittedDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted; import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmitted;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertSubmittedObject;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertBusinessTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertSchedulingTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.AlertSubmitTypeEnum;
import com.yeejoin.amos.boot.module.jcs.api.enums.SubmissionMethodEnum;
import com.yeejoin.amos.boot.module.jcs.api.mapper.AlertSubmittedMapper; import com.yeejoin.amos.boot.module.jcs.api.mapper.AlertSubmittedMapper;
import com.yeejoin.amos.boot.module.jcs.api.mapper.AlertSubmittedObjectMapper;
import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedObjectService;
import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedService; import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.vo.AlertSubmittedExtVo; import com.yeejoin.amos.boot.module.jcs.api.vo.AlertSubmittedExtVo;
import com.yeejoin.amos.boot.module.jcs.api.vo.SchedulingReportingVo; import com.yeejoin.amos.boot.module.jcs.api.vo.SchedulingReportingVo;
import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Optional;
/** /**
* 警情报送记录 服务实现类 * 警情报送记录 服务实现类
...@@ -21,6 +31,9 @@ import java.util.List; ...@@ -21,6 +31,9 @@ import java.util.List;
@Service @Service
public class AlertSubmittedServiceImpl extends ServiceImpl<AlertSubmittedMapper, AlertSubmitted> implements IAlertSubmittedService { public class AlertSubmittedServiceImpl extends ServiceImpl<AlertSubmittedMapper, AlertSubmitted> implements IAlertSubmittedService {
@Autowired
IAlertSubmittedObjectService iAlertSubmittedObjectService;
@Override @Override
public SchedulingReportingVo listSchedulingByParam(AlertSubmittedDto queryParam) { public SchedulingReportingVo listSchedulingByParam(AlertSubmittedDto queryParam) {
SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo(); SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo();
...@@ -42,13 +55,62 @@ public class AlertSubmittedServiceImpl extends ServiceImpl<AlertSubmittedMapper, ...@@ -42,13 +55,62 @@ public class AlertSubmittedServiceImpl extends ServiceImpl<AlertSubmittedMapper,
} }
@Override @Override
public Object save(AlertSubmittedDto alertSubmittedDto) { public Boolean save(AlertSubmittedDto alertSubmittedDto) {
// 1.保存警情记录主表 // 1.保存警情记录主表
AlertSubmitted alertSubmitted = new AlertSubmitted(); AlertSubmitted alertSubmitted = new AlertSubmitted();
alertSubmitted.setAlertCalledId(alertSubmittedDto.getAlertCalledId()); alertSubmitted.setAlertCalledId(alertSubmittedDto.getAlertCalledId());
alertSubmitted.setBusinessTypeCode(alertSubmittedDto.getBusinessTypeCode()); alertSubmitted.setBusinessTypeCode(alertSubmittedDto.getBusinessTypeCode());
Optional<AlertBusinessTypeEnum> businessTypeEnum = EnumsUtils.getEnumObject(AlertBusinessTypeEnum.class,
e -> e.getCode().equals(alertSubmittedDto.getBusinessTypeCode()));
alertSubmitted.setBusinessType(businessTypeEnum.orElse(AlertBusinessTypeEnum.警情续报).getName());
alertSubmitted.setCallLogId(alertSubmittedDto.getCallLogId());
alertSubmitted.setSubmissionMethodCode(alertSubmittedDto.getSubmissionMethodCode());
Optional<SubmissionMethodEnum> submissionMethodEnum = EnumsUtils.getEnumObject(SubmissionMethodEnum.class,
e -> e.getCode().equals(alertSubmittedDto.getBusinessTypeCode()));
alertSubmitted.setSubmissionMethod(submissionMethodEnum.orElse(SubmissionMethodEnum.SMS).getName());
Optional<AlertSchedulingTypeEnum> alertSchedulingTypeEnum = EnumsUtils.getEnumObject(AlertSchedulingTypeEnum.class,
e -> e.getCode().equals(alertSubmittedDto.getBusinessTypeCode()));
alertSubmitted.setSchedulingTypeCode(alertSubmittedDto.getSchedulingTypeCode());
alertSubmitted.setSchedulingType(alertSchedulingTypeEnum.orElse(AlertSchedulingTypeEnum.融合调度).getName());
alertSubmitted.setSubmissionContent(alertSubmittedDto.getSubmitContent().toJSONString());
this.baseMapper.insert(alertSubmitted);
// 2.保存任务表 // 2.保存任务表
List<AlertSubmittedObject> alertSubmittedObjectList = Lists.newArrayList();
// 报送给单位
if (AlertSubmitTypeEnum.Org.getKey().equals(alertSubmittedDto.getType())) {
alertSubmittedDto.getSubmitCompanyList().forEach(company -> {
AlertSubmittedObject alertSubmittedObject = new AlertSubmittedObject();
alertSubmittedObject.setAlertSubmittedId(alertSubmitted.getSequenceNbr());
alertSubmittedObject.setType(true);
alertSubmittedObject.setCompanyId(company.getCompanyId());
alertSubmittedObject.setCompanyName(company.getCompanyName());
alertSubmittedObjectList.add(alertSubmittedObject);
});
} else {
// 报送给个人
alertSubmittedDto.getSubmitCompanyList().forEach(company -> {
company.getPersonList().forEach(person -> {
AlertSubmittedObject alertSubmittedObject = new AlertSubmittedObject();
alertSubmittedObject.setAlertSubmittedId(alertSubmitted.getSequenceNbr());
alertSubmittedObject.setType(false);
alertSubmittedObject.setCompanyId(company.getCompanyId());
alertSubmittedObject.setCompanyName(company.getCompanyName());
alertSubmittedObject.setUserId(person.getPersonId());
alertSubmittedObject.setUserName(person.getPersonName());
alertSubmittedObject.setUserPhone(person.getPersonPhone());
alertSubmittedObjectList.add(alertSubmittedObject);
});
});
}
iAlertSubmittedObjectService.saveBatch(alertSubmittedObjectList);
// 3.发送任务消息 // 3.发送任务消息
return null; // 调用平台短信发送接口发送消息
return true;
} }
} }
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.module.jcs.api.entity.Template; import com.yeejoin.amos.boot.module.jcs.api.entity.Template;
import com.yeejoin.amos.boot.module.jcs.api.mapper.TemplateMapper; import com.yeejoin.amos.boot.module.jcs.api.mapper.TemplateMapper;
import com.yeejoin.amos.boot.module.jcs.api.service.ITemplateService; import com.yeejoin.amos.boot.module.jcs.api.service.ITemplateService;
...@@ -15,4 +16,8 @@ import org.springframework.stereotype.Service; ...@@ -15,4 +16,8 @@ import org.springframework.stereotype.Service;
@Service @Service
public class TemplateServiceImpl extends ServiceImpl<TemplateMapper, Template> implements ITemplateService { public class TemplateServiceImpl extends ServiceImpl<TemplateMapper, Template> implements ITemplateService {
@Override
public Template getByType(String type) {
return this.baseMapper.selectOne(new QueryWrapper<Template>().eq("type_code", type));
}
} }
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