项目初始化

This commit is contained in:
liuhanqing
2025-12-03 16:09:29 +08:00
commit 68c9100aab
1649 changed files with 303228 additions and 0 deletions

View File

@@ -0,0 +1,104 @@
package com.ruoyi.in.erp.controller;
import java.util.List;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.in.erp.domain.TransferBillCallback;
import com.ruoyi.in.erp.service.ITransferBillCallbackService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 调拨单回传Controller
*
* @author ruoyi
* @date 2025-09-17
*/
@RestController
@RequestMapping("/in/transfer")
public class TransferBillCallbackController extends BaseController
{
@Autowired
private ITransferBillCallbackService transferBillCallbackService;
/**
* 查询调拨单回传列表
*/
@PreAuthorize("@ss.hasPermi('in:transfer:list')")
@GetMapping("/list")
public TableDataInfo list(TransferBillCallback transferBillCallback)
{
startPage();
List<TransferBillCallback> list = transferBillCallbackService.selectTransferBillCallbackList(transferBillCallback);
return getDataTable(list);
}
/**
* 导出调拨单回传列表
*/
@PreAuthorize("@ss.hasPermi('in:transfer:export')")
@Log(title = "调拨单回传", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, TransferBillCallback transferBillCallback)
{
List<TransferBillCallback> list = transferBillCallbackService.selectTransferBillCallbackList(transferBillCallback);
ExcelUtil<TransferBillCallback> util = new ExcelUtil<TransferBillCallback>(TransferBillCallback.class);
util.exportExcel(response, list, "调拨单回传数据");
}
/**
* 获取调拨单回传详细信息
*/
@PreAuthorize("@ss.hasPermi('in:transfer:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(transferBillCallbackService.selectTransferBillCallbackById(id));
}
/**
* 新增调拨单回传
*/
@PreAuthorize("@ss.hasPermi('in:transfer:add')")
@Log(title = "调拨单回传", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TransferBillCallback transferBillCallback)
{
return toAjax(transferBillCallbackService.insertTransferBillCallback(transferBillCallback));
}
/**
* 修改调拨单回传
*/
@PreAuthorize("@ss.hasPermi('in:transfer:edit')")
@Log(title = "调拨单回传", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TransferBillCallback transferBillCallback)
{
return toAjax(transferBillCallbackService.updateTransferBillCallback(transferBillCallback));
}
/**
* 删除调拨单回传
*/
@PreAuthorize("@ss.hasPermi('in:transfer:remove')")
@Log(title = "调拨单回传", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(transferBillCallbackService.deleteTransferBillCallbackByIds(ids));
}
}

View File

@@ -0,0 +1,158 @@
package com.ruoyi.in.erp.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 调拨单回传对象 transfer_bill_callback
*
* @author ruoyi
* @date 2025-09-17
*/
public class TransferBillCallback extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** */
private Long id;
/** mydoJob任务号 */
@Excel(name = "mydoJob任务号")
private String jobId;
/** 入库单号/订单号 */
@Excel(name = "入库单号/订单号")
private String erpBill;
/** 单据类型 */
@Excel(name = "单据类型")
private String type;
/** 状态 0-生成 1-生成 2-任务完成 3-审核 */
@Excel(name = "状态 0-生成 1-生成 2-任务完成 3-审核")
private String status;
/** 完成时间 */
@Excel(name = "完成时间")
private String finishTime;
/** 备用字段1 */
@Excel(name = "备用字段1")
private String spare1;
/** 备用字段2 */
@Excel(name = "备用字段2")
private String spare2;
/** 备用字段3 */
@Excel(name = "备用字段3")
private String spare3;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setJobId(String jobId)
{
this.jobId = jobId;
}
public String getJobId()
{
return jobId;
}
public void setErpBill(String erpBill)
{
this.erpBill = erpBill;
}
public String getErpBill()
{
return erpBill;
}
public void setType(String type)
{
this.type = type;
}
public String getType()
{
return type;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setFinishTime(String finishTime)
{
this.finishTime = finishTime;
}
public String getFinishTime()
{
return finishTime;
}
public void setSpare1(String spare1)
{
this.spare1 = spare1;
}
public String getSpare1()
{
return spare1;
}
public void setSpare2(String spare2)
{
this.spare2 = spare2;
}
public String getSpare2()
{
return spare2;
}
public void setSpare3(String spare3)
{
this.spare3 = spare3;
}
public String getSpare3()
{
return spare3;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("jobId", getJobId())
.append("erpBill", getErpBill())
.append("type", getType())
.append("status", getStatus())
.append("createTime", getCreateTime())
.append("finishTime", getFinishTime())
.append("spare1", getSpare1())
.append("spare2", getSpare2())
.append("spare3", getSpare3())
.toString();
}
}

View File

@@ -0,0 +1,61 @@
package com.ruoyi.in.erp.mapper;
import java.util.List;
import com.ruoyi.in.erp.domain.TransferBillCallback;
/**
* 调拨单回传Mapper接口
*
* @author ruoyi
* @date 2025-09-17
*/
public interface TransferBillCallbackMapper
{
/**
* 查询调拨单回传
*
* @param id 调拨单回传主键
* @return 调拨单回传
*/
public TransferBillCallback selectTransferBillCallbackById(Long id);
/**
* 查询调拨单回传列表
*
* @param transferBillCallback 调拨单回传
* @return 调拨单回传集合
*/
public List<TransferBillCallback> selectTransferBillCallbackList(TransferBillCallback transferBillCallback);
/**
* 新增调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
public int insertTransferBillCallback(TransferBillCallback transferBillCallback);
/**
* 修改调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
public int updateTransferBillCallback(TransferBillCallback transferBillCallback);
/**
* 删除调拨单回传
*
* @param id 调拨单回传主键
* @return 结果
*/
public int deleteTransferBillCallbackById(Long id);
/**
* 批量删除调拨单回传
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteTransferBillCallbackByIds(Long[] ids);
}

View File

@@ -0,0 +1,61 @@
package com.ruoyi.in.erp.service;
import java.util.List;
import com.ruoyi.in.erp.domain.TransferBillCallback;
/**
* 调拨单回传Service接口
*
* @author ruoyi
* @date 2025-09-17
*/
public interface ITransferBillCallbackService
{
/**
* 查询调拨单回传
*
* @param id 调拨单回传主键
* @return 调拨单回传
*/
public TransferBillCallback selectTransferBillCallbackById(Long id);
/**
* 查询调拨单回传列表
*
* @param transferBillCallback 调拨单回传
* @return 调拨单回传集合
*/
public List<TransferBillCallback> selectTransferBillCallbackList(TransferBillCallback transferBillCallback);
/**
* 新增调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
public int insertTransferBillCallback(TransferBillCallback transferBillCallback);
/**
* 修改调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
public int updateTransferBillCallback(TransferBillCallback transferBillCallback);
/**
* 批量删除调拨单回传
*
* @param ids 需要删除的调拨单回传主键集合
* @return 结果
*/
public int deleteTransferBillCallbackByIds(Long[] ids);
/**
* 删除调拨单回传信息
*
* @param id 调拨单回传主键
* @return 结果
*/
public int deleteTransferBillCallbackById(Long id);
}

View File

@@ -0,0 +1,95 @@
package com.ruoyi.in.erp.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.in.erp.mapper.TransferBillCallbackMapper;
import com.ruoyi.in.erp.domain.TransferBillCallback;
import com.ruoyi.in.erp.service.ITransferBillCallbackService;
/**
* 调拨单回传Service业务层处理
*
* @author ruoyi
* @date 2025-09-17
*/
@Service
public class TransferBillCallbackServiceImpl implements ITransferBillCallbackService
{
@Autowired
private TransferBillCallbackMapper transferBillCallbackMapper;
/**
* 查询调拨单回传
*
* @param id 调拨单回传主键
* @return 调拨单回传
*/
@Override
public TransferBillCallback selectTransferBillCallbackById(Long id)
{
return transferBillCallbackMapper.selectTransferBillCallbackById(id);
}
/**
* 查询调拨单回传列表
*
* @param transferBillCallback 调拨单回传
* @return 调拨单回传
*/
@Override
public List<TransferBillCallback> selectTransferBillCallbackList(TransferBillCallback transferBillCallback)
{
return transferBillCallbackMapper.selectTransferBillCallbackList(transferBillCallback);
}
/**
* 新增调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
@Override
public int insertTransferBillCallback(TransferBillCallback transferBillCallback)
{
transferBillCallback.setCreateTime(DateUtils.getNowDate());
return transferBillCallbackMapper.insertTransferBillCallback(transferBillCallback);
}
/**
* 修改调拨单回传
*
* @param transferBillCallback 调拨单回传
* @return 结果
*/
@Override
public int updateTransferBillCallback(TransferBillCallback transferBillCallback)
{
return transferBillCallbackMapper.updateTransferBillCallback(transferBillCallback);
}
/**
* 批量删除调拨单回传
*
* @param ids 需要删除的调拨单回传主键
* @return 结果
*/
@Override
public int deleteTransferBillCallbackByIds(Long[] ids)
{
return transferBillCallbackMapper.deleteTransferBillCallbackByIds(ids);
}
/**
* 删除调拨单回传信息
*
* @param id 调拨单回传主键
* @return 结果
*/
@Override
public int deleteTransferBillCallbackById(Long id)
{
return transferBillCallbackMapper.deleteTransferBillCallbackById(id);
}
}

View File

@@ -0,0 +1,20 @@
# 入库单据目录说明
## 目录用途
存放入库相关的业务代码和配置文件
## 主要功能
- 处理物料入库业务流程
- 管理入库单据信息
- 处理入库质检和验收
- 入库数据统计和分析
## 目录结构
```
in/
├── config/ # 入库配置文件
├── controller/ # 入库控制器
├── model/ # 入库数据模型
├── service/ # 入库业务逻辑
└── utils/ # 入库相关工具类
```

View File

@@ -0,0 +1,109 @@
package com.ruoyi.in.stockin.controller;
import cn.hutool.core.convert.Convert;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
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;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
/**
* 入库单据Controller
*
* @author ruoyi
* @date 2025-05-20
*/
@RestController
@RequestMapping("/in/stockIn")
public class InStockinController extends BaseController
{
@Autowired
private IInStockinService inStockinService;
@Autowired
private IInStockinFinishService inStockinFinishService;
/**
* 查询入库单据列表
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:list')")
@GetMapping("/list")
public TableDataInfo list(InStockin inStockin)
{
startPage();
List<InStockin> list = new ArrayList<>();
if (inStockin.getStatus()==null || Convert.toInt(inStockin.getStatus())<4){
list = inStockinService.selectInStockinList(inStockin);
}else {
list = inStockinFinishService.selectInStockinFinishListByInStockin(inStockin);
}
return getDataTable(list);
}
/**
* 导出入库单据列表
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:export')")
@Log(title = "入库单据", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InStockin inStockin)
{
List<InStockin> list = inStockinService.selectInStockinList(inStockin);
ExcelUtil<InStockin> util = new ExcelUtil<InStockin>(InStockin.class);
util.exportExcel(response, list, "入库单据数据");
}
/**
* 获取入库单据详细信息
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:query')")
@GetMapping(value = "/{stockinGuid}")
public AjaxResult getInfo(@PathVariable("stockinGuid") String stockinGuid)
{
return success(inStockinService.selectInStockinByStockinGuid(stockinGuid));
}
/**
* 新增入库单据
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:add')")
@Log(title = "入库单据", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InstockInVo instockInVo)
{
return inStockinService.insertInStockin(instockInVo);
}
/**
* 修改入库单据
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:edit')")
@Log(title = "入库单据", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InStockin inStockin)
{
return inStockinService.updateInStockin(inStockin);
}
/**
* 删除入库单据
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:remove')")
@Log(title = "入库单据", businessType = BusinessType.DELETE)
@DeleteMapping("/{stockinGuids}")
public AjaxResult remove(@PathVariable String[] stockinGuids)
{
return toAjax(inStockinService.deleteInStockinByStockinGuids(stockinGuids));
}
}

View File

@@ -0,0 +1,378 @@
package com.ruoyi.in.stockin.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.List;
/**
* 入库单据对象 in_stockin
*
* @author ruoyi
* @date 2025-05-20
*/
public class InStockin extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** GUID */
private String stockinGuid;
/** 入库订单ID */
@Excel(name = "入库订单ID")
private String stockinId;
/** 入库类型 */
@Excel(name = "入库类型")
private String inType;
/** 建立时间 */
@Excel(name = "建立时间")
private String createDate;
/** 创建人 */
private String createManId;
@Excel(name = "创建人")
private String createManName;
/** 单据状态 */
@Excel(name = "单据状态")
private String status;
/** 仓库ID */
@Excel(name = "仓库ID")
private String warehouseId;
@Excel(name = "仓库")
private String warehouseName;
/** 完成日期 */
@Excel(name = " 完成日期")
private String finishDate;
/** erp单号 */
@Excel(name = "erp单号")
private String erpBill;
/** 单据来源 */
@Excel(name = "单据来源")
private String stockSource;
/** 部门编码 */
@Excel(name = "部门编码")
private String departmentNo;
@Excel(name = "部门")
private String departmentName;
/** 客户编码 */
@Excel(name = "客户编码")
private String customerNo;
/** 班组编码 */
@Excel(name = "班组编码")
private String classNo;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String supplierNo;
@Excel(name = "供应商")
private String supplierName;
/** 备用字段1 */
@Excel(name = "备用字段1")
private String spare1;
/** 备用字段2 */
@Excel(name = "备用字段2")
private String spare2;
/** 备用字段4 */
@Excel(name = "备用字段4")
private String spare4;
/** 备用字段3 */
@Excel(name = "备用字段3")
private String spare3;
/** 备用字段5 */
@Excel(name = "备用字段5")
private String spare5;
private String lotNo;
private String materialDesc;
private List<String> typeData;
public List<String> getTypeData() {
return typeData;
}
public void setTypeData(List<String> typeData) {
this.typeData = typeData;
}
public String getLotNo() {
return lotNo;
}
public void setLotNo(String lotNo) {
this.lotNo = lotNo;
}
public String getMaterialDesc() {
return materialDesc;
}
public void setMaterialDesc(String materialDesc) {
this.materialDesc = materialDesc;
}
public String getCreateManName() {
return createManName;
}
public void setCreateManName(String createManName) {
this.createManName = createManName;
}
public String getWarehouseName() {
return warehouseName;
}
public void setWarehouseName(String warehouseName) {
this.warehouseName = warehouseName;
}
public String getDepartmentName() {
return departmentName;
}
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
public String getSupplierName() {
return supplierName;
}
public void setSupplierName(String supplierName) {
this.supplierName = supplierName;
}
public void setStockinGuid(String stockinGuid)
{
this.stockinGuid = stockinGuid;
}
public String getStockinGuid()
{
return stockinGuid;
}
public void setStockinId(String stockinId)
{
this.stockinId = stockinId;
}
public String getStockinId()
{
return stockinId;
}
public void setInType(String inType)
{
this.inType = inType;
}
public String getInType()
{
return inType;
}
public void setCreateDate(String createDate)
{
this.createDate = createDate;
}
public String getCreateDate()
{
return createDate;
}
public void setCreateManId(String createManId)
{
this.createManId = createManId;
}
public String getCreateManId()
{
return createManId;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setWarehouseId(String warehouseId)
{
this.warehouseId = warehouseId;
}
public String getWarehouseId()
{
return warehouseId;
}
public void setFinishDate(String finishDate)
{
this.finishDate = finishDate;
}
public String getFinishDate()
{
return finishDate;
}
public void setErpBill(String erpBill)
{
this.erpBill = erpBill;
}
public String getErpBill()
{
return erpBill;
}
public void setStockSource(String stockSource)
{
this.stockSource = stockSource;
}
public String getStockSource()
{
return stockSource;
}
public void setDepartmentNo(String departmentNo)
{
this.departmentNo = departmentNo;
}
public String getDepartmentNo()
{
return departmentNo;
}
public void setCustomerNo(String customerNo)
{
this.customerNo = customerNo;
}
public String getCustomerNo()
{
return customerNo;
}
public void setClassNo(String classNo)
{
this.classNo = classNo;
}
public String getClassNo()
{
return classNo;
}
public void setSupplierNo(String supplierNo)
{
this.supplierNo = supplierNo;
}
public String getSupplierNo()
{
return supplierNo;
}
public void setSpare1(String spare1)
{
this.spare1 = spare1;
}
public String getSpare1()
{
return spare1;
}
public void setSpare2(String spare2)
{
this.spare2 = spare2;
}
public String getSpare2()
{
return spare2;
}
public void setSpare4(String spare4)
{
this.spare4 = spare4;
}
public String getSpare4()
{
return spare4;
}
public void setSpare3(String spare3)
{
this.spare3 = spare3;
}
public String getSpare3()
{
return spare3;
}
public void setSpare5(String spare5)
{
this.spare5 = spare5;
}
public String getSpare5()
{
return spare5;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("stockinGuid", getStockinGuid())
.append("stockinId", getStockinId())
.append("inType", getInType())
.append("createDate", getCreateDate())
.append("createManId", getCreateManId())
.append("status", getStatus())
.append("warehouseId", getWarehouseId())
.append("finishDate", getFinishDate())
.append("erpBill", getErpBill())
.append("stockSource", getStockSource())
.append("departmentNo", getDepartmentNo())
.append("customerNo", getCustomerNo())
.append("classNo", getClassNo())
.append("supplierNo", getSupplierNo())
.append("spare1", getSpare1())
.append("spare2", getSpare2())
.append("spare4", getSpare4())
.append("spare3", getSpare3())
.append("spare5", getSpare5())
.toString();
}
}

View File

@@ -0,0 +1,38 @@
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 supplierId;
@NotNull
private String inType;
@NotNull
private String erpBill;
@NotNull
private String productType;
private String remark;
private List<BasProduct> productVoList;
}

View File

@@ -0,0 +1,66 @@
package com.ruoyi.in.stockin.mapper;
import com.ruoyi.in.stockin.domain.InStockin;
import java.util.List;
/**
* 入库单据Mapper接口
*
* @author ruoyi
* @date 2025-05-20
*/
public interface InStockinMapper
{
/**
* 查询入库单据
*
* @param stockinGuid 入库单据主键
* @return 入库单据
*/
public InStockin selectInStockinByStockinGuid(String stockinGuid);
/**
* 查询入库单据列表
*
* @param inStockin 入库单据
* @return 入库单据集合
*/
public List<InStockin> selectInStockinList(InStockin inStockin);
/**
* 新增入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
public int insertInStockin(InStockin inStockin);
/**
* 修改入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
public int updateInStockin(InStockin inStockin);
/**
* 删除入库单据
*
* @param stockinGuid 入库单据主键
* @return 结果
*/
public int deleteInStockinByStockinGuid(String stockinGuid);
/**
* 批量删除入库单据
*
* @param stockinGuids 需要删除的数据主键集合
* @return 结果
*/
public int deleteInStockinByStockinGuids(String[] stockinGuids);
void insertInStockinHistory(InStockin inStockin);
List<InStockin> selectStockinByDetail(String stockinDetailId);
}

View File

@@ -0,0 +1,75 @@
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;
/**
* 入库单据Service接口
*
* @author ruoyi
* @date 2025-05-20
*/
public interface IInStockinService
{
/**
* 查询入库单据
*
* @param stockinGuid 入库单据主键
* @return 入库单据
*/
public InStockin selectInStockinByStockinGuid(String stockinGuid);
/**
* 查询入库单据列表
*
* @param inStockin 入库单据
* @return 入库单据集合
*/
public List<InStockin> selectInStockinList(InStockin inStockin);
public List<InStockin> selectInStockinListApi(InStockin inStockin);
/**
* 新增入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
public int insertInStockin(InStockin inStockin);
/**
* 新增入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
public AjaxResult insertInStockin(InstockInVo inStockin);
/**
* 修改入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
public AjaxResult updateInStockin(InStockin inStockin);
/**
* 批量删除入库单据
*
* @param stockinGuids 需要删除的入库单据主键集合
* @return 结果
*/
public int deleteInStockinByStockinGuids(String[] stockinGuids);
/**
* 删除入库单据信息
*
* @param stockinGuid 入库单据主键
* @return 结果
*/
public int deleteInStockinByStockinGuid(String stockinGuid);
public List<InStockin> selectStockinByDetail(String stockinDetailId);
}

View File

@@ -0,0 +1,219 @@
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;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
* 入库单据Service业务层处理
*
* @author ruoyi
* @date 2025-05-20
*/
@Service
public class InStockinServiceImpl implements IInStockinService
{
@Autowired
private InStockinMapper inStockinMapper;
@Autowired
private IInStockinDetailService iInStockinDetailService;
@Autowired
private IBasJobIdService iBasJobIdService;
/**
* 查询入库单据
*
* @param stockinGuid 入库单据主键
* @return 入库单据
*/
@Override
public InStockin selectInStockinByStockinGuid(String stockinGuid)
{
return inStockinMapper.selectInStockinByStockinGuid(stockinGuid);
}
/**
* 查询入库单据列表
*
* @param inStockin 入库单据
* @return 入库单据
*/
@Override
@DataScope(warehouseAlias = "is2")
public List<InStockin> selectInStockinList(InStockin inStockin)
{
return inStockinMapper.selectInStockinList(inStockin);
}
/**
* 查询入库单据列表
*
* @param inStockin 入库单据
* @return 入库单据
*/
@Override
public List<InStockin> selectInStockinListApi(InStockin inStockin)
{
return inStockinMapper.selectInStockinList(inStockin);
}
/**
* 新增入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
@Override
public int insertInStockin(InStockin 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();
String rkdId = iBasJobIdService.getJobId("RKD");
inStockin.setStockinGuid(rkdId);
inStockin.setStockinId(rkdId);
inStockin.setCreateDate(DateUtil.formatDateTime(DateUtil.date()));
inStockin.setCreateManId(Convert.toStr(SecurityUtils.getUserId()));
inStockin.setDepartmentNo(Convert.toStr(SecurityUtils.getDeptId()));
//inStockin.setSupplierNo(inStockinVo.getSupplierId());
inStockin.setErpBill(inStockinVo.getErpBill());
inStockin.setInType(inStockinVo.getInType());
inStockin.setWarehouseId(inStockinVo.getWarehouseId());
inStockin.setStatus("1");
inStockin.setStockSource("1");
inStockin.setSpare1(inStockinVo.getProductType());
inStockin.setSpare5(inStockinVo.getRemark());
inStockinMapper.insertInStockin(inStockin);
for (int i = 1; i <= productVoList.size(); i++) {
BasProduct basProduct = productVoList.get(i-1);
InStockinDetail inStockinDetail = new InStockinDetail();
inStockinDetail.setSupplierId(basProduct.getSupplierId());
BeanUtil.copyProperties(basProduct,inStockinDetail);
inStockinDetail.setStockinGuid(inStockin.getStockinGuid());
inStockinDetail.setStockinDetailId(inStockin.getStockinId()+"-"+i);
inStockinDetail.setStockinId(inStockin.getStockinId());
iInStockinDetailService.insertInStockinDetail(inStockinDetail);
}
return AjaxResult.success();
}
/**
* 修改入库单据
*
* @param inStockin 入库单据
* @return 结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
public AjaxResult updateInStockin(InStockin inStockin)
{
InStockin old = selectInStockinByStockinGuid(inStockin.getStockinGuid());
inStockinMapper.updateInStockin(inStockin);
if ("5".equals(inStockin.getStatus())){
//作废
if (!"1".equals(old.getStatus())){
throw new RuntimeException("单据状态非未执行状态!");
}
inStockin.setFinishDate(DateUtil.formatDateTime(DateUtil.date()));
inStockinMapper.updateInStockin(inStockin);
//插入历史单据
insertInStockinHistory(inStockin);
}else if ("2".equals(inStockin.getStatus())){
//审核
if (!"1".equals(old.getStatus())){
throw new RuntimeException("单据状态非未执行状态!");
}
}else if ("4".equals(inStockin.getStatus())){
//确认
if (!"3".equals(old.getStatus())){
throw new RuntimeException("单据状态非正执行状态!");
}
//对比扫码数量 与实际入库数量是否一致
InStockinDetail inStockinDetailParam = new InStockinDetail();
inStockinDetailParam.setStockinGuid(inStockin.getStockinGuid());
List<InStockinDetail> list = iInStockinDetailService.selectInStockinDetailList(inStockinDetailParam);
if (CollUtil.isNotEmpty(list)){
boolean b = list.stream().allMatch(x -> x.getAssignNum().equals(x.getScanNum()));
if (!b){
throw new RuntimeException("扫码数量与实际入库数量不一致!");
}
}
inStockin.setFinishDate(DateUtil.formatDateTime(DateUtil.date()));
inStockinMapper.updateInStockin(inStockin);
insertInStockinHistory(inStockin);
}
return AjaxResult.success();
}
/**
* 插入入库单据 入库子单据历史
* 删除入库单据
* 删除入库单据子单据
* @param inStockin
*/
private void insertInStockinHistory(InStockin inStockin) {
inStockin = selectInStockinByStockinGuid(inStockin.getStockinGuid());
//插入历史单据
inStockinMapper.insertInStockinHistory(inStockin);
iInStockinDetailService.insertInStockinDetailHistory(inStockin);
inStockinMapper.deleteInStockinByStockinGuid(inStockin.getStockinGuid());
iInStockinDetailService.deleteInStockinDetailByStockinGuid(inStockin.getStockinGuid());
}
/**
* 批量删除入库单据
*
* @param stockinGuids 需要删除的入库单据主键
* @return 结果
*/
@Override
public int deleteInStockinByStockinGuids(String[] stockinGuids)
{
return inStockinMapper.deleteInStockinByStockinGuids(stockinGuids);
}
/**
* 删除入库单据信息
*
* @param stockinGuid 入库单据主键
* @return 结果
*/
@Override
public int deleteInStockinByStockinGuid(String stockinGuid)
{
return inStockinMapper.deleteInStockinByStockinGuid(stockinGuid);
}
@Override
public List<InStockin> selectStockinByDetail(String stockinDetailId) {
return inStockinMapper.selectStockinByDetail(stockinDetailId);
}
}

View File

@@ -0,0 +1,121 @@
package com.ruoyi.in.stockindetail.controller;
import cn.hutool.core.convert.Convert;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import com.ruoyi.in.stockindetailfinish.service.IInStockinDetailFinishService;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 入库单据子表Controller
*
* @author ruoyi
* @date 2025-05-20
*/
@RestController
@RequestMapping("/in/stockInDetail")
public class InStockinDetailController extends BaseController
{
@Autowired
private IInStockinDetailService inStockinDetailService;
@Autowired
private IInStockinDetailFinishService inStockinDetailFinishService;
/**
* 查询入库单据子表列表
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:list')")
@GetMapping("/list")
public TableDataInfo list(InStockinDetail inStockinDetail)
{
startPage();
List<InStockinDetail> list = new ArrayList<>();
if (inStockinDetail.getStatus()==null ||Convert.toInt(inStockinDetail.getStatus())<4){
list = inStockinDetailService.selectInStockinDetailList(inStockinDetail);
}else {
list = inStockinDetailFinishService.selectInStockinDetailList(inStockinDetail);
}
return getDataTable(list);
}
/**
* 导出入库单据子表列表
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:export')")
@Log(title = "入库单据子表", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InStockinDetail inStockinDetail)
{
List<InStockinDetail> list = inStockinDetailService.selectInStockinDetailList(inStockinDetail);
ExcelUtil<InStockinDetail> util = new ExcelUtil<InStockinDetail>(InStockinDetail.class);
util.exportExcel(response, list, "入库单据子表数据");
}
/**
* 获取入库单据子表详细信息
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:query')")
@GetMapping(value = "/{stockinDetailId}")
public AjaxResult getInfo(@PathVariable("stockinDetailId") String stockinDetailId)
{
return success(inStockinDetailService.selectInStockinDetailByStockinDetailId(stockinDetailId));
}
/**
* 新增入库单据子表
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:add')")
@Log(title = "入库单据子表", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InStockinDetail inStockinDetail)
{
return toAjax(inStockinDetailService.insertInStockinDetail(inStockinDetail));
}
/**
* 修改入库单据子表
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:edit')")
@Log(title = "入库单据子表", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InStockinDetail inStockinDetail)
{
return toAjax(inStockinDetailService.updateInStockinDetail(inStockinDetail));
}
/**
* 删除入库单据子表
*/
@PreAuthorize("@ss.hasPermi('in:stockInDetail:remove')")
@Log(title = "入库单据子表", businessType = BusinessType.DELETE)
@DeleteMapping("/{stockinDetailIds}")
public AjaxResult remove(@PathVariable String[] stockinDetailIds)
{
return toAjax(inStockinDetailService.deleteInStockinDetailByStockinDetailIds(stockinDetailIds));
}
/**
* 打印条码
* @param param
* @return
*/
@PreAuthorize("@ss.hasPermi('in:stockIn:barcodePrinting')")
@Log(title = "入库单据", businessType = BusinessType.INSERT)
@PostMapping("barcodePrinting")
public AjaxResult barcodePrinting(@RequestBody Map<String,Object> param) {
return inStockinDetailService.barcodePrinting(param);
}
}

View File

@@ -0,0 +1,153 @@
package com.ruoyi.in.stockindetail.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.domain.ExtraField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
/**
* 入库单据子表对象 in_stockin_detail
*
* @author ruoyi
* @date 2025-05-20
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class InStockinDetail extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 子单ID */
private String stockinDetailId;
/** 主单GUID */
@Excel(name = "主单GUID")
private String stockinGuid;
/** 主单ID */
@Excel(name = "主单ID")
private String stockinId;
/** 批次号 */
@Excel(name = "批次号")
private String lotNo;
/** 物料ID */
@Excel(name = "物料ID")
private String productGuid;
/** 物料编码 */
@Excel(name = "物料编码")
private String productId;
@Excel(name = "物料名称")
private String productName;
/** 计划数量 */
@Excel(name = "计划数量")
private String quantity;
/** 计划数量(箱) */
@Excel(name = "计划数量(箱)")
private String quantityX;
/** 计划数量(件) */
@Excel(name = "计划数量(件)")
private String quantityJ;
/** 参考单价 */
@Excel(name = "参考单价")
private String price;
/** 品牌 */
@Excel(name = "品牌")
private String cargoNo;
@Excel(name = "扫码数量")
private String scanNum;
@Excel(name = "扫码数量(箱)")
private String scanNumX;
@Excel(name = "扫码数量(件)")
private String scanNumJ;
/** 实际数量 */
@Excel(name = "实际数量")
private String assignNum;
/** 实际数量(箱) */
@Excel(name = "实际数量(箱)")
private String assignNumX;
/** 实际数量(件) */
@Excel(name = "实际数量(件)")
private String assignNumJ;
/** 入库日期 */
@Excel(name = "入库日期")
private String printDate;
/** 单据状态 */
@Excel(name = "单据状态")
private String stockStatus;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String supplierId;
@Excel(name = "供应商名称")
private String supplierName;
/** 客户编码 */
@Excel(name = "客户编码")
private String customerId;
/** 单位 */
@Excel(name = "单位")
private String unit;
/** 规格 */
@Excel(name = "规格")
private String spec;
/** 备用字段1 */
@Excel(name = "型号")
private String spare1;
/** 备用字段2 */
@Excel(name = "净重")
private String spare2;
/** 备用字段3 */
@Excel(name = "颜色")
private String spare3;
/** 备用字段4 */
@Excel(name = "序列号")
private String spare4;
/** 备用字段5 */
@Excel(name = "电压")
private String spare5;
/** 备用字段6 */
@Excel(name = "功率")
private String spare6;
@Excel(name = "相位")
private String spare7;
@Excel(name = "毛重")
private String spare8;
private String spare9;
private String status;
private ExtraField extraField;
private String warehouseName;
private String warehouseId;
}

View File

@@ -0,0 +1,72 @@
package com.ruoyi.in.stockindetail.mapper;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 入库单据子表Mapper接口
*
* @author ruoyi
* @date 2025-05-20
*/
public interface InStockinDetailMapper
{
/**
* 查询入库单据子表
*
* @param stockinDetailId 入库单据子表主键
* @return 入库单据子表
*/
public InStockinDetail selectInStockinDetailByStockinDetailId(String stockinDetailId);
/**
* 查询入库单据子表列表
*
* @param inStockinDetail 入库单据子表
* @return 入库单据子表集合
*/
public List<InStockinDetail> selectInStockinDetailList(InStockinDetail inStockinDetail);
/**
* 新增入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
public int insertInStockinDetail(InStockinDetail inStockinDetail);
/**
* 修改入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
public int updateInStockinDetail(InStockinDetail inStockinDetail);
/**
* 删除入库单据子表
*
* @param stockinDetailId 入库单据子表主键
* @return 结果
*/
public int deleteInStockinDetailByStockinDetailId(String stockinDetailId);
/**
* 批量删除入库单据子表
*
* @param stockinDetailIds 需要删除的数据主键集合
* @return 结果
*/
public int deleteInStockinDetailByStockinDetailIds(String[] stockinDetailIds);
void insertInStockinDetailList(@Param("list") List<InStockinDetail> inStockinDetailList);
void insertInStockinDetailHistory(InStockin inStockin);
void deleteInStockinDetailByStockinGuid(String stockinGuid);
InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail);
}

View File

@@ -0,0 +1,84 @@
package com.ruoyi.in.stockindetail.service;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import java.util.List;
import java.util.Map;
/**
* 入库单据子表Service接口
*
* @author ruoyi
* @date 2025-05-20
*/
public interface IInStockinDetailService
{
/**
* 查询入库单据子表
*
* @param stockinDetailId 入库单据子表主键
* @return 入库单据子表
*/
public InStockinDetail selectInStockinDetailByStockinDetailId(String stockinDetailId);
/**
* 查询入库单据子表列表
*
* @param inStockinDetail 入库单据子表
* @return 入库单据子表集合
*/
public List<InStockinDetail> selectInStockinDetailList(InStockinDetail inStockinDetail);
/**
* 新增入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
public int insertInStockinDetail(InStockinDetail inStockinDetail);
/**
* 修改入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
public int updateInStockinDetail(InStockinDetail inStockinDetail);
/**
* 批量删除入库单据子表
*
* @param stockinDetailIds 需要删除的入库单据子表主键集合
* @return 结果
*/
public int deleteInStockinDetailByStockinDetailIds(String[] stockinDetailIds);
/**
* 删除入库单据子表信息
*
* @param stockinDetailId 入库单据子表主键
* @return 结果
*/
public int deleteInStockinDetailByStockinDetailId(String stockinDetailId);
/**
* 批量插入入库子单
* @param inStockinDetailList
*/
void insertInStockinDetailList(List<InStockinDetail> inStockinDetailList);
/**
* 插入历史数据
* @param inStockin
*/
void insertInStockinDetailHistory(InStockin inStockin);
void deleteInStockinDetailByStockinGuid(String stockinGuid);
AjaxResult barcodePrinting(Map<String,Object> stockinDetailId);
public InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail);
}

View File

@@ -0,0 +1,130 @@
package com.ruoyi.in.stockindetail.service.impl;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.mapper.InStockinDetailMapper;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* 入库单据子表Service业务层处理
*
* @author ruoyi
* @date 2025-05-20
*/
@Service
public class InStockinDetailServiceImpl implements IInStockinDetailService
{
@Autowired
private InStockinDetailMapper inStockinDetailMapper;
/**
* 查询入库单据子表
*
* @param stockinDetailId 入库单据子表主键
* @return 入库单据子表
*/
@Override
public InStockinDetail selectInStockinDetailByStockinDetailId(String stockinDetailId)
{
return inStockinDetailMapper.selectInStockinDetailByStockinDetailId(stockinDetailId);
}
/**
* 查询入库单据子表列表
*
* @param inStockinDetail 入库单据子表
* @return 入库单据子表
*/
@Override
public List<InStockinDetail> selectInStockinDetailList(InStockinDetail inStockinDetail)
{
/*for (InStockinDetail res : inStockinDetails) {
res.setExtraField(JSONUtil.toBean(res.getSpare1(), ExtraField.class));
}*/
return inStockinDetailMapper.selectInStockinDetailList(inStockinDetail);
}
/**
* 新增入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
@Override
public int insertInStockinDetail(InStockinDetail inStockinDetail)
{
return inStockinDetailMapper.insertInStockinDetail(inStockinDetail);
}
/**
* 修改入库单据子表
*
* @param inStockinDetail 入库单据子表
* @return 结果
*/
@Override
public int updateInStockinDetail(InStockinDetail inStockinDetail)
{
return inStockinDetailMapper.updateInStockinDetail(inStockinDetail);
}
/**
* 批量删除入库单据子表
*
* @param stockinDetailIds 需要删除的入库单据子表主键
* @return 结果
*/
@Override
public int deleteInStockinDetailByStockinDetailIds(String[] stockinDetailIds)
{
return inStockinDetailMapper.deleteInStockinDetailByStockinDetailIds(stockinDetailIds);
}
/**
* 删除入库单据子表信息
*
* @param stockinDetailId 入库单据子表主键
* @return 结果
*/
@Override
public int deleteInStockinDetailByStockinDetailId(String stockinDetailId)
{
return inStockinDetailMapper.deleteInStockinDetailByStockinDetailId(stockinDetailId);
}
@Override
public void insertInStockinDetailList(List<InStockinDetail> inStockinDetailList) {
inStockinDetailMapper.insertInStockinDetailList(inStockinDetailList);
}
@Override
public void insertInStockinDetailHistory(InStockin inStockin) {
inStockinDetailMapper.insertInStockinDetailHistory(inStockin);
}
@Override
public void deleteInStockinDetailByStockinGuid(String stockinGuid) {
inStockinDetailMapper.deleteInStockinDetailByStockinGuid(stockinGuid);
}
@Override
public AjaxResult barcodePrinting(Map<String,Object> map) {
//System.out.println(map);
return AjaxResult.success();
}
@Override
@DataScope(warehouseAlias = "ist")
public InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail) {
return inStockinDetailMapper.selectStockinByDetailById(inStockinDetail);
}
}

View File

@@ -0,0 +1,98 @@
package com.ruoyi.in.stockindetailfinish.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.in.stockindetailfinish.domain.InStockinDetailFinish;
import com.ruoyi.in.stockindetailfinish.service.IInStockinDetailFinishService;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 历史入库单据子信息Controller
*
* @author ruoyi
* @date 2025-05-28
*/
@RestController
@RequestMapping("/in/stockinDetailFinish")
public class InStockinDetailFinishController extends BaseController
{
@Autowired
private IInStockinDetailFinishService inStockinDetailFinishService;
/**
* 查询历史入库单据子信息列表
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:list')")
@GetMapping("/list")
public TableDataInfo list(InStockinDetailFinish inStockinDetailFinish)
{
startPage();
List<InStockinDetailFinish> list = inStockinDetailFinishService.selectInStockinDetailFinishList(inStockinDetailFinish);
return getDataTable(list);
}
/**
* 导出历史入库单据子信息列表
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:export')")
@Log(title = "历史入库单据子信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InStockinDetailFinish inStockinDetailFinish)
{
List<InStockinDetailFinish> list = inStockinDetailFinishService.selectInStockinDetailFinishList(inStockinDetailFinish);
ExcelUtil<InStockinDetailFinish> util = new ExcelUtil<InStockinDetailFinish>(InStockinDetailFinish.class);
util.exportExcel(response, list, "历史入库单据子信息数据");
}
/**
* 获取历史入库单据子信息详细信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:query')")
@GetMapping(value = "/{stockinDetailId}")
public AjaxResult getInfo(@PathVariable("stockinDetailId") String stockinDetailId)
{
return success(inStockinDetailFinishService.selectInStockinDetailFinishByStockinDetailId(stockinDetailId));
}
/**
* 新增历史入库单据子信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:add')")
@Log(title = "历史入库单据子信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InStockinDetailFinish inStockinDetailFinish)
{
return toAjax(inStockinDetailFinishService.insertInStockinDetailFinish(inStockinDetailFinish));
}
/**
* 修改历史入库单据子信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:edit')")
@Log(title = "历史入库单据子信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InStockinDetailFinish inStockinDetailFinish)
{
return toAjax(inStockinDetailFinishService.updateInStockinDetailFinish(inStockinDetailFinish));
}
/**
* 删除历史入库单据子信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinDetailFinish:remove')")
@Log(title = "历史入库单据子信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{stockinDetailIds}")
public AjaxResult remove(@PathVariable String[] stockinDetailIds)
{
return toAjax(inStockinDetailFinishService.deleteInStockinDetailFinishByStockinDetailIds(stockinDetailIds));
}
}

View File

@@ -0,0 +1,148 @@
package com.ruoyi.in.stockindetailfinish.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.domain.ExtraField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 历史入库单据子信息对象 in_stockin_detail_finish
*
* @author ruoyi
* @date 2025-05-28
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InStockinDetailFinish extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 子单ID */
private String stockinDetailId;
/** 主单GUID */
@Excel(name = "主单GUID")
private String stockinGuid;
/** 主单ID */
@Excel(name = "主单ID")
private String stockinId;
/** 批次号 */
@Excel(name = "批次号")
private String lotNo;
/** 物料ID */
@Excel(name = "物料ID")
private String productGuid;
/** 物料编码 */
@Excel(name = "物料编码")
private String productId;
/** 计划数量 */
@Excel(name = "计划数量")
private String quantity;
/** 计划数量(箱) */
@Excel(name = "计划数量(箱)")
private String quantityX;
/** 计划数量(件) */
@Excel(name = "计划数量(件)")
private String quantityJ;
/** 参考单价 */
@Excel(name = "参考单价")
private String price;
/** 品牌 */
@Excel(name = "品牌")
private String cargoNo;
@Excel(name = "扫码数量")
private String scanNum;
@Excel(name = "扫码数量(箱)")
private String scanNumX;
@Excel(name = "扫码数量(件)")
private String scanNumJ;
/** 实际数量 */
@Excel(name = "实际数量")
private String assignNum;
/** 实际数量(箱) */
@Excel(name = "实际数量(箱)")
private String assignNumX;
/** 实际数量(件) */
@Excel(name = "实际数量(件)")
private String assignNumJ;
/** 入库日期 */
@Excel(name = "入库日期")
private String printDate;
/** 单据状态 */
@Excel(name = "单据状态")
private String stockStatus;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String supplierId;
/** 客户编码 */
@Excel(name = "客户编码")
private String customerId;
/** 单位 */
@Excel(name = "单位")
private String unit;
/** 规格 */
@Excel(name = "规格")
private String spec;
/** 备用字段1 */
@Excel(name = "型号")
private String spare1;
/** 备用字段2 */
@Excel(name = "净重")
private String spare2;
/** 备用字段3 */
@Excel(name = "颜色")
private String spare3;
/** 备用字段4 */
@Excel(name = "序列号")
private String spare4;
/** 备用字段5 */
@Excel(name = "电压")
private String spare5;
/** 备用字段6 */
@Excel(name = "功率")
private String spare6;
@Excel(name = "相位")
private String spare7;
@Excel(name = "毛重")
private String spare8;
private String spare9;
private String status;
private ExtraField extraField;
private String warehouseName;
private String warehouseId;
}

View File

@@ -0,0 +1,65 @@
package com.ruoyi.in.stockindetailfinish.mapper;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetailfinish.domain.InStockinDetailFinish;
import java.util.List;
/**
* 历史入库单据子信息Mapper接口
*
* @author ruoyi
* @date 2025-05-28
*/
public interface InStockinDetailFinishMapper
{
/**
* 查询历史入库单据子信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 历史入库单据子信息
*/
public InStockinDetailFinish selectInStockinDetailFinishByStockinDetailId(String stockinDetailId);
/**
* 查询历史入库单据子信息列表
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 历史入库单据子信息集合
*/
public List<InStockinDetailFinish> selectInStockinDetailFinishList(InStockinDetailFinish inStockinDetailFinish);
/**
* 新增历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
public int insertInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish);
/**
* 修改历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
public int updateInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish);
/**
* 删除历史入库单据子信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 结果
*/
public int deleteInStockinDetailFinishByStockinDetailId(String stockinDetailId);
/**
* 批量删除历史入库单据子信息
*
* @param stockinDetailIds 需要删除的数据主键集合
* @return 结果
*/
public int deleteInStockinDetailFinishByStockinDetailIds(String[] stockinDetailIds);
List<InStockinDetail> selectInStockinDetailFinishListByInStockinDetail(InStockinDetail inStockinDetail);
}

View File

@@ -0,0 +1,65 @@
package com.ruoyi.in.stockindetailfinish.service;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetailfinish.domain.InStockinDetailFinish;
import java.util.List;
/**
* 历史入库单据子信息Service接口
*
* @author ruoyi
* @date 2025-05-28
*/
public interface IInStockinDetailFinishService
{
/**
* 查询历史入库单据子信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 历史入库单据子信息
*/
public InStockinDetailFinish selectInStockinDetailFinishByStockinDetailId(String stockinDetailId);
/**
* 查询历史入库单据子信息列表
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 历史入库单据子信息集合
*/
public List<InStockinDetailFinish> selectInStockinDetailFinishList(InStockinDetailFinish inStockinDetailFinish);
/**
* 新增历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
public int insertInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish);
/**
* 修改历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
public int updateInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish);
/**
* 批量删除历史入库单据子信息
*
* @param stockinDetailIds 需要删除的历史入库单据子信息主键集合
* @return 结果
*/
public int deleteInStockinDetailFinishByStockinDetailIds(String[] stockinDetailIds);
/**
* 删除历史入库单据子信息信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 结果
*/
public int deleteInStockinDetailFinishByStockinDetailId(String stockinDetailId);
List<InStockinDetail> selectInStockinDetailList(InStockinDetail inStockinDetail);
}

View File

@@ -0,0 +1,102 @@
package com.ruoyi.in.stockindetailfinish.service.impl;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetailfinish.domain.InStockinDetailFinish;
import com.ruoyi.in.stockindetailfinish.mapper.InStockinDetailFinishMapper;
import com.ruoyi.in.stockindetailfinish.service.IInStockinDetailFinishService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 历史入库单据子信息Service业务层处理
*
* @author ruoyi
* @date 2025-05-28
*/
@Service
public class InStockinDetailFinishServiceImpl implements IInStockinDetailFinishService
{
@Autowired
private InStockinDetailFinishMapper inStockinDetailFinishMapper;
/**
* 查询历史入库单据子信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 历史入库单据子信息
*/
@Override
public InStockinDetailFinish selectInStockinDetailFinishByStockinDetailId(String stockinDetailId)
{
return inStockinDetailFinishMapper.selectInStockinDetailFinishByStockinDetailId(stockinDetailId);
}
/**
* 查询历史入库单据子信息列表
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 历史入库单据子信息
*/
@Override
public List<InStockinDetailFinish> selectInStockinDetailFinishList(InStockinDetailFinish inStockinDetailFinish)
{
return inStockinDetailFinishMapper.selectInStockinDetailFinishList(inStockinDetailFinish);
}
/**
* 新增历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
@Override
public int insertInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish)
{
return inStockinDetailFinishMapper.insertInStockinDetailFinish(inStockinDetailFinish);
}
/**
* 修改历史入库单据子信息
*
* @param inStockinDetailFinish 历史入库单据子信息
* @return 结果
*/
@Override
public int updateInStockinDetailFinish(InStockinDetailFinish inStockinDetailFinish)
{
return inStockinDetailFinishMapper.updateInStockinDetailFinish(inStockinDetailFinish);
}
/**
* 批量删除历史入库单据子信息
*
* @param stockinDetailIds 需要删除的历史入库单据子信息主键
* @return 结果
*/
@Override
public int deleteInStockinDetailFinishByStockinDetailIds(String[] stockinDetailIds)
{
return inStockinDetailFinishMapper.deleteInStockinDetailFinishByStockinDetailIds(stockinDetailIds);
}
/**
* 删除历史入库单据子信息信息
*
* @param stockinDetailId 历史入库单据子信息主键
* @return 结果
*/
@Override
public int deleteInStockinDetailFinishByStockinDetailId(String stockinDetailId)
{
return inStockinDetailFinishMapper.deleteInStockinDetailFinishByStockinDetailId(stockinDetailId);
}
@Override
public List<InStockinDetail> selectInStockinDetailList(InStockinDetail inStockinDetail) {
return inStockinDetailFinishMapper.selectInStockinDetailFinishListByInStockinDetail(inStockinDetail);
}
}

View File

@@ -0,0 +1,98 @@
package com.ruoyi.in.stockinfinish.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.in.stockinfinish.domain.InStockinFinish;
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 历史入库单据主信息Controller
*
* @author ruoyi
* @date 2025-05-28
*/
@RestController
@RequestMapping("/in/stockinFinish")
public class InStockinFinishController extends BaseController
{
@Autowired
private IInStockinFinishService inStockinFinishService;
/**
* 查询历史入库单据主信息列表
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:list')")
@GetMapping("/list")
public TableDataInfo list(InStockinFinish inStockinFinish)
{
startPage();
List<InStockinFinish> list = inStockinFinishService.selectInStockinFinishList(inStockinFinish);
return getDataTable(list);
}
/**
* 导出历史入库单据主信息列表
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:export')")
@Log(title = "历史入库单据主信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InStockinFinish inStockinFinish)
{
List<InStockinFinish> list = inStockinFinishService.selectInStockinFinishList(inStockinFinish);
ExcelUtil<InStockinFinish> util = new ExcelUtil<InStockinFinish>(InStockinFinish.class);
util.exportExcel(response, list, "历史入库单据主信息数据");
}
/**
* 获取历史入库单据主信息详细信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:query')")
@GetMapping(value = "/{stockinGuid}")
public AjaxResult getInfo(@PathVariable("stockinGuid") String stockinGuid)
{
return success(inStockinFinishService.selectInStockinFinishByStockinGuid(stockinGuid));
}
/**
* 新增历史入库单据主信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:add')")
@Log(title = "历史入库单据主信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InStockinFinish inStockinFinish)
{
return toAjax(inStockinFinishService.insertInStockinFinish(inStockinFinish));
}
/**
* 修改历史入库单据主信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:edit')")
@Log(title = "历史入库单据主信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InStockinFinish inStockinFinish)
{
return toAjax(inStockinFinishService.updateInStockinFinish(inStockinFinish));
}
/**
* 删除历史入库单据主信息
*/
@PreAuthorize("@ss.hasPermi('in:stockinFinish:remove')")
@Log(title = "历史入库单据主信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{stockinGuids}")
public AjaxResult remove(@PathVariable String[] stockinGuids)
{
return toAjax(inStockinFinishService.deleteInStockinFinishByStockinGuids(stockinGuids));
}
}

View File

@@ -0,0 +1,307 @@
package com.ruoyi.in.stockinfinish.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 历史入库单据主信息对象 in_stockin_finish
*
* @author ruoyi
* @date 2025-05-28
*/
public class InStockinFinish extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** GUID */
private String stockinGuid;
/** 入库订单ID */
@Excel(name = "入库订单ID")
private String stockinId;
/** 入库类型 */
@Excel(name = "入库类型")
private String inType;
/** 建立时间 */
@Excel(name = "建立时间")
private String createDate;
/** 创建人 */
@Excel(name = "创建人")
private String createManId;
/** 单据状态 */
@Excel(name = "单据状态")
private String status;
/** 仓库ID */
@Excel(name = "仓库ID")
private String warehouseId;
/** 完成日期 */
@Excel(name = " 完成日期")
private String finishDate;
/** erp单号 */
@Excel(name = "erp单号")
private String erpBill;
/** 单据来源 */
@Excel(name = "单据来源")
private String stockSource;
/** 部门编码 */
@Excel(name = "部门编码")
private String departmentNo;
/** 客户编码 */
@Excel(name = "客户编码")
private String customerNo;
/** 班组编码 */
@Excel(name = "班组编码")
private String classNo;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String supplierNo;
/** 备用字段1 */
@Excel(name = "备用字段1")
private String spare1;
/** 备用字段2 */
@Excel(name = "备用字段2")
private String spare2;
/** 备用字段3 */
@Excel(name = "备用字段3")
private String spare3;
/** 备用字段4 */
@Excel(name = "备用字段4")
private String spare4;
/** 备用字段5 */
@Excel(name = "备用字段5")
private String spare5;
public void setStockinGuid(String stockinGuid)
{
this.stockinGuid = stockinGuid;
}
public String getStockinGuid()
{
return stockinGuid;
}
public void setStockinId(String stockinId)
{
this.stockinId = stockinId;
}
public String getStockinId()
{
return stockinId;
}
public void setInType(String inType)
{
this.inType = inType;
}
public String getInType()
{
return inType;
}
public void setCreateDate(String createDate)
{
this.createDate = createDate;
}
public String getCreateDate()
{
return createDate;
}
public void setCreateManId(String createManId)
{
this.createManId = createManId;
}
public String getCreateManId()
{
return createManId;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setWarehouseId(String warehouseId)
{
this.warehouseId = warehouseId;
}
public String getWarehouseId()
{
return warehouseId;
}
public void setFinishDate(String finishDate)
{
this.finishDate = finishDate;
}
public String getFinishDate()
{
return finishDate;
}
public void setErpBill(String erpBill)
{
this.erpBill = erpBill;
}
public String getErpBill()
{
return erpBill;
}
public void setStockSource(String stockSource)
{
this.stockSource = stockSource;
}
public String getStockSource()
{
return stockSource;
}
public void setDepartmentNo(String departmentNo)
{
this.departmentNo = departmentNo;
}
public String getDepartmentNo()
{
return departmentNo;
}
public void setCustomerNo(String customerNo)
{
this.customerNo = customerNo;
}
public String getCustomerNo()
{
return customerNo;
}
public void setClassNo(String classNo)
{
this.classNo = classNo;
}
public String getClassNo()
{
return classNo;
}
public void setSupplierNo(String supplierNo)
{
this.supplierNo = supplierNo;
}
public String getSupplierNo()
{
return supplierNo;
}
public void setSpare1(String spare1)
{
this.spare1 = spare1;
}
public String getSpare1()
{
return spare1;
}
public void setSpare2(String spare2)
{
this.spare2 = spare2;
}
public String getSpare2()
{
return spare2;
}
public void setSpare3(String spare3)
{
this.spare3 = spare3;
}
public String getSpare3()
{
return spare3;
}
public void setSpare4(String spare4)
{
this.spare4 = spare4;
}
public String getSpare4()
{
return spare4;
}
public void setSpare5(String spare5)
{
this.spare5 = spare5;
}
public String getSpare5()
{
return spare5;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("stockinGuid", getStockinGuid())
.append("stockinId", getStockinId())
.append("inType", getInType())
.append("createDate", getCreateDate())
.append("createManId", getCreateManId())
.append("status", getStatus())
.append("warehouseId", getWarehouseId())
.append("finishDate", getFinishDate())
.append("erpBill", getErpBill())
.append("stockSource", getStockSource())
.append("departmentNo", getDepartmentNo())
.append("customerNo", getCustomerNo())
.append("classNo", getClassNo())
.append("supplierNo", getSupplierNo())
.append("spare1", getSpare1())
.append("spare2", getSpare2())
.append("spare3", getSpare3())
.append("spare4", getSpare4())
.append("spare5", getSpare5())
.toString();
}
}

View File

@@ -0,0 +1,65 @@
package com.ruoyi.in.stockinfinish.mapper;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockinfinish.domain.InStockinFinish;
import java.util.List;
/**
* 历史入库单据主信息Mapper接口
*
* @author ruoyi
* @date 2025-05-28
*/
public interface InStockinFinishMapper
{
/**
* 查询历史入库单据主信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 历史入库单据主信息
*/
public InStockinFinish selectInStockinFinishByStockinGuid(String stockinGuid);
/**
* 查询历史入库单据主信息列表
*
* @param inStockinFinish 历史入库单据主信息
* @return 历史入库单据主信息集合
*/
public List<InStockinFinish> selectInStockinFinishList(InStockinFinish inStockinFinish);
/**
* 新增历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
public int insertInStockinFinish(InStockinFinish inStockinFinish);
/**
* 修改历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
public int updateInStockinFinish(InStockinFinish inStockinFinish);
/**
* 删除历史入库单据主信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 结果
*/
public int deleteInStockinFinishByStockinGuid(String stockinGuid);
/**
* 批量删除历史入库单据主信息
*
* @param stockinGuids 需要删除的数据主键集合
* @return 结果
*/
public int deleteInStockinFinishByStockinGuids(String[] stockinGuids);
List<InStockin> selectInStockinFinishListByInStockin(InStockin inStockin);
}

View File

@@ -0,0 +1,65 @@
package com.ruoyi.in.stockinfinish.service;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockinfinish.domain.InStockinFinish;
import java.util.List;
/**
* 历史入库单据主信息Service接口
*
* @author ruoyi
* @date 2025-05-28
*/
public interface IInStockinFinishService
{
/**
* 查询历史入库单据主信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 历史入库单据主信息
*/
public InStockinFinish selectInStockinFinishByStockinGuid(String stockinGuid);
/**
* 查询历史入库单据主信息列表
*
* @param inStockinFinish 历史入库单据主信息
* @return 历史入库单据主信息集合
*/
public List<InStockinFinish> selectInStockinFinishList(InStockinFinish inStockinFinish);
/**
* 新增历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
public int insertInStockinFinish(InStockinFinish inStockinFinish);
/**
* 修改历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
public int updateInStockinFinish(InStockinFinish inStockinFinish);
/**
* 批量删除历史入库单据主信息
*
* @param stockinGuids 需要删除的历史入库单据主信息主键集合
* @return 结果
*/
public int deleteInStockinFinishByStockinGuids(String[] stockinGuids);
/**
* 删除历史入库单据主信息信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 结果
*/
public int deleteInStockinFinishByStockinGuid(String stockinGuid);
List<InStockin> selectInStockinFinishListByInStockin(InStockin inStockin);
}

View File

@@ -0,0 +1,102 @@
package com.ruoyi.in.stockinfinish.service.impl;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockinfinish.domain.InStockinFinish;
import com.ruoyi.in.stockinfinish.mapper.InStockinFinishMapper;
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 历史入库单据主信息Service业务层处理
*
* @author ruoyi
* @date 2025-05-28
*/
@Service
public class InStockinFinishServiceImpl implements IInStockinFinishService
{
@Autowired
private InStockinFinishMapper inStockinFinishMapper;
/**
* 查询历史入库单据主信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 历史入库单据主信息
*/
@Override
public InStockinFinish selectInStockinFinishByStockinGuid(String stockinGuid)
{
return inStockinFinishMapper.selectInStockinFinishByStockinGuid(stockinGuid);
}
/**
* 查询历史入库单据主信息列表
*
* @param inStockinFinish 历史入库单据主信息
* @return 历史入库单据主信息
*/
@Override
public List<InStockinFinish> selectInStockinFinishList(InStockinFinish inStockinFinish)
{
return inStockinFinishMapper.selectInStockinFinishList(inStockinFinish);
}
/**
* 新增历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
@Override
public int insertInStockinFinish(InStockinFinish inStockinFinish)
{
return inStockinFinishMapper.insertInStockinFinish(inStockinFinish);
}
/**
* 修改历史入库单据主信息
*
* @param inStockinFinish 历史入库单据主信息
* @return 结果
*/
@Override
public int updateInStockinFinish(InStockinFinish inStockinFinish)
{
return inStockinFinishMapper.updateInStockinFinish(inStockinFinish);
}
/**
* 批量删除历史入库单据主信息
*
* @param stockinGuids 需要删除的历史入库单据主信息主键
* @return 结果
*/
@Override
public int deleteInStockinFinishByStockinGuids(String[] stockinGuids)
{
return inStockinFinishMapper.deleteInStockinFinishByStockinGuids(stockinGuids);
}
/**
* 删除历史入库单据主信息信息
*
* @param stockinGuid 历史入库单据主信息主键
* @return 结果
*/
@Override
public int deleteInStockinFinishByStockinGuid(String stockinGuid)
{
return inStockinFinishMapper.deleteInStockinFinishByStockinGuid(stockinGuid);
}
@Override
@DataScope(warehouseAlias = "is2")
public List<InStockin> selectInStockinFinishListByInStockin(InStockin inStockin) {
return inStockinFinishMapper.selectInStockinFinishListByInStockin(inStockin);
}
}