219 lines
8.0 KiB
C#
219 lines
8.0 KiB
C#
using BLL;
|
|
using Newtonsoft.Json.Linq;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace FineUIPro.Web.HSSE.CostGoods
|
|
{
|
|
public partial class CostManageView :PageBase
|
|
{
|
|
#region 定义项
|
|
/// <summary>
|
|
/// 主键
|
|
/// </summary>
|
|
private string CostManageId
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["CostManageId"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["CostManageId"] = value;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 定义集合
|
|
/// </summary>
|
|
private static List<Model.CostGoods_CostManageItem> costManageItems = new List<Model.CostGoods_CostManageItem>();
|
|
#endregion
|
|
|
|
#region 加载
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
Funs.DropDownPageSize(this.ddlPageSize);
|
|
btnClose.OnClientClick = ActiveWindow.GetHideReference();
|
|
this.CostManageId = Request.Params["CostManageId"];
|
|
if (!string.IsNullOrEmpty(this.CostManageId))
|
|
{
|
|
Model.CostGoods_CostManage costManage = BLL.CostManageService.GetCostManageById(this.CostManageId);
|
|
if (costManage != null)
|
|
{
|
|
this.txtCostManageCode.Text = CodeRecordsService.ReturnCodeByDataId(this.CostManageId);
|
|
this.txtCostManageName.Text = costManage.CostManageName;
|
|
if (!string.IsNullOrEmpty(costManage.UnitId))
|
|
{
|
|
var unit = BLL.UnitService.GetUnitByUnitId(costManage.UnitId);
|
|
if (unit!=null)
|
|
{
|
|
this.txtUnitName.Text = unit.UnitName;
|
|
}
|
|
}
|
|
this.txtContractNum.Text = costManage.ContractNum;
|
|
if (costManage.CostManageDate != null)
|
|
{
|
|
this.txtCostManageDate.Text = string.Format("{0:yyyy-MM-dd}", costManage.CostManageDate);
|
|
}
|
|
this.txtOpinion.Text = costManage.Opinion;
|
|
this.txtSubHSE.Text = costManage.SubHSE;
|
|
this.txtSubCN.Text = costManage.SubCN;
|
|
this.txtSubProject.Text = costManage.SubProject;
|
|
}
|
|
BindGrid();
|
|
}
|
|
///初始化审核菜单
|
|
this.ctlAuditFlow.MenuId = BLL.Const.ProjectCostManageMenuId;
|
|
this.ctlAuditFlow.DataId = this.CostManageId;
|
|
}
|
|
}
|
|
|
|
#region 计算合计及各行总价
|
|
/// <summary>
|
|
/// 计算合计
|
|
/// </summary>
|
|
private void OutputSummaryData()
|
|
{
|
|
Grid1.CommitChanges();
|
|
decimal sumTotalMoney = 0, sumAuditTotalMoney = 0, totalMoney = 0, auditTotalMoney = 0, priceMoney = 0, auditPriceMoney = 0;
|
|
int counts = 0, auditCounts = 0;
|
|
for (int i = 0; i < Grid1.Rows.Count; i++)
|
|
{
|
|
counts = Funs.GetNewIntOrZero(this.Grid1.Rows[i].Values[3].ToString());
|
|
priceMoney = Funs.GetNewDecimalOrZero(this.Grid1.Rows[i].Values[4].ToString());
|
|
totalMoney = counts * priceMoney;
|
|
sumTotalMoney += totalMoney;
|
|
this.Grid1.Rows[i].Values[5] = totalMoney.ToString();
|
|
auditCounts = Funs.GetNewIntOrZero(this.Grid1.Rows[i].Values[6].ToString());
|
|
auditPriceMoney = Funs.GetNewDecimalOrZero(this.Grid1.Rows[i].Values[7].ToString());
|
|
auditTotalMoney = auditCounts * auditPriceMoney;
|
|
sumAuditTotalMoney += auditTotalMoney;
|
|
this.Grid1.Rows[i].Values[8] = auditTotalMoney.ToString();
|
|
}
|
|
if (this.Grid1.Rows.Count > 0)
|
|
{
|
|
JObject summary = new JObject();
|
|
summary.Add("PriceMoney", "总计");
|
|
summary.Add("TotalMoney", sumTotalMoney);
|
|
summary.Add("AuditTotalMoney", sumAuditTotalMoney);
|
|
Grid1.SummaryData = summary;
|
|
}
|
|
else
|
|
{
|
|
Grid1.SummaryData = null;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// 绑定Grid
|
|
/// </summary>
|
|
private void BindGrid()
|
|
{
|
|
costManageItems = BLL.CostManageItemService.GetCostManageItemByCostManageId(this.CostManageId);
|
|
this.Grid1.DataSource = costManageItems;
|
|
this.Grid1.PageIndex = 0;
|
|
this.Grid1.DataBind();
|
|
OutputSummaryData();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 改变索引事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|
{
|
|
Grid1.PageIndex = e.NewPageIndex;
|
|
BindGrid();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 分页下拉选择事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
|
|
BindGrid();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 关闭弹出窗口
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Window1_Close(object sender, EventArgs e)
|
|
{
|
|
BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 附件上传
|
|
/// <summary>
|
|
/// 上传附件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnAttachUrl_Click(object sender, EventArgs e)
|
|
{
|
|
if (!string.IsNullOrEmpty(this.CostManageId))
|
|
{
|
|
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/CostManageAttachUrl&menuId={1}", this.CostManageId, BLL.Const.ProjectCostManageMenuId)));
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 格式化字符串
|
|
/// <summary>
|
|
/// 获取总价
|
|
/// </summary>
|
|
/// <param name="costManageId"></param>
|
|
/// <returns></returns>
|
|
protected string GetTotalMoney(object costManageItemId)
|
|
{
|
|
string total = string.Empty;
|
|
if (costManageItemId != null)
|
|
{
|
|
var costManageItem = BLL.CostManageItemService.GetCostManageItemById(costManageItemId.ToString());
|
|
if (costManageItem != null)
|
|
{
|
|
decimal? price = costManageItem.PriceMoney;
|
|
int? count = costManageItem.Counts;
|
|
total = Convert.ToString(price * count);
|
|
}
|
|
}
|
|
return total;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取审核总价
|
|
/// </summary>
|
|
/// <param name="costManageId"></param>
|
|
/// <returns></returns>
|
|
protected string GetAuditTotalMoney(object costManageItemId)
|
|
{
|
|
string total = string.Empty;
|
|
if (costManageItemId != null)
|
|
{
|
|
var costManageItem = BLL.CostManageItemService.GetCostManageItemById(costManageItemId.ToString());
|
|
if (costManageItem != null)
|
|
{
|
|
decimal? auditPrice = costManageItem.AuditPriceMoney;
|
|
int? auditCount = costManageItem.AuditCounts;
|
|
total = Convert.ToString(auditPrice * auditCount);
|
|
}
|
|
}
|
|
return total;
|
|
}
|
|
#endregion
|
|
}
|
|
} |