package com.chinaztt.mes.plan.controller;
|
|
import com.alibaba.excel.EasyExcel;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
|
import com.chinaztt.mes.plan.dto.OperationTaskProduceDTO;
|
import com.chinaztt.mes.plan.entity.OperationTaskProduce;
|
import com.chinaztt.mes.plan.excel.OperationTaskProduceData;
|
import com.chinaztt.mes.plan.excel.OperationTaskProduceUploadListener;
|
import com.chinaztt.mes.plan.service.OperationTaskProduceService;
|
import com.chinaztt.ztt.common.core.util.R;
|
import com.chinaztt.ztt.common.log.annotation.SysLog;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.IOException;
|
import java.util.List;
|
|
/**
|
* 工单产出批次
|
*
|
* @author xucg
|
* @date 2022-07-20
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/operationTaskProduce")
|
@Api(value = "operationTaskProduce", tags = "工单产出批次")
|
public class OperationTaskProduceController {
|
|
private final OperationTaskProduceService operationTaskProduceService;
|
|
/**
|
* 分页查询
|
* @param page
|
* @param operationTaskProduce
|
*/
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
@GetMapping("/page")
|
public R<IPage<OperationTaskProduceDTO>> getOperationTaskProducePage(Page page, OperationTaskProduceDTO operationTaskProduce) {
|
return R.ok(operationTaskProduceService.getPage(page, QueryWrapperUtil.gen(operationTaskProduce)));
|
}
|
|
/**
|
* 列表查询
|
* @param operationTaskProduce
|
*/
|
@ApiOperation(value = "列表查询", notes = "列表查询")
|
@GetMapping("/list")
|
public R<List<OperationTaskProduce>> getOperationTaskProduceList(OperationTaskProduce operationTaskProduce) {
|
return R.ok(operationTaskProduceService.list(QueryWrapperUtil.gen(operationTaskProduce)));
|
}
|
|
/**
|
* 合并提交
|
* @param taskProduces
|
* @param type 01merge 02split
|
*/
|
@ApiOperation(value = "合并提交", notes = "合并提交")
|
@SysLog("合并提交")
|
@PostMapping("/submit/{type}")
|
public R submit(@RequestBody List<OperationTaskProduceDTO> taskProduces, @PathVariable String type) {
|
return R.ok(operationTaskProduceService.submit(taskProduces, type));
|
}
|
|
/**
|
* 批量更新
|
*/
|
@ApiOperation(value = "批量更新", notes = "批量更新")
|
@SysLog("批量更新")
|
@PostMapping("/updateBatch")
|
public R updateBatch(@RequestBody List<OperationTaskProduce> operationTaskProduces) {
|
return R.ok(operationTaskProduceService.batchUpdate(operationTaskProduces));
|
}
|
|
/**
|
* 导入工单批次
|
*
|
* @return
|
*/
|
@ApiOperation(value = "导入", notes = "导入")
|
@PostMapping("/upload")
|
public R upload(@RequestParam("file") MultipartFile file) {
|
try {
|
EasyExcel.read(file.getInputStream(), OperationTaskProduceData.class, new OperationTaskProduceUploadListener(operationTaskProduceService)).sheet().doRead();
|
} catch (IOException e) {
|
e.printStackTrace();
|
}
|
return R.ok();
|
}
|
|
/**
|
* 导入模板下载
|
*
|
* @return
|
*/
|
@ApiOperation(value = "导入模板下载", notes = "导入模板下载")
|
@GetMapping("/export")
|
public void export(HttpServletResponse response) throws IOException {
|
operationTaskProduceService.export(response);
|
}
|
|
/**
|
* 根据ids查询
|
*
|
* @param ids
|
* @param idType customer 客户订单
|
* mps 生产计划
|
* mo 车间订单
|
* operationTask 工单
|
* @return
|
* @throws IOException
|
*/
|
@ApiOperation(value = "根据ids查询", notes = "根据ids查询")
|
@PostMapping("/getByIds/{idType}")
|
public R getByIds(@RequestBody List<Long> ids, @PathVariable("idType") String idType) throws IOException {
|
return R.ok(operationTaskProduceService.getByIds(ids, idType));
|
}
|
|
/**
|
* 明细导出
|
* @param ids
|
*/
|
@ApiOperation(value = "明细导出", notes = "明细导出")
|
@GetMapping("/exportData")
|
public void exportData(HttpServletResponse response, @RequestParam String otcCustomerOrderNo) throws IOException {
|
operationTaskProduceService.exportData(response, otcCustomerOrderNo);
|
}
|
}
|