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.
185 lines
7.5 KiB
Java
185 lines
7.5 KiB
Java
package com.glxp.api.controller.inv;
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.glxp.api.annotation.AuthRuleAnnotation;
|
|
import com.glxp.api.annotation.Log;
|
|
import com.glxp.api.common.enums.ResultEnum;
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
import com.glxp.api.constant.BusinessType;
|
|
import com.glxp.api.entity.inv.DeviceMAOrderEntity;
|
|
import com.glxp.api.entity.system.SystemPDFModuleEntity;
|
|
import com.glxp.api.entity.system.SystemPDFTemplateEntity;
|
|
import com.glxp.api.req.inout.InspectionPDFTemplateRequest;
|
|
import com.glxp.api.req.inv.AddDeviceMAOrderRequest;
|
|
import com.glxp.api.req.inv.FilterDeviceMAOrderRequest;
|
|
import com.glxp.api.req.system.FilterPdfModuleRequest;
|
|
import com.glxp.api.res.PageSimpleResponse;
|
|
import com.glxp.api.res.inv.DeviceMAOrderResponse;
|
|
import com.glxp.api.service.inv.DeviceMAOrderService;
|
|
import com.glxp.api.service.system.SystemPDFModuleService;
|
|
import com.glxp.api.service.system.SystemPDFTemplateService;
|
|
import com.glxp.api.util.JasperUtils;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.validation.BindingResult;
|
|
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 javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.util.Arrays;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* 设备养护记录接口
|
|
*/
|
|
@Slf4j
|
|
@RestController
|
|
public class DeviceMAOrderController {
|
|
|
|
@Resource
|
|
private DeviceMAOrderService deviceMAOrderService;
|
|
@Resource
|
|
private SystemPDFTemplateService systemPDFTemplateService;
|
|
@Resource
|
|
private SystemPDFModuleService systemPDFModuleService;
|
|
|
|
|
|
/**
|
|
* 查询设备养护记录列表
|
|
*
|
|
* @param filterDeviceMAOrderRequest
|
|
* @return
|
|
*/
|
|
@GetMapping("/device/MA/order/filterList")
|
|
public BaseResponse filterList(FilterDeviceMAOrderRequest filterDeviceMAOrderRequest) {
|
|
List<DeviceMAOrderResponse> list = deviceMAOrderService.filterList(filterDeviceMAOrderRequest);
|
|
PageInfo<DeviceMAOrderResponse> pageInfo = new PageInfo<>(list);
|
|
PageSimpleResponse<DeviceMAOrderResponse> pageSimpleResponse = new PageSimpleResponse<>();
|
|
pageSimpleResponse.setTotal(pageInfo.getTotal());
|
|
pageSimpleResponse.setList(list);
|
|
return ResultVOUtils.success(pageSimpleResponse);
|
|
}
|
|
|
|
/**
|
|
* 添加设备养护记录
|
|
*
|
|
* @param deviceMAOrderEntity
|
|
* @param bindingResult
|
|
* @return
|
|
*/
|
|
@PostMapping("/device/MA/order/addMAOrder")
|
|
@Log(title = "设备养护", businessType = BusinessType.INSERT)
|
|
public BaseResponse addMAOrder(@RequestBody DeviceMAOrderEntity deviceMAOrderEntity, BindingResult bindingResult) {
|
|
if (bindingResult.hasErrors()) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
}
|
|
return deviceMAOrderService.addDeviceMAOrder(deviceMAOrderEntity);
|
|
}
|
|
|
|
/**
|
|
* 更新设备养护记录
|
|
*
|
|
* @param deviceMAOrderEntity
|
|
* @param bindingResult
|
|
* @return
|
|
*/
|
|
@PostMapping("/device/MA/order/updateMAOrder")
|
|
@Log(title = "设备养护", businessType = BusinessType.UPDATE)
|
|
public BaseResponse updateMAOrder(@RequestBody DeviceMAOrderEntity deviceMAOrderEntity, BindingResult bindingResult) {
|
|
if (bindingResult.hasErrors()) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
}
|
|
return deviceMAOrderService.updateDeviceMAOrder(deviceMAOrderEntity);
|
|
}
|
|
|
|
/**
|
|
* 删除设备养护记录
|
|
*
|
|
* @param filterDeviceMAOrderRequest
|
|
* @param bindingResult
|
|
* @return
|
|
*/
|
|
@PostMapping("/device/MA/order/deleteMAOrder")
|
|
@Log(title = "设备养护", businessType = BusinessType.DELETE)
|
|
public BaseResponse deleteMAOrder(@RequestBody FilterDeviceMAOrderRequest filterDeviceMAOrderRequest, BindingResult bindingResult) {
|
|
if (bindingResult.hasErrors()) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
}
|
|
if (null == filterDeviceMAOrderRequest || null == filterDeviceMAOrderRequest.getId()) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
|
|
}
|
|
return deviceMAOrderService.deleteDeviceMAOrder(filterDeviceMAOrderRequest.getId());
|
|
}
|
|
|
|
/**
|
|
* 添加设备养护记录
|
|
*
|
|
* @param addDeviceMAOrderRequest
|
|
* @param bindingResult
|
|
* @return
|
|
*/
|
|
@PostMapping("/device/MA/order/addDeviceMAOrder")
|
|
@Log(title = "设备养护", businessType = BusinessType.INSERT)
|
|
public BaseResponse addDeviceMAOrder(@RequestBody AddDeviceMAOrderRequest addDeviceMAOrderRequest, BindingResult bindingResult) {
|
|
if (bindingResult.hasErrors()) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
}
|
|
return deviceMAOrderService.addDeviceMAOrder(addDeviceMAOrderRequest);
|
|
}
|
|
|
|
/**
|
|
* 校验模板文件
|
|
*
|
|
* @param inspectionPDFTemplateRequest
|
|
* @return
|
|
*/
|
|
@AuthRuleAnnotation("")
|
|
@PostMapping("/device/MA/order/verifyTemplateFile")
|
|
public BaseResponse verifyTemplateFile(@RequestBody InspectionPDFTemplateRequest inspectionPDFTemplateRequest) {
|
|
if (null == inspectionPDFTemplateRequest) {
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空!");
|
|
}
|
|
//查询模板文件是否存在
|
|
FilterPdfModuleRequest filterPdfModuleRequest = new FilterPdfModuleRequest();
|
|
filterPdfModuleRequest.setId(inspectionPDFTemplateRequest.getModuleId());
|
|
SystemPDFModuleEntity systemPDFModule = systemPDFModuleService.findSystemPDFModule(filterPdfModuleRequest);
|
|
if (null == systemPDFModule) {
|
|
return ResultVOUtils.error(ResultEnum.DATA_NOT, "所属模块错误");
|
|
}
|
|
|
|
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(String.valueOf(systemPDFModule.getTemplateId()));
|
|
if (null == systemPDFTemplateEntity) {
|
|
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
|
|
}
|
|
return ResultVOUtils.success(systemPDFModule.getTemplateId());
|
|
}
|
|
|
|
/**
|
|
* 打印设备养护记录
|
|
*
|
|
* @param filterDeviceMAOrderRequest
|
|
* @param request
|
|
* @param response
|
|
* @throws Exception
|
|
*/
|
|
@AuthRuleAnnotation("")
|
|
@PostMapping("/device/MA/order/pintOrder")
|
|
public void printOrder(@RequestBody FilterDeviceMAOrderRequest filterDeviceMAOrderRequest, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
|
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(filterDeviceMAOrderRequest.getTemplateId());
|
|
//查询打印数据
|
|
Map<String, Object> data = deviceMAOrderService.getPrintData(filterDeviceMAOrderRequest.getOrderId());
|
|
Map<String, List<Map<String, Object>>> printData = new HashMap<>(1);
|
|
printData.put("data", Arrays.asList(data));
|
|
JasperUtils.jasperReport(request, response, JSONUtil.toJsonStr(printData), systemPDFTemplateEntity.getPath(), "pdf");
|
|
}
|
|
|
|
|
|
}
|