402 lines
18 KiB
C#
402 lines
18 KiB
C#
using System;
|
||
using System.IO;
|
||
using System.Data;
|
||
using System.Linq;
|
||
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 SuperMap.RealEstate.HighWay.Storage.Business;
|
||
using Business = SuperMap.RealEstate.HighWay.SellData.Business;
|
||
|
||
namespace SuperMap.RealEstate.HighWay.Modules.EndAccountSeparate
|
||
{
|
||
/// <summary>
|
||
/// T_ENDACCOUNT_结账表 的WebUserControl
|
||
/// <summary>
|
||
public partial class ENDACCOUNT : UserControl<Business.ENDACCOUNT>
|
||
{
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
if (IsPostBack) return;
|
||
InitControls();
|
||
//初始化并加载列表
|
||
GridViewEx1.SelectingWithInit<IMAGE>(ObjectDataSource1, GridPageEx1,
|
||
DictionaryHelper.GetDictionary(Transaction, "ISVALID"));
|
||
//设置回车焦点按钮
|
||
Page.SetControlClientAction(ButtonSearch);
|
||
}
|
||
|
||
#region InitControls -> 初始化页面信息
|
||
private void InitControls()
|
||
{
|
||
SERVERPART_ID.Items.Clear();
|
||
ListItemEx _ListItemEx = new ListItemEx();
|
||
foreach (SERVERPART _SERVERPART in (new SERVERPART(this.Transaction)).GetPassportServerPart(Page.PassportInfo.CityAuthority))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Value = _SERVERPART.SERVERPART_ID.ToString();
|
||
_ListItemEx.Text = _SERVERPART.SERVERPART_NAME;
|
||
SERVERPART_ID.Items.Add(_ListItemEx);
|
||
}
|
||
if (CurrObject.ENDACCOUNT_ID != 0 && CurrObject.ENDACCOUNT_ID != null)
|
||
{
|
||
SERVERPART_ID.SelectedValue = CurrObject.SERVERPART_ID.ToString();
|
||
}
|
||
else if (Request["SERVERPART_ID"] != null)
|
||
SERVERPART_ID.SelectedValue = Request["SERVERPART_ID"].ToDecrypt();
|
||
|
||
if (SERVERPART_ID.SelectedIndex > -1)
|
||
{
|
||
SERVERPART _SERVERPART = new SERVERPART(this.Transaction);
|
||
_SERVERPART.SERVERPART_ID_Encrypt = SERVERPART_ID.SelectedValue.ToEncrypt();
|
||
if (_SERVERPART.Select())
|
||
{
|
||
SERVERPARTCODE.Text = _SERVERPART.SERVERPART_CODE;
|
||
SERVERPART_NAME.Text = _SERVERPART.SERVERPART_NAME;
|
||
PROVINCE_CODE.Text = _SERVERPART.PROVINCE_CODE.ToString();
|
||
}
|
||
SHOPCODE.Items.Clear();
|
||
_ListItemEx = new ListItemEx();
|
||
foreach (SERVERPARTSHOP _SERVERPARTSHOP in (new SERVERPARTSHOP(this.Transaction)).FillCollection(
|
||
"where SERVERPART_ID = " + SERVERPART_ID.SelectedValue + " AND ISVALID = 1 ORDER BY SHOPCODE"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _SERVERPARTSHOP.SHOPNAME;
|
||
_ListItemEx.Value = _SERVERPARTSHOP.SHOPCODE;
|
||
SHOPCODE.Items.Add(_ListItemEx);
|
||
}
|
||
//结账人员
|
||
ENDPERSONCODE.Items.Clear();
|
||
foreach (CASHWORKER _CASHWORKER in (new CASHWORKER(this.Transaction)).FillCollection(
|
||
"where LENGTH(CASHWORKER_LOGINNAME) = 4 AND WORKER_VALID = 1 AND SERVERPART_ID = " +
|
||
SERVERPART_ID.SelectedValue + " and SUBSTR(NVL(WORKER_OTHER,'0000'),3,1) = '1' ORDER BY CASHWORKER_LOGINNAME"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _CASHWORKER.CASHWORKER_NAME;
|
||
_ListItemEx.Value = _CASHWORKER.CASHWORKER_LOGINNAME;
|
||
ENDPERSONCODE.Items.Add(_ListItemEx);
|
||
}
|
||
//收银人员
|
||
CASHIER_NAME.Items.Clear();
|
||
foreach (CASHWORKER _CASHWORKER in (new CASHWORKER(this.Transaction)).FillCollection(
|
||
"where LENGTH(CASHWORKER_LOGINNAME) = 4 AND WORKER_VALID = 1 AND SERVERPART_ID = " +
|
||
SERVERPART_ID.SelectedValue + " and WORKER_OTHER LIKE '1%' ORDER BY CASHWORKER_LOGINNAME"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _CASHWORKER.CASHWORKER_NAME;
|
||
_ListItemEx.Value = _CASHWORKER.CASHWORKER_NAME;
|
||
CASHIER_NAME.Items.Add(_ListItemEx);
|
||
}
|
||
if (ENDPERSONCODE.SelectedIndex > -1)
|
||
{
|
||
WORKER_NAME.Text = ENDPERSONCODE.SelectedItem.Text;
|
||
}
|
||
if (CurrObject.ENDACCOUNT_ID != 0 && CurrObject.ENDACCOUNT_ID != null)
|
||
{
|
||
SHOPCODE.SelectedValue = CurrObject.SHOPCODE;
|
||
ENDPERSONCODE.SelectedValue = CurrObject.ENDPERSONCODE;
|
||
CASHIER_NAME.SelectedValue = CurrObject.CASHIER_NAME;
|
||
}
|
||
else if (Request["SHOPCODE"] != null)
|
||
SHOPCODE.SelectedValue = Request["SHOPCODE"].ToDecrypt();
|
||
|
||
if (SHOPCODE.SelectedIndex > -1)
|
||
{
|
||
SHOPNAME.Text = SHOPCODE.SelectedItem.Text;
|
||
//ENDACCOUNT_STARTDATE.Items.Clear();
|
||
//foreach (Business.ENDACCOUNT _ENDACCOUNT in (new Business.ENDACCOUNT(this.Transaction)).FillCollection(
|
||
// "where SERVERPART_ID = " + SERVERPART_ID.SelectedValue + " AND SHOPCODE = '" + SHOPCODE.SelectedValue +
|
||
// "' AND VALID = 1 ORDER BY ENDACCOUNT_DATE DESC"))
|
||
//{
|
||
// _ListItemEx = new ListItemEx();
|
||
// _ListItemEx.Text = _ENDACCOUNT.ENDACCOUNT_DATE.ToString();
|
||
// _ListItemEx.Value = _ENDACCOUNT.ENDACCOUNT_DATE.ToString();
|
||
// ENDACCOUNT_STARTDATE.Items.Add(_ListItemEx);
|
||
//}
|
||
//if (CurrObject.ENDACCOUNT_ID != 0 && CurrObject.ENDACCOUNT_ID != null)
|
||
//{
|
||
// ENDACCOUNT_STARTDATE.SelectedValue = CurrObject.ENDACCOUNT_STARTDATE.ToString();
|
||
//}
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 绑定下拉框
|
||
protected void SERVERPART_ID_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
SERVERPART _SERVERPART = new SERVERPART(this.Transaction);
|
||
_SERVERPART.SERVERPART_ID_Encrypt = SERVERPART_ID.SelectedValue.ToEncrypt();
|
||
if (_SERVERPART.Select())
|
||
{
|
||
SERVERPARTCODE.Text = _SERVERPART.SERVERPART_CODE;
|
||
SERVERPART_NAME.Text = _SERVERPART.SERVERPART_NAME;
|
||
PROVINCE_CODE.Text = _SERVERPART.PROVINCE_CODE.ToString();
|
||
e.SetValue(SERVERPARTCODE);
|
||
e.SetValue(SERVERPART_NAME);
|
||
e.SetValue(PROVINCE_CODE);
|
||
}
|
||
ListItemEx _ListItemEx = new ListItemEx();
|
||
SHOPCODE.Items.Clear();
|
||
_ListItemEx = new ListItemEx();
|
||
foreach (SERVERPARTSHOP _SERVERPARTSHOP in (new SERVERPARTSHOP(this.Transaction)).FillCollection(
|
||
"where SERVERPART_ID = " + SERVERPART_ID.SelectedValue + " AND ISVALID = 1 ORDER BY SHOPCODE"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _SERVERPARTSHOP.SHOPNAME;
|
||
_ListItemEx.Value = _SERVERPARTSHOP.SHOPCODE;
|
||
SHOPCODE.Items.Add(_ListItemEx);
|
||
}
|
||
if (SHOPCODE.SelectedIndex > -1)
|
||
{
|
||
SHOPNAME.Text = SHOPCODE.SelectedItem.Text;
|
||
e.SetValue(SHOPNAME);
|
||
}
|
||
|
||
//结账人员
|
||
ENDPERSONCODE.Items.Clear();
|
||
foreach (CASHWORKER _CASHWORKER in (new CASHWORKER(this.Transaction)).FillCollection(
|
||
"where LENGTH(CASHWORKER_LOGINNAME) = 4 AND WORKER_VALID = 1 AND SERVERPART_ID = " +
|
||
SERVERPART_ID.SelectedValue + " and SUBSTR(NVL(WORKER_OTHER,'000000'),3,1) = '1' ORDER BY CASHWORKER_LOGINNAME"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _CASHWORKER.CASHWORKER_NAME;
|
||
_ListItemEx.Value = _CASHWORKER.CASHWORKER_LOGINNAME;
|
||
ENDPERSONCODE.Items.Add(_ListItemEx);
|
||
}
|
||
//收银人员
|
||
CASHIER_NAME.Items.Clear();
|
||
foreach (CASHWORKER _CASHWORKER in (new CASHWORKER(this.Transaction)).FillCollection(
|
||
"where LENGTH(CASHWORKER_LOGINNAME) = 4 AND WORKER_VALID = 1 AND SERVERPART_ID = " +
|
||
SERVERPART_ID.SelectedValue + " and WORKER_OTHER LIKE '1%' ORDER BY CASHWORKER_LOGINNAME"))
|
||
{
|
||
_ListItemEx = new ListItemEx();
|
||
_ListItemEx.Text = _CASHWORKER.CASHWORKER_NAME;
|
||
_ListItemEx.Value = _CASHWORKER.CASHWORKER_NAME;
|
||
CASHIER_NAME.Items.Add(_ListItemEx);
|
||
}
|
||
if (ENDPERSONCODE.SelectedIndex > -1)
|
||
{
|
||
WORKER_NAME.Text = ENDPERSONCODE.SelectedItem.Text;
|
||
e.SetValue(WORKER_NAME);
|
||
}
|
||
e.SetDropDownListEx(SHOPCODE);
|
||
e.SetDropDownListEx(ENDPERSONCODE);
|
||
e.SetDropDownListEx(CASHIER_NAME);
|
||
}
|
||
|
||
protected void SHOPCODE_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
SHOPNAME.Text = SHOPCODE.SelectedItem.Text;
|
||
//ENDACCOUNT_STARTDATE.Items.Clear();
|
||
//ListItemEx _ListItemEx = new ListItemEx();
|
||
//foreach (Business.ENDACCOUNT _ENDACCOUNT in (new Business.ENDACCOUNT(this.Transaction)).FillCollection(
|
||
// "where SERVERPART_ID = " + SERVERPART_ID.SelectedValue + " AND SHOPCODE = '" + SHOPCODE.SelectedValue +
|
||
// "' AND VALID = 1 ORDER BY ENDACCOUNT_DATE DESC"))
|
||
//{
|
||
// _ListItemEx = new ListItemEx();
|
||
// _ListItemEx.Text = _ENDACCOUNT.ENDACCOUNT_DATE.ToString();
|
||
// _ListItemEx.Value = _ENDACCOUNT.ENDACCOUNT_DATE.ToString();
|
||
// ENDACCOUNT_STARTDATE.Items.Add(_ListItemEx);
|
||
//}
|
||
e.SetValue(SHOPNAME);
|
||
//e.SetDropDownListEx(ENDACCOUNT_STARTDATE);
|
||
}
|
||
|
||
protected void ENDPERSONCODE_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
WORKER_NAME.Text = ENDPERSONCODE.SelectedItem.Text;
|
||
e.SetValue(WORKER_NAME);
|
||
}
|
||
|
||
protected void CASHPAY_DOWNLORD_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
if (TOTALSELLAMOUNT.Text.Trim() != "")
|
||
{
|
||
DIFFERENT_PRICE.Text = (double.Parse(CASHPAY_DOWNLORD.Text) - double.Parse(TOTALSELLAMOUNT.Text)).ToString();
|
||
e.SetValue(DIFFERENT_PRICE);
|
||
}
|
||
}
|
||
|
||
protected void TOTALSELLAMOUNT_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
if (CASHPAY_DOWNLORD.Text.Trim() != "")
|
||
{
|
||
DIFFERENT_PRICE.Text = (double.Parse(CASHPAY_DOWNLORD.Text) - double.Parse(TOTALSELLAMOUNT.Text)).ToString();
|
||
e.SetValue(DIFFERENT_PRICE);
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//在此加入界面的数据初始化(Page_Load之前),如DropDownList的数据源绑定等
|
||
public override void InitializeWebControl()
|
||
{
|
||
//处理标记
|
||
TREATMENT_MARK.Clear();
|
||
DictionaryHelper.BindingDropDownList("TREATMENT_MARK", TREATMENT_MARK.Items, this.Transaction);
|
||
TREATMENT_MARK.SelectedValue = "1";
|
||
//处理标记
|
||
VALID.Clear();
|
||
DictionaryHelper.BindingDropDownList("ISVALID", VALID.Items, this.Transaction);
|
||
VALID.SelectedValue = "1";
|
||
}
|
||
|
||
//载入数据
|
||
public override bool LoadData()
|
||
{
|
||
bool flag = false;
|
||
//如果是工作流组件请自行修改载入的逻辑,以下是功能模块的默认代码
|
||
if (!String.IsNullOrEmpty(Request["ID"]))
|
||
{
|
||
CurrObject.ENDACCOUNT_ID_Encrypt = Request["ID"];
|
||
flag = this.Select();
|
||
if (CurrObject.APPROVE_STAFF == null || CurrObject.APPROVE_DATE == null)
|
||
{
|
||
DESCRIPTION_STAFF.Text = this.Page.PassportInfo.Name;
|
||
DESCRIPTION_DATE.Text = DateTime.Now.ToString();
|
||
}
|
||
return flag;
|
||
}
|
||
else
|
||
{
|
||
DESCRIPTION_STAFF.Text = this.Page.PassportInfo.Name;
|
||
DESCRIPTION_DATE.Text = DateTime.Now.ToString();
|
||
DOWNLOAD_DATE.Text = DateTime.Now.ToString();
|
||
}
|
||
//默认返回值,工作流组件返回True,功能模块返回False。
|
||
return (WorkFlowPage != null);
|
||
}
|
||
|
||
//OnDataAction_XXXXX 有一个系列可用,在此加入界面的逻辑处理
|
||
//e.CancelDataAction 来处理是否取消该动作;
|
||
//失败的原因可以用Page.Alert()传递到页面
|
||
public override void OnDataAction_BeforeSave(DataActionEventArgs<Business.ENDACCOUNT> e)
|
||
{
|
||
base.OnDataAction_BeforeSave(e);
|
||
}
|
||
|
||
public override void OnDataAction_AfterSave(DataActionEventArgs<Business.ENDACCOUNT> e)
|
||
{
|
||
base.OnDataAction_AfterSave(e);
|
||
if (mFileUpload.FileName.ToString() == "")
|
||
{
|
||
e.Success = DataActionResult.False;
|
||
return;
|
||
}
|
||
string ImagePathSrc = string.Empty;
|
||
if (mFileUpload.HasFile)
|
||
{
|
||
string extension = Path.GetExtension(mFileUpload.PostedFile.FileName).ToLower();
|
||
string newname = DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss_ffff") + extension;
|
||
if (extension == ".jpg" || extension == ".gif" || extension == ".png")
|
||
{
|
||
ImagePathSrc += "/UploadImageDir/ENDACCOUNT/";
|
||
string savePath = Server.MapPath("~/UploadImageDir/ENDACCOUNT/");
|
||
if (!Directory.Exists(savePath))
|
||
{
|
||
Directory.CreateDirectory(savePath);
|
||
}
|
||
mFileUpload.PostedFile.SaveAs(savePath + newname);
|
||
ImagePathSrc += newname;
|
||
}
|
||
}
|
||
IMAGE _IMAGE = new IMAGE(this.Transaction);
|
||
_IMAGE.IMAGE_PATH = ImagePathSrc;
|
||
_IMAGE.TABLE_ID = e.CurrObject.ENDACCOUNT_ID;
|
||
_IMAGE.TABLE_NAME = "T_ENDACCOUNT";
|
||
_IMAGE.IMAGE_DATE = System.DateTime.Now;
|
||
_IMAGE.Insert();
|
||
}
|
||
|
||
protected void DESCRIPTION_STAFF_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
DESCRIPTION_DATE.Text = DateTime.Now.ToString();
|
||
e.SetValue(DESCRIPTION_DATE);
|
||
}
|
||
|
||
protected void ENDACCOUNT_DATE_CallBackSetControl(object sender, ClientSetEventArgs e)
|
||
{
|
||
STATISTICS_DATE.Text = DateTime.Parse(ENDACCOUNT_DATE.Text).ToString();
|
||
ENDACCOUNT_STARTDATE.Text = DateTime.Parse(ENDACCOUNT_DATE.Text).ToShortDateString();
|
||
e.SetValue(STATISTICS_DATE);
|
||
e.SetValue(ENDACCOUNT_STARTDATE);
|
||
}
|
||
|
||
#region 方法 -> 绑定列表
|
||
protected void ButtonSearch_CallBackClick(object sender, ClientSetEventArgs e)
|
||
{
|
||
GridViewEx1.Selecting<IMAGE>(ObjectDataSource1, GridPageEx1);
|
||
//设置UI变化
|
||
e.SetValue(GridViewEx1);
|
||
e.SetValue(GridPageEx1);
|
||
}
|
||
|
||
//翻页事件
|
||
protected void GridPageEx1_CallBackPageChanged(object src, ClientSetEventArgs e)
|
||
{
|
||
GridViewEx1.Pagging<IMAGE>(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);
|
||
//且搜索条件
|
||
//e.AddAndParams(字段名, 值);
|
||
e.AddAndParams("TABLE_NAME", "T_ENDACCOUNT");
|
||
e.AddAndParams("TABLE_ID", ENDACCOUNT_ID.Text);
|
||
//或搜索条件
|
||
//e.AddOrParams(字段名, 值);
|
||
//排序
|
||
e.AddOrderByParams(GridViewOrderBy1);
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 选择
|
||
protected void SelectButton_CallBackClick(object sender, ClientSetEventArgs e)
|
||
{
|
||
CallBackButton _button = (CallBackButton)sender;
|
||
GridViewRow _Row = (GridViewRow)_button.NamingContainer;
|
||
string _Image_ID = GridViewEx1.DataKeys[_Row.RowIndex][0].ToString();
|
||
|
||
IMAGE _IMAGE = new IMAGE(this.Transaction);
|
||
_IMAGE.IMAGE_ID = int.Parse(_Image_ID);
|
||
if (_IMAGE.Select())
|
||
{
|
||
e.SetValue(Image_ID, _IMAGE.IMAGE_ID.Value.ToString());
|
||
e.SetValue(IMAGE_PATH, _IMAGE.IMAGE_PATH);
|
||
e.SetValue(IMAGE_DESC, _IMAGE.IMAGE_DESC);
|
||
e.ExcuteClientScript("BindImg()");
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 方法 -> 删除
|
||
protected void DeleteButton_CallBackClick(object sender, ClientSetEventArgs e)
|
||
{
|
||
CallBackButton _button = (CallBackButton)sender;
|
||
GridViewRow _Row = (GridViewRow)_button.NamingContainer;
|
||
string _Image_ID = GridViewEx1.DataKeys[_Row.RowIndex][0].ToString();
|
||
|
||
IMAGE _IMAGE = new IMAGE(this.Transaction);
|
||
_IMAGE.Delete(int.Parse(_Image_ID));
|
||
|
||
e.SetValue(Image_ID, "");
|
||
e.SetValue(IMAGE_DESC, "");
|
||
e.SetValue(Table_Name, "T_ENDACCOUNT");
|
||
e.SetValue(Table_ID, ENDACCOUNT_ID.Text);
|
||
ButtonSearch_CallBackClick(null, e);
|
||
}
|
||
#endregion
|
||
}
|
||
}
|