From 0817d6bc322a77d58cc2f3343915129bbab0058e Mon Sep 17 00:00:00 2001 From: yibo <361071264@qq.com> Date: Fri, 29 Sep 2017 17:45:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B3ClientService/B3ClientService.csproj | 1 + .../WeightBill/PrintWeightBill.cs | 41 ++++++++++++++++ B3ClientService/Rpcs/BillRpc/WeightBillRpc.cs | 47 +++++++++++++++++++ 3 files changed, 89 insertions(+) create mode 100644 B3ClientService/ClientSerializerBo/WeightBill/PrintWeightBill.cs diff --git a/B3ClientService/B3ClientService.csproj b/B3ClientService/B3ClientService.csproj index c144c33..24eb6e4 100644 --- a/B3ClientService/B3ClientService.csproj +++ b/B3ClientService/B3ClientService.csproj @@ -106,6 +106,7 @@ + diff --git a/B3ClientService/ClientSerializerBo/WeightBill/PrintWeightBill.cs b/B3ClientService/ClientSerializerBo/WeightBill/PrintWeightBill.cs new file mode 100644 index 0000000..db5bf3d --- /dev/null +++ b/B3ClientService/ClientSerializerBo/WeightBill/PrintWeightBill.cs @@ -0,0 +1,41 @@ +using BWP.B3ClientService.BO; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace BWP.B3ClientService +{ + public class PrintWeightBill + { + public long? ID { get; set; } + + public string Supplier_Name { get; set; } + + public DateTime? WeighTime { get; set; } + + public string Creator { get; set; } + + public string Employee_Name { get; set; } + + public string Inspector_Name { get; set; } + + public string HogGrade_Name { get; set; } + + public decimal? Weight { get; set; } + + public int? Number { get; set; } + + private List _details = new List(); + public List Details { get { return _details; } set { _details = value; } } + } + + public class PWeightBill_SanctionDetail + { + public string AbnormalItem_Name { get; set; } + + public int? Number { get; set; } + + public decimal? Money { get; set; } + } +} diff --git a/B3ClientService/Rpcs/BillRpc/WeightBillRpc.cs b/B3ClientService/Rpcs/BillRpc/WeightBillRpc.cs index a654dfd..f3441ed 100644 --- a/B3ClientService/Rpcs/BillRpc/WeightBillRpc.cs +++ b/B3ClientService/Rpcs/BillRpc/WeightBillRpc.cs @@ -254,5 +254,52 @@ namespace BWP.B3ClientService.Rpcs.BillRpc var result = query.EExecuteList().Select(x => new CTuple(x.Item1, x.Item2, x.Item3)); return serializer.Serialize(result.ToList()); } + + [Rpc] + public static string GetPrintWeightBill(long id) + { + var main = new JoinAlias(typeof(WeightBill)); + var detail = new JoinAlias(typeof(WeightBill_Detail)); + var query = new DQueryDom(main); + query.From.AddJoin(JoinType.Left, new DQDmoSource(detail), DQCondition.EQ(detail, "WeightBill_ID", id)); + query.Columns.Add(DQSelectColumn.Field("Supplier_Name")); + query.Columns.Add(DQSelectColumn.Field("WeighTime")); + query.Columns.Add(DQSelectColumn.Field("Creator")); + query.Columns.Add(DQSelectColumn.Field("Employee_Name")); + query.Columns.Add(DQSelectColumn.Field("Inspector_Name")); + query.Columns.Add(DQSelectColumn.Field("Weight", detail)); + query.Columns.Add(DQSelectColumn.Field("Number", detail)); + query.Columns.Add(DQSelectColumn.Field("B3ID")); + query.Columns.Add(DQSelectColumn.Field("HogGrade_Name")); + query.Where.Conditions.Add(DQCondition.EQ(main, "ID", id)); + var entity = new PrintWeightBill(); + using (var session = Dmo.NewSession()) + { + using (var reader = session.ExecuteReader(query)) + { + while (reader.Read()) + { + entity.Supplier_Name = (string)reader[0]; + entity.WeighTime = (DateTime?)reader[1]; + entity.Creator = (string)reader[2]; + entity.Employee_Name = (string)reader[3]; + entity.Inspector_Name = (string)reader[4]; + entity.Weight = (decimal?)reader[5]; + entity.Number = (int?)reader[6]; + entity.ID = (long?)reader[7]; + entity.HogGrade_Name = (string)reader[8]; + } + } + } + + var sanction = new DQueryDom(new JoinAlias(typeof(WeightBill_SanctionDetail))); + sanction.Where.Conditions.Add(DQCondition.EQ("WeightBill_ID", id)); + sanction.Columns.Add(DQSelectColumn.Field("AbnormalItem_Name")); + sanction.Columns.Add(DQSelectColumn.Field("Number")); + sanction.Columns.Add(DQSelectColumn.Field("Money")); + var s = sanction.EExecuteList(); + entity.Details = s.Select(x => new PWeightBill_SanctionDetail { AbnormalItem_Name = x.Item1, Number = x.Item2, Money = x.Item3 }).ToList(); + return serializer.Serialize(entity); + } } }