|
|
|
@ -60,7 +60,9 @@ namespace BWP.B3ClientService.Rpcs.BillRpc |
|
|
|
{ |
|
|
|
SubtractPlanNumber(session, orderId, number); |
|
|
|
SubtractHotFadeNumber(session, orderId, number, type); |
|
|
|
return InsertNewOrder(session, orderId, number, type); |
|
|
|
var order = InsertNewOrder(session, orderId, number, type); |
|
|
|
session.Commit(); |
|
|
|
return order; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -122,7 +124,7 @@ namespace BWP.B3ClientService.Rpcs.BillRpc |
|
|
|
var order = InnerBLUtil.GetSingleDmo<OrderDetail>(session, new Tuple<string, object>("ID", orderID)); |
|
|
|
var nOrder = new OrderDetail(); |
|
|
|
DmoUtil.CopyDmoFields(order, nOrder, "B3MainID", "Order", "PlanNumber", "SecondarySplit", "OrderState", "IsDrop", "B3ID", "Sync", "ModifyTime", "ID"); |
|
|
|
nOrder.Order = GetMaxOrder(nOrder.Date.Value) + 1; |
|
|
|
nOrder.Order = GetMaxOrder(session, nOrder.Date.Value) + 1; |
|
|
|
nOrder.PlanNumber = number; |
|
|
|
nOrder.SecondarySplit = true; |
|
|
|
nOrder.OrderState = 20; |
|
|
|
@ -150,14 +152,14 @@ namespace BWP.B3ClientService.Rpcs.BillRpc |
|
|
|
return nOrder.Order; |
|
|
|
} |
|
|
|
|
|
|
|
static int GetMaxOrder(DateTime date) |
|
|
|
static int GetMaxOrder(IDmoSession session, DateTime date) |
|
|
|
{ |
|
|
|
var query = new DQueryDom(new JoinAlias(typeof(OrderDetail))); |
|
|
|
query.Columns.Add(DQSelectColumn.Field("IsDrop")); |
|
|
|
query.Columns.Add(DQSelectColumn.Max("Order")); |
|
|
|
query.Where.Conditions.Add(DQCondition.And(DQCondition.EQ("Date", date), DQCondition.EQ("DeleteState", false))); |
|
|
|
query.GroupBy.Expressions.Add(DQExpression.Field("IsDrop")); |
|
|
|
var r = query.EExecuteList<bool, int>(); |
|
|
|
var r = query.EExecuteList<bool, int>(session); |
|
|
|
var first = r.FirstOrDefault(x => x.Item1); |
|
|
|
if (first == null) |
|
|
|
return r.First().Item2; |
|
|
|
|