From f0c2bbc73a54875a1f8763cc818cfd47772eda89 Mon Sep 17 00:00:00 2001 From: luanhui <1029149336@qq.com> Date: Mon, 13 Nov 2017 13:39:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9A=E7=BA=A7=20=E4=BF=AE=E6=94=B9=20?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=93=8D=E4=BD=9C=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GradeAndWeight/GradeAndWeight_Detail.cs | 5 +++ BO/Utils/BillRpc/GradeAndWeightRpc.cs | 10 ++++-- WeighAndGrading/GradeFrom.cs | 36 +++++++++++++++++-- 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/BO/BO/Bill/GradeAndWeight/GradeAndWeight_Detail.cs b/BO/BO/Bill/GradeAndWeight/GradeAndWeight_Detail.cs index 0e2bf64..37e0300 100644 --- a/BO/BO/Bill/GradeAndWeight/GradeAndWeight_Detail.cs +++ b/BO/BO/Bill/GradeAndWeight/GradeAndWeight_Detail.cs @@ -48,5 +48,10 @@ namespace BO.BO.Bill public long ID { get; set; } public bool Sync { get; set; } + + /// + /// 是否删除的 + /// + public bool IsDeleted { get; set; } } } diff --git a/BO/Utils/BillRpc/GradeAndWeightRpc.cs b/BO/Utils/BillRpc/GradeAndWeightRpc.cs index 6ceb7e5..4521eef 100644 --- a/BO/Utils/BillRpc/GradeAndWeightRpc.cs +++ b/BO/Utils/BillRpc/GradeAndWeightRpc.cs @@ -187,10 +187,14 @@ namespace BO.Utils.BillRpc update.Where.Conditions.Add(DQCondition.EQ("SID", detail.SID)); foreach (var p in properties) { - if (p == "Sync" && detail.Sync) - detail.Sync = false; + // if (p == "Sync" && detail.Sync) + // detail.Sync = false; update.Columns.Add(new DQUpdateColumn(p, type.GetProperty(p).GetValue(detail))); } + + //只要修改就设置 Sync为False + update.Columns.Add(new DQUpdateColumn("Sync", false)); + session.ExecuteNonQuery(update); session.Commit(); } @@ -201,7 +205,7 @@ namespace BO.Utils.BillRpc var syncs = GetAllNeedSyncDetails(); foreach (var detail in syncs) { - const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/GradeAndWeightRpc/UpdateOrInsertDetail"; + const string method = "/MainSystem/B3ClientService/Rpcs/BillRpc/GradeAndWeightRpc/UpdateOrInsertDetailOrDelete"; var id = RpcFacade.Call(method, serializer.Serialize(detail)); SetDetailSynced(detail, id); diff --git a/WeighAndGrading/GradeFrom.cs b/WeighAndGrading/GradeFrom.cs index 30eb5cc..cba7fef 100644 --- a/WeighAndGrading/GradeFrom.cs +++ b/WeighAndGrading/GradeFrom.cs @@ -1066,7 +1066,7 @@ namespace WeighAndGrading } - + //删除选中 private void btnDeleteSelected_Click(object sender, EventArgs e) { if (MessageBox.Show("确定删除选中一条称重记录?", "删除选中", MessageBoxButtons.OKCancel) == DialogResult.Cancel) @@ -1083,8 +1083,38 @@ namespace WeighAndGrading { return; } - //删除选中 - LocalGradeAndWeightBL.DeleteBySID(lastCheckItem.SID); + //删除选中 更新 IsDeleted 和 Sync + lastCheckItem.IsDeleted = true; + LocalGradeAndWeightBL.Update(lastCheckItem, "IsDeleted"); + + //修改本地 + if (lastCheckItem.OrderDetail_ID.HasValue) + { + VerifyConnection(); + if (!connection) + { + //"烫褪" : "毛剥" + if (lastCheckItem.Technics_Name == "烫褪") + { + localTang = XmlUtil.DeserializeFromFile>(tangFilePath); + if (localTang.Contains(lastCheckItem.OrderDetail_ID.Value)) + { + localTang.Remove(lastCheckItem.OrderDetail_ID.Value); + SaveEntityToLocal(true); + } + } + else if (lastCheckItem.Technics_Name == "毛剥") + { + localMao = XmlUtil.DeserializeFromFile>(maoFilePath); + if (localMao.Contains(lastCheckItem.OrderDetail_ID.Value)) + { + localMao.Remove(lastCheckItem.OrderDetail_ID.Value); + SaveEntityToLocal(false); + } + } + } + } + details.Remove(lastCheckItem);