using BO.BO.Bill; using Forks.JsonRpc.Client; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web.Script.Serialization; using BO.Utils; namespace BO.Utils.BillRpc { public static class OrderDetailRpc { static JavaScriptSerializer serializer = new JavaScriptSerializer(); public static List GetNeedOrderWeightBill(DateTime date, bool? showType = null) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetNeedOrderWeightBill"; var result = RpcFacade.Call(method, date, showType); result = result.ESerializeDateTime(); return serializer.Deserialize>(result); } public static int GetLastNumber(long weightId, long orerID) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetLastNumber"; return RpcFacade.Call(method, weightId, orerID); } public static int GetMaxOrder(DateTime date) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetMaxOrder"; return RpcFacade.Call(method, date); } public static int GetCurrentOrder(long id) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetCurrentOrder"; return RpcFacade.Call(method, id); } public static List GetOrderDetail(DateTime date) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetOrderDetail"; var result = RpcFacade.Call(method, date); result = result.ESerializeDateTime(); return serializer.Deserialize>(result); } public static void Insert(OrderDetail insert) { insert.AccountingUnit_ID = ButcherAppContext.Context.UserConfig.AccountingUnit_ID; insert.Creator = ButcherAppContext.Context.UserConfig.UserName; const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/Insert"; insert.ID = RpcFacade.Call(method, serializer.Serialize(insert)); } public static void UpdateNumber(long id, int number) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/UpdateNum"; RpcFacade.Call(method, id, number); } public static void Delete(long id) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/Delete"; RpcFacade.Call(method, id); } public static void ChangeShowType(long weightBillID, bool show) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/ChangeShowType"; RpcFacade.Call(method, weightBillID, show); } public static List GetHurryRecordList(long weightBillID) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetHurryRecordList"; var result = RpcFacade.Call(method, weightBillID); result = result.ESerializeDateTime(); return serializer.Deserialize>(result); } public static bool DeleteHurryRecord(long id) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/DeleteHurryRecord"; return RpcFacade.Call(method, id) == -1; } public static HurryRecord InsertHurryRecord(SelectHurryList entity, out bool withError) { var detail = new HurryRecord(); detail.HurryNumber = entity.HurryNumber; detail.Time = DateTime.Now; detail.WeightBill_ID = entity.WeightBill_ID; const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/InsertHurryRecord"; var r = RpcFacade.Call(method, serializer.Serialize(detail)).Split(new char[] { '|' }); withError = r[0] == "-1"; detail.ID = long.Parse(r[1]); detail.Supplier_Name = entity.Supplier_Name; detail.B3WeighBill_ID = entity.B3WeighBill_ID; detail.LiveColonyHouse_Name = entity.LiveColonyHouse_Name; return detail; } public static int GetHurryRecordNumber(long weightBillId) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetHurryRecordNumber"; return RpcFacade.Call(method, weightBillId); } public static List GetSelectHurryList(DateTime butcherDate) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetSelectHurryList"; return serializer.Deserialize>(RpcFacade.Call(method, butcherDate)); } public static void SetOrderState(long id, int state) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/SetOrderState"; RpcFacade.Call(method, id, state); } public static HurryRecord GetHurryRecord(long id) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetHurryRecord"; var result = RpcFacade.Call(method, id); return serializer.Deserialize(result); } public static void InsertByHurryRecord(OrderDetail orderDetail, long hurryOrderID) { orderDetail.AccountingUnit_ID = ButcherAppContext.Context.UserConfig.AccountingUnit_ID; orderDetail.Creator = ButcherAppContext.Context.UserConfig.UserName; const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/InsertByHurryRecord"; orderDetail.ID = RpcFacade.Call(method, serializer.Serialize(orderDetail), hurryOrderID); } public static int GetCurrentOrderPlanNumber(long orderID) { const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/OrderDetailRpc/GetCurrentOrderPlanNumber"; return RpcFacade.Call(method, orderID); } } }