Browse Source

01-07

master
wangpengfei 5 months ago
parent
commit
a4bdf3b6a4
  1. 8
      src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java
  2. 5
      src/main/java/com/yxt/warehouse/biz/purchaseinventorybill/PurchaseInventoryBillService.java
  3. 6
      src/main/java/com/yxt/warehouse/biz/purchaseinventorybilldetail/PurchaseInventoryBillDetailService.java
  4. 3
      src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventory.java
  5. 2
      src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventoryDto.java
  6. 2
      src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventoryService.java
  7. 2
      src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java
  8. 14
      src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml
  9. 20
      src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java
  10. 6
      src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportQuery.java
  11. 17
      src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseOutReportVo.java
  12. 2
      src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBill.java
  13. 2
      src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBillDto.java
  14. 18
      src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBillService.java

8
src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java

@ -96,7 +96,13 @@ public class WarehouseInventoryRecordRest {
PagerVo<WarehouseInventoryCountDetailsVo> pv = warehouseInventoryRecordService.inventoryOutboundStats(pq);
return rb.success().setData(pv);
}
@ApiOperation("客户销售统计报表")
@PostMapping("/customerSales")
public ResultBean<PagerVo<WarehouseOutReportVo>> customerSales(@RequestBody PagerQuery<WarehouseInventoryCountReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<WarehouseOutReportVo> pv = warehouseInventoryRecordService.customerSales(pq);
return rb.success().setData(pv);
}
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<WarehouseInventoryRecordVo>> listPage(@RequestBody PagerQuery<WarehouseInventoryRecordQuery> pq){

5
src/main/java/com/yxt/warehouse/biz/purchaseinventorybill/PurchaseInventoryBillService.java

@ -323,7 +323,9 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
dto2.setSourceBillSid(purchaseInventoryBill.getSid());
purchaseInventoryBillDetailService.saveOrUpdate(dto2);
WarehouseInventoryDto warehouseInventory=new WarehouseInventoryDto();
// BeanUtil.copyProperties(dto2,warehouseInventory);warehouseInventory.setBatchNumber(dto2.getBatch());
BeanUtil.copyProperties(dto2,warehouseInventory);
warehouseInventory.setCost(dto2.getCostPrice());
warehouseInventory.setCount(dto2.getCount());
warehouseInventory.setGoodsSkuOwnSpec(dto2.getOwnSpec());
warehouseInventory.setUnit(dto2.getGoodsUnitName());
warehouseInventory.setAllocateCount(new BigDecimal(0));
@ -355,6 +357,7 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
warehouseInventory.setUserName(dto.getUserName());
warehouseInventory.setUseOrgSid(dto.getUseOrgSid());
warehouseInventory.setCreateOrgSid(dto.getCreateOrgSid());
warehouseInventory.setGoodsSkuCode(dto2.getGoodsSkuCode());
warehouseInventoryService.saveInventory(warehouseInventory);
}
OperationRecordDto dto1 = new OperationRecordDto();

6
src/main/java/com/yxt/warehouse/biz/purchaseinventorybilldetail/PurchaseInventoryBillDetailService.java

@ -239,9 +239,9 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
public ResultBean<String> saveOrUpdate(PurchaseInventoryBillDetailDto2 dto) {
ResultBean rb = ResultBean.fireFail();
String sid = "";
if (StringUtils.isNotBlank(dto.getSid())) {
PurchaseInventoryBillDetail purchaseInventoryBillDetail = fetchBySid(dto.getSid());
if (purchaseInventoryBillDetail!=null) {
sid = dto.getSid();
PurchaseInventoryBillDetail purchaseInventoryBillDetail = fetchBySid(dto.getSid());
BeanUtil.copyProperties(dto, purchaseInventoryBillDetail, "id", "sid");
purchaseInventoryBillDetail.setSpecValue(dto.getOwnSpec());
purchaseInventoryBillDetail.setUnit(dto.getGoodsUnitName());
@ -249,7 +249,7 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
purchaseInventoryBillDetail.setRemarks(dto.getRemarks());
baseMapper.updateById(purchaseInventoryBillDetail);
} else {
PurchaseInventoryBillDetail purchaseInventoryBillDetail = new PurchaseInventoryBillDetail();
purchaseInventoryBillDetail = new PurchaseInventoryBillDetail();
sid = purchaseInventoryBillDetail.getSid();
BeanUtil.copyProperties(dto, purchaseInventoryBillDetail, "id", "sid");
purchaseInventoryBillDetail.setCreateTime(new DateTime());

3
src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventory.java

@ -1,5 +1,6 @@
package com.yxt.warehouse.biz.warehouseinventory;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
@ -59,5 +60,7 @@ public class WarehouseInventory extends BaseEntity {
private String goodsTypeSid;
private String goodsTypeName;
private String unitBarCode;//计量单位条码
@TableField(exist = false)
private BigDecimal cost;//计量单位条码
}

2
src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventoryDto.java

@ -23,6 +23,7 @@ public class WarehouseInventoryDto implements Dto {
private String goodsSpuSid;
@ApiModelProperty("商品名称")
private String goodsSpuName;
private String goodsSpuCode;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品Sku名称")
@ -75,5 +76,6 @@ public class WarehouseInventoryDto implements Dto {
private String goodsTypeSid;
private String goodsTypeName;
private String unitBarCode;//计量单位条码
private String tax;//计量单位条码
}

2
src/main/java/com/yxt/warehouse/biz/warehouseinventory/WarehouseInventoryService.java

@ -296,6 +296,8 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
recordDto.setCurrentCount(new BigDecimal(v));
recordDto.setOperator(dto.getUserName());
recordDto.setOperatorSid(dto.getUserSid());
recordDto.setManufacturerSid(dto.getManufacturerSid());
recordDto.setManufacturerName(dto.getManufacturerName());
warehouseInventoryRecordService.saveRecord(recordDto);
WarehouseInventoryBatch batch=new WarehouseInventoryBatch();

2
src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java

@ -33,6 +33,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInAndOutboundVo;
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryCountDetailsVo;
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryDetailsRecordVo;
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseOutReportVo;
import com.yxt.warehouse.biz.warehouseoldinventory.WarehouseOldInventoryDetailsListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -71,6 +72,7 @@ public interface WarehouseInventoryRecordMapper extends BaseMapper<WarehouseInve
List<WarehouseInAndOutboundVo> selInboundAndOutboundCount(@Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
IPage<WarehouseInventoryCountDetailsVo> inventoryInboundAndOutboundStats(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
IPage<WarehouseOutReportVo> customerSales(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
IPage<WarehouseInventoryDetailsRecordVo> inventoryDetailsRecord(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);

14
src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml

@ -42,11 +42,23 @@
resultType="com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryCountDetailsVo">
SELECT IFNULL(SUM(r.count), 0) AS `count`,
r.busTypeValue
FROM wms_inventory_record AS r
FROM warehouse_inventory_record AS r
<where>
${ew.sqlSegment}
</where>
</select>
<select id="customerSales"
resultType="com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseOutReportVo">
SELECT IFNULL(SUM(r.count), 0) AS `count`,
r.customerSid,
r.customerName,
IFNULL(SUM(r.amount), 0) as amount
FROM warehouse_inventory_record AS r
<where>
${ew.sqlSegment}
</where>
</select>
<select id="inventoryDetailsRecord"
resultType="com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryDetailsRecordVo">
SELECT CASE

20
src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java

@ -187,6 +187,26 @@ public class WarehouseInventoryRecordService extends MybatisBaseService<Warehous
PagerVo<WarehouseInventoryCountDetailsVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<WarehouseOutReportVo> customerSales(PagerQuery<WarehouseInventoryCountReportQuery> pq) {
WarehouseInventoryCountReportQuery query = pq.getParams();
QueryWrapper<WarehouseInventoryRecord> qw = new QueryWrapper<>();
qw.apply(StringUtils.isNotBlank(query.getStartDate()), "r.createTime >= '" + query.getStartDate() + "'").
apply(StringUtils.isNotBlank(query.getEndDate()), "r.createTime <= '" + query.getEndDate() + "'"
);
if(query.getSids()!=null){
qw.in("customerSid",query.getSids());
}
if(StringUtils.isNotBlank(query.getCustomerName())){
qw.like("customerName",query.getCustomerName());
}
qw.eq("r.billType", "0");
qw.groupBy("r.customerSid");
qw.eq("createOrgSid",query.getOrgPath());
IPage<WarehouseInventoryRecord> page = PagerUtil.queryToPage(pq);
IPage<WarehouseOutReportVo> pagging = baseMapper.customerSales(page, qw);
PagerVo<WarehouseOutReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<WarehouseInventoryDetailsRecordVo> inventoryDetailsRecord(PagerQuery<WarehouseInventoryDetailsRecordQuery> pq) {
WarehouseInventoryDetailsRecordQuery query = pq.getParams();

6
src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportQuery.java

@ -3,6 +3,8 @@ package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
import com.yxt.common.core.query.Query;
import lombok.Data;
import java.util.List;
/**
* @author Fan
* @description
@ -14,6 +16,8 @@ public class WarehouseInventoryCountReportQuery implements Query {
private String settleTime;
private String startDate;
private String endDate;
private String useOrgSid;
private String orgPath;
private String customerName;
private List<String> sids;
}

17
src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseOutReportVo.java

@ -0,0 +1,17 @@
package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
import lombok.Data;
/**
* @author wangpengfei
* @date 2025/1/3 16:41
*/
@Data
public class WarehouseOutReportVo {
private String sid;
private String customerSid;
private String customerName;
private String amount;
private String count;
private String shippingFee;
}

2
src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBill.java

@ -105,5 +105,7 @@ public class WarehouseOutBill extends BaseEntity {
private String createOrgSid;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
private String customerSid;
private String customerName;
}

2
src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBillDto.java

@ -109,6 +109,8 @@ public class WarehouseOutBillDto {
private String remarks;
private String userSid;
private String userName;
private String customerSid;
private String customerName;
private List<WarehouseOutBillDetailDto> detailsList = new ArrayList<>();

18
src/main/java/com/yxt/warehouse/biz/warehouseoutbill/WarehouseOutBillService.java

@ -318,22 +318,26 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
public ResultBean confirm(WarehouseOutBillDto dto) {
ResultBean rb = ResultBean.fireFail();
for (String s : dto.getSid().split(",")) {
WarehouseOutBill warehouseOutBill=baseMapper.selectOne(new QueryWrapper<WarehouseOutBill>().eq("sid",s));
List<WarehouseOutLocation> warehouseOutLocations=warehouseOutLocationService.list(new QueryWrapper<WarehouseOutLocation>().eq("sourceBillSid",dto.getSid()));
for (WarehouseOutLocation warehouseOutLocation : warehouseOutLocations) {
WarehouseOutBillDetail one = warehouseOutBillDetailService.getOne(new QueryWrapper<WarehouseOutBillDetail>()
.eq("sourceBillSid", warehouseOutBill.getSid())
.eq("goodsSkuSid", warehouseOutLocation.getGoodsSkuSid()));
WarehouseInventory warehouseInventory = warehouseInventoryService.fetchBySid(warehouseOutLocation.getInventorySid());
//减去出库的数量
warehouseInventory.setCount(warehouseInventory.getCount().subtract(warehouseOutLocation.getCount()));
warehouseInventory.setAllocateCount(warehouseInventory.getAllocateCount().subtract(warehouseOutLocation.getCount()));
warehouseInventoryService.updateById(warehouseInventory);
WarehouseInventoryRecordDto recordDto=new WarehouseInventoryRecordDto();
// recordDto.setCost(warehouseInventory.getCost());
recordDto.setCost(one.getPrice());
recordDto.setCount(warehouseOutLocation.getCount());
recordDto.setCustomerName("");
recordDto.setCustomerSid("");
recordDto.setCustomerName(warehouseOutBill.getCustomerName());
recordDto.setCustomerSid(warehouseOutBill.getCustomerSid());
recordDto.setOperator(dto.getUserName());
recordDto.setOperatorSid(dto.getUserSid());
recordDto.setUseOrgSid(dto.getUseOrgSid());
recordDto.setCreateOrgSid(dto.getCreateOrgSid());
recordDto.setUseOrgSid(warehouseOutBill.getUseOrgSid());
recordDto.setCreateOrgSid(warehouseOutBill.getCreateOrgSid());
recordDto.setBusTypeValue("销售出库");
recordDto.setBusTypeKey("销售出库");
saveWarehouseInventory(dto.getSid(),recordDto);
@ -345,7 +349,6 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
dto1.setCreateTime(new Date());
dto1.setContent("出库");
operationRecordService.save(dto1);
WarehouseOutBill warehouseOutBill=baseMapper.selectOne(new QueryWrapper<WarehouseOutBill>().eq("sid",s));
warehouseOutBill.setBillState("3");
baseMapper.updateById(warehouseOutBill);
}
@ -372,8 +375,10 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
// warehouseInventoryRecordDto.setBatchNumber(warehouseInventory.getBatchNumber());
warehouseInventoryRecordDto.setGoodsSpuSid(warehouseInventory.getGoodsSpuSid());
warehouseInventoryRecordDto.setGoodsSpuName(warehouseOutLocation.getGoodsSpuName());
// warehouseInventoryRecordDto.setGoodsSpuCode(warehouseOutLocation.gets);
warehouseInventoryRecordDto.setGoodsSkuSid(warehouseOutLocation.getGoodsSkuSid());
warehouseInventoryRecordDto.setGoodsSkuCode(warehouseOutLocation.getGoodsSkuCode());
// warehouseInventoryRecordDto.setGoodsSkuTitle();
warehouseInventoryRecordDto.setUnit(warehouseInventory.getUnit());
warehouseInventoryRecordDto.setCurrentCount(StringUtils.isNotBlank(warehouseInventory.getCount().toString()) ? new BigDecimal(warehouseInventory.getCount().toString()) : BigDecimal.ZERO);
warehouseInventoryRecordDto.setCount(dto.getCount());
@ -386,6 +391,7 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
warehouseInventoryRecordDto.setOperatorSid(dto.getOperatorSid());
warehouseInventoryRecordDto.setUseOrgSid(dto.getUseOrgSid());
warehouseInventoryRecordDto.setCreateOrgSid(dto.getCreateOrgSid());
warehouseInventoryRecordDto.setAmount((dto.getCount().multiply(dto.getCost())));
warehouseInventoryRecordService.saveOrUpdateDto(warehouseInventoryRecordDto);
}
}

Loading…
Cancel
Save