package com.ruoyi.management.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.management.domain.SlVolumeProductionCk;
import com.ruoyi.management.domain.SlVolumeProductionCkgl;
import com.ruoyi.management.domain.dto.*;
import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
import com.ruoyi.management.domain.vo.ManagementimgSlVolumeProductionCkVO;
import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionCkVO;
import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO;
import com.ruoyi.management.service.SlVolumeProductionCkService;
import com.ruoyi.management.service.SlVolumeProductionCkglService;
import com.ruoyi.management.service.impl.SlVolumeProductionCkServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
*
* 发起出库 前端控制器
*
*
* @author hjl
* @since 2024-06-25
*/
@RestController
@RequestMapping("/sl-volume-production-ck")
@Api(value = "发起出库接口", tags = "发起出库接口", description = "发起出库管理接口")
public class SlVolumeProductionCkController {
@Resource
private TokenService tokenService;
@Resource
private SlVolumeProductionCkService slVolumeProductionCkService;
@PostMapping("/getMaterialByManagementIdList")
@ApiOperation(value = "发起出库 根据仓库Id 选择物资")
public R> getMaterialByManagementIdList(@RequestBody GetMaterialsByManagementIdQuery query) {
tokenService.getLoginUser();
return R.ok(slVolumeProductionCkService.getMaterialByManagementIdList(query));
}
@PostMapping("/getManagementimgSlVolumeProductionCkList")
@ApiOperation(value = "分页获取通过物资来获取当前批次出库的物资")
public R> getManagementimgSlVolumeProductionCkList(@RequestBody SlGoodsMaterialsSlVolumeProductionRkQuery slGoodsMaterialsSlVolumeProductionRkQuery) {
tokenService.getLoginUser();
return R.ok(slVolumeProductionCkService.getManagementimgSlVolumeProductionCkList(slGoodsMaterialsSlVolumeProductionRkQuery));
}
@PostMapping("/addSlVolumeProductionCk")
@ApiOperation(value = "添加出库")
public R addSlVolumeProductionCk(@RequestBody ADDCKGLDTO addckgldto ) {
tokenService.getLoginUser();
slVolumeProductionCkService.addSlVolumeProductionCk(addckgldto.getAddSlVolumeProductionCkDTO());
return R.ok();
}
@PostMapping("/updSlVolumeProductionCk")
@ApiOperation(value = "修改出库")
public R updSlVolumeProductionCk(@RequestBody ADDCKGLDTO addckgldto ) {
tokenService.getLoginUser();
slVolumeProductionCkService.updSlVolumeProductionCk(addckgldto.getAddSlVolumeProductionCkDTO());
return R.ok();
}
@Autowired
private SlVolumeProductionCkglService ckglService;
@GetMapping("/auditAgain")
@ApiOperation(value = "出库管理重新审核")
public R auditAgain(Long ckglId) {
tokenService.getLoginUser();
SlVolumeProductionCkgl byId1 = ckglService.getById(ckglId);
byId1.setAuditStatus(1);
byId1.setPresentState(1);
byId1.setReasonsRefusal("");
ckglService.updateById(byId1);
return R.ok();
}
@PostMapping("/updSlVolumeProductionCk1")
@ApiOperation(value = "修改出库 不变更状态")
public R updSlVolumeProductionCk1(@RequestBody ADDCKGLDTO addckgldto ) {
tokenService.getLoginUser();
slVolumeProductionCkService.updSlVolumeProductionCk1(addckgldto.getAddSlVolumeProductionCkDTO());
return R.ok();
}
@PostMapping("/getSlVolumeProductionCkList")
@ApiOperation(value = "分页获取通过出库管理ID当前出库的物资")
public R> getSlVolumeProductionCkList(@RequestBody ManagementimgVolumeProductionCkQuery managementimgVolumeProductionCkQuery) {
tokenService.getLoginUser();
return R.ok(slVolumeProductionCkService.getSlVolumeProductionCkList(managementimgVolumeProductionCkQuery));
}
@PostMapping("/SlVolumeProductionCkList")
@ApiOperation(value = "不分页获取通过出库管理ID当前出库的物资")
public R> SlVolumeProductionCkList(@RequestBody ManagementimgVolumeProductionCkQuery managementimgVolumeProductionCkQuery) {
tokenService.getLoginUser();
return R.ok(slVolumeProductionCkService.SlVolumeProductionCkList(managementimgVolumeProductionCkQuery));
}
@ApiOperation("删除出库批次")
@DeleteMapping("/{id}")
public R> delStoreManagement(
@ApiParam(name = "id", value = "出库批次id", required = true) @PathVariable("id") String id) {
tokenService.getLoginUser();
SlVolumeProductionCk byId = slVolumeProductionCkService.getById(id);
byId.setDelFlag("1");
slVolumeProductionCkService.updateById(byId);
return R.ok();
}
}