生成入库单据,入库子单据
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.enums.BusinessType;
|
||||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||||
import com.ruoyi.in.stockin.domain.InStockin;
|
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.stockin.service.IInStockinService;
|
||||||
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
|
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
@@ -79,9 +80,9 @@ public class InStockinController extends BaseController
|
|||||||
@PreAuthorize("@ss.hasPermi('in:stockIn:add')")
|
@PreAuthorize("@ss.hasPermi('in:stockIn:add')")
|
||||||
@Log(title = "入库单据", businessType = BusinessType.INSERT)
|
@Log(title = "入库单据", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@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.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.in.stockin.domain.InStockin;
|
import com.ruoyi.in.stockin.domain.InStockin;
|
||||||
|
import com.ruoyi.in.stockin.domain.vo.InstockInVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -37,6 +38,14 @@ public interface IInStockinService
|
|||||||
*/
|
*/
|
||||||
public int insertInStockin(InStockin inStockin);
|
public int insertInStockin(InStockin inStockin);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增入库单据
|
||||||
|
*
|
||||||
|
* @param inStockin 入库单据
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public AjaxResult insertInStockin(InstockInVo inStockin);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改入库单据
|
* 修改入库单据
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1,10 +1,17 @@
|
|||||||
package com.ruoyi.in.stockin.service.impl;
|
package com.ruoyi.in.stockin.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
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.annotation.DataScope;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
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.InStockin;
|
||||||
|
import com.ruoyi.in.stockin.domain.vo.InstockInVo;
|
||||||
import com.ruoyi.in.stockin.mapper.InStockinMapper;
|
import com.ruoyi.in.stockin.mapper.InStockinMapper;
|
||||||
import com.ruoyi.in.stockin.service.IInStockinService;
|
import com.ruoyi.in.stockin.service.IInStockinService;
|
||||||
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
|
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
|
||||||
@@ -28,6 +35,8 @@ public class InStockinServiceImpl implements IInStockinService
|
|||||||
private InStockinMapper inStockinMapper;
|
private InStockinMapper inStockinMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IInStockinDetailService iInStockinDetailService;
|
private IInStockinDetailService iInStockinDetailService;
|
||||||
|
@Autowired
|
||||||
|
private IBasJobIdService iBasJobIdService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询入库单据
|
* 查询入库单据
|
||||||
@@ -66,6 +75,38 @@ public class InStockinServiceImpl implements IInStockinService
|
|||||||
return inStockinMapper.insertInStockin(inStockin);
|
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