package com.yuanchu.mom.controller;
import com.yuanchu.mom.pojo.dto.InspectionItemDto;
import com.yuanchu.mom.pojo.dto.UpdateInspectionItemDto;
import com.yuanchu.mom.service.InspectionItemService;
import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.utils.Jwt;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
* 前端控制器
*
*
* @author 江苏鵷雏网络科技有限公司
* @since 2023-08-01
*/
@Api(tags = "QMS管理-->成品过程检验项目")
@RestController
@RequestMapping("/inspection-item")
public class InspectionItemController {
@Autowired
private InspectionItemService inspectionItemService;
@Autowired
private Jwt jwt;
@ApiOperation(value = "新增按钮-->2、查询所有检验项目")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "id", value = "检验单Id", dataTypeClass = Integer.class, required = true),
@ApiImplicitParam(name = "type", value = "类型", dataTypeClass = Integer.class, required = true)
})
@GetMapping("/list_user")
public Result> selectInspectionItem(Integer id, Integer type) {
List inspectionItemDto = inspectionItemService.selectInspectionItem(id,type);
return Result.success(inspectionItemDto);
}
@ApiOperation(value = "新增检验单-->选择设备")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "technologyId", value = "关联的工艺路线id", dataTypeClass = Integer.class, required = true),
@ApiImplicitParam(name = "father", value = "项目父名称", dataTypeClass = String.class, required = true),
@ApiImplicitParam(name = "name", value = "项目名称", dataTypeClass = String.class, required = true)
})
@GetMapping("/chooseDev")
public Result> chooseDev(Integer technologyId, String father, String name) {
return Result.success(inspectionItemService.chooseDev(technologyId,father,name));
}
@ApiOperation(value = "新增按钮-->2、检验项目的检验值-->失去焦点发起该请求")
@PostMapping("/lose_focus_update")
public Result> addInspectionItem(@RequestHeader("token") String token, @RequestBody UpdateInspectionItemDto updateInspectionItemDto) throws Exception {
Map usernameMessage = jwt.readJWT(token);
Map usernameAndId = JackSonUtil.unmarshal(usernameMessage.get("data"), Map.class);
String name = usernameAndId.get("name").toString().replaceAll("\"", "");
Integer isInsertSuccess = inspectionItemService.addProcessInspectionSheet(name, updateInspectionItemDto);
Map map = new HashMap<>();
map.put("result", isInsertSuccess);
map.put("username", name);
return Result.success(map);
}
}