新增掌门少儿业务
parent
3647317c26
commit
1c22194cac
@ -0,0 +1,21 @@
|
||||
package com.yuyou.openapi.openapi.dao;
|
||||
|
||||
import com.yuyou.openapi.openapi.model.dataobject.ZhangmenKidMessageDO;
|
||||
import com.yuyou.openapi.openapi.model.dataobject.ZhangmenMessageDO;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface ZhangmenKidMessageRepository extends JpaRepository<ZhangmenKidMessageDO, Long> {
|
||||
|
||||
/**
|
||||
* 根据RecId来进行查询
|
||||
*
|
||||
* @param recId 记录Id
|
||||
* @return
|
||||
*/
|
||||
List<ZhangmenKidMessageDO> findByRecId(Long recId);
|
||||
|
||||
}
|
@ -0,0 +1,93 @@
|
||||
package com.yuyou.openapi.openapi.model.convert;
|
||||
|
||||
import cn.hutool.core.codec.Base64;
|
||||
import com.yuyou.openapi.openapi.common.enums.GradeEnum;
|
||||
import com.yuyou.openapi.openapi.common.enums.SubjectEnum;
|
||||
import com.yuyou.openapi.openapi.common.security.SecurityConstants;
|
||||
import com.yuyou.openapi.openapi.common.security.SecurityService;
|
||||
import com.yuyou.openapi.openapi.model.dataobject.ZhangmenKidMessageDO;
|
||||
import com.yuyou.openapi.openapi.model.dataobject.ZhangmenMessageDO;
|
||||
import com.yuyou.openapi.openapi.model.dto.ABZMMessageDTO;
|
||||
import com.yuyou.openapi.openapi.model.dto.ZhangmenKidMessageDTO;
|
||||
import com.yuyou.openapi.openapi.model.vo.ABClientZMKidMessageVO;
|
||||
import com.yuyou.openapi.openapi.model.vo.ABClientZMMessageVO;
|
||||
import com.yuyou.openapi.openapi.utils.DateUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 掌门记录转换类
|
||||
*
|
||||
* @version 1.0
|
||||
* @date 2020/8/10
|
||||
*/
|
||||
@Slf4j
|
||||
public class ZhangmenKidMessageConverter {
|
||||
|
||||
/**
|
||||
* VO层转为DTO层
|
||||
* @param abClientZMKidMessageVO
|
||||
* @return
|
||||
*/
|
||||
public static ZhangmenKidMessageDTO convertZhangmenKidMessageDTOFromVO(ZhangmenKidMessageDTO zhangmenKidMessageDTO, ABClientZMKidMessageVO abClientZMKidMessageVO) {
|
||||
BeanUtils.copyProperties(abClientZMKidMessageVO, zhangmenKidMessageDTO);
|
||||
return zhangmenKidMessageDTO;
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量DTO转DO
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
public static List<ZhangmenKidMessageDO> convertZhangmenKidMessageDOFromDTO(List<ZhangmenKidMessageDTO> list) {
|
||||
if (CollectionUtils.isEmpty(list)) {
|
||||
return null;
|
||||
}
|
||||
List<ZhangmenKidMessageDO> zhangmenMessageDOs = new ArrayList<>();
|
||||
list.forEach(each -> {
|
||||
ZhangmenKidMessageDO zhangmenKidMessageDO = convertZhangmenKidMessageDOFromDTO(each);
|
||||
if (zhangmenKidMessageDO != null) {
|
||||
zhangmenMessageDOs.add(zhangmenKidMessageDO);
|
||||
}
|
||||
});
|
||||
return zhangmenMessageDOs;
|
||||
}
|
||||
|
||||
/**
|
||||
* DTO层转为DO层
|
||||
* @param zhangmenKidMessageDTO
|
||||
* @return
|
||||
*/
|
||||
public static ZhangmenKidMessageDO convertZhangmenKidMessageDOFromDTO(ZhangmenKidMessageDTO zhangmenKidMessageDTO) {
|
||||
if (zhangmenKidMessageDTO == null || zhangmenKidMessageDTO.getTag() == null || zhangmenKidMessageDTO.getData() == null) {
|
||||
return null;
|
||||
}
|
||||
ZhangmenKidMessageDO zhangmenKidMessageDO = new ZhangmenKidMessageDO();
|
||||
BeanUtils.copyProperties(zhangmenKidMessageDTO.getData(), zhangmenKidMessageDO);
|
||||
try {
|
||||
zhangmenKidMessageDTO.getData().setMobile(Base64.encode(zhangmenKidMessageDTO.getData().getMobile()));
|
||||
String encryptedMobile = SecurityService.encrypt(zhangmenKidMessageDTO.getData().getMobile(), SecurityConstants.PHONE);
|
||||
String encryptedName = SecurityService.encrypt(zhangmenKidMessageDTO.getData().getName(), SecurityConstants.SIMPLE);
|
||||
zhangmenKidMessageDO.setPnum(encryptedMobile);
|
||||
zhangmenKidMessageDO.setStuName(encryptedName);
|
||||
} catch (Exception e) {
|
||||
log.error("Encrypt data raise Error, recId = {}, error is :", zhangmenKidMessageDTO.getTag().getTag_key_id(), e);
|
||||
zhangmenKidMessageDO.setPnum(zhangmenKidMessageDTO.getData().getMobile());
|
||||
zhangmenKidMessageDO.setStuName(zhangmenKidMessageDTO.getData().getName());
|
||||
}
|
||||
|
||||
zhangmenKidMessageDO.setAppId(zhangmenKidMessageDTO.getAppId());
|
||||
zhangmenKidMessageDO.setPushTime(DateUtils.date(zhangmenKidMessageDTO.getTimestamp()));
|
||||
|
||||
zhangmenKidMessageDO.setStuGrade(GradeEnum.codeOf(zhangmenKidMessageDTO.getData().getGrade()));
|
||||
zhangmenKidMessageDO.setStuSub(SubjectEnum.codeOf(zhangmenKidMessageDTO.getData().getCourse()));
|
||||
|
||||
zhangmenKidMessageDO.setRecId(zhangmenKidMessageDTO.getTag().getTag_key_id());
|
||||
|
||||
return zhangmenKidMessageDO;
|
||||
}
|
||||
}
|
@ -0,0 +1,80 @@
|
||||
package com.yuyou.openapi.openapi.model.dataobject;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.data.annotation.CreatedDate;
|
||||
import org.springframework.data.annotation.LastModifiedDate;
|
||||
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 掌门少儿成单记录表
|
||||
* @version 1.0
|
||||
* @date 2020/8/10
|
||||
*/
|
||||
@Data
|
||||
@Table(name = "zhangmen_kid_message")
|
||||
@Entity
|
||||
@EntityListeners(AuditingEntityListener.class)
|
||||
public class ZhangmenKidMessageDO {
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@Id
|
||||
@GeneratedValue(strategy= GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@Column(name = "gmt_create")
|
||||
@CreatedDate
|
||||
private Date gmtCreate;
|
||||
|
||||
@Column(name = "gmt_modified")
|
||||
@LastModifiedDate
|
||||
private Date gmtModified;
|
||||
|
||||
/**
|
||||
* 记录推送id
|
||||
*/
|
||||
@Column(name = "rec_id")
|
||||
private Long recId;
|
||||
|
||||
/**
|
||||
* 报课学生名
|
||||
*/
|
||||
@Column(name = "stu_name")
|
||||
private String stuName;
|
||||
|
||||
/**
|
||||
* 报课学生码
|
||||
*/
|
||||
private String pnum;
|
||||
|
||||
/**
|
||||
* 报课学生年级
|
||||
*/
|
||||
@Column(name = "stu_grade")
|
||||
private Integer stuGrade;
|
||||
|
||||
/**
|
||||
* 报课学生学科
|
||||
*/
|
||||
@Column(name = "stu_sub")
|
||||
private Integer stuSub;
|
||||
|
||||
/**
|
||||
* 上游推送用户id
|
||||
*/
|
||||
@Column(name = "app_id")
|
||||
private String appId;
|
||||
|
||||
/**
|
||||
* 上游推送时间
|
||||
*/
|
||||
@Column(name = "push_time")
|
||||
private Date pushTime;
|
||||
|
||||
@Column(name = "submit_status")
|
||||
private Integer submitStatus = 0;
|
||||
}
|
@ -0,0 +1,91 @@
|
||||
package com.yuyou.openapi.openapi.model.dto;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ZhangmenKidMessageDTO {
|
||||
|
||||
/**
|
||||
* 推送用户的ID
|
||||
*/
|
||||
private String appId;
|
||||
|
||||
/**
|
||||
* 请求时间戳
|
||||
*/
|
||||
private Long timestamp;
|
||||
|
||||
/**
|
||||
* 标记集合
|
||||
*/
|
||||
private Tag tag;
|
||||
|
||||
/**
|
||||
* 数据集合
|
||||
*/
|
||||
private Datas data;
|
||||
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public static class Tag {
|
||||
/**
|
||||
* 记录id
|
||||
*/
|
||||
private Long tag_key_id;
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
private String tag_key_name;
|
||||
|
||||
/**
|
||||
* 联系方式
|
||||
*/
|
||||
private String tag_key_mobile;
|
||||
|
||||
/**
|
||||
* 课程年级
|
||||
*/
|
||||
private String tag_key_grade;
|
||||
|
||||
/**
|
||||
* 课程科目
|
||||
*/
|
||||
private String tag_key_course;
|
||||
|
||||
}
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public static class Datas {
|
||||
|
||||
/**
|
||||
* 学生姓名
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String mobile;
|
||||
|
||||
/**
|
||||
* 学生报学年级
|
||||
*/
|
||||
private String grade;
|
||||
|
||||
/**
|
||||
* 学生报课科目
|
||||
*/
|
||||
private String course;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package com.yuyou.openapi.openapi.model.vo;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* Copyright (C), 2012 - 2018, qyx
|
||||
* FileName: ABClientMessageVO
|
||||
* Author: x
|
||||
* Date: 2020/8/4 6:59 PM
|
||||
* Description: ABClient接口对应接口表现层映射
|
||||
* History:
|
||||
* <author> <time> <version> <desc>
|
||||
* x 2020/8/4 v1.0 创建此文件
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class ABClientZMKidMessageVO extends ABClientBaseVO implements Serializable {
|
||||
|
||||
/**
|
||||
* 需要接收到的加密数据
|
||||
*/
|
||||
private String calllog;
|
||||
|
||||
}
|
Loading…
Reference in New Issue