package com.ruoyi.web.controller.api;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.lkl.laop.sdk.request.V3LabsTransPreorderRequest;
|
import com.ruoyi.common.basic.PageInfo;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.framework.web.service.TokenService;
|
import com.ruoyi.system.dto.AddProcurementDto;
|
import com.ruoyi.system.model.TCrmClinic;
|
import com.ruoyi.system.model.TCrmSupplier;
|
import com.ruoyi.system.model.TErpGoods;
|
import com.ruoyi.system.query.TErpGoodsQuery;
|
import com.ruoyi.system.query.TErpProcurementQuery;
|
import com.ruoyi.system.service.TCrmClinicService;
|
import com.ruoyi.system.service.TErpProcurementService;
|
import com.ruoyi.system.service.TErpSupplierWarehousingService;
|
import com.ruoyi.system.vo.TErpGoodsVO;
|
import com.ruoyi.system.vo.TErpProcurementDetailVo;
|
import com.ruoyi.system.vo.TErpProcurementVo;
|
import com.ruoyi.web.core.config.LakalaConfig;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import java.util.List;
|
|
/**
|
* <p>
|
* erp采购 前端控制器
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2025-08-20
|
*/
|
@RestController
|
@RequestMapping("/t-erp-procurement")
|
@Api(tags = "erp采购管理")
|
public class TErpProcurementController {
|
|
|
private final TErpProcurementService erpProcurementService;
|
private final TokenService tokenService;
|
private final TCrmClinicService crmClinicService;
|
|
|
@Autowired
|
public TErpProcurementController(TErpProcurementService erpProcurementService, TokenService tokenService,TCrmClinicService crmClinicService) {
|
this.erpProcurementService = erpProcurementService;
|
this.tokenService = tokenService;
|
this.crmClinicService = crmClinicService;
|
}
|
|
|
|
/**
|
* erp采购管理分页列表
|
*/
|
@ApiOperation(value = "erp采购管理分页列表")
|
@PostMapping(value = "/pageList")
|
public R<PageInfo<TErpProcurementVo>> pageList(@RequestBody TErpProcurementQuery query) {
|
SysUser user = tokenService.getLoginUser().getUser();
|
return R.ok(erpProcurementService.pageList(query,user));
|
}
|
|
|
|
@ApiOperation(value = "erp采购管理详情")
|
@GetMapping(value = "/detail")
|
public R<TErpProcurementDetailVo> detail(@RequestParam String id, String goodsName) {
|
SysUser user = tokenService.getLoginUser().getUser();
|
return R.ok(erpProcurementService.detail(id,user,goodsName));
|
}
|
|
|
/**
|
* 获取erp问题上报管理列表
|
*/
|
@ApiOperation(value = "采购获取商品分页列表")
|
@PostMapping(value = "/pageGoodsPageList")
|
public R<PageInfo<TErpGoods>> pageList(@RequestBody TErpGoodsQuery query) {
|
SysUser user = tokenService.getLoginUser().getUser();
|
return R.ok(erpProcurementService.pageGoodsPageList(query,user));
|
}
|
|
|
/**
|
* 获取erp问题上报管理列表
|
*/
|
@ApiOperation(value = "采购获取库存不足列表")
|
@PostMapping(value = "/inventoryNotEnoughList")
|
public R<List<TErpGoodsVO>> inventoryNotEnoughList() {
|
SysUser user = tokenService.getLoginUser().getUser();
|
return R.ok(erpProcurementService.inventoryNotEnoughList(user));
|
}
|
|
|
|
@ApiOperation(value = "添加采购")
|
@PostMapping(value = "/addProcurement")
|
public R<String> addProcurement(@RequestBody @Valid List<AddProcurementDto> dtos) {
|
SysUser user = tokenService.getLoginUser().getUser();
|
Integer roleType = user.getRoleType();
|
String clinicSupplierId=null;
|
if(roleType == 5){
|
// 诊所
|
TCrmClinic crmClinic = crmClinicService.getOne(Wrappers.lambdaQuery(TCrmClinic.class)
|
.eq(TCrmClinic::getUserId, user.getUserId())
|
.last("LIMIT 1"));
|
clinicSupplierId = crmClinic.getId();
|
}
|
return R.ok(erpProcurementService.addProcurement(clinicSupplierId,user,dtos));
|
}
|
|
|
|
}
|