Browse Source

售后报表

master
fanzongzhe 7 months ago
parent
commit
d67bc6ccf1
  1. 1
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillaitemspec/AsBusrepairBillAitemspec.java
  2. 81
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java
  3. 21
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java
  4. 8
      yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsInventory/WmsInventory.java
  5. 16
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java
  6. 91
      yxt-sms-biz/src/main/java/com/yxt/sms/feign/wms/wmsinventory/WmsInventory.java

1
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillaitemspec/AsBusrepairBillAitemspec.java

@ -35,4 +35,5 @@ public class AsBusrepairBillAitemspec extends BaseEntity {
private BigDecimal cost; private BigDecimal cost;
@ApiModelProperty("成本合计(成本价*数量)") @ApiModelProperty("成本合计(成本价*数量)")
private BigDecimal costTotal; private BigDecimal costTotal;
private int count;
} }

81
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

@ -11,6 +11,7 @@ import com.yxt.anrui.as.api.asbillsettelapply.AsBillSettelApplyDto;
import com.yxt.anrui.as.api.asbusrepairbill.*; import com.yxt.anrui.as.api.asbusrepairbill.*;
import com.yxt.anrui.as.api.asbusrepairbill.app.*; import com.yxt.anrui.as.api.asbusrepairbill.app.*;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem; import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import com.yxt.anrui.as.api.asbusrepairbillaitemspec.AsBusrepairBillAitemspec;
import com.yxt.anrui.as.api.asbusrepairbillinsurance.AsBusrepairBillInsurance; import com.yxt.anrui.as.api.asbusrepairbillinsurance.AsBusrepairBillInsurance;
import com.yxt.anrui.as.api.asbusrepairbillinsurancerecord.AsBusrepairBillInsuranceRecord; import com.yxt.anrui.as.api.asbusrepairbillinsurancerecord.AsBusrepairBillInsuranceRecord;
import com.yxt.anrui.as.api.asbusrepairbillinvoice.AsBusrepairBillInvoice; import com.yxt.anrui.as.api.asbusrepairbillinvoice.AsBusrepairBillInvoice;
@ -33,6 +34,7 @@ import com.yxt.anrui.as.biz.asarrearsoutapply.AsArrearsoutApplyService;
import com.yxt.anrui.as.biz.asbillsettelapply.AsBillSettelApplyService; import com.yxt.anrui.as.biz.asbillsettelapply.AsBillSettelApplyService;
import com.yxt.anrui.as.biz.asbusclaimbill.AsBusclaimBillService; import com.yxt.anrui.as.biz.asbusclaimbill.AsBusclaimBillService;
import com.yxt.anrui.as.biz.asbusrepairbillaitem.AsBusrepairBillAitemService; import com.yxt.anrui.as.biz.asbusrepairbillaitem.AsBusrepairBillAitemService;
import com.yxt.anrui.as.biz.asbusrepairbillaitemspec.AsBusrepairBillAitemspecService;
import com.yxt.anrui.as.biz.asbusrepairbillinsurance.AsBusrepairBillInsuranceRest; import com.yxt.anrui.as.biz.asbusrepairbillinsurance.AsBusrepairBillInsuranceRest;
import com.yxt.anrui.as.biz.asbusrepairbillinsurance.AsBusrepairBillInsuranceService; import com.yxt.anrui.as.biz.asbusrepairbillinsurance.AsBusrepairBillInsuranceService;
import com.yxt.anrui.as.biz.asbusrepairbillinsurancerecord.AsBusrepairBillInsuranceRecordRest; import com.yxt.anrui.as.biz.asbusrepairbillinsurancerecord.AsBusrepairBillInsuranceRecordRest;
@ -155,7 +157,8 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
private FinSelectedReceivablesDetailedFeign finSelectedReceivablesDetailedFeign; private FinSelectedReceivablesDetailedFeign finSelectedReceivablesDetailedFeign;
@Autowired @Autowired
private AsBillSettelApplyService asBillSettelApplyService; private AsBillSettelApplyService asBillSettelApplyService;
@Autowired
private AsBusrepairBillAitemspecService asBusrepairBillAitemspecService;
/** /**
* 维修领料获取派工单 * 维修领料获取派工单
* *
@ -248,6 +251,7 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
asBusrepairBillSitemRepairerService.delByBillSid(sid); asBusrepairBillSitemRepairerService.delByBillSid(sid);
asBusrepairBillAitemService.delByBillSid(sid); asBusrepairBillAitemService.delByBillSid(sid);
asBusrepairBillInsuranceRecordService.delByBillSid(sid); asBusrepairBillInsuranceRecordService.delByBillSid(sid);
asBusrepairBillAitemspecService.delByBillSid(sid);
asAppendixService.delByLinkSid(sid); asAppendixService.delByLinkSid(sid);
} else { } else {
AsBusrepairBill asBusrepairBill = new AsBusrepairBill(); AsBusrepairBill asBusrepairBill = new AsBusrepairBill();
@ -280,6 +284,63 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
asBusrepairBillNodeService.insert(billNode); asBusrepairBillNodeService.insert(billNode);
} }
if (StringUtils.isNotBlank(sid)) { if (StringUtils.isNotBlank(sid)) {
//施救费
if (StringUtils.isNotBlank(dto.getRescueAmount())) {
AsBusrepairBillAitemspec spec = new AsBusrepairBillAitemspec();
spec.setBillSid(sid);
spec.setAttachItem("施救费");
spec.setPrice(new BigDecimal(dto.getRescueAmount()));
if (StringUtils.isNotBlank(dto.getRescueRemarks())) {
spec.setRemarks(dto.getRescueRemarks());
}
if (StringUtils.isNotBlank(dto.getRescueKPAmount())) {
spec.setTaxPrice(new BigDecimal(dto.getRescueKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getRescueAmount()));
spec.setCostTotal(new BigDecimal(dto.getRescueAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);
}
//厂家补助
if (StringUtils.isNotBlank(dto.getSubsidyAmount())) {
AsBusrepairBillAitemspec spec = new AsBusrepairBillAitemspec();
spec.setBillSid(sid);
spec.setAttachItem("厂家补助");
spec.setPrice(new BigDecimal(dto.getSubsidyAmount()));
if (StringUtils.isNotBlank(dto.getSubsidyRemarks())) {
spec.setRemarks(dto.getRescueRemarks());
}
if (StringUtils.isNotBlank(dto.getSubsidyKPAmount())) {
spec.setTaxPrice(new BigDecimal(dto.getSubsidyKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getSubsidyAmount()));
spec.setCostTotal(new BigDecimal(dto.getSubsidyAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);
}
//外出费
if (StringUtils.isNotBlank(dto.getOutAmount())) {
AsBusrepairBillAitemspec spec = new AsBusrepairBillAitemspec();
spec.setBillSid(sid);
spec.setAttachItem("外出费");
spec.setPrice(new BigDecimal(dto.getOutAmount()));
if (StringUtils.isNotBlank(dto.getRescueRemarks())) {
spec.setRemarks(dto.getRescueRemarks());
}
if (StringUtils.isNotBlank(dto.getOutKPAmount())) {
spec.setTaxPrice(new BigDecimal(dto.getOutKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getOutAmount()));
spec.setCostTotal(new BigDecimal(dto.getOutAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);
}
//新增车辆信息 //新增车辆信息
AsBusrepairBillVech vech = new AsBusrepairBillVech(); AsBusrepairBillVech vech = new AsBusrepairBillVech();
vech.setBillSid(sid); vech.setBillSid(sid);
@ -343,6 +404,15 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
AsBusrepairBillSitem sitem = new AsBusrepairBillSitem(); AsBusrepairBillSitem sitem = new AsBusrepairBillSitem();
BeanUtil.copyProperties(sitemVo, sitem, "id", "sid"); BeanUtil.copyProperties(sitemVo, sitem, "id", "sid");
sitem.setBillSid(sid); sitem.setBillSid(sid);
AsServiceItem item = asServiceItemService.fetchBySid(sitemVo.getServiceItemSid());
if (null != item) {
if (null != item.getCost()) {
sitem.setCost(item.getCost());
sitem.setCostTotal(item.getCost());
}
}
sitem.setBillBusTypeKey("002");
sitem.setBillBusTypeValue("维修项目");
asBusrepairBillSitemService.insert(sitem); asBusrepairBillSitemService.insert(sitem);
List<String> staffList = sitemVo.getStaffList(); List<String> staffList = sitemVo.getStaffList();
List<String> staffNameList = sitemVo.getStaffNameList(); List<String> staffNameList = sitemVo.getStaffNameList();
@ -381,6 +451,15 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
aitem.setRemarks(aitemVo.getRemarks()); aitem.setRemarks(aitemVo.getRemarks());
} }
aitem.setBillSid(sid); aitem.setBillSid(sid);
AsBusrepairBillAitem item = asBusrepairBillAitemService.fetchBySid(aitemVo.getAitemSid());
if (null != item) {
if (null != item.getCost()) {
aitem.setCost(item.getCost());
aitem.setCostTotal(item.getCost());
}
}
aitem.setBillBusTypeKey("003");
aitem.setBillBusTypeValue("附加项目");
asBusrepairBillAitemService.insert(aitem); asBusrepairBillAitemService.insert(aitem);
} }
} }

21
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java

@ -321,6 +321,25 @@ public class AsBusrepairInventorybillService extends MybatisBaseService<AsBusrep
} else { } else {
detail.setIsTaxRate(0); detail.setIsTaxRate(0);
} }
if (StringUtils.isNotBlank(inventory.getManufacturerName())) {
detail.setManufacturerName(inventory.getManufacturerName());
}
if (StringUtils.isNotBlank(inventory.getManufacturerSid())) {
detail.setManufacturerSid(inventory.getManufacturerSid());
}
if (StringUtils.isNotBlank(inventory.getSupplierName())) {
detail.setSupplierName(inventory.getSupplierName());
}
if (StringUtils.isNotBlank(inventory.getSupplierSid())) {
detail.setSupplierSid(inventory.getSupplierSid());
}
if (null != inventory.getCost()) {
BigDecimal cost = inventory.getCost();
detail.setCost(cost);
BigDecimal c = new BigDecimal(sDto.getCount());
BigDecimal multiply = c.multiply(cost);
detail.setCostTotal(multiply);
}
} }
if (StringUtils.isNotBlank(dto.getWarehouseManager())) { if (StringUtils.isNotBlank(dto.getWarehouseManager())) {
detail.setOperName(dto.getWarehouseManager()); detail.setOperName(dto.getWarehouseManager());
@ -332,6 +351,8 @@ public class AsBusrepairInventorybillService extends MybatisBaseService<AsBusrep
detail.setGoodsDetailsPrice(new BigDecimal(sDto.getPrice())); detail.setGoodsDetailsPrice(new BigDecimal(sDto.getPrice()));
} }
detail.setIsEnable(isEnable); detail.setIsEnable(isEnable);
detail.setBillBusTypeKey("维修用料");
detail.setBillBusTypeValue("001");
asBusrepairInventorybillDetailService.insert(detail); asBusrepairInventorybillDetailService.insert(detail);
WmsUpdateCountQuery countQuery = new WmsUpdateCountQuery(); WmsUpdateCountQuery countQuery = new WmsUpdateCountQuery();
countQuery.setSid(sDto.getInventorySid()); countQuery.setSid(sDto.getInventorySid());

8
yxt-as/src/main/java/com/yxt/anrui/as/feign/wms/wmsInventory/WmsInventory.java

@ -62,4 +62,12 @@ public class WmsInventory extends BaseEntity {
private String useOrgSid; private String useOrgSid;
@ApiModelProperty("厂家订单号") @ApiModelProperty("厂家订单号")
private String manufactorBillNo; private String manufactorBillNo;
@ApiModelProperty("厂家sid")
private String manufacturerSid; // 库位sid
@ApiModelProperty("厂家名称")
private String manufacturerName; // 库位编号
@ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
private String supplierSid;
@ApiModelProperty("客户/供应商名称")
private String supplierName;
} }

16
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java

@ -247,6 +247,22 @@ public class SmsSalesBillService extends MybatisBaseService<SmsSalesBillMapper,
if (StringUtils.isNotBlank(goodsVo.getBillObjSid())) { if (StringUtils.isNotBlank(goodsVo.getBillObjSid())) {
salesBillDetail.setSupplierSid(goodsVo.getBillObjSid()); salesBillDetail.setSupplierSid(goodsVo.getBillObjSid());
} }
WmsInventory inventory = wmsInventoryFeign.fetchEntityBySid(goodsVo.getInventorySid()).getData();
if (null != inventory) {
if (StringUtils.isNotBlank(inventory.getManufacturerName())) {
salesBillDetail.setManufacturerName(inventory.getManufacturerName());
}
if (StringUtils.isNotBlank(inventory.getManufacturerSid())) {
salesBillDetail.setManufacturerSid(inventory.getManufacturerSid());
}
if (null != inventory.getCost()) {
BigDecimal cost = inventory.getCost();
salesBillDetail.setCost(cost);
BigDecimal c = new BigDecimal(goodsVo.getCount());
BigDecimal multiply = c.multiply(cost);
salesBillDetail.setCostTotal(multiply);
}
}
salesBillDetail.setBillBusTypeKey("004"); salesBillDetail.setBillBusTypeKey("004");
salesBillDetail.setBillBusTypeValue("配件销售"); salesBillDetail.setBillBusTypeValue("配件销售");
smsSalesBillDetailService.insert(salesBillDetail); smsSalesBillDetailService.insert(salesBillDetail);

91
yxt-sms-biz/src/main/java/com/yxt/sms/feign/wms/wmsinventory/WmsInventory.java

@ -1,6 +1,7 @@
package com.yxt.sms.feign.wms.wmsinventory; package com.yxt.sms.feign.wms.wmsinventory;
import com.yxt.common.core.domain.BaseEntity; import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -12,43 +13,59 @@ import java.util.Date;
*/ */
@Data @Data
public class WmsInventory extends BaseEntity { public class WmsInventory extends BaseEntity {
// private String id; @ApiModelProperty("批次号")
// private String sid= UUID.randomUUID().toString(); private String batchNumber;
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
// private Date createTime; private String goodsID;
// private String remarks; @ApiModelProperty("商品基础信息sid")
// private String isEnable; private String goodsSpuSid;
private String goodsID;//商品ID(唯一编码,入库时生成) @ApiModelProperty("商品名称")
private String goodsSpuSid;//商品基础信息sid private String goodsSpuName;
private String goodsSpuName;//商品名称 @ApiModelProperty("商品Skusid")
private String goodsSkuSid;//商品Skusid private String goodsSkuSid;
private String goodsSkuTitle;//商品Sku名称 @ApiModelProperty("商品Sku名称")
private String goodsSkuCode;//商品编码(图号) private String goodsSkuTitle;
private String goodsSkuOwnSpec;//规格型号 @ApiModelProperty("商品编码(图号)")
private String billSid;//入库单sid private String goodsSkuCode;
private String billDetailSid;//入库单明细sid @ApiModelProperty("规格型号")
private BigDecimal price1;//销售价格1 private String goodsSkuOwnSpec;
private BigDecimal price2;//销售价格2 @ApiModelProperty("计量单位")
private BigDecimal price3;//销售价格3 private String unit;
private BigDecimal price4;//销售价格4 @ApiModelProperty("现有量")
private BigDecimal price5;//销售价格5 private BigDecimal count;
private String unit;//计量单位 @ApiModelProperty("分配量(锁定数量,出库申请通过,但未实际出库)")
private BigDecimal count;//库存数量 private BigDecimal allocateCount;
private BigDecimal minimumPrice;//销售底价 @ApiModelProperty("拣货量")
private BigDecimal freePrice;//三包价格 private BigDecimal pickCount;
private BigDecimal firstMaintainPrice;//首保价格 @ApiModelProperty("冻结量")
private String warehouseSid;//仓库sid private BigDecimal freezeCount;
private String warehouseName;//仓库名称 @ApiModelProperty("入库单价")
private String warehouseAreaSid;//库区sid private BigDecimal cost;
private String warehouseArea;//库区名称 @ApiModelProperty("税率")
private String warehouseRackSid;//货架sid private BigDecimal taxRate;
private String warehouseRackName;//货架名称 @ApiModelProperty("仓库sid")
private String warehouseSid;
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("库位sid")
private String warehouseRackSid;
@ApiModelProperty("库位编码")
private String warehouseRackCode; private String warehouseRackCode;
private int isShowDiscount;//是否显示折扣标志 @ApiModelProperty("首次入库日期-计算库龄的依据")
private Date firstInDate;//首次入库日期-计算库龄的依据 private Date firstInDate;
private String lockCount;//锁定数量,计算字段,出库申请通过,但未实际出库 @ApiModelProperty("创建组织sid")
private int sortNo;//排序 private String createOrgSid;
private String useOrgSid;//使用组织sid @ApiModelProperty("使用组织sid")
private String createOrgSid;//创建组织sid private String useOrgSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家sid")
private String manufacturerSid; // 库位sid
@ApiModelProperty("厂家名称")
private String manufacturerName; // 库位编号
@ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
private String supplierSid;
@ApiModelProperty("客户/供应商名称")
private String supplierName;
} }

Loading…
Cancel
Save