You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
udi-wms-java/src/main/java/com/glxp/api/controller/inout/IoCodeController.java

114 lines
3.7 KiB
Java

package com.glxp.api.controller.inout;
import cn.hutool.core.thread.ThreadUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.inout.IoCodeEntity;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.inout.FilterCodeRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.IoCodeResponse;
import com.glxp.api.service.inout.impl.IoCodeService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
* UDI-
* author
* data: 2023/11/18
*/
/**
*
*/
@RestController
public class IoCodeController extends BaseController {
@Resource
private IoCodeService ioCodeService;
/**
*
*
* @param filterCodeRequest
* @return
*/
@GetMapping("/udiwms/inout/code/filterList")
public BaseResponse filterList(FilterCodeRequest filterCodeRequest) {
List<IoCodeResponse> list = ioCodeService.filterList(filterCodeRequest);
PageInfo<IoCodeResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
/**
*
*
* @return
*/
@GetMapping("/udiwms/inout/code/findByOrderId")
public BaseResponse findAllByOrderId(FilterCodeRequest filterCodeRequest) {
List<IoCodeResponse> list = ioCodeService.filterList(filterCodeRequest);
PageInfo<IoCodeResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.success(pageInfo);
}
/**
*
*/
@AuthRuleAnnotation("")
@GetMapping("spms/inout/dlcode/findByOrderId")
public BaseResponse downloadCodesByOrderId(String orderId) {
List<IoCodeEntity> codeEntityList = ioCodeService.findByOrderId(orderId);
PageInfo<IoCodeEntity> pageInfo;
pageInfo = new PageInfo<>(codeEntityList);
PageSimpleResponse<IoCodeEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(codeEntityList);
return ResultVOUtils.success(pageSimpleResponse);
}
/**
*
*
* @param filterCodeRequest
* @return
*/
@GetMapping("/udiwms/inout/code/getCodeListForEdit")
public BaseResponse getCodeListForEdit(FilterCodeRequest filterCodeRequest) {
List<IoCodeResponse> list = ioCodeService.getCodeListForEdit(filterCodeRequest);
PageInfo<IoCodeResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
@AuthRuleAnnotation("")
@PostMapping("warehouse/inout/checkCode")
public BaseResponse checkCode(@RequestBody FilterCodeRequest filterCodeRequest){
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<BaseResponse> future = executor.submit(() -> ioCodeService.CheckCode(filterCodeRequest));
BaseResponse response = null;
try {
response = future.get();
} catch (Exception e) {
e.printStackTrace();
} finally {
executor.shutdown();
}
return response;
}
}