cbx
chenbingxuan 2024-01-15 22:32:04 +08:00
parent bf29dcfee2
commit e00d68ef89
15 changed files with 290 additions and 10 deletions

View File

@ -121,6 +121,13 @@
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
</dependencies>

View File

@ -48,6 +48,13 @@ public class BaseController
PageUtils.startPage();
}
protected void startPage(Integer page,Integer count)
{
PageUtils.startPage(page,count);
}
/**
* 线
*/

View File

@ -52,6 +52,7 @@ public class AuthFilter implements GlobalFilter, Ordered
{
return chain.filter(exchange);
}
String token = getToken(request);
if (StringUtils.isEmpty(token))
@ -126,6 +127,7 @@ public class AuthFilter implements GlobalFilter, Ordered
token = request.getQueryParams().getFirst(TokenConstants.SESSIONID);
}
if(StringUtils.isNotEmpty(token)){
//TODO 解决报错问题
request.getHeaders().set(TokenConstants.SESSIONID,token);
}
// 如果前端设置了令牌前缀,则裁剪掉前缀

View File

@ -1,13 +1,16 @@
package doctor.controller;
import doctor.common.core.domain.HealthR;
import doctor.common.core.web.controller.BaseController;
import doctor.common.security.utils.SecurityUtils;
import doctor.domain.dto.ApplyJoinDto;
import doctor.domain.dto.CheckCodeDto;
import doctor.domain.entity.Banners;
import doctor.domain.entity.DoctorJobTitleEntity;
import doctor.domain.vo.DoctorVo;
import doctor.domain.vo.FindImagePicVo;
import doctor.domain.vo.*;
import doctor.service.BannersService;
import doctor.service.HealthJobTitleService;
import doctor.system.api.model.LoginUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -16,12 +19,47 @@ import java.util.List;
@RestController
@RequestMapping("/v1")
public class HealthJobTitleController {
public class HealthJobTitleController extends BaseController {
@Autowired
private HealthJobTitleService healthJobTitleService;
@Autowired
private BannersService bannersService;
// @GetMapping("/findHistoryInquiryRecord")
// public HealthR<List<DoctorHistoryInquiryVo>> findHistoryInquiryRecord(@RequestHeader Integer doctorId,
// @RequestHeader String sessionId,
// @RequestParam Integer page,
// @RequestParam Integer size) {
// HealthR<List<DoctorHistoryInquiryVo>> healthR= healthJobTitleService.findHistoryInquiryRecord();
// return null;
// }
@GetMapping("/findDoctorWallet")
public HealthR<WalletVo> findDoctorWallet(@RequestHeader Integer doctorId,
@RequestHeader String sessionId) {
WalletVo healthR= healthJobTitleService.findDoctorWallet(doctorId);
return HealthR.ok(healthR);
}
@PostMapping("/drawCash")
public HealthR drawCash(@RequestHeader Integer doctorId,
@RequestHeader String sessionId,
@RequestParam Integer money) {
HealthR healthR= healthJobTitleService.drawCash(doctorId,money);
return healthR;
}
@GetMapping("/findDoctorIncomeRecordList")
public HealthR<List<DoctorIncomeRecordVo>> findDoctorIncomeRecordList(@RequestHeader Integer doctorId,
@RequestHeader String sessionId,
@RequestParam Integer page,
@RequestParam Integer count) {
List<DoctorIncomeRecordVo> doctorIncomeRecordEntities=healthJobTitleService.findDoctorIncomeRecordList(doctorId,page,count);
return HealthR.ok(doctorIncomeRecordEntities);
}
@GetMapping("/bannersShow")
public HealthR<List<Banners>> bannersShow(){
List<Banners> banners = bannersService.bannersShow();
@ -30,11 +68,12 @@ public class HealthJobTitleController {
@GetMapping("/findJobTitleList")
public HealthR<List<DoctorJobTitleEntity>> findJobTitleList() {
LoginUser loginUser = SecurityUtils.getLoginUser();
List<DoctorJobTitleEntity> doctorJobTitleEntities=healthJobTitleService.findJobTitleList();
return HealthR.ok(doctorJobTitleEntities);
}
@PostMapping("/sendEmailCode")
@RequestMapping("/sendEmailCode")
public HealthR sendEmailCode(@RequestParam("email") String email) {
HealthR healthR= healthJobTitleService.sendEmailCode(email);
return HealthR.ok(healthR);
@ -46,6 +85,14 @@ public class HealthJobTitleController {
return HealthR.ok(healthR);
}
@PostMapping("/checkCode")
public HealthR checkCode(@RequestBody CheckCodeDto checkCodeDto) {
String email = checkCodeDto.getEmail();
String code = checkCodeDto.getCode();
HealthR healthR = healthJobTitleService.checkCode(email, code);
return healthR;
}
@GetMapping("/findDoctorById")
public HealthR<DoctorVo> findDoctorById(@RequestHeader Integer doctorId,
@RequestHeader String sessionId) {

View File

@ -0,0 +1,9 @@
package doctor.domain.dto;
import lombok.Data;
@Data
public class CheckCodeDto {
private String email;
private String code;
}

View File

@ -0,0 +1,86 @@
package doctor.domain.entity;
import javax.persistence.*;
import java.util.Date;
@Entity
@Table(name = "doctor_income_record")
public class DoctorIncomeRecordEntity {
@Id
@Column(name = "id")
private Integer id;
@Column(name = "doctor_id")
private Integer doctorId;
@Column(name = "money")
private Integer money;
@Column(name = "direction")
private Integer direction;
@Column(name = "income_type")
private Integer incomeType;
@Column(name = "record_time")
private Date recordTime;
@Column(name = "create_time")
private Date createTime;
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getDoctorId() {
return this.doctorId;
}
public void setDoctorId(Integer doctorId) {
this.doctorId = doctorId;
}
public Integer getMoney() {
return this.money;
}
public void setMoney(Integer money) {
this.money = money;
}
public Integer getDirection() {
return this.direction;
}
public void setDirection(Integer direction) {
this.direction = direction;
}
public Integer getIncomeType() {
return this.incomeType;
}
public void setIncomeType(Integer incomeType) {
this.incomeType = incomeType;
}
public Date getRecordTime() {
return this.recordTime;
}
public void setRecordTime(Date recordTime) {
this.recordTime = recordTime;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
}

View File

@ -0,0 +1,21 @@
package doctor.domain.entity;
import lombok.Data;
import java.util.Date;
@Data
public class DoctorWalletEntity {
private Integer id;
private Integer doctorId;
private Integer balance;
private Integer version;
private Date updateTime;
private Date createTime;
}

View File

@ -0,0 +1,4 @@
package doctor.domain.vo;
public class DoctorHistoryInquiryVo {
}

View File

@ -0,0 +1,13 @@
package doctor.domain.vo;
import lombok.Data;
import java.util.Date;
@Data
public class DoctorIncomeRecordVo {
private Integer money;
private Integer direction;
private Integer incomeType;
private Date recordTime;
}

View File

@ -0,0 +1,14 @@
package doctor.domain.vo;
import io.swagger.models.auth.In;
import lombok.Data;
@Data
public class WalletVo {
private Integer id;
private Integer doctorId;
private Integer balance;
private Integer version;
private Integer whetherBindIdCard;
private Integer whetherBindBankCard;
}

View File

@ -1,6 +1,8 @@
package doctor.mapper;
import doctor.domain.entity.DoctorIncomeRecordEntity;
import doctor.domain.entity.DoctorJobTitleEntity;
import doctor.domain.entity.DoctorWalletEntity;
import doctor.system.api.domain.Department;
import doctor.system.api.domain.Doctor;
import org.apache.ibatis.annotations.Mapper;
@ -23,4 +25,8 @@ public interface HealthJobTitleMapper {
List<String> findDoctorImgPic();
void updDoctorImgPicBuyId(@Param("doctorId") Integer doctorId, @Param("s") String s);
DoctorWalletEntity findDoctorWalletById(Integer doctorId);
List<DoctorIncomeRecordEntity> findDoctorIncomeRecordList(Integer doctorId);
}

View File

@ -5,7 +5,8 @@ import doctor.domain.dto.ApplyJoinDto;
import doctor.domain.entity.DoctorJobTitleEntity;
import doctor.domain.vo.DoctorVo;
import doctor.domain.vo.FindImagePicVo;
import io.swagger.models.auth.In;
import doctor.domain.vo.WalletVo;
import doctor.domain.vo.DoctorIncomeRecordVo;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@ -22,4 +23,12 @@ public interface HealthJobTitleService {
List<FindImagePicVo> findSystemImagePic();
HealthR uploadImagePic(MultipartFile imagePic, Integer doctorId, String sessionId);
HealthR checkCode(String email, String code);
WalletVo findDoctorWallet(Integer doctorId);
List<DoctorIncomeRecordVo> findDoctorIncomeRecordList(Integer doctorId,Integer page, Integer count);
HealthR drawCash(Integer doctorId, Integer money);
}

View File

@ -3,9 +3,13 @@ package doctor.service.impl;
import doctor.common.core.domain.HealthR;
import doctor.common.security.service.TokenService;
import doctor.domain.dto.ApplyJoinDto;
import doctor.domain.entity.DoctorIncomeRecordEntity;
import doctor.domain.entity.DoctorJobTitleEntity;
import doctor.domain.entity.DoctorWalletEntity;
import doctor.domain.vo.DoctorVo;
import doctor.domain.vo.FindImagePicVo;
import doctor.domain.vo.WalletVo;
import doctor.domain.vo.DoctorIncomeRecordVo;
import doctor.mapper.HealthJobTitleMapper;
import doctor.service.HealthJobTitleService;
import doctor.system.api.domain.Department;
@ -15,7 +19,6 @@ import doctor.util.OssUtil;
import doctor.util.RSAUtils;
import doctor.util.RsaKey;
import doctor.util.SendEmail;
import org.bouncycastle.jcajce.provider.asymmetric.rsa.RSAUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
@ -130,4 +133,50 @@ public class HealthJobTitleServiceImpl implements HealthJobTitleService {
tokenService.createToken(loginUser);
return HealthR.ok(s);
}
@Override
public HealthR checkCode(String email, String code) {
if (email==null||email.equals("")){
return HealthR.fail();
}
if (code==null||code.equals("")){
return HealthR.fail();
}
if (!redisTemplate.hasKey(email)){
return HealthR.fail();
}
Integer integer = redisTemplate.opsForValue().get(email);
if (!String.valueOf(integer).equals(code)){
return HealthR.fail();
}
return HealthR.ok();
}
@Override
public WalletVo findDoctorWallet(Integer doctorId) {
WalletVo walletVo=new WalletVo();
DoctorWalletEntity doctorWalletEntity = healthJobTitleMapper.findDoctorWalletById(doctorId);
BeanUtils.copyProperties(doctorWalletEntity,walletVo);
walletVo.setWhetherBindIdCard(1);
walletVo.setWhetherBindBankCard(1);
return walletVo;
}
@Override
public List<DoctorIncomeRecordVo> findDoctorIncomeRecordList(Integer doctorId, Integer page, Integer count) {
List<DoctorIncomeRecordEntity> doctorIncomeRecordList = healthJobTitleMapper.findDoctorIncomeRecordList(doctorId);
ArrayList<DoctorIncomeRecordVo> doctorIncomeRecordVos = new ArrayList<>();
for (DoctorIncomeRecordEntity doctorIncomeRecordEntity : doctorIncomeRecordList) {
DoctorIncomeRecordVo doctorIncomeRecordVo = new DoctorIncomeRecordVo();
BeanUtils.copyProperties(doctorIncomeRecordEntity,doctorIncomeRecordVo);
doctorIncomeRecordVos.add(doctorIncomeRecordVo);
}
return doctorIncomeRecordVos;
}
@Override
public HealthR drawCash(Integer doctorId, Integer money) {
return null;
}
}

View File

@ -28,4 +28,10 @@
<select id="findDoctorImgPic" resultType="java.lang.String">
select image_pic from doctor
</select>
<select id="findDoctorWalletById" resultType="doctor.domain.entity.DoctorWalletEntity">
select * from doctor_wallet where doctor_id=#{doctorId}
</select>
<select id="findDoctorIncomeRecordList" resultType="doctor.domain.entity.DoctorIncomeRecordEntity">
select * from doctor_income_record where doctor_id=#{doctorId}
</select>
</mapper>

View File

@ -51,7 +51,7 @@ public class SysPermissionServiceImpl implements ISysPermissionService
/**
*
*
* @param userId Id
* @param user Id
* @return
*/
@Override