支付模板代码提交
parent
570e19d0ce
commit
cbc1efa1c5
@ -0,0 +1,42 @@
|
||||
package com.baiye.modules.system.domain;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.hibernate.annotations.CreationTimestamp;
|
||||
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author YQY
|
||||
* @date : 2022/06/06
|
||||
*/
|
||||
@Data
|
||||
@Entity
|
||||
@Table(name = "tb_pay_template_log")
|
||||
@EntityListeners(AuditingEntityListener.class)
|
||||
public class PayTemplateLog implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8623354712013889005L;
|
||||
|
||||
@Id
|
||||
@Column(name = "template_log_id")
|
||||
@ApiModelProperty(value = "id")
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@Column(name = "template_id")
|
||||
@ApiModelProperty(value = "模板ID")
|
||||
private Long templateId;
|
||||
|
||||
@Column(name = "user_id")
|
||||
@ApiModelProperty(value = "购买人用户ID")
|
||||
private Long userId;
|
||||
|
||||
@CreationTimestamp
|
||||
@Column(name = "create_time")
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private Date createTime;
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.baiye.modules.system.domain;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author YQY
|
||||
* @date : 2022/06/06
|
||||
*/
|
||||
@Data
|
||||
@Entity
|
||||
@Table(name = "tb_pay_template_user")
|
||||
@EntityListeners(AuditingEntityListener.class)
|
||||
public class PayTemplateUser implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8623354712013889005L;
|
||||
|
||||
@Id
|
||||
@Column(name = "id")
|
||||
@ApiModelProperty(value = "id")
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@Column(name = "pay_template_id")
|
||||
@ApiModelProperty(value = "模板ID")
|
||||
private Long payTemplateId;
|
||||
|
||||
@Column(name = "user_id")
|
||||
@ApiModelProperty(value = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
@Column(name = "begin_time")
|
||||
@ApiModelProperty(value = "开始时间")
|
||||
private Date beginTime;
|
||||
|
||||
@Column(name = "end_time")
|
||||
@ApiModelProperty(value = "结束时间")
|
||||
private Date endTime;
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
package com.baiye.modules.system.repository;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplateLog;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Repository
|
||||
public interface PayTemplateLogRepository extends JpaRepository<PayTemplateLog, Long>, JpaSpecificationExecutor<PayTemplateLog> {
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.baiye.modules.system.repository;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplate;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
@Repository
|
||||
public interface PayTemplateRepository extends JpaRepository<PayTemplate, Long>, JpaSpecificationExecutor<PayTemplate> {
|
||||
|
||||
Set<PayTemplate> findByStatus(int zeroNumber);
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.baiye.modules.system.repository;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplateUser;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface PayTemplateUserRepository extends JpaRepository<PayTemplateUser, Long>, JpaSpecificationExecutor<PayTemplateUser> {
|
||||
|
||||
List<PayTemplateUser> findByUserId(Long userId);
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
package com.baiye.modules.system.rest;
|
||||
|
||||
import com.baiye.http.CommonResponse;
|
||||
import com.baiye.modules.system.domain.PayTemplate;
|
||||
import com.baiye.modules.system.service.PayTemplateService;
|
||||
import com.baiye.valid.AddGroup;
|
||||
import com.baiye.valid.UpdateGroup;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@Api(tags = "支付模板管理")
|
||||
@RestController
|
||||
@RequestMapping("/api/payTemplate")
|
||||
@RequiredArgsConstructor
|
||||
public class PayTemplateController {
|
||||
|
||||
private final PayTemplateService payTemplateService;
|
||||
|
||||
@ApiOperation("新增模板")
|
||||
@PostMapping("/add")
|
||||
public CommonResponse<Object> add(@Validated({AddGroup.class}) @RequestBody PayTemplate payTemplate){
|
||||
payTemplateService.addPayTemplate(payTemplate);
|
||||
return CommonResponse.createBySuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("更新模板")
|
||||
@PostMapping("/update")
|
||||
public CommonResponse<Object> update(@Validated({UpdateGroup.class}) @RequestBody PayTemplate payTemplate){
|
||||
payTemplateService.updatePayTemplate(payTemplate);
|
||||
return CommonResponse.createBySuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("查询模板列表")
|
||||
@GetMapping("/list")
|
||||
public ResponseEntity<Object> query(){
|
||||
return new ResponseEntity<>(payTemplateService.query(), HttpStatus.OK);
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package com.baiye.modules.system.service;
|
||||
|
||||
public interface PayTemplateLogService {
|
||||
|
||||
/**
|
||||
* 添加模板购买记录
|
||||
* @param templateId
|
||||
* @param userId
|
||||
*/
|
||||
void addPayTemplateLog(Long templateId, Long userId);
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package com.baiye.modules.system.service;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplate;
|
||||
|
||||
public interface PayTemplateService {
|
||||
|
||||
/**
|
||||
* 新增模板
|
||||
* @param payTemplate
|
||||
*/
|
||||
void addPayTemplate(PayTemplate payTemplate);
|
||||
|
||||
/**
|
||||
* 更新模板
|
||||
* @param payTemplate
|
||||
*/
|
||||
void updatePayTemplate(PayTemplate payTemplate);
|
||||
|
||||
/**
|
||||
* 查询套餐模板列表
|
||||
* @return
|
||||
*/
|
||||
Object query();
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
package com.baiye.modules.system.service;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplateUser;
|
||||
|
||||
public interface PayTemplateUserService {
|
||||
|
||||
/**
|
||||
* 添加
|
||||
* @param payTemplateUser
|
||||
*/
|
||||
void add(PayTemplateUser payTemplateUser);
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package com.baiye.modules.system.service.impl;
|
||||
|
||||
import com.baiye.modules.system.domain.PayTemplateLog;
|
||||
import com.baiye.modules.system.repository.PayTemplateLogRepository;
|
||||
import com.baiye.modules.system.service.PayTemplateLogService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class PayTemplateLogServiceImpl implements PayTemplateLogService {
|
||||
|
||||
private final PayTemplateLogRepository payTemplateLogRepository;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void addPayTemplateLog(Long templateId, Long userId) {
|
||||
PayTemplateLog payTemplateLog = new PayTemplateLog();
|
||||
if (templateId != null && userId != null){
|
||||
payTemplateLog.setTemplateId(templateId);
|
||||
payTemplateLog.setUserId(userId);
|
||||
payTemplateLogRepository.save(payTemplateLog);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
package com.baiye.modules.system.service.impl;
|
||||
|
||||
import com.baiye.constant.DefaultNumberConstants;
|
||||
import com.baiye.modules.system.domain.PayTemplate;
|
||||
import com.baiye.modules.system.repository.PayTemplateRepository;
|
||||
import com.baiye.modules.system.service.PayTemplateService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class PayTemplateServiceImpl implements PayTemplateService {
|
||||
|
||||
private final PayTemplateRepository payTemplateRepository;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void addPayTemplate(PayTemplate payTemplate) {
|
||||
payTemplate.setStatus(DefaultNumberConstants.ZERO_NUMBER);
|
||||
String format = new DecimalFormat("#.00").format(payTemplate.getAmount());
|
||||
Double amount = Double.parseDouble(format);
|
||||
payTemplate.setAmount(amount);
|
||||
payTemplateRepository.save(payTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void updatePayTemplate(PayTemplate payTemplate) {
|
||||
Integer status = payTemplate.getStatus();
|
||||
PayTemplate updateTemplate = payTemplateRepository.findById(payTemplate.getId()).orElseGet(PayTemplate::new);
|
||||
if (status != null){
|
||||
updateTemplate.setStatus(status);
|
||||
}
|
||||
payTemplateRepository.save(updateTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object query() {
|
||||
return payTemplateRepository.findByStatus(DefaultNumberConstants.ZERO_NUMBER);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue