2025-03-27 15:05:14 +08:00

339 lines
15 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
using SuperMap.RealEstate.CoreFrameWork;
using SuperMap.RealEstate.ServiceModel;
using SuperMap.RealEstate.Utility;
using SuperMap.RealEstate.Web.UI;
using SuperMap.RealEstate.Web.UI.WebControls;
using SuperMap.RealEstate.Web.Utility;
using Business = SuperMap.RealEstate.SendRec.Storage.Business;
using StorageHighWay = SuperMap.RealEstate.HighWay.Storage.Business;
using HZQR.Common;
namespace SuperMap.RealEstate.SendRec.Modules.CheckCommodity
{
public partial class Default : BasePage
{
#region ->
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack) return;
//初始化并加载列表
//工具条按钮事件
GridViewEx1.SetOpenControl(ButtonHisCheckCommodity, "CHECKCOMMODITYList.aspx");
//设置回车焦点按钮
SetControlClientAction(ButtonSearch);
//载入数据
ButtonDelete.Enabled = CHECKCOMMODITY1.LoadData();
//设置删除提示
SetControlConfirm(ButtonDelete, "您确认删除该记录,删除后将无法恢复数据?");
//设置按钮状态
SetControlClientAction(ButtonDelete, false, true, true);
SetControlClientAction(ButtonSave);
//注册遮罩式窗口关闭脚本
InitWebControls();
GridViewEx1.SelectingWithInit<Business.CHECKCOMMODITY>(ObjectDataSource1, GridPageEx1,
StorageHighWay.CommonHelper.GetDictionary(Transaction, "SERVERPART_ID", "select SERVERPART_ID,SERVERPART_NAME FROM HIGHWAY_STORAGE.T_SERVERPART")
);
}
#endregion
private void InitWebControls()
{
//绑定服务区
}
#region - > List绑定
protected void ButtonSave_Click(object sender, EventArgs e)
{
try
{
//刷新类型
bool _RefreshType = ButtonDelete.Enabled;
//保存数据
ButtonDelete.Enabled = CHECKCOMMODITY1.Save();
//刷新弹出页列表
RefreshOpenerGridPage(_RefreshType ? RefreshGridPageType.Update : RefreshGridPageType.Insert);
//提示信息
if (ButtonDelete.Enabled)
{
//刷新对应的列表
GridViewEx1.SelectingWithInit<Business.CHECKCOMMODITY>(ObjectDataSource1, GridPageEx1,
StorageHighWay.CommonHelper.GetDictionary(Transaction, "SERVERPART_ID", "select SERVERPART_ID,SERVERPART_NAME FROM HIGHWAY_STORAGE.T_SERVERPART")
);
Alert("保存成功!", 3);
}
}
catch (Exception ex)
{
//回滚事务
Transaction.Rollback();
//记录日志
ErrorLogHelper.Write(ex);
#if DEBUG
Alert("保存失败!可能的原因:\n" + ex.Message);
#else
Alert("保存失败!");
#endif
}
}
protected void ButtonDelete_Click(object sender, EventArgs e)
{
try
{
//删除数据
ButtonDelete.Enabled = !CHECKCOMMODITY1.Delete();
//刷新弹出页列表
RefreshOpenerGridPage(RefreshGridPageType.Delete);
//提示信息
Alert("删除成功!", 3);
GridViewEx1.SelectingWithInit<Business.CHECKCOMMODITY>(ObjectDataSource1, GridPageEx1,
StorageHighWay.CommonHelper.GetDictionary(Transaction, "SERVERPART_ID", "select SERVERPART_ID,SERVERPART_NAME FROM HIGHWAY_STORAGE.T_SERVERPART")
);
}
catch (Exception ex)
{
//回滚事务
Transaction.Rollback();
//记录日志
ErrorLogHelper.Write(ex);
#if DEBUG
Alert("删除失败!可能的原因:\n" + ex.Message);
#else
Alert("删除失败!");
#endif
}
}
#endregion
#region -> page绑定
//查询
protected void ButtonSearch_CallBackClick(object sender, ClientSetEventArgs e)
{
GridViewEx1.Selecting<Business.CHECKCOMMODITYDETAIL>(ObjectDataSource1, GridPageEx1);
//设置UI变化
e.SetValue(GridViewEx1);
e.SetValue(GridPageEx1);
}
//翻页事件
protected void GridPageEx1_CallBackPageChanged(object src, ClientSetEventArgs e)
{
GridViewEx1.Pagging<Business.CHECKCOMMODITYDETAIL>(ObjectDataSource1, GridPageEx1);
//设置UI变化
e.SetValue(GridViewEx1);
}
//查询SQL设置
protected void GridViewEx1_SelectMethodParameters(object sender, SelectMethodParametersArgs e)
{
//搜索选项的搜索条件过滤
if (!string.IsNullOrEmpty(TextBox_Search.Text))
e.AddOrParams(GridViewSearch1, TextBox_Search.Text);
if (CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text != "")
{
e.AddAndParams("CHECKCOMMODITY_ID", CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text);
}
else
{
e.SetOtherUserCustomWhereSqlString = "1!=1";
}
//且搜索条件
//e.AddAndParams(字段名, 值);
//或搜索条件
//e.AddOrParams(字段名, 值);
//排序
//e.AddOrderByParams(GridViewOrderBy1);
}
#endregion
#region ->
protected void GridViewEx1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
string _NEW_CHECKDESC = GridViewEx1.DataKeys[e.Row.RowIndex].Values["NEW_CHECKDESC"] == null ? "" : GridViewEx1.DataKeys[e.Row.RowIndex].Values["NEW_CHECKDESC"].ToString();
string _NEW_OVERPLUSCOUNT = GridViewEx1.DataKeys[e.Row.RowIndex].Values["NEW_OVERPLUSCOUNT"] == null ? "" : GridViewEx1.DataKeys[e.Row.RowIndex].Values["NEW_OVERPLUSCOUNT"].ToString();
TextBoxEx _COMMODITY_Count_TextBoxEx = e.Row.Cells[5].FindControl("COMMODITY_Count") as TextBoxEx;
_COMMODITY_Count_TextBoxEx.Text = _NEW_OVERPLUSCOUNT;
TextBoxEx _COMMODITY_Reason_TextBoxEx = e.Row.Cells[6].FindControl("COMMODITY_Reason") as TextBoxEx;
_COMMODITY_Reason_TextBoxEx.Text = _NEW_CHECKDESC;
}
}
#endregion
#region ->
protected void ButtonPrintBill_Click(object sender, EventArgs e)
{
//判断对应的有没有保存 CurrObject.CHECKCOMMODITY_ID
if (CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text == null || CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text == "")
{
Alert("请先保存对应的盘点信息");
return;
}
//1.插入数据 2.打印对应的表单
Business.CHECKCOMMODITYDETAIL _CHECKCOMMODITYDETAIL = new Business.CHECKCOMMODITYDETAIL(this.Transaction);
_CHECKCOMMODITYDETAIL.InsertIntoFromStock(CHECKCOMMODITY1.SERVERPART_ID.SelectedValue, CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text, CHECKCOMMODITY1.CHECKDATE.Text);
DataTable _dt = _CHECKCOMMODITYDETAIL.GetCheckCommodityStockTable(CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text);
ExcelHelper _ExcelHelper = new ExcelHelper();
_ExcelHelper.DataTableToExcel("盘存商品数据导出", _dt, "盘存数据", true);
}
#endregion
#region ->
protected void ButtonSave_Data_Click(object sender, EventArgs e)
{
//判断对应的有没有保存 CurrObject.CHECKCOMMODITY_ID
if (CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text == null || CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text == "")
{
Alert("请先保存对应的盘点信息");
return;
}
foreach (GridViewRow _GVR in GridViewEx1.Rows)
{
if (_GVR.RowType == DataControlRowType.DataRow)
{
try
{
//采购数量 PURCHASECOUNT_TextBoxEx
TextBoxEx _COMMODITY_Count_TextBoxEx = _GVR.Cells[5].FindControl("COMMODITY_Count") as TextBoxEx;
//单位 Unit_DropDownListEx
TextBoxEx _COMMODITY_Reason_TextBoxEx = _GVR.Cells[6].FindControl("COMMODITY_Reason") as TextBoxEx;
string _CHECKCOMMODITYDETAIL_ID = GridViewEx1.DataKeys[_GVR.RowIndex].Values["CHECKCOMMODITYDETAIL_ID"].ToString();
string _SERVERPARTSTOCK_ID = GridViewEx1.DataKeys[_GVR.RowIndex].Values["SERVERPARTSTOCK_ID"].ToString();
string _COMMODITY_ID = GridViewEx1.DataKeys[_GVR.RowIndex].Values["COMMODITY_ID"].ToString();
Business.TEMPCHECKCOMMODITYDETAIL _TEMPCHECKCOMMODITYDETAIL = new Business.TEMPCHECKCOMMODITYDETAIL(this.Transaction);
_TEMPCHECKCOMMODITYDETAIL.AddSearchParameter("CHECKCOMMODITYDETAIL_ID", _CHECKCOMMODITYDETAIL_ID);
if (_TEMPCHECKCOMMODITYDETAIL.Search())
{
if (_COMMODITY_Count_TextBoxEx.Text == "")
{
_TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT = null;
}
else
{
_TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT = double.Parse(_COMMODITY_Count_TextBoxEx.Text);
}
_TEMPCHECKCOMMODITYDETAIL.CHECKDESC = _COMMODITY_Reason_TextBoxEx.Text;
_TEMPCHECKCOMMODITYDETAIL.Update();
}
else
{
_TEMPCHECKCOMMODITYDETAIL.ResetProperty();
_TEMPCHECKCOMMODITYDETAIL.CHECKCOMMODITYDETAIL_ID = int.Parse(_CHECKCOMMODITYDETAIL_ID);
_TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT = double.Parse(_COMMODITY_Count_TextBoxEx.Text);
_TEMPCHECKCOMMODITYDETAIL.CHECKDESC = _COMMODITY_Reason_TextBoxEx.Text;
_TEMPCHECKCOMMODITYDETAIL.COMMODITY_ID = int.Parse(_COMMODITY_ID);
_TEMPCHECKCOMMODITYDETAIL.CHECKCOMMODITY_ID = int.Parse(CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text);
_TEMPCHECKCOMMODITYDETAIL.SERVERPARTSTOCK_ID = int.Parse(_SERVERPARTSTOCK_ID);
_TEMPCHECKCOMMODITYDETAIL.Insert();
}
}
catch
{
}
}
}
Alert("保存成功!");
}
#endregion
#region ->
protected void ButtonNew_Click(object sender, EventArgs e)
{
HideClientMask("正在完成盘存...");
foreach (Business.TEMPCHECKCOMMODITYDETAIL _TEMPCHECKCOMMODITYDETAIL in (new Business.TEMPCHECKCOMMODITYDETAIL(
this.Transaction).FillCollection("where CHECKCOMMODITY_ID = " + CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text)))
{
//当数据为空的情况下,不更新对应的数据
if (_TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT == null)
{
continue;
}
//更新对应的库存 1.更新库存-添加库存 2.删除对应的临时 3.插入对应的盘存表
using (Business.SERVERPARTSTOCK _SERVERPARTSTOCK = new Business.SERVERPARTSTOCK(this.Transaction))
{
using (Business.CHECKCOMMODITYDETAIL _CHECKCOMMODITYDETAIL = new Business.CHECKCOMMODITYDETAIL(this.Transaction))
{
_CHECKCOMMODITYDETAIL.CHECKCOMMODITYDETAIL_ID = _TEMPCHECKCOMMODITYDETAIL.CHECKCOMMODITYDETAIL_ID;
_CHECKCOMMODITYDETAIL.COMMODITY_CODE = _SERVERPARTSTOCK.COMMODITY_CODE;
_CHECKCOMMODITYDETAIL.COMMODITY_BARCODE = _SERVERPARTSTOCK.COMMODITY_BARCODE;
_CHECKCOMMODITYDETAIL.LASTCOUNT = _TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT;
_CHECKCOMMODITYDETAIL.CHECKDESC = _TEMPCHECKCOMMODITYDETAIL.CHECKDESC;
_CHECKCOMMODITYDETAIL.CHECKCOMMODITY_ID = int.Parse(CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text);
//领料数
//入库数
_CHECKCOMMODITYDETAIL.Update();
}
_SERVERPARTSTOCK.SERVERPARTSTOCK_ID = _TEMPCHECKCOMMODITYDETAIL.SERVERPARTSTOCK_ID;
_SERVERPARTSTOCK.OVERPLUSCOUNT = _TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT;
_SERVERPARTSTOCK.TOTALCOUNT = _TEMPCHECKCOMMODITYDETAIL.OVERPLUSCOUNT;
_SERVERPARTSTOCK.Update();
}
_TEMPCHECKCOMMODITYDETAIL.Delete();
}
//更新盘存状态
Business.CHECKCOMMODITY _CHECKCOMMODITY = new Business.CHECKCOMMODITY(this.Transaction);
_CHECKCOMMODITY.CHECKCOMMODITY_ID = int.Parse(CHECKCOMMODITY1.CHECKCOMMODITY_ID.Text);
if (_CHECKCOMMODITY.Select())
{
_CHECKCOMMODITY.CHECK_STATE = 1;
_CHECKCOMMODITY.Update();
}
//清空数据
Business.CHECKCOMMODITY _nEWCHECKCOMMODITY = new Business.CHECKCOMMODITY(this.Transaction);
_nEWCHECKCOMMODITY.PASSPORT_ID = PassportInfo.ID;
_nEWCHECKCOMMODITY.CHECKPERSON = PassportInfo.Name;
CHECKCOMMODITY1.CurrObject.CopyFrom(_nEWCHECKCOMMODITY);
CHECKCOMMODITY1.BindObjectToControl();
ButtonDelete.Enabled = false;
//重新绑定数据
GridViewEx1.SelectingWithInit<Business.CHECKCOMMODITY>(ObjectDataSource1, GridPageEx1,
StorageHighWay.CommonHelper.GetDictionary(Transaction, "SERVERPART_ID",
"select SERVERPART_ID,SERVERPART_NAME FROM HIGHWAY_STORAGE.T_SERVERPART")
);
Alert("盘存完成!!");
}
#endregion
#region ->
protected void ButtonreFlash_Click(object sender, EventArgs e)
{
//刷新列表
GridViewEx1.SelectingWithInit<Business.CHECKCOMMODITY>(ObjectDataSource1, GridPageEx1);
}
#endregion
}
}