|
|
@ -11,6 +11,8 @@ using Forks.EnterpriseServices.SqlDoms; |
|
|
using Newtonsoft.Json; |
|
|
using Newtonsoft.Json; |
|
|
using TSingSoft.WebPluginFramework; |
|
|
using TSingSoft.WebPluginFramework; |
|
|
using System.Web; |
|
|
using System.Web; |
|
|
|
|
|
using System.Web.Script.Serialization; |
|
|
|
|
|
using System.Collections.Generic; |
|
|
|
|
|
|
|
|
namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
{ |
|
|
{ |
|
|
@ -20,23 +22,51 @@ namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
[Rpc] |
|
|
[Rpc] |
|
|
public static string GetUnSubmitList() |
|
|
public static string GetUnSubmitList() |
|
|
{ |
|
|
{ |
|
|
var query = new DQueryDom(new JoinAlias(typeof(TrunksIousOutInStoreRecord))); |
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.Or(DQCondition.IsNull(DQExpression.Field("IsSubmited")), DQCondition.EQ("IsSubmited", false))); |
|
|
|
|
|
query.OrderBy.Expressions.Add(DQOrderByExpression.Create("ID", true)); |
|
|
|
|
|
var list = query.EExecuteDmoList<TrunksIousOutInStoreRecord>("ID", "BarCode", "Goods_Name", "Number", "Weight"); |
|
|
|
|
|
return JsonConvert.SerializeObject(list); |
|
|
|
|
|
|
|
|
return GetEntityList(false); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
[Rpc] |
|
|
[Rpc] |
|
|
public static string GetSubmitedList() |
|
|
public static string GetSubmitedList() |
|
|
|
|
|
{ |
|
|
|
|
|
return GetEntityList(true); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
static string GetEntityList(bool submited) |
|
|
{ |
|
|
{ |
|
|
var query = new DQueryDom(new JoinAlias(typeof(TrunksIousOutInStoreRecord))); |
|
|
var query = new DQueryDom(new JoinAlias(typeof(TrunksIousOutInStoreRecord))); |
|
|
query.Where.Conditions.Add(DQCondition.EQ("IsSubmited", true)); |
|
|
|
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("ID")); |
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("BarCode")); |
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("Goods_Name")); |
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("Number")); |
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("Weight")); |
|
|
|
|
|
if (submited) |
|
|
|
|
|
{ |
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("BeforeWeight")); |
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ("IsSubmited", true)); |
|
|
|
|
|
query.Range = SelectRange.Top(50); |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.Or(DQCondition.IsNull(DQExpression.Field("IsSubmited")), DQCondition.EQ("IsSubmited", false))); |
|
|
query.OrderBy.Expressions.Add(DQOrderByExpression.Create("ID", true)); |
|
|
query.OrderBy.Expressions.Add(DQOrderByExpression.Create("ID", true)); |
|
|
query.Range = SelectRange.Top(50); |
|
|
|
|
|
|
|
|
|
|
|
var list = query.EExecuteDmoList<TrunksIousOutInStoreRecord>("ID", "BarCode", "Goods_Name", "Number", "BeforeWeight", "Weight"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var list = new List<TrunksIousOutInStoreRecord>(); |
|
|
|
|
|
using (var session = Dmo.NewSession()) |
|
|
|
|
|
{ |
|
|
|
|
|
using (var reader = session.ExecuteReader(query)) |
|
|
|
|
|
{ |
|
|
|
|
|
while (reader.Read()) |
|
|
|
|
|
{ |
|
|
|
|
|
var entity = new TrunksIousOutInStoreRecord(); |
|
|
|
|
|
list.Add(entity); |
|
|
|
|
|
entity.ID = (long)reader[0]; |
|
|
|
|
|
entity.BarCode = (string)reader[1]; |
|
|
|
|
|
entity.Goods_Name = (string)reader[2]; |
|
|
|
|
|
entity.Number = (int)reader[3]; |
|
|
|
|
|
entity.Weight = (decimal?)reader[4]; |
|
|
|
|
|
if (submited) |
|
|
|
|
|
entity.BeforeWeight = (decimal?)reader[5]; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
return JsonConvert.SerializeObject(list); |
|
|
return JsonConvert.SerializeObject(list); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -53,7 +83,6 @@ namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
update.Columns.Add(new DQUpdateColumn("WorkUnit_ID", entity.WorkUnit_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("WorkUnit_ID", entity.WorkUnit_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("Store_ID", entity.Store_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("Store_ID", entity.Store_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("ProductBatch_ID", entity.ProductBatch_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("ProductBatch_ID", entity.ProductBatch_ID)); |
|
|
update.Columns.Add(new DQUpdateColumn("ProductBatch", entity.ProductBatch)); |
|
|
|
|
|
update.Columns.Add(new DQUpdateColumn("IsSubmited", true)); |
|
|
update.Columns.Add(new DQUpdateColumn("IsSubmited", true)); |
|
|
update.Columns.Add(new DQUpdateColumn("Sync", false)); |
|
|
update.Columns.Add(new DQUpdateColumn("Sync", false)); |
|
|
update.Columns.Add(new DQUpdateColumn("CreateTime", DateTime.Now)); |
|
|
update.Columns.Add(new DQUpdateColumn("CreateTime", DateTime.Now)); |
|
|
@ -80,13 +109,14 @@ namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
{ |
|
|
{ |
|
|
if (string.IsNullOrEmpty(barCode)) |
|
|
if (string.IsNullOrEmpty(barCode)) |
|
|
throw new Exception("条码不能为空"); |
|
|
throw new Exception("条码不能为空"); |
|
|
CheckCodeRight(barCode); |
|
|
|
|
|
|
|
|
var upID = CheckCodeRight(barCode); |
|
|
using (var session = Dmo.NewSession()) |
|
|
using (var session = Dmo.NewSession()) |
|
|
{ |
|
|
{ |
|
|
var record = GetExist(session, barCode); |
|
|
|
|
|
|
|
|
var record = GetExist(session, upID); |
|
|
if (record == null) |
|
|
if (record == null) |
|
|
{ |
|
|
{ |
|
|
record = new TrunksIousOutInStoreRecord(); |
|
|
record = new TrunksIousOutInStoreRecord(); |
|
|
|
|
|
record.UpID = upID; |
|
|
record.Goods_ID = goodsId; |
|
|
record.Goods_ID = goodsId; |
|
|
record.Goods_Name = goodsName; |
|
|
record.Goods_Name = goodsName; |
|
|
record.BarCode = barCode; |
|
|
record.BarCode = barCode; |
|
|
@ -107,10 +137,10 @@ namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private static TrunksIousOutInStoreRecord GetExist(IDmoSession session, string barCode) |
|
|
|
|
|
|
|
|
private static TrunksIousOutInStoreRecord GetExist(IDmoSession session, long upID) |
|
|
{ |
|
|
{ |
|
|
var query = new DmoQuery(typeof(TrunksIousOutInStoreRecord)); |
|
|
var query = new DmoQuery(typeof(TrunksIousOutInStoreRecord)); |
|
|
query.Where.Conditions.Add(DQCondition.EQ("BarCode", barCode)); |
|
|
|
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ("UpID", upID)); |
|
|
var res = session.ExecuteList(query).Cast<TrunksIousOutInStoreRecord>().ToList(); |
|
|
var res = session.ExecuteList(query).Cast<TrunksIousOutInStoreRecord>().ToList(); |
|
|
if (res.Count > 0) |
|
|
if (res.Count > 0) |
|
|
{ |
|
|
{ |
|
|
@ -120,14 +150,15 @@ namespace BWP.B3ClientService.Rpcs.BillRpc.TrunksIousOutInStoreRecord_ |
|
|
return null; |
|
|
return null; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
static void CheckCodeRight(string barCode) |
|
|
|
|
|
|
|
|
static long CheckCodeRight(string barCode) |
|
|
{ |
|
|
{ |
|
|
var query = new DQueryDom(new JoinAlias(typeof(GradeAndWeight_Detail))); |
|
|
var query = new DQueryDom(new JoinAlias(typeof(GradeAndWeight_Detail))); |
|
|
query.Where.Conditions.Add(DQCondition.EQ("BarCode", barCode)); |
|
|
query.Where.Conditions.Add(DQCondition.EQ("BarCode", barCode)); |
|
|
query.Columns.Add(DQSelectColumn.Create(DQExpression.Value(1), "c")); |
|
|
|
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("ID")); |
|
|
query.Range = SelectRange.Top(1); |
|
|
query.Range = SelectRange.Top(1); |
|
|
if (query.EExecuteScalar() == null) |
|
|
if (query.EExecuteScalar() == null) |
|
|
throw new Exception("条码不正确"); |
|
|
throw new Exception("条码不正确"); |
|
|
|
|
|
return query.EExecuteScalar<long>(); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |