1. 【新增】售后单售后原因类型支持搜索

2. 【新增】手工创建订单折扣可输入正数

3. 【优化】盘点申请单确认

4. 【修复】采购退货单模拟出库失败问题

5. 【新增】订单金额客户实付与结算金额

6. 【优化】仓库发货统计报表物料名称显示

7. 【优化】自有仓储虚拟发货逻辑

8. 【修复】基础物料分类管理问题
This commit is contained in:
chenping
2026-04-01 11:59:17 +08:00
parent 9341122827
commit 61783b7d01
754 changed files with 46179 additions and 5700 deletions

View File

@@ -14,7 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* 发货
*
@@ -99,6 +98,30 @@ class erpapi_wms_response_process_delivery
}
}
// WMS 回传无物流公司、无运单号时:非大件物流须报错(大件在 OMS 内会用发货单号兜底运单号)
if ($params['status'] == 'delivery') {
$logiIdEmpty = empty($params['logi_id']);
$logiNoEmpty = trim((string)($params['logi_no'] ?? '')) === '';
$billHasLogi = !empty($params['bill_logi_no']) && is_array($params['bill_logi_no'])
&& array_filter(array_map('trim', $params['bill_logi_no']));
if ($logiIdEmpty && $logiNoEmpty && !$billHasLogi) {
$deliveryRow = app::get('ome')->model('delivery')->dump(
array('delivery_bn' => $params['delivery_bn']),
'logi_id'
);
if (empty($deliveryRow['logi_id'])) {
return array('rsp' => 'fail', 'msg' => '缺少物流公司');
}
$corpRow = app::get('ome')->model('dly_corp')->dump(
array('corp_id' => $deliveryRow['logi_id']),
'corp_model'
);
if (empty($corpRow['corp_model']) || $corpRow['corp_model'] != 'heavy') {
return array('rsp' => 'fail', 'msg' => '缺少物流公司运单号');
}
}
}
// 如果发货提前触发AG
if ($params['status'] == 'delivery' && $params['node_type'] == 'yjdf') {
$this->delivery_refundAg($params['delivery_bn'], $params['status']);

View File

@@ -14,7 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* 库存对账
*
@@ -47,7 +46,7 @@ class erpapi_wms_response_process_stock
$isFail = false;
$msg = [];
foreach ($items as $item) {
$uniqueBn = sha1($item['order_code'].'-|-'.$item['order_type'].'-|-'.$item['batch_code'].'-|-'.$item['warehouse'].'-|-'.$item['product_bn'].'-|-'.$item['wms_node_id'].'-|-'.$item['normal_num'].'-|-'.$item['defective_num']);
$uniqueBn = sha1($item['order_code'].'-|-'.$item['order_type'].'-|-'.$item['batch_code'].'-|-'.$item['warehouse'].'-|-'.$item['product_bn'].'-|-'.$item['wms_node_id'].'-|-'.$item['normal_num'].'-|-'.$item['defective_num'].'-|-'.$item['out_biz_code']);
$item['unique_bn'] = $uniqueBn;
if (!$item['change_time']){

View File

@@ -43,6 +43,7 @@ class erpapi_wms_response_process_storeprocess {
}
private function _dealStatus($sdf){
$tmp = $this->tmp_dealStatus($sdf);
return $tmp;
}