133 lines
4.4 KiB
C#
133 lines
4.4 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Configuration;
|
|
using System.Collections;
|
|
using System.Web;
|
|
using System.Web.Security;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using System.Web.UI.WebControls.WebParts;
|
|
using System.Web.UI.HtmlControls;
|
|
using GZTW.AyaNova.BLL;
|
|
|
|
namespace AyaNovaMBI
|
|
{
|
|
public partial class labor : System.Web.UI.Page
|
|
{
|
|
|
|
#region BizObject
|
|
public GZTW.AyaNova.BLL.WorkorderItemLabor mLabor;
|
|
protected GZTW.AyaNova.BLL.WorkorderItemLabor CurrentLabor
|
|
{
|
|
get
|
|
{
|
|
if (mLabor != null) return mLabor;
|
|
|
|
|
|
//This form only edits workorder items that already exist and
|
|
//there is no option to re-edit after initial edit, i.e. all buttons will close this
|
|
//page and return so there is no need to cache anything
|
|
|
|
string idstring = Request.QueryString["id"];
|
|
if (util.mt(idstring))
|
|
throw new ApplicationException("labor - id not specified");
|
|
Guid oID = new Guid(idstring);
|
|
mWorkorder = Workorder.GetWorkorderByRelative(RootObjectTypes.WorkorderItemLabor, oID);
|
|
mLabor = mWorkorder.WorkorderItems[mWorkorder.GetWorkorderItemIDFromDescendant(RootObjectTypes.WorkorderItemLabor, oID)].Labors[oID.ToString()];
|
|
|
|
return mLabor;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
public Workorder mWorkorder=null;
|
|
protected Workorder CurrentWorkorder
|
|
{
|
|
|
|
get
|
|
{
|
|
if (mWorkorder == null)
|
|
CurrentLabor.ToString();//forces mworkorder to be set
|
|
return mWorkorder;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
util.Localize(this);
|
|
SetData();
|
|
}
|
|
|
|
if (!CurrentWorkorder.IsEditable ||
|
|
!CurrentWorkorder.IsWorkorderItemEditable ||
|
|
AyaBizUtils.Right("Object.WorkorderItemLabor") < (int)SecurityLevelTypes.ReadWrite)
|
|
{
|
|
util.SetReadOnly(this);
|
|
bcancel.Enabled = true;
|
|
}
|
|
}
|
|
|
|
|
|
private void SetData()
|
|
{
|
|
WorkorderItemLabor l=CurrentLabor;
|
|
edstart.Text = l.ServiceStartDate.ToString();
|
|
edstop.Text = l.ServiceStopDate.ToString();
|
|
edquant.Text = l.ServiceRateQuantity.ToString("g29");
|
|
ednc.Text = l.NoChargeQuantity.ToString("g29");
|
|
eddetails.Text = l.ServiceDetails;
|
|
|
|
cbrate.DataSource = util.GetDataBiz("LaborRateList", l.ServiceRateID, true, CurrentWorkorder.ContractIDResolved(), CurrentWorkorder.ListOfLaborRatesSelected(), true);
|
|
cbrate.DataTextField = "Display";
|
|
cbrate.DataValueField = "Value";
|
|
cbrate.SelectedValue = l.ServiceRateID.ToString();
|
|
cbrate.DataBind();
|
|
|
|
cbtax.DataSource = util.GetDataBiz("TaxCode", l.TaxRateSaleID, true, Guid.Empty, null, false);
|
|
cbtax.DataTextField = "Display";
|
|
cbtax.DataValueField = "Value";
|
|
cbtax.SelectedValue = l.TaxRateSaleID.ToString();
|
|
cbtax.DataBind();
|
|
|
|
bok.Text = util.LocaleText("UI.Command.OK");
|
|
}
|
|
|
|
private void GetData()
|
|
{
|
|
WorkorderItemLabor l = CurrentLabor;
|
|
l.ServiceStartDate = util.ParseDateToDbValue(edstart);
|
|
l.ServiceStopDate = util.ParseDateToDbValue(edstop);
|
|
l.ServiceRateQuantity = util.ParseDecimal(edquant);
|
|
l.NoChargeQuantity = util.ParseDecimal(ednc);
|
|
l.ServiceRateID = util.ParseGuid(Request.Form["cbrate"]);
|
|
l.TaxRateSaleID = util.ParseGuid(Request.Form["cbtax"]);
|
|
l.ServiceDetails = eddetails.Text;
|
|
|
|
}
|
|
|
|
protected void bok_Click(object sender, EventArgs e)
|
|
{
|
|
if (CurrentWorkorder.IsEditable)
|
|
{
|
|
GetData();
|
|
CurrentWorkorder.Save();
|
|
}
|
|
util.Redirect(Session, Response, "schedule.aspx");
|
|
}
|
|
|
|
protected void bcancel_Click(object sender, EventArgs e)
|
|
{
|
|
util.Redirect(Session, Response, "schedule.aspx");
|
|
}
|
|
}
|
|
}
|