xinjiang/SGGL/FineUIPro.Web/HJGL/MaterialManage/StockInEdit.aspx.cs

314 lines
13 KiB
C#

using System;
using System.Linq;
using BLL;
namespace FineUIPro.Web.HJGL.MaterialManage
{
public partial class StockInEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
private string StockInId
{
get
{
return (string)ViewState["StockInId"];
}
set
{
ViewState["StockInId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
BLL.UserService.InitUsersDropDownList(this.drpMaterialman, this.CurrUser.LoginProjectId, true, null);
//if (CurrUser.Account != Const.Gly)
//{
// BLL.UnitStoreService.InitUnitStoreDropDownList(drpUnitStore, CurrUser.UnitId, true);
//}
//else
//{
BLL.UnitStoreService.InitUnitStoreDropDownList(drpUnitStore, null, true);
//}
//this.drpSupplier.DataTextField = "Text";
//this.drpSupplier.DataValueField = "Value";
//this.drpSupplier.DataSource = BLL.SupplierService.GetSupplierList();
//this.drpSupplier.DataBind();
//Funs.FineUIPleaseSelect(this.drpSupplier);
this.StockInId = Request.Params["StockInId"];
if (!string.IsNullOrEmpty(this.StockInId))
{
Model.Weld_StockIn stockIn = BLL.StockInService.GetStockInById(this.StockInId);
if (stockIn != null)
{
if (!string.IsNullOrEmpty(stockIn.WeldId))
{
this.hdWeldId.Text = stockIn.WeldId;
var weld = BLL.Base_ConsumablesService.GetConsumablesByConsumablesId(stockIn.WeldId);
if (weld != null)
{
//this.txtWeldCode.Text = weld.WeldCode;
this.txtWeldName.Text = weld.ConsumablesName;
this.txtWeldSpec.Text = weld.SteelFormat;
this.txtWeldUnit.Text = weld.WeldUnit;
var t = BLL.DropListService.HJGL_ConsumablesTypeList().FirstOrDefault(x => x.Value == weld.ConsumablesType);
if (t != null)
{
this.txtWeldType.Text = t.Text;
}
}
if (stockIn.Amount.HasValue)
{
this.txtAmount.Text = stockIn.Amount.ToString();
}
if (stockIn.Weight.HasValue)
{
this.txtWeight.Text = stockIn.Weight.ToString();
}
if (!string.IsNullOrEmpty(stockIn.Materialman))
{
this.drpMaterialman.SelectedValue = stockIn.Materialman;
}
if (stockIn.InStockDate.HasValue)
{
this.txtInStockDate.Text = string.Format("{0:yyyy-MM-dd}", stockIn.InStockDate);
}
if (stockIn.ReviewDate.HasValue)
{
this.txtReviewDate.Text = string.Format("{0:yyyy-MM-dd}", stockIn.ReviewDate);
}
//this.rblIsReview.SelectedValue = (stockIn.IsReview == true ? "true" : "false");
this.txtHeartNo.Text = stockIn.HeartNo;
//if (stockIn.IsReview == true)
//{
// this.txtHeartNo.Hidden = false;
//}
//else
//{
// this.txtHeartNo.Hidden = true;
//}
this.txtWarrantybook.Text = stockIn.Warrantybook;
if (!string.IsNullOrEmpty(stockIn.UnitStoreId))
{
this.drpUnitStore.SelectedValue = stockIn.UnitStoreId;
}
}
}
}
else
{
this.drpMaterialman.SelectedValue = this.CurrUser.UserId;
this.txtInStockDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtHeartNo.Hidden = false;
}
}
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (this.hdWeldId.Text == string.Empty)
{
Alert.ShowInTop("请选择焊材牌号!", MessageBoxIcon.Warning);
return;
}
if (drpUnitStore.SelectedValue == Const._Null)
{
Alert.ShowInTop("请选择单位仓库!", MessageBoxIcon.Warning);
return;
}
if (drpMaterialman.SelectedValue == Const._Null)
{
Alert.ShowInTop("请选择材料员!", MessageBoxIcon.Warning);
return;
}
SaveData();
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
/// <summary>
/// 保存数据
/// </summary>
private void SaveData()
{
Model.Weld_StockIn stockIn = new Model.Weld_StockIn();
if (!string.IsNullOrEmpty(this.hdWeldId.Text.Trim()))
{
stockIn.WeldId = this.hdWeldId.Text.Trim();
}
stockIn.Amount = Funs.GetNewDecimal(this.txtAmount.Text.Trim());
stockIn.Weight = Funs.GetNewDecimal(this.txtWeight.Text.Trim());
//stockIn.IsReview = Convert.ToBoolean(this.rblIsReview.SelectedValue);
if (this.drpMaterialman.SelectedValue != BLL.Const._Null)
{
stockIn.Materialman = this.drpMaterialman.SelectedValue;
}
stockIn.InStockDate = Funs.GetNewDateTime(this.txtInStockDate.Text.Trim());
stockIn.ReviewDate = Funs.GetNewDateTime(this.txtReviewDate.Text.Trim());
stockIn.Warrantybook = this.txtWarrantybook.Text.Trim();
//stockIn.Number = txtNumber.Text.Trim();
stockIn.HeartNo = txtHeartNo.Text.Trim();
if (this.drpUnitStore.SelectedValue != BLL.Const._Null)
{
stockIn.UnitStoreId = this.drpUnitStore.SelectedValue;
}
stockIn.Flag = "1";//入库
if (!string.IsNullOrEmpty(this.StockInId))
{
stockIn.StockInId = this.StockInId;
var att = from x in Funs.DB.AttachFile where x.ToKeyId == this.StockInId select x;
if (att.Count() > 0)
{
stockIn.AttachUrl = att.First().AttachUrl;
}
var mat = from x in Funs.DB.Weld_UsingMat where x.StockInId == this.StockInId select x;
if (mat.Count() > 0)
{
// 焊材已有领用,不更新数量
BLL.StockInService.UpdateStockIn1(stockIn);
}
else
{
BLL.StockInService.UpdateStockIn(stockIn);
}
BLL.LogService.AddSys_Log(this.CurrUser, stockIn.HeartNo, stockIn.StockInId, BLL.Const.CLGL_StockInMenuId, "修改焊材入库录入");
}
else
{
this.StockInId = SQLHelper.GetNewID(typeof(Model.Weld_StockIn));
stockIn.StockInId = this.StockInId;
BLL.StockInService.AddStockIn(stockIn);
var att = from x in Funs.DB.AttachFile where x.ToKeyId == this.StockInId select x;
if (att.Count() > 0)
{
BLL.StockInService.UpdateAttachFile(this.StockInId, att.First().AttachUrl);
}
BLL.LogService.AddSys_Log(this.CurrUser, stockIn.HeartNo, stockIn.StockInId, BLL.Const.CLGL_StockInMenuId, "添加焊材入库录入");
}
}
#endregion
#region
/// <summary>
/// 上传附件资源
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttachUrl_Click(object sender, EventArgs e)
{
string edit = "0"; // 表示能打开附件上传窗口,但不能上传附件
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.CLGL_StockInMenuId, BLL.Const.BtnSave))
{
if (string.IsNullOrEmpty(this.StockInId))
{
if (this.hdWeldId.Text == string.Empty)
{
Alert.ShowInTop("请选择焊材牌号!", MessageBoxIcon.Warning);
return;
}
SaveData();
}
edit = "1";
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WeldMat/StockIn&menuId={1}&edit={2}", this.StockInId, Const.CLGL_StockInMenuId, edit)));
}
}
#endregion
#region
/// <summary>
/// 查找焊材信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSelect_Click(object sender, EventArgs e)
{
string window = String.Format("ShowWeldInfo.aspx", "编辑 - ");
PageContext.RegisterStartupScript(Window1.GetSaveStateReference(this.hdWeldId.ClientID) + Window1.GetShowReference(window));
}
#region
/// <summary>
/// 弹出编辑窗体关闭事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
if (!string.IsNullOrEmpty(this.hdWeldId.Text))
{
var weld = BLL.Base_ConsumablesService.GetConsumablesByConsumablesId(this.hdWeldId.Text);
if (weld != null)
{
this.txtWeldName.Text = weld.ConsumablesName;
this.txtWeldSpec.Text = weld.SteelFormat;
this.txtWeldUnit.Text = weld.WeldUnit;
var t = BLL.DropListService.HJGL_ConsumablesTypeList().FirstOrDefault(x => x.Value == weld.ConsumablesType);
if (t != null)
{
this.txtWeldType.Text = t.Text;
}
}
}
}
#endregion
#endregion
#region
/// <summary>
/// 输入数量自动带出重量
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtWeight_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.txtWeight.Text.Trim()))
{
if (!string.IsNullOrEmpty(this.hdWeldId.Text.Trim()))
{
var weld = BLL.Base_ConsumablesService.GetConsumablesByConsumablesId(this.hdWeldId.Text.Trim());
if (weld != null)
{
if (weld.ConvertValue.HasValue)
{
decimal? amountCov = Funs.GetNewDecimal(this.txtWeight.Text.Trim()) / weld.ConvertValue;
int amount = Convert.ToInt32(Math.Floor(amountCov.Value));
this.txtAmount.Text = amount.ToString();
}
else
{
this.txtAmount.Text = this.txtWeight.Text.Trim();
}
}
}
}
}
#endregion
}
}