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

402 lines
18 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
}
}