package com.yuanchu.mom.controller;
|
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONArray;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.yuanchu.mom.annotation.ValueAuth;
|
import com.yuanchu.mom.dto.SampleOrderDto;
|
import com.yuanchu.mom.dto.SampleProductDto;
|
import com.yuanchu.mom.pojo.InsOrder;
|
import com.yuanchu.mom.pojo.InsOrderTemplate;
|
import com.yuanchu.mom.service.InsOrderService;
|
import com.yuanchu.mom.service.InsOrderTemplateService;
|
import com.yuanchu.mom.service.InsProductService;
|
import com.yuanchu.mom.service.InsSampleService;
|
import com.yuanchu.mom.utils.JackSonUtil;
|
import com.yuanchu.mom.vo.Result;
|
import io.swagger.annotations.*;
|
import lombok.AllArgsConstructor;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.time.LocalDateTime;
|
import java.time.format.DateTimeFormatter;
|
import java.util.List;
|
import java.util.Map;
|
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/insOrder")
|
@Api("检验单模块")
|
public class InsOrderController {
|
|
private InsOrderService insOrderService;
|
|
private InsSampleService insSampleService;
|
|
private InsProductService insProductService;
|
|
private InsOrderTemplateService insOrderTemplateService;
|
|
//获取检验下单数据
|
@ApiOperation(value = "查询检验下单数据")
|
@PostMapping("/selectInsOrderParameter")
|
public Result selectInsOrderParameter(@RequestBody Map<String, Object> data) throws Exception {
|
Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
|
SampleOrderDto sampleOrderDto = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), SampleOrderDto.class);
|
return Result.success(insOrderService.selectInsOrderParameter(page, sampleOrderDto));
|
}
|
|
@ApiOperation(value = "检验分配")
|
@PostMapping("/upInsOrder")
|
public Result<?> upInsOrder(Integer orderId, Integer sampleId, String appointed, Integer userId) {
|
return Result.success(insOrderService.upInsOrder(orderId, sampleId, appointed, userId));
|
}
|
|
@ApiOperation(value = "添加检验下单数据")
|
@PostMapping("/addInsOrder")
|
public Result<?> addInsOrder(@RequestBody Map<String, Object> map) {
|
JSONArray jsonArray = JSON.parseArray(JSON.toJSONString(map.get("list")));
|
List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class);
|
InsOrder insOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), InsOrder.class);
|
return Result.success(insOrderService.addInsOrder(list, insOrder));
|
}
|
|
@ApiOperation(value = "查询订单最长预计时间")
|
@PostMapping("/selectOrderManDay")
|
@ValueAuth
|
public Result<?> selectOrderManDay(Integer id) {
|
int day = insProductService.selectOrderManDay(id);
|
return Result.success("成功", LocalDateTime.now().plusDays(day).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
}
|
|
@ApiOperation(value = "查询检验下单内容详情")
|
@PostMapping("/getInsOrder")
|
@ValueAuth
|
public Result<?> getInsOrder(Integer orderId) {
|
return Result.success(insOrderService.getInsOrder(orderId));
|
}
|
|
@ApiOperation(value = "审核检验单进行状态修改")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "id", value = "检验单id"),
|
@ApiImplicitParam(name = "state", value = "审核结果 1:通过 2:不通过")
|
})
|
@PostMapping("/upInsOrderOfState")
|
public Result<?> upInsOrderOfState(@RequestBody InsOrder insOrder) {
|
return Result.success(insOrderService.upInsOrderOfState(insOrder));
|
}
|
|
@ApiOperation(value = "添加检验单模板")
|
@PostMapping("/addInsOrderTemplate")
|
public Result<?> addInsOrderTemplate(@RequestBody InsOrderTemplate insOrderTemplate) {
|
return Result.success(insOrderTemplateService.addInsOrderTemplate(insOrderTemplate));
|
}
|
|
@ApiOperation(value = "查询检验单模板")
|
@GetMapping("/selectInsOrderTemplate")
|
@ValueAuth
|
public Result<?> selectInsOrderTemplate() {
|
return Result.success(insOrderTemplateService.selectInsOrderTemplate());
|
}
|
|
@ApiOperation(value = "通过检验单模板id获取检验单模板内容")
|
@PostMapping("/selectInsOrderTemplateById")
|
@ValueAuth
|
public Result<?> selectInsOrderTemplateById(Integer id) {
|
return Result.success("成功", insOrderTemplateService.selectInsOrderTemplateById(id));
|
}
|
|
@ApiOperation(value = "删除检验单模板")
|
@PostMapping("/delInsOrderTemplate")
|
@ValueAuth
|
public Result<?> delInsOrderTemplate(Integer id) {
|
return Result.success(insOrderTemplateService.delInsOrderTemplate(id));
|
}
|
|
}
|