diff --git a/supply.html b/supply.html
index 085ccf9..029ba3a 100644
--- a/supply.html
+++ b/supply.html
@@ -7815,11 +7815,13 @@
const costpriceValue = pair.querySelector('.costprice-input').value.trim();
const specStatusValue = pair.querySelector('.spec-status-input').value.trim() || '0';
- // 无论规格是否为空,都将所有对添加到数组中,以便后续验证
- specifications.push(specValue);
- quantities.push(quantityValue);
- costprices.push(costpriceValue);
- specStatuses.push(specStatusValue);
+ // 只添加有效的规格信息(规格、件数、采购价都不为空)
+ if (specValue && quantityValue && costpriceValue) {
+ specifications.push(specValue);
+ quantities.push(quantityValue);
+ costprices.push(costpriceValue);
+ specStatuses.push(specStatusValue);
+ }
});
@@ -7898,6 +7900,12 @@
alert('请输入采购价');
return;
}
+ // 验证至少有一个有效的规格信息
+ if (specifications.length === 0) {
+ alert('请至少添加一个有效的规格信息');
+ return;
+ }
+
// 验证规格、件数和采购价 - 确保每个填写了规格的对都有对应的件数和采购价
let allPairsValid = true;
for (let i = 0; i < specifications.length; i++) {
@@ -9964,12 +9972,13 @@
const costpriceValue = pair.querySelector('.costprice-input').value.trim();
const specStatusValue = pair.querySelector('.spec-status-input').value.trim() || '0';
- // 保存所有添加的规格和件数对,即使其中一个为空
- // 这样可以保持记忆功能,下次编辑时还能看到之前添加的对
- specifications.push(specValue);
- quantities.push(quantityValue);
- costprices.push(costpriceValue);
- specStatuses.push(specStatusValue);
+ // 只添加有效的规格信息(规格、件数、采购价都不为空)
+ if (specValue && quantityValue && costpriceValue) {
+ specifications.push(specValue);
+ quantities.push(quantityValue);
+ costprices.push(costpriceValue);
+ specStatuses.push(specStatusValue);
+ }
});
@@ -10040,19 +10049,25 @@
alert('请输入采购价');
return false;
}
- // 验证规格、件数和采购价 - 确保每个填写了规格的对都有对应的件数和采购价
- let allPairsValid = true;
- for (let i = 0; i < specifications.length; i++) {
- // 如果规格不为空,则必须同时有件数和采购价
- if (specifications[i].trim() !== '' && (quantities[i].trim() === '' || costprices[i].trim() === '')) {
- allPairsValid = false;
- break;
- }
- }
- if (!allPairsValid) {
- alert('每个填写了规格的对都必须有对应的件数和采购价');
- return false;
+ // 验证至少有一个有效的规格信息
+ if (specifications.length === 0) {
+ alert('请至少添加一个有效的规格信息');
+ return false;
+ }
+
+ // 验证规格、件数和采购价 - 确保每个填写了规格的对都有对应的件数和采购价
+ let allPairsValid = true;
+ for (let i = 0; i < specifications.length; i++) {
+ // 如果规格不为空,则必须同时有件数和采购价
+ if (specifications[i].trim() !== '' && (quantities[i].trim() === '' || costprices[i].trim() === '')) {
+ allPairsValid = false;
+ break;
}
+ }
+ if (!allPairsValid) {
+ alert('每个填写了规格的对都必须有对应的件数和采购价');
+ return false;
+ }
if (!formData.supplyStatus) {
alert('请选择货源状态(预售/现货)');
return false;