/// <summary> /// 重新合计 /// </summary> /// <param name="pzfl"></param> public void ReCalculate(ZWPZFL pzfl) { if (pzfl != null) { pzfl.ZWPZFL_JE = pzfl.ListZWFZYS.Sum((ZWFZYS t) => t.ZWFZYS_JE); } }
/// <summary> /// 导入 /// </summary> /// <param name="vit"></param> /// <returns></returns> public bool Import(VIT vit) { if (vit == null) { Msg = "没有选择可用的导入模板"; return(false); } try { IniPZK(vit); foreach (VITDetail vITDetail in vit.VITDetails) { ZWPZFL zWPZFL = new ZWPZFL(); base.Entity.ListZWPZFL.Add(zWPZFL); IniPZFL(zWPZFL, vITDetail); } return(true); } catch (Exception ex) { Msg = "导入失败"; Ex = ex; return(false); } }
/// <summary> /// 分录赋值 /// </summary> /// <param name="pzfl"></param> /// <param name="detail"></param> private void IniPZFL(ZWPZFL pzfl, VITDetail detail) { pzfl.ZWKMZD = base.CtxEntity.ZWKMZD.Single((ZWKMZD t) => t.ZWKMZD_KMBH == detail.AccountID); pzfl.ZWPZFL_JE = Math.Round(ImportBuffer.AsEnumerable().Sum((DataRow t) => ConvertValue(t.Field <string>($"Column{detail.Total}"))), 2); if (detail.IsDebit) { pzfl.ZWPZFL_JZFX = "1"; } else { pzfl.ZWPZFL_JZFX = "2"; } pzfl.ZWPZFL_YWRQ = Entity.ZWPZK_PZRQ; if (detail.IsAD || detail.IsAP) { DataRow[] array = ImportBuffer.Select($"Column{detail.Total} is not null and Column{detail.Total} <> ''"); foreach (DataRow row in array) { ZWFZYS ys = new ZWFZYS(); pzfl.ListZWFZYS.Add(ys); IniFZYS(ys, detail, row); ys.ZWFZYS_YWRQ = pzfl.ZWPZFL_YWRQ; } } pzfl.ZWPZFL_SL = pzfl.ListZWFZYS.Sum((ZWFZYS t) => t.ZWFZYS_SL); if (pzfl.ZWPZFL_SL != 0.0) { pzfl.ZWPZFL_DJ = Math.Round(pzfl.ZWPZFL_JE / pzfl.ZWPZFL_SL, 2); } pzfl.ZWPZFL_TZXM = string.Empty; pzfl.ZWPZFL_JSFS = string.Empty; pzfl.ZWPZFL_ZY = string.Empty; pzfl.ZWPZFL_WB = 0.0; pzfl.ZWPZFL_HL = 0.0; pzfl.ZWPZFL_JSH = string.Empty; pzfl.ZWPZFL_WBBH = string.Empty; pzfl.ZWPZFL_YHDZ = "0"; }