生成入库单据,入库子单据
This commit is contained in:
@@ -8,6 +8,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import com.ruoyi.in.stockin.domain.InStockin;
|
||||
import com.ruoyi.in.stockin.domain.vo.InstockInVo;
|
||||
import com.ruoyi.in.stockin.service.IInStockinService;
|
||||
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
@@ -79,9 +80,9 @@ public class InStockinController extends BaseController
|
||||
@PreAuthorize("@ss.hasPermi('in:stockIn:add')")
|
||||
@Log(title = "入库单据", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public AjaxResult add(@RequestBody InStockin inStockin)
|
||||
public AjaxResult add(@RequestBody InstockInVo instockInVo)
|
||||
{
|
||||
return toAjax(inStockinService.insertInStockin(inStockin));
|
||||
return inStockinService.insertInStockin(instockInVo);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.in.stockin.domain.vo;
|
||||
|
||||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@ToString
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class InstockInVo {
|
||||
|
||||
@NotNull
|
||||
private String warehouseId;
|
||||
|
||||
@NotNull
|
||||
private String supplierNo;
|
||||
|
||||
@NotNull
|
||||
private String inType;
|
||||
|
||||
|
||||
private List<BasProduct> productVoList;
|
||||
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package com.ruoyi.in.stockin.service;
|
||||
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.in.stockin.domain.InStockin;
|
||||
import com.ruoyi.in.stockin.domain.vo.InstockInVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -37,6 +38,14 @@ public interface IInStockinService
|
||||
*/
|
||||
public int insertInStockin(InStockin inStockin);
|
||||
|
||||
/**
|
||||
* 新增入库单据
|
||||
*
|
||||
* @param inStockin 入库单据
|
||||
* @return 结果
|
||||
*/
|
||||
public AjaxResult insertInStockin(InstockInVo inStockin);
|
||||
|
||||
/**
|
||||
* 修改入库单据
|
||||
*
|
||||
|
||||
@@ -1,10 +1,17 @@
|
||||
package com.ruoyi.in.stockin.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||
import com.ruoyi.bas.basJobId.service.IBasJobIdService;
|
||||
import com.ruoyi.common.annotation.DataScope;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||
import com.ruoyi.common.core.text.Convert;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.in.stockin.domain.InStockin;
|
||||
import com.ruoyi.in.stockin.domain.vo.InstockInVo;
|
||||
import com.ruoyi.in.stockin.mapper.InStockinMapper;
|
||||
import com.ruoyi.in.stockin.service.IInStockinService;
|
||||
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
|
||||
@@ -28,6 +35,8 @@ public class InStockinServiceImpl implements IInStockinService
|
||||
private InStockinMapper inStockinMapper;
|
||||
@Autowired
|
||||
private IInStockinDetailService iInStockinDetailService;
|
||||
@Autowired
|
||||
private IBasJobIdService iBasJobIdService;
|
||||
|
||||
/**
|
||||
* 查询入库单据
|
||||
@@ -66,6 +75,38 @@ public class InStockinServiceImpl implements IInStockinService
|
||||
return inStockinMapper.insertInStockin(inStockin);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult insertInStockin(InstockInVo inStockinVo) {
|
||||
List<BasProduct> productVoList = inStockinVo.getProductVoList();
|
||||
if (CollUtil.isEmpty(productVoList)){
|
||||
return AjaxResult.error("物料不能为空");
|
||||
}
|
||||
|
||||
InStockin inStockin = new InStockin();
|
||||
inStockin.setStockinGuid(iBasJobIdService.getJobId("RKD"));
|
||||
inStockin.setStockinId(iBasJobIdService.getJobId("RKD"));
|
||||
inStockin.setCreateDate(DateUtil.formatDateTime(DateUtil.date()));
|
||||
inStockin.setCreateManId(Convert.toStr(SecurityUtils.getUserId()));
|
||||
inStockin.setDepartmentNo(Convert.toStr(SecurityUtils.getDeptId()));
|
||||
inStockin.setSupplierNo(inStockinVo.getSupplierNo());
|
||||
inStockin.setInType(inStockinVo.getInType());
|
||||
inStockin.setWarehouseId(inStockinVo.getWarehouseId());
|
||||
inStockin.setStatus("1");
|
||||
inStockinMapper.insertInStockin(inStockin);
|
||||
for (int i = 1; i <= productVoList.size(); i++) {
|
||||
BasProduct basProduct = productVoList.get(i-1);
|
||||
InStockinDetail inStockinDetail = new InStockinDetail();
|
||||
BeanUtil.copyProperties(basProduct,inStockinDetail);
|
||||
inStockinDetail.setStockinGuid(inStockin.getStockinGuid());
|
||||
inStockinDetail.setStockinDetailId(inStockin.getStockinId()+"-"+i);
|
||||
inStockinDetail.setStockinId(inStockin.getStockinId());
|
||||
iInStockinDetailService.insertInStockinDetail(inStockinDetail);
|
||||
}
|
||||
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改入库单据
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user