package doumeemes.api.ext;
|
|
import doumeemes.api.BaseController;
|
import doumeemes.core.annotation.excel.ExcelExporter;
|
import doumeemes.core.annotation.pr.PreventRepeat;
|
import doumeemes.core.annotation.trace.Trace;
|
import doumeemes.core.model.ApiResponse;
|
import doumeemes.core.model.PageData;
|
import doumeemes.core.model.PageWrap;
|
import doumeemes.core.utils.Constants;
|
import doumeemes.dao.business.model.RouteCard;
|
import doumeemes.dao.ext.dto.QueryRouteCardExtDTO;
|
import doumeemes.dao.ext.vo.RouteCardExtListVO;
|
import doumeemes.service.business.RouteCardService;
|
import doumeemes.service.ext.RouteCardExtService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
|
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 工艺卡管理接口
|
* @author 江蹄蹄
|
* @date 2022/06/27 13:58
|
*/
|
@RestController
|
@RequestMapping("/ext/routeCardExt")
|
@Api(tags = "工艺卡管理接口")
|
@Trace(withRequestResult = false,withRequestParameters = false)
|
public class RouteCardExtController extends BaseController {
|
|
@Autowired
|
private RouteCardExtService routeCardExtService;
|
|
@Autowired
|
private RouteCardService routeCardService;
|
|
@PreventRepeat
|
@ApiOperation("新建")
|
@PostMapping("/create")
|
@RequiresPermissions("ext:routecardext:create")
|
public ApiResponse create(@RequestBody RouteCard routeCard) {
|
return routeCardService.create(routeCard);
|
}
|
|
@ApiOperation("根据ID删除")
|
@GetMapping("/delete/{id}")
|
@RequiresPermissions("ext:routecardext:delete")
|
public ApiResponse deleteById(@PathVariable Integer id) {
|
routeCardService.deleteById(id);
|
return ApiResponse.success(null);
|
}
|
|
@ApiOperation("批量删除")
|
@GetMapping("/delete/batch")
|
@RequiresPermissions("ext:routecardext:delete")
|
public ApiResponse deleteByIds(@RequestParam String ids) {
|
String [] idArray = ids.split(",");
|
List<RouteCard> idList = new ArrayList<>();
|
for (String id : idArray) {
|
RouteCard routeCard = routeCardService.findById(Integer.valueOf(id));
|
routeCard.setDeleted(Constants.ONE);
|
idList.add(routeCard);
|
}
|
routeCardService.updateByIdInBatch(idList);
|
return ApiResponse.success(null);
|
}
|
|
@ApiOperation("根据ID修改")
|
@PostMapping("/updateById")
|
@RequiresPermissions("ext:routecardext:update")
|
public ApiResponse updateById(@RequestBody RouteCard routeCard) {
|
return routeCardService.updateById(routeCard);
|
}
|
|
@ApiOperation("分页查询")
|
@PostMapping("/page")
|
@RequiresPermissions("ext:routecardext:query")
|
public ApiResponse<PageData<RouteCardExtListVO>> findPage (@RequestBody PageWrap<QueryRouteCardExtDTO> pageWrap) {
|
return ApiResponse.success(routeCardExtService.findPage(pageWrap));
|
}
|
|
@ApiOperation("导出Excel")
|
@PostMapping("/exportExcel")
|
@RequiresPermissions("ext:routecardext:exportExcel")
|
public void exportExcel (@RequestBody PageWrap<QueryRouteCardExtDTO> pageWrap, HttpServletResponse response) {
|
ExcelExporter.build(RouteCardExtListVO.class).export(routeCardExtService.findPage(pageWrap).getRecords(), "工艺卡管理", response);
|
}
|
|
@ApiOperation("根据ID查询")
|
@GetMapping("/{id}")
|
@RequiresPermissions("ext:routecardext:query")
|
public ApiResponse findById(@PathVariable Integer id) {
|
PageWrap<QueryRouteCardExtDTO> pageWrap=new PageWrap<>();
|
pageWrap.getModel().setId(id);
|
List<RouteCardExtListVO> list= routeCardExtService.findlistBycondition(pageWrap);
|
return ApiResponse.success(list.get(0));
|
}
|
|
|
|
/**
|
* 工艺卡文件上传
|
*
|
* @param folder
|
* @param request
|
* @param response
|
* @throws Exception
|
*/
|
@ApiOperation(value = "工艺卡文件上传", notes = "上传", httpMethod = "POST")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "folder", value = "文件夹", required = true, paramType = "query", dataType = "String", dataTypeClass = String.class),
|
})
|
@PostMapping(value = "/upload")
|
public void uploadMobile(@RequestParam(name = "file") MultipartFile file,@RequestParam(name = "folder") String folder, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
// MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
upload2(file, response, folder + "/",
|
systemDictDataBiz.queryByCode(Constants.OSS,Constants.BUCKETNAME).getCode(),
|
systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
|
systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode(),
|
systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(),
|
systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode());
|
}
|
|
|
|
/**
|
* 导入
|
*
|
* @param request
|
* @param response
|
* @throws Exception
|
*/
|
@ApiOperation(value = "工艺卡导入", notes = "导入", httpMethod = "POST")
|
@PostMapping(value = "/importExcel")
|
@RequiresPermissions("ext:routecardext:importExcel")
|
public ApiResponse importExcel(@RequestParam(name = "file") MultipartFile file,HttpServletRequest request, HttpServletResponse response) throws Exception {
|
CommonsMultipartResolver multipartResovler = new CommonsMultipartResolver();
|
try{
|
/* if (multipartResovler.isMultipart(request)) {
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
Iterator<String> it = multipartRequest.getFileNames();
|
while (it.hasNext()) {*/
|
// MultipartFile file = multipartRequest.getFile((String) it.next());// file
|
routeCardExtService.importExcel(file);
|
// break;
|
/* }
|
}*/
|
|
}catch (Exception e){
|
e.printStackTrace();
|
if(e.getMessage().length()>=200){
|
return ApiResponse.failed( e.getMessage().substring(0,200));
|
}else{
|
return ApiResponse.failed( e.getMessage().substring(0,200));
|
}
|
|
}
|
|
return ApiResponse.success( null);
|
}
|
|
|
@ApiOperation("根据工单查询工艺卡")
|
@PostMapping("/getListByWorkOrderId")
|
@RequiresPermissions("ext:routecardext:getListByWorkOrderId")
|
public ApiResponse<RouteCardExtListVO> getListByWorkOrderId(@RequestBody QueryRouteCardExtDTO routeCard) {
|
return routeCardExtService.getListByWorkOrderId(routeCard);
|
}
|
}
|