169 lines
7.1 KiB
C#
169 lines
7.1 KiB
C#
using System;
|
||
using System.Web.UI.WebControls;
|
||
using SuperMap.RealEstate.Web.UI;
|
||
using SuperMap.RealEstate.Utility;
|
||
using SuperMap.RealEstate.Web.UI.WebControls;
|
||
using Business = SuperMap.RealEstate.HighWay.SellData.Business;
|
||
|
||
namespace SuperMap.RealEstate.HighWay.Modules.EndAccountRollback
|
||
{
|
||
/// <summary>
|
||
/// T_ENDACCOUNT_结账表 的WebUserControl
|
||
/// <summary>
|
||
public partial class ENDACCOUNT : UserControl<Business.ENDACCOUNT>
|
||
{
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
if (IsPostBack) return;
|
||
|
||
if (MACHINECODE.Text != "")
|
||
{
|
||
MACHINECODE.Enabled = false;
|
||
}
|
||
|
||
if (SHOPCODE.Text != "")
|
||
{
|
||
//自营的餐饮类门店才执行下放的判断事件
|
||
Storage.Business.SERVERPARTSHOP _SERVERPARTSHOP = new Storage.Business.SERVERPARTSHOP(Transaction);
|
||
_SERVERPARTSHOP.AddSearchParameter("SERVERPART_ID", SERVERPART_ID.Text);
|
||
_SERVERPARTSHOP.AddSearchParameter("SHOPCODE", SHOPCODE.Text);
|
||
if (_SERVERPARTSHOP.Search() && _SERVERPARTSHOP.BUSINESS_TYPE == 1000 && _SERVERPARTSHOP.SHOPTRADE != "1000")
|
||
{
|
||
//如果片区已完成凭证审核,则不允许无效账期和调整统计日期
|
||
Storage.Business.SERVERPART _SERVERPART = new Storage.Business.SERVERPART(Transaction);
|
||
_SERVERPART.SERVERPART_ID = CurrObject.SERVERPART_ID;
|
||
if (_SERVERPART.Select() && _SERVERPART.SPREGIONTYPE_ID != null)
|
||
{
|
||
//获取审批人意见
|
||
string SQLString = "SELECT * FROM HIGHWAY_SELLDATA.T_EVIDENCEAPPROVE WHERE SPREGIONTYPE_ID = " +
|
||
_SERVERPART.SPREGIONTYPE_ID + " AND EVIDENCEAPPROVE_TYPE = 1000 AND STATISTICS_DATE = " +
|
||
DateTime.Parse(STATISTICS_DATE.Text).ToString("yyyyMMdd");
|
||
if (_SERVERPART.ExecuteDataTable(SQLString).Rows.Count > 0)
|
||
{
|
||
STATISTICS_DATE.Enabled = false;
|
||
STATISTICS_DATE.ValidType = ValidTypeEnum.NoSet;
|
||
VALID.Enabled = false;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
//绑定操作记录列表
|
||
GridViewEx1.SelectingWithInit<Business.CHECKACCOUNT>(ObjectDataSource1, null);
|
||
|
||
}
|
||
|
||
//在此加入界面的数据初始化(Page_Load之前),如DropDownList的数据源绑定等
|
||
public override void InitializeWebControl()
|
||
{
|
||
//处理标记
|
||
//TREATMENT_MARK.Clear();
|
||
//DictionaryHelper.BindingDropDownList("TREATMENT_MARK", TREATMENT_MARK.Items, this.Transaction);
|
||
|
||
}
|
||
|
||
//载入数据
|
||
public override bool LoadData()
|
||
{
|
||
//如果是工作流组件请自行修改载入的逻辑,以下是功能模块的默认代码
|
||
if (!String.IsNullOrEmpty(Request["ID"]))
|
||
{
|
||
CurrObject.ENDACCOUNT_ID_Encrypt = Request["ID"];
|
||
return this.Select();
|
||
}
|
||
//默认返回值,工作流组件返回True,功能模块返回False。
|
||
return (WorkFlowPage != null);
|
||
}
|
||
|
||
//OnDataAction_XXXXX 有一个系列可用,在此加入界面的逻辑处理
|
||
//e.CancelDataAction 来处理是否取消该动作;
|
||
//失败的原因可以用Page.Alert()传递到页面
|
||
public override void OnDataAction_BeforeSave(DataActionEventArgs<Business.ENDACCOUNT> e)
|
||
{
|
||
Business.ENDACCOUNT _ENDACCOUNT = new Business.ENDACCOUNT(this.Transaction);
|
||
if (_ENDACCOUNT.Select(e.CurrObject.ENDACCOUNT_ID))
|
||
{
|
||
if (_ENDACCOUNT.TREATMENT_MARK != e.CurrObject.TREATMENT_MARK)
|
||
{
|
||
if (TREATMENT_MARK.SelectedValue != "1")
|
||
{
|
||
throw new Exception("此模块只支持回退至待处理状态!");
|
||
}
|
||
else
|
||
{
|
||
e.CurrObject.CHECK_INFO = null;
|
||
}
|
||
}
|
||
}
|
||
|
||
if (TREATMENT_MARK.SelectedValue == "1")
|
||
{
|
||
e.CurrObject.CHECK_INFO = null;
|
||
}
|
||
|
||
base.OnDataAction_BeforeSave(e);
|
||
}
|
||
|
||
public override void OnDataAction_AfterSave(DataActionEventArgs<Business.ENDACCOUNT> e)
|
||
{
|
||
base.OnDataAction_AfterSave(e);
|
||
Business.ENDACCOUNT_TEMP _ENDACCOUNT_TEMP = new Business.ENDACCOUNT_TEMP(Transaction);
|
||
if (((e.CurrObject.STATISTICS_DATE != null && e.CurrObject.STATISTICS_DATE >= DateTime.Now.Date.AddDays(-10)) ||
|
||
e.CurrObject.ENDACCOUNT_DATE >= DateTime.Now.Date.AddDays(-10)) && _ENDACCOUNT_TEMP.GetCount(
|
||
"WHERE ENDACCOUNT_ID = " + e.CurrObject.ENDACCOUNT_ID) > 0)
|
||
{
|
||
_ENDACCOUNT_TEMP.CopyFrom(CurrObject);
|
||
_ENDACCOUNT_TEMP.Update();
|
||
}
|
||
//存储日结账期状态变更日志
|
||
Business.ENDACCOUNT.SaveStateChangeLog(Transaction, e.CurrObject.KeyID,
|
||
e.CurrObject.STATISTICS_DATE.Value.ToString("yyyyMMddHHmmss"),
|
||
e.CurrObject.SERVERPART_ID, e.CurrObject.SHOPCODE,
|
||
VALID.SelectedValue == "0" ? 3000 : TREATMENT_MARK.SelectedValue == "1" ? 3001 : 3002,
|
||
OPERATELOG_DESC.Text, Page.PassportInfo.ID, Page.PassportInfo.Name,
|
||
Page.PassportInfo.UserName, Request["MODULE_ID"].ToDecrypt());
|
||
|
||
e.CurrObject.UpdateRevenues(e.CurrObject.ENDACCOUNT_DATE, e.CurrObject.SERVERPART_ID, e.CurrObject.SHOPCODE);
|
||
}
|
||
|
||
#region 方法 -> 列表事件
|
||
//查询SQL设置
|
||
protected void GridViewEx1_SelectMethodParameters(object sender, SelectMethodParametersArgs e)
|
||
{
|
||
if (string.IsNullOrWhiteSpace(ENDACCOUNT_ID.Text))
|
||
{
|
||
//若没有稽核数据,则返回空列表
|
||
e.AddAndParams("1", 2);
|
||
}
|
||
else
|
||
{
|
||
//且搜索条件
|
||
e.AddAndParams("MODULE_ID", ENDACCOUNT_ID.Text);
|
||
e.SetOtherUserCustomWhereSqlString = "OPERATELOG_TYPE IN (3000,3001,3002)";
|
||
e.AddOrderByParams("OPERATE_DATE", true);
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 行绑定事件
|
||
protected void GridViewEx1_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
|
||
{
|
||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||
{
|
||
switch (e.Row.Cells[1].Text)
|
||
{
|
||
case "3000":
|
||
e.Row.Cells[1].Text = "无效数据";
|
||
break;
|
||
case "3001":
|
||
e.Row.Cells[1].Text = "回退数据";
|
||
break;
|
||
case "3002":
|
||
e.Row.Cells[1].Text = "设置日期";
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
}
|
||
}
|