From 509e88ed3070829a0cc112c92fcae718483085ab Mon Sep 17 00:00:00 2001
From: luanhui <1029149336@qq.com>
Date: Tue, 31 Oct 2017 16:11:06 +0800
Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E5=85=A5=E5=BA=93=E7=A7=B0=E9=87=8Drp?=
=?UTF-8?q?c?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
B3ClientService/B3ClientService.csproj | 1 +
.../CarcassStateWeight/CarcassStateWeight.cs | 5 +
.../Rpcs/BillRpc/TrunksIousOutInStoreRpc.cs | 129 ++++++++++++++++++
3 files changed, 135 insertions(+)
create mode 100644 B3ClientService/Rpcs/BillRpc/TrunksIousOutInStoreRpc.cs
diff --git a/B3ClientService/B3ClientService.csproj b/B3ClientService/B3ClientService.csproj
index 5d8e28d..d573c43 100644
--- a/B3ClientService/B3ClientService.csproj
+++ b/B3ClientService/B3ClientService.csproj
@@ -124,6 +124,7 @@
+
diff --git a/B3ClientService/BO/Bill/CarcassStateWeight/CarcassStateWeight.cs b/B3ClientService/BO/Bill/CarcassStateWeight/CarcassStateWeight.cs
index 6c360de..0db5051 100644
--- a/B3ClientService/BO/Bill/CarcassStateWeight/CarcassStateWeight.cs
+++ b/B3ClientService/BO/Bill/CarcassStateWeight/CarcassStateWeight.cs
@@ -19,14 +19,19 @@ namespace BWP.B3ClientService.BO
public string Code { get; set; }
public decimal? State1Weight { get; set; }
+ public DateTime? State1WeightTime { get; set; }
public decimal? State2Weight { get; set; }
+ public DateTime? State2WeightTime { get; set; }
public decimal? State3Weight { get; set; }
+ public DateTime? State3WeightTime { get; set; }
public decimal? State4Weight { get; set; }
+ public DateTime? State4WeightTime { get; set; }
public decimal? State5Weight { get; set; }
+ public DateTime? State5WeightTime { get; set; }
public NamedValue<胴体状态> CurrentState { get; set; }
diff --git a/B3ClientService/Rpcs/BillRpc/TrunksIousOutInStoreRpc.cs b/B3ClientService/Rpcs/BillRpc/TrunksIousOutInStoreRpc.cs
new file mode 100644
index 0000000..503959a
--- /dev/null
+++ b/B3ClientService/Rpcs/BillRpc/TrunksIousOutInStoreRpc.cs
@@ -0,0 +1,129 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Web.Script.Serialization;
+using BWP.B3ClientService.BO;
+using BWP.B3ClientService.NamedValueTemplate;
+using Forks.EnterpriseServices.DomainObjects2;
+using Forks.EnterpriseServices.DomainObjects2.DQuery;
+using Forks.EnterpriseServices.JsonRpc;
+
+namespace BWP.B3ClientService.Rpcs.BillRpc
+{
+ [Rpc]
+ public static class TrunksIousOutInStoreRpc
+ {
+
+ [Rpc]
+ public static void UpdateCarcassStateWeight1(string code,decimal weight)
+ {
+ using (var session=Dmo.NewSession())
+ {
+ var id = GetCarcassStateWeightId(session, code);
+ var updateDom=new DQUpdateDom(typeof(CarcassStateWeight));
+ updateDom.Where.Conditions.Add(DQCondition.EQ("ID",id));
+ updateDom.Columns.Add(new DQUpdateColumn("State1Weight",weight));
+ updateDom.Columns.Add(new DQUpdateColumn("State1WeightTime", DateTime.Now));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentState", 胴体状态.胴体称重));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentWeight", weight));
+
+ session.ExecuteNonQuery(updateDom);
+ session.Commit();
+ }
+ }
+ [Rpc]
+ public static void UpdateCarcassStateWeight2(string code, decimal weight)
+ {
+ using (var session = Dmo.NewSession())
+ {
+ var id = GetCarcassStateWeightId(session, code);
+ var updateDom = new DQUpdateDom(typeof(CarcassStateWeight));
+ updateDom.Where.Conditions.Add(DQCondition.EQ("ID", id));
+ updateDom.Columns.Add(new DQUpdateColumn("State2Weight", weight));
+ updateDom.Columns.Add(new DQUpdateColumn("State2WeightTime", DateTime.Now));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentState", 胴体状态.入预冷库));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentWeight", weight));
+
+ session.ExecuteNonQuery(updateDom);
+ session.Commit();
+ }
+ }
+ [Rpc]
+ public static void UpdateCarcassStateWeight3(string code, decimal weight)
+ {
+ using (var session = Dmo.NewSession())
+ {
+ var id = GetCarcassStateWeightId(session, code);
+ var updateDom = new DQUpdateDom(typeof(CarcassStateWeight));
+ updateDom.Where.Conditions.Add(DQCondition.EQ("ID", id));
+ updateDom.Columns.Add(new DQUpdateColumn("State3Weight", weight));
+ updateDom.Columns.Add(new DQUpdateColumn("State3WeightTime", DateTime.Now));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentState", 胴体状态.分割领用));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentWeight", weight));
+
+ session.ExecuteNonQuery(updateDom);
+ session.Commit();
+ }
+ }
+ [Rpc]
+ public static void UpdateCarcassStateWeight4(string code, decimal weight)
+ {
+ using (var session = Dmo.NewSession())
+ {
+ var id = GetCarcassStateWeightId(session, code);
+ var updateDom = new DQUpdateDom(typeof(CarcassStateWeight));
+ updateDom.Where.Conditions.Add(DQCondition.EQ("ID", id));
+ updateDom.Columns.Add(new DQUpdateColumn("State4Weight", weight));
+ updateDom.Columns.Add(new DQUpdateColumn("State4WeightTime", DateTime.Now));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentState", 胴体状态.入销售库));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentWeight", weight));
+
+ session.ExecuteNonQuery(updateDom);
+ session.Commit();
+ }
+ }
+ [Rpc]
+ public static void UpdateCarcassStateWeight5(string code, decimal weight)
+ {
+ using (var session = Dmo.NewSession())
+ {
+ var id = GetCarcassStateWeightId(session, code);
+ var updateDom = new DQUpdateDom(typeof(CarcassStateWeight));
+ updateDom.Where.Conditions.Add(DQCondition.EQ("ID", id));
+ updateDom.Columns.Add(new DQUpdateColumn("State5Weight", weight));
+ updateDom.Columns.Add(new DQUpdateColumn("State5WeightTime", DateTime.Now));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentState", 胴体状态.销售出库));
+ updateDom.Columns.Add(new DQUpdateColumn("CurrentWeight", weight));
+
+ session.ExecuteNonQuery(updateDom);
+ session.Commit();
+ }
+ }
+
+ static long? GetCarcassStateWeightId(IDmoSession session, string code)
+ {
+ var list=new List();
+ var query = new DQueryDom(new JoinAlias(typeof(CarcassStateWeight)));
+ query.Where.Conditions.Add(DQCondition.EQ("Code", code));
+ query.Columns.Add(DQSelectColumn.Field("ID"));
+ using (var reader=session.ExecuteReader(query))
+ {
+ while (reader.Read())
+ {
+ var id = (long) reader[0];
+ list.Add(id);
+ }
+ }
+ if (list.Count == 0)
+ {
+ throw new Exception("没有找到条码:"+code+" 对应的记录");
+ }
+ if(list.Count>1)
+ {
+ throw new Exception("找到条码:" + code + " 对应的多条记录");
+ }
+ return list[0];
+ }
+ }
+}