package com.ruoyi.api.third.controller;
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.RandomUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.cwgl.domain.KeyCollectionInfo;
|
import com.ruoyi.cwgl.domain.RequestLog;
|
import com.ruoyi.cwgl.domain.dto.ReturnReportDto;
|
import com.ruoyi.cwgl.domain.dto.TakeReviewDto;
|
import com.ruoyi.cwgl.service.IKeyCollectionInfoService;
|
import com.ruoyi.cwgl.service.IRequestLogService;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import java.util.Random;
|
import java.util.concurrent.ThreadLocalRandom;
|
|
|
/**
|
* 储物柜接口
|
* @author wjw
|
*/
|
@RestController
|
@RequestMapping("/api/third/locker")
|
public class LockerApiController {
|
|
private static Logger logger = LoggerFactory.getLogger(LockerApiController.class);
|
|
@Autowired
|
private IKeyCollectionInfoService keyCollectionInfoService;
|
@Autowired
|
private IRequestLogService logService;
|
|
/**
|
* 上报取出审核
|
*/
|
@GetMapping("test")
|
public AjaxResult test(){
|
return AjaxResult.success();
|
}
|
|
@PostMapping("/takeReview")
|
public AjaxResult takeReview(@Valid @RequestBody TakeReviewDto takeReviewDto){
|
|
logger.info("请求上报参数{}",takeReviewDto);
|
if ("test".equals(takeReviewDto.getDriverCode())){
|
Random random = new Random();
|
|
// 生成 1-30 的随机整数
|
int randomNumber = random.nextInt(30) + 1;
|
AjaxResult success = new AjaxResult(0, "成功",1);
|
success.put("boxNumber",randomNumber);
|
logger.info("成功返回{}",success);
|
return success;
|
}
|
|
KeyCollectionInfo keyCollectionInfo = keyCollectionInfoService.selectCwData(takeReviewDto);
|
//添加请求日志
|
RequestLog requestLog = new RequestLog();
|
requestLog.setDriverCode(takeReviewDto.getDriverCode());
|
requestLog.setDriverName(takeReviewDto.getDriverName());
|
requestLog.setReqTime(takeReviewDto.getHandleTime());
|
if (keyCollectionInfo!=null){
|
String boxNum = keyCollectionInfo.getBoxNum();
|
requestLog.setBoxNum(boxNum);
|
|
}
|
requestLog.setType(0);
|
logService.insertRequestLog(requestLog);
|
|
AjaxResult ajaxResult = keyCollectionInfoService.takeReview(keyCollectionInfo);
|
if (!ajaxResult.get("code").equals(0)){
|
ajaxResult = keyCollectionInfoService.selectSmartLockerApplication(takeReviewDto);
|
|
}
|
return ajaxResult;
|
|
|
}
|
|
/**
|
* 归还上报
|
*/
|
|
@PostMapping("/returnReport")
|
public AjaxResult returnReport(@Valid @RequestBody ReturnReportDto returnReportDto){
|
logger.info("归还参数{}",returnReportDto);
|
|
//添加请求日志
|
RequestLog requestLog = new RequestLog();
|
requestLog.setDriverCode(returnReportDto.getDriverCode());
|
requestLog.setBoxNum(returnReportDto.getBoxNum());
|
requestLog.setReqTime(returnReportDto.getSaveTime());
|
requestLog.setType(1);
|
logService.insertRequestLog(requestLog);
|
|
return new AjaxResult(0, "",0);
|
|
|
}
|
|
|
}
|