diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/controller/WarehouseStorageOrderController.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/controller/WarehouseStorageOrderController.java index c625e814..7c1193b6 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/controller/WarehouseStorageOrderController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/controller/WarehouseStorageOrderController.java @@ -1,6 +1,11 @@ package com.ruoyi.warehouse.controller; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import com.ruoyi.warehouse.domain.WarehouseStorageOrderDetail; +import com.ruoyi.warehouse.service.IWarehouseStorageOrderDetailService; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -34,6 +39,9 @@ public class WarehouseStorageOrderController extends BaseController @Autowired private IWarehouseStorageOrderService warehouseStorageOrderService; + @Autowired + private IWarehouseStorageOrderDetailService storageOrderDetailService; + @RequiresPermissions("warehouse:storageOrder:view") @GetMapping() public String storageOrder() @@ -112,40 +120,41 @@ public class WarehouseStorageOrderController extends BaseController return toAjax(warehouseStorageOrderService.updateWarehouseStorageOrder(warehouseStorageOrder)); } + + /** - * 删除仓库入库单 + * 暂收-采购单(仓库入库) */ - @RequiresPermissions("warehouse:storageOrder:remove") - @Log(title = "仓库入库单", businessType = BusinessType.DELETE) - @PostMapping( "/remove") - @ResponseBody - public AjaxResult remove(String ids) + @GetMapping("/temporaryPurchaseWarehouse/{warehouseStorageId}") + public String temporaryPurchaseWarehouse(@PathVariable("warehouseStorageId") Long warehouseStorageId, ModelMap mmap) { - return toAjax(warehouseStorageOrderService.deleteWarehouseStorageOrderByIds(ids)); + WarehouseStorageOrder warehouseStorageOrder = warehouseStorageOrderService.selectWarehouseStorageOrderById(warehouseStorageId); + mmap.put("warehouseStorageOrder", warehouseStorageOrder); + return prefix + "/temporaryPurchaseWarehouse"; } /** - * 作废仓库入库单 + * 修改保存暂收-采购单(仓库入库) */ - @RequiresPermissions("warehouse:storageOrder:cancel") - @Log(title = "仓库入库单", businessType = BusinessType.CANCEL) - @GetMapping( "/cancel/{id}") + @RequiresPermissions("warehouse:storageOrder:temporaryPurchaseWarehouse") + @Log(title = "仓库入库单", businessType = BusinessType.UPDATE) + @PostMapping("/temporaryPurchaseWarehouse") @ResponseBody - public AjaxResult cancel(@PathVariable("id") Long id){ - return toAjax(warehouseStorageOrderService.cancelWarehouseStorageOrderById(id)); + public AjaxResult temporaryPurchaseWarehouseSave(WarehouseStorageOrder warehouseStorageOrder) + { + return toAjax(warehouseStorageOrderService.updateWarehouseStorageOrder(warehouseStorageOrder)); } + /** - * 恢复仓库入库单 + * 暂收-采购单(仓库入库) 供应商物料详情列表 */ - @RequiresPermissions("warehouse:storageOrder:restore") - @Log(title = "仓库入库单", businessType = BusinessType.RESTORE) - @GetMapping( "/restore/{id}") @ResponseBody - public AjaxResult restore(@PathVariable("id")Long id) - { - return toAjax(warehouseStorageOrderService.restoreWarehouseStorageOrderById(id)); + @RequestMapping("/temporaryPurchaseWarehouseDetail") + public Map> temporaryPurchaseWarehouseDetail(String warehouseStorageCode){ + List allDetails = storageOrderDetailService.selectStorageOrderDetailListByCode(warehouseStorageCode); + Map> groupedDetails = allDetails.stream().collect(Collectors.groupingBy(WarehouseStorageOrderDetail::getSupplierCode)); + return groupedDetails; } - } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrder.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrder.java index 578cf6ee..e1b3bb94 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrder.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrder.java @@ -1,6 +1,8 @@ package com.ruoyi.warehouse.domain; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -115,6 +117,13 @@ public class WarehouseStorageOrder extends BaseEntity @Excel(name = "仓库名称") private String warehouseName; + /** 仓库详细地址 */ + @Excel(name = "仓库详细地址") + private String warehouseDetailAddress; + + /** 仓库入库单详情 */ + @Excel(name = "仓库名称") + private List warehouseStorageOrderDetailList; public void setWarehouseStorageId(Long warehouseStorageId) { this.warehouseStorageId = warehouseStorageId; @@ -323,6 +332,22 @@ public class WarehouseStorageOrder extends BaseEntity return warehouseName; } + public String getWarehouseDetailAddress() { + return warehouseDetailAddress; + } + + public void setWarehouseDetailAddress(String warehouseDetailAddress) { + this.warehouseDetailAddress = warehouseDetailAddress; + } + + public List getWarehouseStorageOrderDetailList() { + return warehouseStorageOrderDetailList; + } + + public void setWarehouseStorageOrderDetailList(List warehouseStorageOrderDetailList) { + this.warehouseStorageOrderDetailList = warehouseStorageOrderDetailList; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -349,10 +374,12 @@ public class WarehouseStorageOrder extends BaseEntity .append("warehouseEmployee", getWarehouseEmployee()) .append("warehouseCode", getWarehouseCode()) .append("warehouseName", getWarehouseName()) + .append("warehouseDetailAddress",getWarehouseDetailAddress()) .append("createTime", getCreateTime()) .append("createBy", getCreateBy()) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) + .append("warehouseStorageOrderDetailList",getWarehouseStorageOrderDetailList()) .toString(); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrderDetail.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrderDetail.java new file mode 100644 index 00000000..22a9936d --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/domain/WarehouseStorageOrderDetail.java @@ -0,0 +1,678 @@ +package com.ruoyi.warehouse.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +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; + +/** + * 仓库入库单详情对象 warehouse_storage_order_detail + * + * @author 刘晓旭 + * @date 2024-05-29 + */ +public class WarehouseStorageOrderDetail extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 入库单详情id */ + private Long warehouseStorageDetailId; + + /** 入库单号 */ + @Excel(name = "入库单号") + private String warehouseStorageCode; + + /** 关联订单号(多种订单类型) */ + @Excel(name = "关联订单号", readConverterExp = "多=种订单类型") + private String relatedOrderCode; + + /** 仓库入库状态 */ + @Excel(name = "仓库入库状态") + private String warehouseStorageStatus; + + /** 仓库品质状态 */ + @Excel(name = "仓库品质状态") + private String warehouseQualityStatus; + + /** 仓库入库类型 */ + @Excel(name = "仓库入库类型") + private String warehouseStorageType; + + /** 仓库入库类别 */ + @Excel(name = "仓库入库类别") + private String warehouseStorageClass; + + /** 仓库订单类型 */ + @Excel(name = "仓库订单类型") + private String warehouseOrderType; + + /** 仓库入库部门类型 */ + @Excel(name = "仓库入库部门类型") + private String warehouseDeptType; + + /** 仓库员工 */ + @Excel(name = "仓库员工") + private String warehouseEmployee; + + /** 仓库ID */ + @Excel(name = "仓库ID") + private String warehouseCode; + + /** 仓库名称 */ + @Excel(name = "仓库名称") + private String warehouseName; + + /** 仓库详细地址 */ + @Excel(name = "仓库详细地址") + private String warehouseDetailAddress; + + /** 供应商ID */ + @Excel(name = "供应商ID") + private String supplierCode; + + /** 供应商名称 */ + @Excel(name = "供应商名称") + private String supplierName; + + /** 退货联系人 */ + @Excel(name = "退货联系人") + private String customerContact; + + /** 联系人电话 */ + @Excel(name = "联系人电话") + private String contactNumber; + + /** 公司地址 */ + @Excel(name = "公司地址") + private String supplierAddress; + + /** 料号 */ + @Excel(name = "料号") + private String materialNo; + + /** 物料名称 */ + @Excel(name = "物料名称") + private String materialName; + + /** 物料类型 */ + @Excel(name = "物料类型") + private String materialType; + + /** 物料图片地址 */ + @Excel(name = "物料图片地址") + private String materialPhotourl; + + /** 物料品牌 */ + @Excel(name = "物料品牌") + private String materialBrand; + + /** 物料单位 */ + @Excel(name = "物料单位") + private String materialUnit; + + /** 物料描述 */ + @Excel(name = "物料描述") + private String materialDescribe; + + /** 物料加工方式 */ + @Excel(name = "物料加工方式") + private String materialProcessMethod; + + /** 物料入库部门 */ + @Excel(name = "物料入库部门") + private String materialDeptType; + + /** 生产订单数 */ + @Excel(name = "生产订单数") + private Integer makeTotal; + + /** 通知已到货数量 */ + @Excel(name = "通知已到货数量") + private Integer notifyHasArrivedNum; + + /** 通知到货数量 */ + @Excel(name = "通知到货数量") + private Integer notifyArriveNum; + + /** 实际已到货数量 */ + @Excel(name = "实际已到货数量") + private Integer actualHasArrivedNum; + + /** 实际到货数量 */ + @Excel(name = "实际到货数量") + private Integer actualArriveNum; + + /** 暂收已合格数量 */ + @Excel(name = "暂收已合格数量") + private Integer temporaryHasQualifiedNum; + + /** 暂收合格数量 */ + @Excel(name = "暂收合格数量") + private Integer temporaryQualifiedNum; + + /** 已入库数量 */ + @Excel(name = "已入库数量") + private Integer hasStorageNum; + + /** 入库数量 */ + @Excel(name = "入库数量") + private Integer storageNum; + + /** 品质已合格数量 */ + @Excel(name = "品质已合格数量") + private Integer qualityHasQualifiedNum; + + /** 品质合格数量 */ + @Excel(name = "品质合格数量") + private Integer qualityQualifiedNum; + + /** 退换货数 */ + @Excel(name = "退换货数") + private Integer refundsExchangesNum; + + /** 到货时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "到货时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date arrivedTime; + + /** 暂收时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "暂收时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date temporaryTime; + + /** 交付质检时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "交付质检时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date deliveryInspectionTime; + + /** 品质时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "品质时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date qualityTime; + + /** 入库时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date storageTime; + + /** 暂收备注 */ + @Excel(name = "暂收备注") + private String temporaryRemark; + + /** 暂收报告 */ + @Excel(name = "暂收报告") + private String temporaryReportUrl; + + public void setWarehouseStorageDetailId(Long warehouseStorageDetailId) + { + this.warehouseStorageDetailId = warehouseStorageDetailId; + } + + public Long getWarehouseStorageDetailId() + { + return warehouseStorageDetailId; + } + public void setWarehouseStorageCode(String warehouseStorageCode) + { + this.warehouseStorageCode = warehouseStorageCode; + } + + public String getWarehouseStorageCode() + { + return warehouseStorageCode; + } + public void setRelatedOrderCode(String relatedOrderCode) + { + this.relatedOrderCode = relatedOrderCode; + } + + public String getRelatedOrderCode() + { + return relatedOrderCode; + } + public void setWarehouseStorageStatus(String warehouseStorageStatus) + { + this.warehouseStorageStatus = warehouseStorageStatus; + } + + public String getWarehouseStorageStatus() + { + return warehouseStorageStatus; + } + public void setWarehouseQualityStatus(String warehouseQualityStatus) + { + this.warehouseQualityStatus = warehouseQualityStatus; + } + + public String getWarehouseQualityStatus() + { + return warehouseQualityStatus; + } + public void setWarehouseStorageType(String warehouseStorageType) + { + this.warehouseStorageType = warehouseStorageType; + } + + public String getWarehouseStorageType() + { + return warehouseStorageType; + } + public void setWarehouseStorageClass(String warehouseStorageClass) + { + this.warehouseStorageClass = warehouseStorageClass; + } + + public String getWarehouseStorageClass() + { + return warehouseStorageClass; + } + public void setWarehouseOrderType(String warehouseOrderType) + { + this.warehouseOrderType = warehouseOrderType; + } + + public String getWarehouseOrderType() + { + return warehouseOrderType; + } + public void setWarehouseDeptType(String warehouseDeptType) + { + this.warehouseDeptType = warehouseDeptType; + } + + public String getWarehouseDeptType() + { + return warehouseDeptType; + } + public void setWarehouseEmployee(String warehouseEmployee) + { + this.warehouseEmployee = warehouseEmployee; + } + + public String getWarehouseEmployee() + { + return warehouseEmployee; + } + public void setWarehouseCode(String warehouseCode) + { + this.warehouseCode = warehouseCode; + } + + public String getWarehouseCode() + { + return warehouseCode; + } + public void setWarehouseName(String warehouseName) + { + this.warehouseName = warehouseName; + } + + public String getWarehouseName() + { + return warehouseName; + } + public void setWarehouseDetailAddress(String warehouseDetailAddress) + { + this.warehouseDetailAddress = warehouseDetailAddress; + } + + public String getWarehouseDetailAddress() + { + return warehouseDetailAddress; + } + public void setSupplierCode(String supplierCode) + { + this.supplierCode = supplierCode; + } + + public String getSupplierCode() + { + return supplierCode; + } + public void setSupplierName(String supplierName) + { + this.supplierName = supplierName; + } + + public String getSupplierName() + { + return supplierName; + } + public void setCustomerContact(String customerContact) + { + this.customerContact = customerContact; + } + + public String getCustomerContact() + { + return customerContact; + } + public void setContactNumber(String contactNumber) + { + this.contactNumber = contactNumber; + } + + public String getContactNumber() + { + return contactNumber; + } + public void setSupplierAddress(String supplierAddress) + { + this.supplierAddress = supplierAddress; + } + + public String getSupplierAddress() + { + return supplierAddress; + } + public void setMaterialNo(String materialNo) + { + this.materialNo = materialNo; + } + + public String getMaterialNo() + { + return materialNo; + } + public void setMaterialName(String materialName) + { + this.materialName = materialName; + } + + public String getMaterialName() + { + return materialName; + } + public void setMaterialType(String materialType) + { + this.materialType = materialType; + } + + public String getMaterialType() + { + return materialType; + } + public void setMaterialPhotourl(String materialPhotourl) + { + this.materialPhotourl = materialPhotourl; + } + + public String getMaterialPhotourl() + { + return materialPhotourl; + } + public void setMaterialBrand(String materialBrand) + { + this.materialBrand = materialBrand; + } + + public String getMaterialBrand() + { + return materialBrand; + } + public void setMaterialUnit(String materialUnit) + { + this.materialUnit = materialUnit; + } + + public String getMaterialUnit() + { + return materialUnit; + } + public void setMaterialDescribe(String materialDescribe) + { + this.materialDescribe = materialDescribe; + } + + public String getMaterialDescribe() + { + return materialDescribe; + } + public void setMaterialProcessMethod(String materialProcessMethod) + { + this.materialProcessMethod = materialProcessMethod; + } + + public String getMaterialProcessMethod() + { + return materialProcessMethod; + } + public void setMaterialDeptType(String materialDeptType) + { + this.materialDeptType = materialDeptType; + } + + public String getMaterialDeptType() + { + return materialDeptType; + } + public void setMakeTotal(Integer makeTotal) + { + this.makeTotal = makeTotal; + } + + public Integer getMakeTotal() + { + return makeTotal; + } + public void setNotifyHasArrivedNum(Integer notifyHasArrivedNum) + { + this.notifyHasArrivedNum = notifyHasArrivedNum; + } + + public Integer getNotifyHasArrivedNum() + { + return notifyHasArrivedNum; + } + public void setNotifyArriveNum(Integer notifyArriveNum) + { + this.notifyArriveNum = notifyArriveNum; + } + + public Integer getNotifyArriveNum() + { + return notifyArriveNum; + } + public void setActualHasArrivedNum(Integer actualHasArrivedNum) + { + this.actualHasArrivedNum = actualHasArrivedNum; + } + + public Integer getActualHasArrivedNum() + { + return actualHasArrivedNum; + } + public void setActualArriveNum(Integer actualArriveNum) + { + this.actualArriveNum = actualArriveNum; + } + + public Integer getActualArriveNum() + { + return actualArriveNum; + } + public void setTemporaryHasQualifiedNum(Integer temporaryHasQualifiedNum) + { + this.temporaryHasQualifiedNum = temporaryHasQualifiedNum; + } + + public Integer getTemporaryHasQualifiedNum() + { + return temporaryHasQualifiedNum; + } + public void setTemporaryQualifiedNum(Integer temporaryQualifiedNum) + { + this.temporaryQualifiedNum = temporaryQualifiedNum; + } + + public Integer getTemporaryQualifiedNum() + { + return temporaryQualifiedNum; + } + public void setHasStorageNum(Integer hasStorageNum) + { + this.hasStorageNum = hasStorageNum; + } + + public Integer getHasStorageNum() + { + return hasStorageNum; + } + public void setStorageNum(Integer storageNum) + { + this.storageNum = storageNum; + } + + public Integer getStorageNum() + { + return storageNum; + } + public void setQualityHasQualifiedNum(Integer qualityHasQualifiedNum) + { + this.qualityHasQualifiedNum = qualityHasQualifiedNum; + } + + public Integer getQualityHasQualifiedNum() + { + return qualityHasQualifiedNum; + } + public void setQualityQualifiedNum(Integer qualityQualifiedNum) + { + this.qualityQualifiedNum = qualityQualifiedNum; + } + + public Integer getQualityQualifiedNum() + { + return qualityQualifiedNum; + } + public void setRefundsExchangesNum(Integer refundsExchangesNum) + { + this.refundsExchangesNum = refundsExchangesNum; + } + + public Integer getRefundsExchangesNum() + { + return refundsExchangesNum; + } + public void setArrivedTime(Date arrivedTime) + { + this.arrivedTime = arrivedTime; + } + + public Date getArrivedTime() + { + return arrivedTime; + } + public void setTemporaryTime(Date temporaryTime) + { + this.temporaryTime = temporaryTime; + } + + public Date getTemporaryTime() + { + return temporaryTime; + } + public void setDeliveryInspectionTime(Date deliveryInspectionTime) + { + this.deliveryInspectionTime = deliveryInspectionTime; + } + + public Date getDeliveryInspectionTime() + { + return deliveryInspectionTime; + } + public void setQualityTime(Date qualityTime) + { + this.qualityTime = qualityTime; + } + + public Date getQualityTime() + { + return qualityTime; + } + public void setStorageTime(Date storageTime) + { + this.storageTime = storageTime; + } + + public Date getStorageTime() + { + return storageTime; + } + public void setTemporaryRemark(String temporaryRemark) + { + this.temporaryRemark = temporaryRemark; + } + + public String getTemporaryRemark() + { + return temporaryRemark; + } + public void setTemporaryReportUrl(String temporaryReportUrl) + { + this.temporaryReportUrl = temporaryReportUrl; + } + + public String getTemporaryReportUrl() + { + return temporaryReportUrl; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("warehouseStorageDetailId", getWarehouseStorageDetailId()) + .append("warehouseStorageCode", getWarehouseStorageCode()) + .append("relatedOrderCode", getRelatedOrderCode()) + .append("warehouseStorageStatus", getWarehouseStorageStatus()) + .append("warehouseQualityStatus", getWarehouseQualityStatus()) + .append("warehouseStorageType", getWarehouseStorageType()) + .append("warehouseStorageClass", getWarehouseStorageClass()) + .append("warehouseOrderType", getWarehouseOrderType()) + .append("warehouseDeptType", getWarehouseDeptType()) + .append("warehouseEmployee", getWarehouseEmployee()) + .append("warehouseCode", getWarehouseCode()) + .append("warehouseName", getWarehouseName()) + .append("warehouseDetailAddress", getWarehouseDetailAddress()) + .append("supplierCode", getSupplierCode()) + .append("supplierName", getSupplierName()) + .append("customerContact", getCustomerContact()) + .append("contactNumber", getContactNumber()) + .append("supplierAddress", getSupplierAddress()) + .append("materialNo", getMaterialNo()) + .append("materialName", getMaterialName()) + .append("materialType", getMaterialType()) + .append("materialPhotourl", getMaterialPhotourl()) + .append("materialBrand", getMaterialBrand()) + .append("materialUnit", getMaterialUnit()) + .append("materialDescribe", getMaterialDescribe()) + .append("materialProcessMethod", getMaterialProcessMethod()) + .append("materialDeptType", getMaterialDeptType()) + .append("makeTotal", getMakeTotal()) + .append("notifyHasArrivedNum", getNotifyHasArrivedNum()) + .append("notifyArriveNum", getNotifyArriveNum()) + .append("actualHasArrivedNum", getActualHasArrivedNum()) + .append("actualArriveNum", getActualArriveNum()) + .append("temporaryHasQualifiedNum", getTemporaryHasQualifiedNum()) + .append("temporaryQualifiedNum", getTemporaryQualifiedNum()) + .append("hasStorageNum", getHasStorageNum()) + .append("storageNum", getStorageNum()) + .append("qualityHasQualifiedNum", getQualityHasQualifiedNum()) + .append("qualityQualifiedNum", getQualityQualifiedNum()) + .append("refundsExchangesNum", getRefundsExchangesNum()) + .append("arrivedTime", getArrivedTime()) + .append("temporaryTime", getTemporaryTime()) + .append("deliveryInspectionTime", getDeliveryInspectionTime()) + .append("qualityTime", getQualityTime()) + .append("storageTime", getStorageTime()) + .append("temporaryRemark", getTemporaryRemark()) + .append("temporaryReportUrl", getTemporaryReportUrl()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java new file mode 100644 index 00000000..3dc2ecf7 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseStorageOrderDetailMapper.java @@ -0,0 +1,83 @@ +package com.ruoyi.warehouse.mapper; + +import java.util.List; +import com.ruoyi.warehouse.domain.WarehouseStorageOrderDetail; + +/** + * 仓库入库单详情Mapper接口 + * + * @author 刘晓旭 + * @date 2024-05-29 + */ +public interface WarehouseStorageOrderDetailMapper +{ + /** + * 查询仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 仓库入库单详情 + */ + public WarehouseStorageOrderDetail selectWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 查询仓库入库单详情列表 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 仓库入库单详情集合 + */ + public List selectWarehouseStorageOrderDetailList(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 新增仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + public int insertWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 修改仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + public int updateWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 删除仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + public int deleteWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 批量删除仓库入库单详情 + * + * @param warehouseStorageDetailIds 需要删除的数据ID + * @return 结果 + */ + public int deleteWarehouseStorageOrderDetailByIds(String[] warehouseStorageDetailIds); + + /** + * 作废仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + public int cancelWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 恢复仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + public int restoreWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + + /* + * 根据入库单号查询入库单详情列表 + * */ + List selectStorageOrderDetailListByCode(String warehouseStorageCode); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/IWarehouseStorageOrderDetailService.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/IWarehouseStorageOrderDetailService.java new file mode 100644 index 00000000..e2aa4e69 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/IWarehouseStorageOrderDetailService.java @@ -0,0 +1,80 @@ +package com.ruoyi.warehouse.service; + +import java.util.List; +import com.ruoyi.warehouse.domain.WarehouseStorageOrderDetail; + +/** + * 仓库入库单详情Service接口 + * + * @author 刘晓旭 + * @date 2024-05-29 + */ +public interface IWarehouseStorageOrderDetailService +{ + /** + * 查询仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 仓库入库单详情 + */ + public WarehouseStorageOrderDetail selectWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 查询仓库入库单详情列表 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 仓库入库单详情集合 + */ + public List selectWarehouseStorageOrderDetailList(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 新增仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + public int insertWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 修改仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + public int updateWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail); + + /** + * 批量删除仓库入库单详情 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteWarehouseStorageOrderDetailByIds(String ids); + + /** + * 删除仓库入库单详情信息 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + public int deleteWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 作废仓库入库单详情 + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return + */ + int cancelWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /** + * 恢复仓库入库单详情 + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return + */ + int restoreWarehouseStorageOrderDetailById(Long warehouseStorageDetailId); + + /* + * 根据入库单号查询入库单详情列表 + * */ + List selectStorageOrderDetailListByCode(String warehouseStorageCode); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderDetailServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderDetailServiceImpl.java new file mode 100644 index 00000000..99bb9e97 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderDetailServiceImpl.java @@ -0,0 +1,135 @@ +package com.ruoyi.warehouse.service.impl; + +import java.util.List; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.ShiroUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.warehouse.mapper.WarehouseStorageOrderDetailMapper; +import com.ruoyi.warehouse.domain.WarehouseStorageOrderDetail; +import com.ruoyi.warehouse.service.IWarehouseStorageOrderDetailService; +import com.ruoyi.common.core.text.Convert; + +/** + * 仓库入库单详情Service业务层处理 + * + * @author 刘晓旭 + * @date 2024-05-29 + */ +@Service +public class WarehouseStorageOrderDetailServiceImpl implements IWarehouseStorageOrderDetailService +{ + @Autowired + private WarehouseStorageOrderDetailMapper warehouseStorageOrderDetailMapper; + + /** + * 查询仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 仓库入库单详情 + */ + @Override + public WarehouseStorageOrderDetail selectWarehouseStorageOrderDetailById(Long warehouseStorageDetailId) + { + return warehouseStorageOrderDetailMapper.selectWarehouseStorageOrderDetailById(warehouseStorageDetailId); + } + + /** + * 查询仓库入库单详情列表 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 仓库入库单详情 + */ + @Override + public List selectWarehouseStorageOrderDetailList(WarehouseStorageOrderDetail warehouseStorageOrderDetail) + { + return warehouseStorageOrderDetailMapper.selectWarehouseStorageOrderDetailList(warehouseStorageOrderDetail); + } + + /** + * 新增仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + @Override + public int insertWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail) + { + warehouseStorageOrderDetail.setCreateTime(DateUtils.getNowDate()); + String loginName = ShiroUtils.getLoginName(); + warehouseStorageOrderDetail.setCreateBy(loginName); + return warehouseStorageOrderDetailMapper.insertWarehouseStorageOrderDetail(warehouseStorageOrderDetail); + } + + /** + * 修改仓库入库单详情 + * + * @param warehouseStorageOrderDetail 仓库入库单详情 + * @return 结果 + */ + @Override + public int updateWarehouseStorageOrderDetail(WarehouseStorageOrderDetail warehouseStorageOrderDetail) + { + String loginName = ShiroUtils.getLoginName(); + warehouseStorageOrderDetail.setUpdateBy(loginName); + warehouseStorageOrderDetail.setUpdateTime(DateUtils.getNowDate()); + return warehouseStorageOrderDetailMapper.updateWarehouseStorageOrderDetail(warehouseStorageOrderDetail); + } + + /** + * 删除仓库入库单详情对象 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + @Override + public int deleteWarehouseStorageOrderDetailByIds(String ids) + { + return warehouseStorageOrderDetailMapper.deleteWarehouseStorageOrderDetailByIds(Convert.toStrArray(ids)); + } + + /** + * 删除仓库入库单详情信息 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + @Override + public int deleteWarehouseStorageOrderDetailById(Long warehouseStorageDetailId) + { + return warehouseStorageOrderDetailMapper.deleteWarehouseStorageOrderDetailById(warehouseStorageDetailId); + } + + /** + * 作废仓库入库单详情 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + @Override + public int cancelWarehouseStorageOrderDetailById(Long warehouseStorageDetailId) + { + return warehouseStorageOrderDetailMapper.cancelWarehouseStorageOrderDetailById(warehouseStorageDetailId); + } + + /** + * 恢复仓库入库单详情信息 + * + * @param warehouseStorageDetailId 仓库入库单详情ID + * @return 结果 + */ + @Override + public int restoreWarehouseStorageOrderDetailById(Long warehouseStorageDetailId) + { + return warehouseStorageOrderDetailMapper.restoreWarehouseStorageOrderDetailById(warehouseStorageDetailId); + } + + /* + * 根据入库单号查询入库单详情列表 + * */ + @Override + public List selectStorageOrderDetailListByCode(String warehouseStorageCode) { + + return warehouseStorageOrderDetailMapper.selectStorageOrderDetailListByCode(warehouseStorageCode); + } +} diff --git a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml new file mode 100644 index 00000000..6fe0a77e --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderDetailMapper.xml @@ -0,0 +1,262 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select warehouse_storage_detail_id, warehouse_storage_code, related_order_code, warehouse_storage_status, warehouse_quality_status, warehouse_storage_type, warehouse_storage_class, warehouse_order_type, warehouse_dept_type, warehouse_employee, warehouse_code, warehouse_name, warehouse_detail_address, supplier_code, supplier_name, customer_contact, contact_number, supplier_address, material_no, material_name, material_type, material_photoUrl, material_brand, material_unit, material_describe, material_process_method, material_dept_type, make_total, notify_has_arrived_num, notify_arrive_num, actual_has_arrived_num, actual_arrive_num, temporary_has_qualified_num, temporary_qualified_num, has_storage_num, storage_num, quality_has_qualified_num, quality_qualified_num, refunds_exchanges_num, arrived_time, temporary_time, delivery_inspection_time, quality_time, storage_time, temporary_remark, temporary_report_url, create_time, create_by, update_by, update_time from warehouse_storage_order_detail + + + + + + + + + + + insert into warehouse_storage_order_detail + + warehouse_storage_code, + related_order_code, + warehouse_storage_status, + warehouse_quality_status, + warehouse_storage_type, + warehouse_storage_class, + warehouse_order_type, + warehouse_dept_type, + warehouse_employee, + warehouse_code, + warehouse_name, + warehouse_detail_address, + supplier_code, + supplier_name, + customer_contact, + contact_number, + supplier_address, + material_no, + material_name, + material_type, + material_photoUrl, + material_brand, + material_unit, + material_describe, + material_process_method, + material_dept_type, + make_total, + notify_has_arrived_num, + notify_arrive_num, + actual_has_arrived_num, + actual_arrive_num, + temporary_has_qualified_num, + temporary_qualified_num, + has_storage_num, + storage_num, + quality_has_qualified_num, + quality_qualified_num, + refunds_exchanges_num, + arrived_time, + temporary_time, + delivery_inspection_time, + quality_time, + storage_time, + temporary_remark, + temporary_report_url, + create_time, + create_by, + update_by, + update_time, + + + #{warehouseStorageCode}, + #{relatedOrderCode}, + #{warehouseStorageStatus}, + #{warehouseQualityStatus}, + #{warehouseStorageType}, + #{warehouseStorageClass}, + #{warehouseOrderType}, + #{warehouseDeptType}, + #{warehouseEmployee}, + #{warehouseCode}, + #{warehouseName}, + #{warehouseDetailAddress}, + #{supplierCode}, + #{supplierName}, + #{customerContact}, + #{contactNumber}, + #{supplierAddress}, + #{materialNo}, + #{materialName}, + #{materialType}, + #{materialPhotourl}, + #{materialBrand}, + #{materialUnit}, + #{materialDescribe}, + #{materialProcessMethod}, + #{materialDeptType}, + #{makeTotal}, + #{notifyHasArrivedNum}, + #{notifyArriveNum}, + #{actualHasArrivedNum}, + #{actualArriveNum}, + #{temporaryHasQualifiedNum}, + #{temporaryQualifiedNum}, + #{hasStorageNum}, + #{storageNum}, + #{qualityHasQualifiedNum}, + #{qualityQualifiedNum}, + #{refundsExchangesNum}, + #{arrivedTime}, + #{temporaryTime}, + #{deliveryInspectionTime}, + #{qualityTime}, + #{storageTime}, + #{temporaryRemark}, + #{temporaryReportUrl}, + #{createTime}, + #{createBy}, + #{updateBy}, + #{updateTime}, + + + + + update warehouse_storage_order_detail + + warehouse_storage_code = #{warehouseStorageCode}, + related_order_code = #{relatedOrderCode}, + warehouse_storage_status = #{warehouseStorageStatus}, + warehouse_quality_status = #{warehouseQualityStatus}, + warehouse_storage_type = #{warehouseStorageType}, + warehouse_storage_class = #{warehouseStorageClass}, + warehouse_order_type = #{warehouseOrderType}, + warehouse_dept_type = #{warehouseDeptType}, + warehouse_employee = #{warehouseEmployee}, + warehouse_code = #{warehouseCode}, + warehouse_name = #{warehouseName}, + warehouse_detail_address = #{warehouseDetailAddress}, + supplier_code = #{supplierCode}, + supplier_name = #{supplierName}, + customer_contact = #{customerContact}, + contact_number = #{contactNumber}, + supplier_address = #{supplierAddress}, + material_no = #{materialNo}, + material_name = #{materialName}, + material_type = #{materialType}, + material_photoUrl = #{materialPhotourl}, + material_brand = #{materialBrand}, + material_unit = #{materialUnit}, + material_describe = #{materialDescribe}, + material_process_method = #{materialProcessMethod}, + material_dept_type = #{materialDeptType}, + make_total = #{makeTotal}, + notify_has_arrived_num = #{notifyHasArrivedNum}, + notify_arrive_num = #{notifyArriveNum}, + actual_has_arrived_num = #{actualHasArrivedNum}, + actual_arrive_num = #{actualArriveNum}, + temporary_has_qualified_num = #{temporaryHasQualifiedNum}, + temporary_qualified_num = #{temporaryQualifiedNum}, + has_storage_num = #{hasStorageNum}, + storage_num = #{storageNum}, + quality_has_qualified_num = #{qualityHasQualifiedNum}, + quality_qualified_num = #{qualityQualifiedNum}, + refunds_exchanges_num = #{refundsExchangesNum}, + arrived_time = #{arrivedTime}, + temporary_time = #{temporaryTime}, + delivery_inspection_time = #{deliveryInspectionTime}, + quality_time = #{qualityTime}, + storage_time = #{storageTime}, + temporary_remark = #{temporaryRemark}, + temporary_report_url = #{temporaryReportUrl}, + create_time = #{createTime}, + create_by = #{createBy}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where warehouse_storage_detail_id = #{warehouseStorageDetailId} + + + + delete from warehouse_storage_order_detail where warehouse_storage_detail_id = #{warehouseStorageDetailId} + + + + delete from warehouse_storage_order_detail where warehouse_storage_detail_id in + + #{warehouseStorageDetailId} + + + + + update warehouse_storage_order_detail set del_flag = '1' where warehouse_storage_detail_id = #{warehouseStorageDetailId} + + + + update warehouse_storage_order_detail set del_flag = '0' where warehouse_storage_detail_id = #{warehouseStorageDetailId} + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml index b11230cd..4b98771e 100644 --- a/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/warehouse/WarehouseStorageOrderMapper.xml @@ -28,6 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -35,7 +36,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select warehouse_storage_id, warehouse_storage_code, related_order_code, warehouse_storage_status, warehouse_quality_status, warehouse_storage_type, warehouse_order_type, warehouse_dept_type, notify_arrived_num, actual_arrived_num, temporary_qualified_num, temporary_unqualified_num, quality_qualified_num, quality_unqualified_num ,storage_num, arrived_time, temporary_time, delivery_inspection_time, quality_time, storage_time, warehouse_employee, warehouse_code, warehouse_name, create_time, create_by, update_by, update_time from warehouse_storage_order + select warehouse_storage_id, warehouse_storage_code, related_order_code, warehouse_storage_status, warehouse_quality_status, warehouse_storage_type, warehouse_order_type, warehouse_dept_type, notify_arrived_num, actual_arrived_num, temporary_qualified_num, temporary_unqualified_num, quality_qualified_num, quality_unqualified_num ,storage_num, arrived_time, temporary_time, delivery_inspection_time, quality_time, storage_time, warehouse_employee, warehouse_code, warehouse_name, warehouse_detail_address ,create_time, create_by, update_by, update_time from warehouse_storage_order -
- -
- -
-
+
+
- +
- +
- +
-
- -
- +
- +
- +
+ + +
- +
- +
@@ -69,8 +65,15 @@
+
+ +
+ +
+
+
- +
@@ -84,19 +87,25 @@ \ No newline at end of file