CRZ
20 小时以前 85ba3b8ad0bead0baf95d4623f4804c404721bac
MES.Service/service/MesSalesOrderManager.cs
@@ -58,7 +58,8 @@
                        it.OrderType == mesSalesOrder.OrderType)
           .ExecuteCommand();
        };
        }
        ;
        if (mesSalesOrderDetails.Count > 0)
        {
@@ -70,7 +71,8 @@
             && p.OrderType == it.OrderType))
            .ExecuteCommand();
        };
        }
        ;
        var orUpdate = db.Insertable(mesSalesOrder).ExecuteCommand();
        var baOrUpdate = db.Insertable(mesSalesOrderDetails).ExecuteCommand();
@@ -105,15 +107,19 @@
        {
            OrderId = dto.FBillNo,
            OrderType = dto.FBillTypeID,
            DocumentDate = !string.IsNullOrEmpty(dto.FDate) && DateTime.TryParseExact(dto.FDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime documentDate) ? (DateTime?)documentDate : null,
            // 支持多种日期格式: yyyy-MM-dd HH:mm:ss, yyyyMMdd, yyyy-MM-dd, yyyy/MM/dd
            DocumentDate = !string.IsNullOrEmpty(dto.FDate) && (DateTime.TryParseExact(dto.FDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime documentDate) || DateTime.TryParseExact(dto.FDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out documentDate) || DateTime.TryParseExact(dto.FDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out documentDate) || DateTime.TryParseExact(dto.FDate, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out documentDate)) ? (DateTime?)documentDate : null,
            CustomerId = dto.FCustId,
            OrderDate = !string.IsNullOrEmpty(dto.FOrderDate) && (DateTime.TryParseExact(dto.FOrderDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime orderDate) || DateTime.TryParseExact(dto.FOrderDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out orderDate)) ? (DateTime?)orderDate : null,
            DeliveryDate = !string.IsNullOrEmpty(dto.FDeliveryDate) && (DateTime.TryParseExact(dto.FDeliveryDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime deliveryDate) || DateTime.TryParseExact(dto.FDeliveryDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out deliveryDate)) ? (DateTime?)deliveryDate : null,
            // 支持多种日期格式: yyyyMMdd, yyyy-MM-dd, yyyy-MM-dd HH:mm:ss, yyyy/MM/dd
            OrderDate = !string.IsNullOrEmpty(dto.FOrderDate) && (DateTime.TryParseExact(dto.FOrderDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime orderDate) || DateTime.TryParseExact(dto.FOrderDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out orderDate) || DateTime.TryParseExact(dto.FOrderDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out orderDate) || DateTime.TryParseExact(dto.FOrderDate, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out orderDate)) ? (DateTime?)orderDate : null,
            // 支持多种日期格式: yyyyMMdd, yyyy-MM-dd, yyyy-MM-dd HH:mm:ss, yyyy/MM/dd
            DeliveryDate = !string.IsNullOrEmpty(dto.FDeliveryDate) && (DateTime.TryParseExact(dto.FDeliveryDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime deliveryDate) || DateTime.TryParseExact(dto.FDeliveryDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out deliveryDate) || DateTime.TryParseExact(dto.FDeliveryDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out deliveryDate) || DateTime.TryParseExact(dto.FDeliveryDate, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out deliveryDate)) ? (DateTime?)deliveryDate : null,
            Remarks = dto.FNote,
            Approver = dto.FApproverId,
            DebugDate = !string.IsNullOrEmpty(dto.FDebugDate) && (DateTime.TryParseExact(dto.FDebugDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime debugDate) || DateTime.TryParseExact(dto.FDebugDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out debugDate)) ? (DateTime?)debugDate : null,
            // 支持多种日期格式: yyyyMMdd, yyyy-MM-dd, yyyy-MM-dd HH:mm:ss, yyyy/MM/dd
            DebugDate = !string.IsNullOrEmpty(dto.FDebugDate) && (DateTime.TryParseExact(dto.FDebugDate, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime debugDate) || DateTime.TryParseExact(dto.FDebugDate, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out debugDate) || DateTime.TryParseExact(dto.FDebugDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out debugDate) || DateTime.TryParseExact(dto.FDebugDate, "yyyy/MM/dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out debugDate)) ? (DateTime?)debugDate : null,
            DeliverAddress = dto.FDeliverAddress,
            Over = dto.FOver
            Over = dto.FOver ?? 0  // 确保OVER默认为0,如果ERP推送的值为null则使用0
        };
        return entity;
    }