|
|
package com.xmomen.module.pick.controller;
|
|
|
|
|
|
import javax.validation.Valid;
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.validation.BindingResult;
|
|
|
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 com.xmomen.framework.mybatis.dao.MybatisDao;
|
|
|
import com.xmomen.framework.web.exceptions.ArgumentValidException;
|
|
|
import com.xmomen.module.logger.Log;
|
|
|
import com.xmomen.module.pick.model.CreateMember;
|
|
|
import com.xmomen.module.pick.model.PickVo;
|
|
|
import com.xmomen.module.pick.service.PickService;
|
|
|
|
|
|
/**
|
|
|
* PickController 类是一个控制器类,用于处理与采摘相关的业务请求。
|
|
|
* 它使用了 Spring 的注解 @RestController,表明这是一个 RESTful 风格的控制器,
|
|
|
* 用于处理 HTTP 请求并返回 JSON 格式的响应(虽然在当前代码中部分方法没有返回值,但通常是这样的用途)。
|
|
|
*/
|
|
|
@RestController
|
|
|
public class PickController {
|
|
|
|
|
|
// 自动注入 PickService 实例,用于调用与采摘相关的业务逻辑方法
|
|
|
@Autowired
|
|
|
PickService pickService;
|
|
|
|
|
|
// 自动注入 MybatisDao 实例,用于进行数据库操作(如查询、插入、更新等)
|
|
|
@Autowired
|
|
|
MybatisDao mybatisDao;
|
|
|
|
|
|
/**
|
|
|
* 采摘结算的处理方法,处理 PUT 请求到 "/pick/settleAccounts" 路径的请求。
|
|
|
* 该方法用于执行采摘结算的业务逻辑。
|
|
|
*
|
|
|
* @param pickVo 包含采摘结算相关信息的对象,通过 @RequestBody 注解从请求体中获取,
|
|
|
* 并使用 @Valid 注解进行数据验证。
|
|
|
* @param bindingResult 用于存储数据验证的结果,如果数据验证失败,可以通过它获取错误信息。
|
|
|
* @return 该方法没有返回值,它主要是调用 PickService 的方法来处理业务逻辑。
|
|
|
* @throws ArgumentValidException 如果数据验证失败(即 bindingResult 中有错误),则抛出该异常。
|
|
|
*/
|
|
|
@RequestMapping(value = "/pick/settleAccounts", method = RequestMethod.PUT)
|
|
|
@Log(actionName = "采摘结算")
|
|
|
public void settleAccounts(@RequestBody @Valid PickVo pickVo, BindingResult bindingResult) throws ArgumentValidException {
|
|
|
// 检查数据验证结果,如果有错误
|
|
|
if (bindingResult != null && bindingResult.hasErrors()) {
|
|
|
// 抛出参数验证异常,将错误信息传递给上层处理
|
|
|
throw new ArgumentValidException(bindingResult);
|
|
|
}
|
|
|
// 调用 PickService 的 pick 方法,执行采摘结算的业务逻辑
|
|
|
pickService.pick(pickVo);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 办理新卡的处理方法,处理 PUT 请求到 "/pick/pickCard" 路径的请求。
|
|
|
* 该方法用于执行办理新卡的业务逻辑。
|
|
|
*
|
|
|
* @param createMember 包含办理新卡相关信息的对象,通过 @RequestBody 注解从请求体中获取,
|
|
|
* 并使用 @Valid 注解进行数据验证。
|
|
|
* @param bindingResult 用于存储数据验证的结果,如果数据验证失败,可以通过它获取错误信息。
|
|
|
* @return 该方法没有返回值,它主要是调用 PickService 的方法来处理业务逻辑。
|
|
|
* @throws ArgumentValidException 如果数据验证失败(即 bindingResult 中有错误),则抛出该异常。
|
|
|
*/
|
|
|
@RequestMapping(value = "/pick/pickCard", method = RequestMethod.PUT)
|
|
|
@Log(actionName = "办新卡")
|
|
|
public void pickCard(@RequestBody @Valid CreateMember createMember, BindingResult bindingResult) throws ArgumentValidException {
|
|
|
// 检查数据验证结果,如果有错误
|
|
|
if (bindingResult != null && bindingResult.hasErrors()) {
|
|
|
// 抛出参数验证异常,将错误信息传递给上层处理
|
|
|
throw new ArgumentValidException(bindingResult);
|
|
|
}
|
|
|
// 调用 PickService 的 pickCard 方法,执行办理新卡的业务逻辑
|
|
|
pickService.pickCard(createMember);
|
|
|
}
|
|
|
} |