Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -11,7 +11,7 @@ public class Result<T> {
|
||||
|
||||
public static <T> Result<T> success(T data) {
|
||||
Result<T> result = new Result<>();
|
||||
result.setCode(0);
|
||||
result.setCode(200);
|
||||
result.setMessage("success");
|
||||
result.setData(data);
|
||||
return result;
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.example.mini_program.controller;
|
||||
import com.example.mini_program.common.Result;
|
||||
import com.example.mini_program.entity.VisitApplication;
|
||||
import com.example.mini_program.service.AppointmentService;
|
||||
import com.example.mini_program.vo.ReceptionPersonVo;
|
||||
import com.example.mini_program.vo.VisitApplicationVo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -15,6 +17,7 @@ public class AppointmentController {
|
||||
|
||||
private final AppointmentService appointmentService;
|
||||
|
||||
|
||||
/**
|
||||
* 根据openid获取最新的一条预约记录
|
||||
*/
|
||||
@@ -87,4 +90,31 @@ public class AppointmentController {
|
||||
boolean success = appointmentService.approve(id, status);
|
||||
return success ? Result.success(true) : Result.error("审批失败,记录不存在或状态不允许");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 根据id获取审批详情
|
||||
*/
|
||||
@PutMapping("/detail")
|
||||
public Result<VisitApplicationVo> detail(@RequestParam String id, @RequestParam String openid) throws Exception {
|
||||
if (id == null || id.trim().isEmpty()) {
|
||||
return Result.error("id不能为空");
|
||||
}
|
||||
if (openid == null || openid.trim().isEmpty()) {
|
||||
return Result.error("openid不能为空");
|
||||
}
|
||||
VisitApplicationVo vo = appointmentService.detail(id, openid);
|
||||
return Result.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 受访人下拉框值
|
||||
*/
|
||||
@PostMapping("/person/selector")
|
||||
public Result<List<ReceptionPersonVo>> personSelector() {
|
||||
System.out.println("----------------------------------");
|
||||
// 异步处理,立即返回
|
||||
List<ReceptionPersonVo> list = appointmentService.personSelector();
|
||||
return Result.success(list);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.example.mini_program.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ReceptionPersonPO {
|
||||
|
||||
private Long id;
|
||||
private String personId;
|
||||
private String personName;
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.example.mini_program.mapper;
|
||||
|
||||
import com.example.mini_program.entity.ReceptionPersonPO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface ReceptionPersonMapper {
|
||||
List<ReceptionPersonPO> selectReceptionPerson();
|
||||
}
|
||||
@@ -1,12 +1,19 @@
|
||||
package com.example.mini_program.service;
|
||||
|
||||
import com.example.mini_program.entity.ReceptionPersonPO;
|
||||
import com.example.mini_program.entity.VisitApplication;
|
||||
import com.example.mini_program.mapper.ReceptionPersonMapper;
|
||||
import com.example.mini_program.mapper.VisitApplicationMapper;
|
||||
import com.example.mini_program.vo.ReceptionPersonVo;
|
||||
import com.example.mini_program.vo.VisitApplicationVo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@@ -18,9 +25,13 @@ import java.util.UUID;
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class AppointmentService {
|
||||
|
||||
@Autowired
|
||||
private final VisitApplicationMapper visitApplicationMapper;
|
||||
@Autowired
|
||||
private final WxApprovalService wxApprovalService;
|
||||
@Autowired
|
||||
private ReceptionPersonMapper receptionPersonMapper;
|
||||
@Autowired
|
||||
private final WxSubscribeMessageService wxSubscribeMessageService;
|
||||
|
||||
@Value("${wx.corp.creator-userid:}")
|
||||
@@ -103,7 +114,6 @@ public class AppointmentService {
|
||||
log.warn("预约状态不允许取消, id: {}, status: {}", id, existing.getStatus());
|
||||
return false;
|
||||
}
|
||||
|
||||
int rows = visitApplicationMapper.updateStatusToCancelled(id, openid);
|
||||
if (rows > 0) {
|
||||
log.info("取消预约成功, id: {}", id);
|
||||
@@ -113,6 +123,20 @@ public class AppointmentService {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* 预约详情
|
||||
*/
|
||||
public VisitApplicationVo detail(String id, String openid) throws Exception {
|
||||
log.info("预约详情, id: {}, openid: {}", id, openid);
|
||||
VisitApplication existing = visitApplicationMapper.selectByIdAndOpenid(id, openid);
|
||||
if (existing == null) {
|
||||
throw new Exception("未查询到该用户的访客预约记录");
|
||||
}
|
||||
VisitApplicationVo visitApplicationVo = new VisitApplicationVo();
|
||||
BeanUtils.copyProperties(visitApplicationVo, existing);
|
||||
return visitApplicationVo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批预约(通过/拒绝)
|
||||
*/
|
||||
@@ -140,4 +164,18 @@ public class AppointmentService {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取受访者下拉框的值
|
||||
*/
|
||||
public List<ReceptionPersonVo> personSelector() {
|
||||
List<ReceptionPersonPO> receiptPersonList = receptionPersonMapper.selectReceptionPerson();
|
||||
List<ReceptionPersonVo> voList = new ArrayList<>();
|
||||
for(ReceptionPersonPO po : receiptPersonList){
|
||||
ReceptionPersonVo vo = new ReceptionPersonVo();
|
||||
BeanUtils.copyProperties(vo, po);
|
||||
voList.add(vo);
|
||||
}
|
||||
return voList;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.example.mini_program.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ReceptionPersonVo {
|
||||
|
||||
private String personId;
|
||||
private String personName;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.example.mini_program.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonAlias;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class VisitApplicationVo {
|
||||
|
||||
private String name;
|
||||
private String phone;
|
||||
private String company;
|
||||
private String reason;
|
||||
|
||||
@JsonAlias("date")
|
||||
private String visitDate;
|
||||
@JsonAlias("time")
|
||||
private String visitTime;
|
||||
private String hostName;
|
||||
private String area;
|
||||
private String statusText;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.example.mini_program.mapper.ReceptionPersonMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.example.mini_program.entity.ReceptionPersonPO">
|
||||
<id column="id" property="id"/>
|
||||
<result column="person_name" property="personName"/>
|
||||
<result column="person_id" property="personId"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectReceptionPerson" resultMap="BaseResultMap">
|
||||
SELECT id,person_id,person_name
|
||||
FROM reception_person
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user