Skip to content

Commit

Permalink
Merge pull request #267 from Jzow/master
Browse files Browse the repository at this point in the history
Fix some bug for sale, purchase, retail module
  • Loading branch information
wansenai-bot committed Dec 7, 2023
2 parents b2dd430 + 7c163f8 commit 8f1538f
Show file tree
Hide file tree
Showing 27 changed files with 391 additions and 269 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@
<result property="stock" column="current_stock_quantity" />
<result property="extendInfo" column="product_manufacturer" />
<result property="retailPrice" column="retail_price" />
<result property="salePrice" column="sale_price" />
<result property="purchasePrice" column="purchase_price" />
</resultMap>

<select id="getProductSkuList" resultMap="productResultMap" parameterType="com.baomidou.mybatisplus.core.metadata.IPage">
SELECT ps.id, p.id AS productId, p.product_category_id, p.product_name, p.product_model, p.product_standard, p.product_color,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, p.product_manufacturer,pc.category_name,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, sku.sale_price, sku.purchase_price, p.product_manufacturer,pc.category_name,
ps.current_stock_quantity, w.warehouse_name, ps.warehouse_id
FROM product_stock AS ps
LEFT JOIN warehouse as w ON ps.warehouse_id = w.id
Expand Down Expand Up @@ -48,7 +50,7 @@

<select id="getProductSkuByBarCode" resultMap="productResultMap">
SELECT sku.id, p.id AS productId, p.product_category_id, p.product_name, p.product_model, p.product_standard, p.product_color,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, p.product_manufacturer,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, sku.sale_price, sku.purchase_price, p.product_manufacturer,
pc.category_name, ps.current_stock_quantity, ps.warehouse_id
FROM product_stock AS ps
LEFT JOIN product_sku AS sku ON sku.id = ps.product_sku_id
Expand All @@ -59,7 +61,7 @@

<select id="getProductSkuDetail" resultMap="productResultMap">
SELECT sku.id, p.id AS productId, p.product_category_id, p.product_name, p.product_model, p.product_standard, p.product_color,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, p.product_manufacturer,
sku.product_bar_code, sku.multi_attribute, sku.product_unit, sku.retail_price, sku.sale_price, sku.purchase_price, p.product_manufacturer,
pc.category_name, ps.current_stock_quantity, ps.warehouse_id
FROM product_stock AS ps
LEFT JOIN product_sku AS sku ON sku.id = ps.product_sku_id
Expand All @@ -70,7 +72,7 @@

<select id="getProductStock" resultType="com.wansenai.vo.report.ProductStockSkuVO" parameterType="com.baomidou.mybatisplus.extension.plugins.pagination.Page">
SELECT ps.id, p.product_name, p.id AS productId, p.product_model, p.product_standard, p.product_color,sku.product_bar_code, p.product_weight, p.warehouse_shelves,
sku.product_unit, sku.retail_price AS unit_price, p.product_manufacturer,pc.category_name AS product_category_name,
sku.product_unit, sku.retail_price, sku.sale_price, sku.purchase_price, p.product_manufacturer,pc.category_name AS product_category_name,
ps.current_stock_quantity AS current_stock, ps.init_stock_quantity AS initial_stock, w.warehouse_name, w.id AS warehouseId,
ROUND((ps.current_stock_quantity * sku.retail_price), 2) AS stock_amount
FROM product_stock AS ps
Expand All @@ -96,7 +98,7 @@

<select id="getProductStockList" resultType="com.wansenai.vo.report.ProductStockSkuVO" parameterType="com.wansenai.dto.report.QueryProductStockDTO">
SELECT ps.id, p.product_name, p.id AS productId, p.product_model, p.product_standard, p.product_color,sku.product_bar_code, p.product_weight, p.warehouse_shelves,
sku.product_unit, sku.retail_price AS unit_price, p.product_manufacturer,pc.category_name AS product_category_name,
sku.product_unit, sku.retail_price, sku.sale_price, sku.purchase_price, p.product_manufacturer,pc.category_name AS product_category_name,
ps.current_stock_quantity AS current_stock, ps.init_stock_quantity AS initial_stock, w.warehouse_name, w.id AS warehouseId,
ROUND((ps.current_stock_quantity * sku.retail_price), 2) AS stock_amount
FROM product_stock AS ps
Expand Down
6 changes: 0 additions & 6 deletions core/domain/src/main/java/com/wansenai/bo/AllotStockBO.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,5 @@ public class AllotStockBO {

private Integer productNumber;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal unitPrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal amount;

private String remark;
}
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,10 @@ public class ProductStockKeepUnitVO {

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal retailPrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal salePrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal purchasePrice;
}
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,15 @@ public class ProductStockSkuVO {
@ExcelExport(value = "单价")
private BigDecimal unitPrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal retailPrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal salePrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
private BigDecimal purchasePrice;

@JsonSerialize(using = BigDecimalSerializerBO.class)
@ExcelExport(value = "初始库存")
private BigDecimal initialStock;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -390,11 +390,11 @@ private Page<ReceiptVO> getReceiptRetailVOList(QueryReceiptDTO receiptDTO) {

var receiptVos = new ArrayList<ReceiptVO>(receiptRetailVOList.getRecords().size() + 2);
receiptRetailVOList.getRecords().forEach(item -> {
var member = memberService.lambdaQuery()
Optional<Member> memberOptional = Optional.ofNullable(memberService.lambdaQuery()
.eq(Member::getId, item.getMemberId())
.eq(Member::getDeleteFlag, CommonConstants.NOT_DELETED)
.one();

.one());
var memberName = memberOptional.map(Member::getMemberName).orElse("");
var operator = userService.getById(item.getCreateBy());

var productNumber = receiptRetailSubService.lambdaQuery()
Expand All @@ -406,7 +406,7 @@ private Page<ReceiptVO> getReceiptRetailVOList(QueryReceiptDTO receiptDTO) {

ReceiptVO receiptVO = ReceiptVO.builder()
.id(item.getId())
.name(Optional.ofNullable(member.getMemberName()).orElse(""))
.name(memberName)
.receiptNumber(item.getReceiptNumber())
.receiptDate(item.getReceiptDate())
.operator(Optional.ofNullable(operator.getName()).orElse(""))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -262,8 +262,6 @@ public Response<AllotReceiptDetailVO> getAllotReceiptDetail(Long id) {
.productStandard(product.getProductStandard())
.productModel(product.getProductModel())
.stock(product.getStock())
.unitPrice(warehouseReceiptSub.getUnitPrice())
.amount(warehouseReceiptSub.getTotalAmount())
.productNumber(warehouseReceiptSub.getProductNumber())
.remark(warehouseReceiptSub.getRemark())
.build();
Expand All @@ -287,12 +285,9 @@ public Response<String> addOrUpdateAllotReceipt(AllotReceiptDTO allotReceiptDTO)
var isUpdate = allotReceiptDTO.getId() != null;

var totalProductNumber = 0;
var totalAmount = BigDecimal.ZERO;

if(!allotReceiptDTO.getTableData().isEmpty()) {
for (AllotStockBO stockBO : allotReceiptDTO.getTableData()) {
totalProductNumber += stockBO.getProductNumber();
totalAmount = totalAmount.add(stockBO.getAmount());
}
}

Expand Down Expand Up @@ -326,7 +321,6 @@ public Response<String> addOrUpdateAllotReceipt(AllotReceiptDTO allotReceiptDTO)
.eq(WarehouseReceiptMain::getId, allotReceiptDTO.getId())
.set(allotReceiptDTO.getStatus() != null, WarehouseReceiptMain::getStatus, allotReceiptDTO.getStatus())
.set(WarehouseReceiptMain::getTotalProductNumber, totalProductNumber)
.set(WarehouseReceiptMain::getTotalAmount, totalAmount)
.set(StringUtils.hasLength(allotReceiptDTO.getReceiptDate()), WarehouseReceiptMain::getReceiptDate, allotReceiptDTO.getReceiptDate())
.set(StringUtils.hasLength(allotReceiptDTO.getRemark()), WarehouseReceiptMain::getRemark, allotReceiptDTO.getRemark())
.set(StringUtils.hasLength(fileIds), WarehouseReceiptMain::getFileId, fileIds)
Expand All @@ -348,8 +342,6 @@ public Response<String> addOrUpdateAllotReceipt(AllotReceiptDTO allotReceiptDTO)
.otherWarehouseId(item.getOtherWarehouseId())
.productBarcode(item.getBarCode())
.productNumber(item.getProductNumber())
.unitPrice(item.getUnitPrice())
.totalAmount(item.getAmount())
.remark(item.getRemark())
.createBy(userId)
.createTime(LocalDateTime.now())
Expand Down Expand Up @@ -392,8 +384,6 @@ public Response<String> addOrUpdateAllotReceipt(AllotReceiptDTO allotReceiptDTO)
.otherWarehouseId(item.getOtherWarehouseId())
.productBarcode(item.getBarCode())
.productNumber(item.getProductNumber())
.unitPrice(item.getUnitPrice())
.totalAmount(item.getAmount())
.remark(item.getRemark())
.createBy(userId)
.createTime(LocalDateTime.now())
Expand All @@ -408,7 +398,6 @@ public Response<String> addOrUpdateAllotReceipt(AllotReceiptDTO allotReceiptDTO)
.type("调拨出库")
.initReceiptNumber(allotReceiptDTO.getReceiptNumber())
.receiptDate(TimeUtil.parse(allotReceiptDTO.getReceiptDate()))
.totalAmount(totalAmount)
.totalProductNumber(totalProductNumber)
.remark(allotReceiptDTO.getRemark())
.fileId(fileIds)
Expand Down Expand Up @@ -499,8 +488,6 @@ public void exportAllotReceipt(QueryAllotReceiptDTO queryAllotReceiptDTO, HttpSe
.productUnit(item.getProductUnit())
.stock(item.getStock())
.productNumber(item.getProductNumber())
.unitPrice(item.getUnitPrice())
.amount(item.getAmount())
.remark(item.getRemark())
.build();
subData.add(allotStockBo);
Expand Down
3 changes: 3 additions & 0 deletions web/src/api/product/model/productModel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,9 @@ export interface ProductStockSkuResp {
warehouseShelves: string;
productWeight: number;
unitPrice: number;
retailPrice: number;
salePrice: number;
purchasePrice: number;
initialStock: number;
currentStock: number;
stockAmount: number;
Expand Down
1 change: 1 addition & 0 deletions web/src/api/purchase/model/orderModel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export interface PurchaseData {
stock: number;
productNumber: number;
unitPrice: number;
purchasePrice: number;
amount: number;
taxRate: number;
taxAmount: number;
Expand Down
2 changes: 1 addition & 1 deletion web/src/api/sale/model/orderModel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ export interface SalesData {
productStandard: string;
stock: number;
productNumber: number;
retailPrice: number;
salePrice: number;
amount: number;
taxRate: number;
taxAmount: number;
Expand Down
1 change: 1 addition & 0 deletions web/src/api/warehouse/model/shipmentsModel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import {FileData} from "@/api/financial/model/advanceModel";

export interface OtherShipmentsData {
id: number | string;
warehouseId: number | string;
customerId: number | string;
warehouseName: string;
barCode: string;
Expand Down
10 changes: 10 additions & 0 deletions web/src/views/product/info/info.data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,16 @@ const extendPriceColumn: BasicColumn[] = [
dataIndex: 'retailPrice',
width: 60,
},
{
title: '销售价',
dataIndex: 'salePrice',
width: 60,
},
{
title: '采购价',
dataIndex: 'purchasePrice',
width: 60,
},
{
title: '扩展信息',
dataIndex: 'extendInfo',
Expand Down
56 changes: 29 additions & 27 deletions web/src/views/purchase/order/components/AddEditModal.vue
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ import { addOrUpdatePurchaseOrder, getPurchaseOrderDetail} from "@/api/purchase/
import SupplierModal from "@/views/basic/supplier/components/SupplierModal.vue"
import SelectProductModal from "@/views/product/info/components/SelectProductModal.vue"
import {getProductSkuByBarCode, getProductStockSku} from "@/api/product/product";
import {getDefaultWarehouse} from "@/api/basic/warehouse";
import {getWarehouseList} from "@/api/basic/warehouse";
import {AddOrUpdateReceiptReq, PurchaseData} from "@/api/purchase/model/orderModel";
import {FileData} from '/@/api/retail/model/shipmentsModel';
import {getAccountList} from "@/api/financial/account";
Expand Down Expand Up @@ -325,7 +325,7 @@ export default defineComponent({
function openAddEditModal(id: string | undefined) {
open.value = true
loadSupplierList();
loadDefaultWarehouse();
loadWarehouseList();
loadAccountList();
loadProductSku();
if (id) {
Expand All @@ -338,11 +338,16 @@ export default defineComponent({
}
}
function loadDefaultWarehouse() {
getDefaultWarehouse().then(res => {
function loadWarehouseList() {
getWarehouseList().then(res => {
const data = res.data
if(data) {
purchaseOrderFormState.warehouseId = data.id
const defaultWarehouse = res.data.find(item => item.isDefault === 1)
if(defaultWarehouse) {
purchaseOrderFormState.warehouseId = defaultWarehouse.id
} else {
purchaseOrderFormState.warehouseId = res.data[0].id
}
}
})
}
Expand Down Expand Up @@ -410,9 +415,10 @@ export default defineComponent({
selectRow.row.productStandard = product.productStandard
selectRow.row.productUnit = product.productUnit
selectRow.row.stock = product.currentStock
selectRow.row.unitPrice = product.unitPrice
selectRow.row.taxTotalPrice = product.unitPrice
selectRow.row.amount = product.unitPrice
selectRow.row.unitPrice = product.purchasePrice
selectRow.row.taxTotalPrice = product.purchasePrice
selectRow.row.amount = product.purchasePrice
selectRow.row.taxRate = 0
selectRow.row.productNumber = 1
table.updateData(selectRow.rowIndex, selectRow.row)
} else {
Expand Down Expand Up @@ -496,12 +502,12 @@ export default defineComponent({
if (columns) {
const {data} = res
if (data) {
const sale : PurchaseData = data
const purchase : PurchaseData = data
const table = xGrid.value
if (table) {
//根据productExtendPrice.id判断表格中如果是同一个商品,数量加1 否则新增一行
const tableData = table.getTableData().tableData
const index = tableData.findIndex(item => item.barCode === sale.barCode)
const index = tableData.findIndex(item => item.barCode === purchase.barCode)
if (index > -1) {
const row = tableData[index]
row.productNumber = Number(row.productNumber) + 1
Expand All @@ -516,25 +522,22 @@ export default defineComponent({
table.updateData()
} else {
const tableData : RowVO = {
warehouseId: sale.warehouseId,
productId: sale.productId,
barCode: sale.barCode,
productName: sale.productName,
productStandard: sale.productStandard,
productUnit: sale.productUnit,
stock: sale.stock,
warehouseId: purchase.warehouseId,
productId: purchase.productId,
barCode: purchase.barCode,
productName: purchase.productName,
productStandard: purchase.productStandard,
productUnit: purchase.productUnit,
stock: purchase.stock,
productNumber: 1,
amount: sale.retailPrice,
unitPrice: sale.retailPrice,
taxTotalPrice: sale.retailPrice,
amount: purchase.purchasePrice,
unitPrice: purchase.purchasePrice,
taxTotalPrice: purchase.purchasePrice,
taxRate: 0,
taxAmount: 0,
};
table.insert(tableData)
}
// 调用单价改变方法进行一次计算
// unitPriceChange(table)
// 更新数据
purchaseOrderFormState.discountLastAmount = getTaxTotalPrice.value
}
}
Expand Down Expand Up @@ -727,11 +730,10 @@ export default defineComponent({
function handleCheckSuccess(data) {
const table = xGrid.value
if(table) {
// 给表格的unitPrice赋值item的retailPrice
data = data.map(item => {
item.unitPrice = item.retailPrice
item.unitPrice = item.purchasePrice
item.productNumber = 1
item.amount = item.retailPrice * item.productNumber
item.amount = item.purchasePrice * item.productNumber
item.taxRate = 0
item.taxAmount = 0
item.taxTotalPrice = item.amount + item.taxRate
Expand Down Expand Up @@ -847,7 +849,7 @@ export default defineComponent({
}
}
watch(getTaxTotalPrice, (newValue, oldValue) => {
watch(getTaxTotalPrice, (newValue) => {
purchaseOrderFormState.discountLastAmount = newValue
// 重新调用本次收款
discountAmountChange()
Expand Down
Loading

0 comments on commit 8f1538f

Please sign in to comment.