public virtual void Begin() { _SubheadingsInfo info = this.Parent as _SubheadingsInfo; if (info.ZJFS == _Constant.公式组价) { string str = info.JSJC; if (string.IsNullOrEmpty(str)) { str = "0"; } // this.Activitie.Property.Statistics.Begin(); str = ToolKit.ExpressionReplace(str, info.Activitie.Property.Statistics.ResultVarable.DataSource); decimal m = 1m; decimal.TryParse(info.FL, out m); decimal ZHHJ = ToolKit.Calculate(str) * m * info.GCL * 0.01m; this.ResultVarable.Set(_Statistics.FILED_ZHHJ, ZHHJ); if (this.Parent.GCL != 0m) { this.ResultVarable.Set(_Statistics.FILED_ZHDJ, info.ZHHJ / this.Parent.GCL); } } else { SetValue(); } #endregion SetValueToView();; }
/// <summary> /// 计算 投标金额、标底金额 /// </summary> /// <param name="ifCpTBJE">是否计算投标金额</param> public void CalculateParentTBJE_BDJE() { IEnumerable <_SubheadingsFeeInfo> list = this.Parent.SubheadingsFeeList.Cast <_SubheadingsFeeInfo>().OrderBy(p => p.ID); foreach (_SubheadingsFeeInfo item in list) { string tbjsjc = ToolKit.ExpressionReplace(item.TBJSJC, this.Variable.DataSource); string bdjsjc = ToolKit.ExpressionReplace(item.BDJSJC, this.Variable.DataSource); switch (item.ID) { case 1: //人工 item.TBJE = (ToolKit.Calculate(tbjsjc)) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc)) * item.FL * 0.01m; break; case 2: //材料 item.TBJE = (ToolKit.Calculate(tbjsjc)) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc)) * item.FL * 0.01m; //用途类别材料 m_ResultValue.JGCL = m_ResultValue.JGCL * item.FL * 0.01m; m_ResultValue.YGCL = m_ResultValue.YGCL * item.FL * 0.01m; m_ResultValue.PBZDCL = m_ResultValue.PBZDCL * item.FL * 0.01m; m_ResultValue.ZDJCL = m_ResultValue.ZDJCL * item.FL * 0.01m; m_ResultValue.DEJGCL = m_ResultValue.DEJGCL * item.FL * 0.01m; m_ResultValue.DEYGCL = m_ResultValue.DEYGCL * item.FL * 0.01m; m_ResultValue.DEPBZDCL = m_ResultValue.DEPBZDCL * item.FL * 0.01m; m_ResultValue.DEZDJCL = m_ResultValue.DEZDJCL * item.FL * 0.01m; break; case 3: //机械 item.TBJE = (ToolKit.Calculate(tbjsjc)) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc)) * item.FL * 0.01m; // m_ResultValue.DZJXTB = m_ResultValue.DZJXTB * item.FL * 0.01m; break; case 4: //主材 case 5: //设备 case 6: //风险 case 7: //直接费 case 8: //管理费 case 9: //利润 case 10: //子目单价 case 11: //合价 item.TBJE = ToolKit.Calculate(tbjsjc) * item.FL * 0.01m; item.BDJE = ToolKit.Calculate(bdjsjc) * item.FL * 0.01m; break; } this.DEVariable.Set(item.YYH, item.BDJE, item.MC, item.FYLB); this.Variable.Set(item.YYH, item.TBJE, item.MC, item.FYLB); } }
/// <summary> /// 计算 投标金额、标底金额 /// </summary> /// <param name="ifCpTBJE">是否计算投标金额</param> public void CalculateParentTBJE_BDJE() { IEnumerable <_SubheadingsFeeInfo> list = from info in this.Parent.SubheadingsFeeList.Cast <_SubheadingsFeeInfo>() orderby info.ID select info; foreach (_SubheadingsFeeInfo item in list) { string tbjsjc = ToolKit.ExpressionReplace(item.TBJSJC, this.Variable.DataSource); string bdjsjc = ToolKit.ExpressionReplace(item.BDJSJC, this.Variable.DataSource); switch (item.ID) { case 1: item.TBJE = (ToolKit.Calculate(tbjsjc) + m_BaseResultValue.RGBFHHJ) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc) + m_BaseResultValue.RGBFHHJ) * item.FL * 0.01m; break; case 2: item.TBJE = (ToolKit.Calculate(tbjsjc) + m_BaseResultValue.CLBFHHJ) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc) + m_BaseResultValue.CLBFHHJ) * item.FL * 0.01m; break; case 3: item.TBJE = (ToolKit.Calculate(tbjsjc) + m_BaseResultValue.JXBFHHJ) * item.FL * 0.01m; item.BDJE = (ToolKit.Calculate(bdjsjc) + m_BaseResultValue.JXBFHHJ) * item.FL * 0.01m; break; default: item.TBJE = ToolKit.Calculate(tbjsjc) * item.FL * 0.01m; item.BDJE = ToolKit.Calculate(bdjsjc) * item.FL * 0.01m; break; } this.Variable.Set(item.YYH, item.TBJE, item.MC); this.DEVariable.Set(item.YYH, item.BDJE, item.MC); //其他条件计算 if (item.ID == 2) { m_ResultValue.JGCL = m_BaseResultValue.JGCL * item.FL; m_ResultValue.YGCL = m_BaseResultValue.YGCL * item.FL; m_ResultValue.PBZDCL = m_BaseResultValue.PBZDCL * item.FL; m_ResultValue.ZDJCL = m_BaseResultValue.ZDJCL * item.FL; m_ResultValue.DEJGCL = m_BaseResultValue.DEJGCL * item.FL; m_ResultValue.DEYGCL = m_BaseResultValue.DEYGCL * item.FL; m_ResultValue.DEPBZDCL = m_BaseResultValue.DEPBZDCL * item.FL; m_ResultValue.DEZDJCL = m_BaseResultValue.DEZDJCL * item.FL; } if (item.ID == 3) { m_ResultValue.DZJXTB = m_BaseResultValue.DZJXTB * item.FL; } } }
/// <summary> /// 直接组价计算 /// </summary> public void ZBegin() { string str = this.JSJC; if (string.IsNullOrEmpty(str)) { str = "0"; } this.Parent.Parent.Parent.Property.Statistics.Begin(); str = ToolKit.ExpressionReplace(str, this.Parent.Parent.Parent.Property.Statistics.ResultVarable.DataSource); decimal m = 1m; decimal.TryParse(this.FL, out m); this.ZHHJ = ToolKit.Calculate(str) * m * this.GCL * 0.01m; this.Begin(); }
private void SetHJ() { _MFixedListInfo info = this.Parent as _MFixedListInfo; if (info != null) { m_ResultValue = new Result(); if (info.ZJFS == _Constant.子目组价) { foreach (_SubheadingsInfo item in info.SubheadingsList) { //所有的合价累计 m_ResultValue.DEZHHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEZHHJ); m_ResultValue.DEZJFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEZJFHJ); m_ResultValue.DERGFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DERGFHJ); m_ResultValue.DECLFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DECLFHJ); m_ResultValue.DEZCFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEZCFHJ); m_ResultValue.DESBFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DESBFHJ); m_ResultValue.DEJXFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEJXFHJ); m_ResultValue.DEGLFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEGLFHJ); m_ResultValue.DELRHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DELRHJ); m_ResultValue.DEFXHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEFXHJ); m_ResultValue.DEJGJEHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEJGJEHJ); m_ResultValue.DEYGJEHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEYGJEHJ); m_ResultValue.DEPBZDHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEPBZDHJ); m_ResultValue.DEZGHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEZGHJ); m_ResultValue.ZHHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_ZHHJ); m_ResultValue.ZJFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_ZJFHJ); m_ResultValue.RGFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_RGFHJ); m_ResultValue.CLFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_CLFHJ); m_ResultValue.ZCFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_ZCFHJ); m_ResultValue.SBFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_SBFHJ); m_ResultValue.JXFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_JXFHJ); m_ResultValue.GLFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_GLFHJ); m_ResultValue.LRHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_LRHJ); m_ResultValue.FXHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FXHJ); m_ResultValue.JGJEHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_JGJEHJ); m_ResultValue.YGJEHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_YGJEHJ); m_ResultValue.PBZDHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_PBZDHJ); m_ResultValue.ZGHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_ZGHJ); m_ResultValue.JCHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_JCHJ); m_ResultValue.CJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_CJHJ); //m_ResultValue.HHJXRGF += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_HHJXRGF); //m_ResultValue.HHJXRGFJC += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_HHJXRGFJC); //m_ResultValue.DEHHJXRGF += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEHHJXRGF); m_ResultValue.FBFXCJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXCJHJ); m_ResultValue.FBFXJCHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXJCHJ); m_ResultValue.FBFXRGJCHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXRGJCHJ); m_ResultValue.FBFXCLJCHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXCLJCHJ); m_ResultValue.FBFXJXJCHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXJXJCHJ); m_ResultValue.FBFXRGCJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXRGCJHJ); m_ResultValue.FBFXCLCJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXCLCJHJ); m_ResultValue.FBFXJXCJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_FBFXJXCJHJ); m_ResultValue.DEGFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DEGFHJ); m_ResultValue.GFHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_GFHJ); m_ResultValue.DESJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_DESJHJ); m_ResultValue.SJHJ += item.Statistics.ResultVarable.GetDecimal(_Statistics.FILED_SJHJ); } } else { if (info.Parent != null) { string str = info.JSJC; if (string.IsNullOrEmpty(str)) str = "0"; // this.Parent.Parent.Parent.Property.Statistics.Begin(); str = ToolKit.ExpressionReplace(str, info.Parent.Parent.Parent.Property.Statistics.ResultVarable.DataSource); decimal m = 1m; decimal.TryParse(info.FL, out m); decimal ZHHJ = ToolKit.Calculate(str) * m * info.GCL * 0.01m; m_ResultValue.ZHHJ = ZHHJ; } } } }