Browse Source

错误。

master
yibo 7 years ago
parent
commit
012c6892d7
2 changed files with 71 additions and 25 deletions
  1. +70
    -6
      B3ClientService/Rpcs/BillRpc/OrderDetailRpc.cs
  2. +1
    -19
      B3ClientService/Rpcs/BillRpc/SecondOrderRpc.cs

+ 70
- 6
B3ClientService/Rpcs/BillRpc/OrderDetailRpc.cs View File

@ -506,21 +506,85 @@ namespace BWP.B3ClientService.Rpcs.BillRpc
throw new Exception(string.Format("错误的状态输入 {0}", state));
using (var session = Dmo.NewSession())
{
var orderInfo = InnerBLUtil.GetSingleDmo<OrderDetail>(session, "ID", id, "Technics", "PlanNumber");
orderInfo.ID = id;
var update = new DQUpdateDom(typeof(OrderDetail));
update.Columns.Add(new DQUpdateColumn("OrderState", state));
update.Where.Conditions.Add(DQCondition.EQ("ID", id));
session.ExecuteNonQuery(update);
if (state == 20)
if (orderInfo.Technics.HasValue)
{
var orderInfo = InnerBLUtil.GetSingleDmo<OrderDetail>(session, "ID", id, "Technics", "PlanNumber");
orderInfo.ID = id;
SecondOrderRpc.OffLineCreateSecondOrder(session, orderInfo);
if (state == 0)
update.Columns.Add(new DQUpdateColumn("SecondarySplit", false));
else
update.Columns.Add(new DQUpdateColumn("SecondarySplit", true));
}
update.Where.Conditions.Add(DQCondition.EQ("ID", id));
session.ExecuteNonQuery(update);
if (orderInfo.Technics.HasValue)
OffLineCreateSecondOrder(session, orderInfo, state);
session.Commit();
}
return 1;
}
static void OffLineCreateSecondOrder(IDmoSession session, OrderDetail detail, int state)
{
var secondOrderID = GetSecondOrderID(session, detail.ID);
if (state == 0)
DeleteSecondOrder(session, secondOrderID, detail.ID);
else
{
if (secondOrderID.HasValue)
return;
var second = new SecondOrder();
second.ModifyTime = DateTime.Now;
second.IsOk = true;
second.Finish = true;
second.OrderDetail_ID = detail.ID;
second.HotFadeNumber = detail.Technics == 0 ? detail.PlanNumber : 0;
session.Insert(second);
if (second.HotFadeNumber != 0)
return;
var sDetail = new SecondOrder_Detail();
sDetail.Number = second.HotFadeNumber;
sDetail.SecondOrder_ID = second.ID;
sDetail.Time = DateTime.Now;
session.Insert(sDetail);
}
}
private static void DeleteSecondOrder(IDmoSession session, long? secondOrderID, long orderID)
{
if (secondOrderID == null)
return;
BeforeDeleteSecondOrder(session, orderID);
var delete = new DQDeleteDom(typeof(SecondOrder));
delete.Where.Conditions.Add(DQCondition.EQ("ID", secondOrderID));
session.ExecuteNonQuery(delete);
var delete2 = new DQDeleteDom(typeof(SecondOrder_Detail));
delete2.Where.Conditions.Add(DQCondition.EQ("SecondOrder_ID", secondOrderID));
session.ExecuteNonQuery(delete2);
}
static void BeforeDeleteSecondOrder(IDmoSession session, long orderID)
{
var q = new DQueryDom(new JoinAlias(typeof(GradeAndWeight_Detail)));
q.Where.Conditions.Add(DQCondition.EQ("OrderDetail_ID", orderID));
q.Columns.Add(DQSelectColumn.Field("ID"));
q.Range = SelectRange.Top(1);
if (q.EExecuteScalar() != null)
throw new Exception("已经开始胴体称重定级,无法取消");
}
private static long? GetSecondOrderID(IDmoSession session, long orderDetailID)
{
var query = new DQueryDom(new JoinAlias(typeof(SecondOrder)));
query.Where.Conditions.Add(DQCondition.EQ("OrderDetail_ID", orderDetailID));
query.Columns.Add(DQSelectColumn.Field("ID"));
return query.EExecuteScalar<long?>(session);
}
[Rpc]
public static long InsertByHurryRecord(string insert, long hurryID)
{


+ 1
- 19
B3ClientService/Rpcs/BillRpc/SecondOrderRpc.cs View File

@ -148,25 +148,7 @@ namespace BWP.B3ClientService.Rpcs.BillRpc
session.Commit();
}
return id;
}
public static void OffLineCreateSecondOrder(IDmoSession session, OrderDetail detail)
{
var second = new SecondOrder();
second.ModifyTime = DateTime.Now;
second.IsOk = true;
second.Finish = true;
second.OrderDetail_ID = detail.ID;
second.HotFadeNumber = detail.Technics == 0 ? detail.PlanNumber : 0;
session.Insert(second);
if (second.HotFadeNumber != 0)
return;
var sDetail = new SecondOrder_Detail();
sDetail.Number = second.HotFadeNumber;
sDetail.SecondOrder_ID = second.ID;
sDetail.Time = DateTime.Now;
session.Insert(sDetail);
}
}
[Rpc]
public static string GetSecondOrderDetails(long id)


Loading…
Cancel
Save