| @ -0,0 +1,193 @@ | |||||
| using BWP.B3ProcurementInterface.Utils; | |||||
| using BWP.B3SubstituteKill.BL; | |||||
| using BWP.B3SubstituteKill.BO; | |||||
| using BWP.B3SubstituteKill.Utils; | |||||
| using BWP.Web.Layout; | |||||
| using BWP.Web.WebControls; | |||||
| using Forks.EnterpriseServices.DataForm; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| using System.Web.UI.WebControls; | |||||
| using TSingSoft.WebControls2; | |||||
| namespace BWP.Web.Pages.B3SubstituteKill.Bills.SubKillPriceBill_ | |||||
| { | |||||
| class SubKillPriceBillEdit : DepartmentWorkFlowBillEditPage<SubKillPriceBill, ISubKillPriceBillBL> | |||||
| { | |||||
| protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, CustomPageLayout.PageLayoutSection pageLayoutSection) | |||||
| { | |||||
| var layoutManager = new LayoutManager("", mDFInfo, mDFContainer); | |||||
| var config = new AutoLayoutConfig(); | |||||
| config.Add("AccountingUnit_ID"); | |||||
| config.Add("Department_ID"); | |||||
| config.Add("Employee_ID"); | |||||
| config.Add("Date"); | |||||
| config.Add("Remark"); | |||||
| layoutManager.Config = config; | |||||
| pageLayoutSection.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo); | |||||
| titlePanel.Controls.Add(layoutManager.CreateLayout()); | |||||
| } | |||||
| protected override void BuildBody(System.Web.UI.Control parent) | |||||
| { | |||||
| base.BuildBody(parent); | |||||
| AddSupplierDetail(parent.EAdd(new TitlePanel("供应商明细", "供应商明细"))); | |||||
| AddCostItemDetail(parent.EAdd(new TitlePanel("代宰费用", "代宰费用"))); | |||||
| AddCallBackDetail(parent.EAdd(new TitlePanel("代宰回收", "代宰回收"))); | |||||
| } | |||||
| DFEditGrid _supplierDetailGrid; | |||||
| private void AddSupplierDetail(TitlePanel titlePanel) | |||||
| { | |||||
| if (CanSave) | |||||
| { | |||||
| var hPanel = titlePanel.EAdd(new HLayoutPanel()); | |||||
| hPanel.Add(new SimpleLabel("选择供应商")); | |||||
| var supplierSelect = hPanel.Add(new ChoiceBox(B3ProcurementInterfaceDataSources.供应商用于屠宰场) { Width = Unit.Pixel(180), EnableInputArgument = true, EnableTopItem = true, AutoPostBack = true }); | |||||
| supplierSelect.SelectedValueChanged += delegate | |||||
| { | |||||
| GetFromUI(); | |||||
| if (supplierSelect.IsEmpty) | |||||
| return; | |||||
| long v = long.Parse(supplierSelect.Value); | |||||
| if (Dmo.SupplierDetails.Any(x => x.Supplier_ID == v)) | |||||
| { | |||||
| supplierSelect.Clear(); | |||||
| return; | |||||
| } | |||||
| Dmo.SupplierDetails.Add(new SubKillPriceBill_SupplierDetail { Supplier_ID = v, Supplier_Name = supplierSelect.DisplayValue }); | |||||
| supplierSelect.Clear(); | |||||
| _supplierDetailGrid.DataBind(); | |||||
| }; | |||||
| } | |||||
| var editor = new DFCollectionEditor<SubKillPriceBill_SupplierDetail>(() => Dmo.SupplierDetails); | |||||
| editor.AllowDeletionFunc = () => CanSave; | |||||
| editor.CanDeleteFunc = detail => CanSave; | |||||
| editor.IsEditableFunc = (field, detail) => false; | |||||
| _supplierDetailGrid = titlePanel.EAdd(new DFEditGrid(editor) { Width = Unit.Percentage(100) }); | |||||
| _supplierDetailGrid.Columns.Add(new DFEditGridColumn("Supplier_Name")); | |||||
| var section = mPageLayoutManager.AddSection("SupplierDetail", "供应商明细"); | |||||
| titlePanel.SetPageLayoutSetting(mPageLayoutManager, section.Name); | |||||
| section.ApplyLayout(_supplierDetailGrid, mPageLayoutManager, DFInfo.Get(typeof(SubKillPriceBill_SupplierDetail))); | |||||
| } | |||||
| DFEditGrid _costItemDetailGrid; | |||||
| private void AddCostItemDetail(TitlePanel titlePanel) | |||||
| { | |||||
| if (CanSave) | |||||
| { | |||||
| var hPanel = titlePanel.EAdd(new HLayoutPanel()); | |||||
| hPanel.Add(new SimpleLabel("代宰生产线")); | |||||
| var productLineSelect = hPanel.Add(new ChoiceBox(B3SubstituteKillConsts.DataSources.授权代宰生产线) { Width = Unit.Pixel(180), EnableInputArgument = true, EnableTopItem = true }); | |||||
| hPanel.Add(new SimpleLabel("代宰费用")); | |||||
| var costItemSelect = hPanel.Add(new ChoiceBox(B3SubstituteKillConsts.DataSources.授权代宰费用) { Width = Unit.Pixel(180), EnableInputArgument = true, EnableTopItem = true }); | |||||
| hPanel.Add(new TSButton("添加", delegate | |||||
| { | |||||
| GetFromUI(); | |||||
| if (productLineSelect.IsEmpty) | |||||
| throw new Exception("请选择代宰生产线"); | |||||
| if (costItemSelect.IsEmpty) | |||||
| throw new Exception("请选择代宰费用"); | |||||
| long pv = long.Parse(productLineSelect.Value); | |||||
| long cv = long.Parse(costItemSelect.Value); | |||||
| if (Dmo.CostItemDetails.Any(x => x.SubKillProductLine_ID == pv && x.GenerationCostItem_ID == cv)) | |||||
| { | |||||
| productLineSelect.Clear(); | |||||
| costItemSelect.Clear(); | |||||
| return; | |||||
| } | |||||
| Dmo.CostItemDetails.Add(new SubKillPriceBill_CostItemDetail { SubKillProductLine_ID = pv, SubKillProductLine_Name = productLineSelect.DisplayValue, GenerationCostItem_ID = cv, GenerationCostItem_Name = costItemSelect.DisplayValue }); | |||||
| productLineSelect.Clear(); | |||||
| costItemSelect.Clear(); | |||||
| _costItemDetailGrid.DataBind(); | |||||
| })); | |||||
| } | |||||
| var editor = new DFCollectionEditor<SubKillPriceBill_CostItemDetail>(() => Dmo.CostItemDetails); | |||||
| editor.AllowDeletionFunc = () => CanSave; | |||||
| editor.CanDeleteFunc = detail => CanSave; | |||||
| editor.IsEditableFunc = (field, detail) => CanSave; | |||||
| _costItemDetailGrid = titlePanel.EAdd(new DFEditGrid(editor) { Width = Unit.Percentage(100) }); | |||||
| _costItemDetailGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("SubKillProductLine_Name")); | |||||
| _costItemDetailGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("GenerationCostItem_Name")); | |||||
| _costItemDetailGrid.Columns.Add(new DFEditGridColumn("Price")); | |||||
| var dic = new Dictionary<string, Unit>(); | |||||
| dic.Add("代宰生产线", Unit.Percentage(35)); | |||||
| dic.Add("单价", Unit.Percentage(30)); | |||||
| _costItemDetailGrid.PreferWidthGridSet = dic; | |||||
| var section = mPageLayoutManager.AddSection("CostItemDetail", "代宰费用"); | |||||
| titlePanel.SetPageLayoutSetting(mPageLayoutManager, section.Name); | |||||
| section.ApplyLayout(_costItemDetailGrid, mPageLayoutManager, DFInfo.Get(typeof(SubKillPriceBill_CostItemDetail))); | |||||
| } | |||||
| DFEditGrid _callbackDetailGrid; | |||||
| private void AddCallBackDetail(TitlePanel titlePanel) | |||||
| { | |||||
| if (CanSave) | |||||
| { | |||||
| var hPanel = titlePanel.EAdd(new HLayoutPanel()); | |||||
| hPanel.Add(new SimpleLabel("选择代宰回收项")); | |||||
| var callbackSelect = hPanel.Add(new ChoiceBox(B3SubstituteKillConsts.DataSources.授权代宰回收) { Width = Unit.Pixel(180), EnableInputArgument = true, EnableTopItem = true, AutoPostBack = true }); | |||||
| callbackSelect.SelectedValueChanged += delegate | |||||
| { | |||||
| GetFromUI(); | |||||
| if (callbackSelect.IsEmpty) | |||||
| return; | |||||
| long v = long.Parse(callbackSelect.Value); | |||||
| if (Dmo.CallBackDetails.Any(x => x.SubKillCallBack_ID == v)) | |||||
| { | |||||
| callbackSelect.Clear(); | |||||
| return; | |||||
| } | |||||
| Dmo.CallBackDetails.Add(new SubKillPriceBill_CallBackDetail { SubKillCallBack_ID = v, SubKillCallBack_Name = callbackSelect.DisplayValue }); | |||||
| callbackSelect.Clear(); | |||||
| _callbackDetailGrid.DataBind(); | |||||
| }; | |||||
| } | |||||
| var editor = new DFCollectionEditor<SubKillPriceBill_CallBackDetail>(() => Dmo.CallBackDetails); | |||||
| editor.AllowDeletionFunc = () => CanSave; | |||||
| editor.CanDeleteFunc = detail => CanSave; | |||||
| editor.IsEditableFunc = (field, detail) => CanSave; | |||||
| _callbackDetailGrid = titlePanel.EAdd(new DFEditGrid(editor) { Width = Unit.Percentage(100) }); | |||||
| _callbackDetailGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("SubKillCallBack_Name")); | |||||
| _callbackDetailGrid.Columns.Add(new DFEditGridColumn("Price")); | |||||
| var dic = new Dictionary<string, Unit>(); | |||||
| dic.Add("单价", Unit.Percentage(50)); | |||||
| _callbackDetailGrid.PreferWidthGridSet = dic; | |||||
| var section = mPageLayoutManager.AddSection("CallBackItemDetail", "代宰回收"); | |||||
| titlePanel.SetPageLayoutSetting(mPageLayoutManager, section.Name); | |||||
| section.ApplyLayout(_callbackDetailGrid, mPageLayoutManager, DFInfo.Get(typeof(SubKillPriceBill_CallBackDetail))); | |||||
| } | |||||
| public override void AppToUI() | |||||
| { | |||||
| base.AppToUI(); | |||||
| _supplierDetailGrid.DataBind(); | |||||
| _costItemDetailGrid.DataBind(); | |||||
| _callbackDetailGrid.DataBind(); | |||||
| } | |||||
| public override void GetFromUI() | |||||
| { | |||||
| base.GetFromUI(); | |||||
| _supplierDetailGrid.GetFromUI(); | |||||
| _costItemDetailGrid.GetFromUI(); | |||||
| _callbackDetailGrid.GetFromUI(); | |||||
| } | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,37 @@ | |||||
| using BWP.B3SubstituteKill.BL; | |||||
| using BWP.B3SubstituteKill.BO; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| using TSingSoft.WebControls2; | |||||
| namespace BWP.Web.Pages.B3SubstituteKill.Bills.SubKillPriceBill_ | |||||
| { | |||||
| class SubKillPriceBillList : DomainBillListPage<SubKillPriceBill, ISubKillPriceBillBL> | |||||
| { | |||||
| protected override void AddQueryControls(VLayoutPanel vPanel) | |||||
| { | |||||
| vPanel.Add(CreateDefaultBillQueryControls((panel, config) => | |||||
| { | |||||
| config.Add("Date"); | |||||
| config.Add("AccountingUnit_ID"); | |||||
| config.Add("Department_ID"); | |||||
| config.Add("Employee_ID"); | |||||
| })); | |||||
| } | |||||
| protected override void AddDFBrowseGridColumn(DFBrowseGrid grid, string field) | |||||
| { | |||||
| base.AddDFBrowseGridColumn(grid, field); | |||||
| if (field == "BillState") | |||||
| { | |||||
| AddDFBrowseGridColumn(grid, "Date"); | |||||
| AddDFBrowseGridColumn(grid, "AccountingUnit_Name"); | |||||
| AddDFBrowseGridColumn(grid, "Department_Name"); | |||||
| AddDFBrowseGridColumn(grid, "Employee_Name"); | |||||
| AddDFBrowseGridColumn(grid, "Remark"); | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,69 @@ | |||||
| <?xml version="1.0" encoding="utf-8" ?> | |||||
| <Select xmlns="urn:XDQuery"> | |||||
| <Columns> | |||||
| <Field name="ID"/> | |||||
| </Columns> | |||||
| <From> | |||||
| <DmoClass class="BWP.B3SubstituteKill.BO.SubKillPriceBill, B3SubstituteKill"/> | |||||
| </From> | |||||
| <Where> | |||||
| <And> | |||||
| <EQ> | |||||
| <Field name="ID"/> | |||||
| <QBE paramName="ID"/> | |||||
| </EQ> | |||||
| <EQ> | |||||
| <Field name="AccountingUnit_ID"/> | |||||
| <QBE paramName="AccountingUnit_ID"/> | |||||
| </EQ> | |||||
| <EQ> | |||||
| <Field name="Department_ID"/> | |||||
| <QBE paramName="Department_ID"/> | |||||
| </EQ> | |||||
| <EQ> | |||||
| <Field name="Employee_ID"/> | |||||
| <QBE paramName="Employee_ID"/> | |||||
| </EQ> | |||||
| <EQ> | |||||
| <Field name="IsLocked"/> | |||||
| <QBE paramName="IsLocked"/> | |||||
| </EQ> | |||||
| <Contains> | |||||
| <Field name="Remark"/> | |||||
| <QBE paramName="Remark"/> | |||||
| </Contains> | |||||
| <Contains> | |||||
| <Field name="CreateUser_Name"/> | |||||
| <QBE paramName="CreateUser_Name"/> | |||||
| </Contains> | |||||
| <Contains> | |||||
| <Field name="CheckUser_Name"/> | |||||
| <QBE paramName="CheckUser_Name"/> | |||||
| </Contains> | |||||
| <GreaterThanOrEqual> | |||||
| <Field name="CreateTime"/> | |||||
| <QBE paramName="MinCreateTime" /> | |||||
| </GreaterThanOrEqual> | |||||
| <LessThanOrEqual> | |||||
| <Field name="CreateTime"/> | |||||
| <QBE paramName="MaxCreateTime"/> | |||||
| </LessThanOrEqual> | |||||
| <GreaterThanOrEqual> | |||||
| <Field name="Date"/> | |||||
| <QBE paramName="MinDate" /> | |||||
| </GreaterThanOrEqual> | |||||
| <LessThanOrEqual> | |||||
| <Field name="Date"/> | |||||
| <QBE paramName="MaxDate"/> | |||||
| </LessThanOrEqual> | |||||
| <EQ> | |||||
| <Field name="BillState"/> | |||||
| <QBE paramName ="BillState"/> | |||||
| </EQ> | |||||
| </And> | |||||
| </Where> | |||||
| </Select> | |||||
| @ -0,0 +1,25 @@ | |||||
| using BWP.B3SubstituteKill.BL; | |||||
| using BWP.B3SubstituteKill.BO; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| namespace BWP.Web.Pages.B3SubstituteKill.Bills.SubKillPriceBill_ | |||||
| { | |||||
| class SubKillPriceBillPrint : DomainTemplatePrintPage<SubKillPriceBill, ISubKillPriceBillBL> | |||||
| { | |||||
| protected override void AddParameters(IDictionary<string, object> dic) | |||||
| { | |||||
| dic.Add("$ID", Dmo.ID); | |||||
| dic.Add("$SupplierDetails", Dmo.SupplierDetails); | |||||
| dic.Add("$SupplierDetailType", typeof(SubKillPriceBill_SupplierDetail)); | |||||
| dic.Add("$CostItemDetails", Dmo.CostItemDetails); | |||||
| dic.Add("$CostItemDetailType", typeof(SubKillPriceBill_CostItemDetail)); | |||||
| dic.Add("$CallBackDetails", Dmo.CallBackDetails); | |||||
| dic.Add("$CallBackDetailType", typeof(SubKillPriceBill_CallBackDetail)); | |||||
| } | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,20 @@ | |||||
| using BWP.B3Frameworks.BL; | |||||
| using BWP.B3SubstituteKill.BO; | |||||
| using Forks.EnterpriseServices; | |||||
| using Forks.EnterpriseServices.BusinessInterfaces; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| namespace BWP.B3SubstituteKill.BL | |||||
| { | |||||
| [BusinessInterface(typeof(SubKillPriceBillBL))] | |||||
| [LogicName("代宰价格单")] | |||||
| public interface ISubKillPriceBillBL : IDepartmentWorkFlowBillBL<SubKillPriceBill> | |||||
| { } | |||||
| public class SubKillPriceBillBL : DepartmentWorkFlowBillBL<SubKillPriceBill>, ISubKillPriceBillBL | |||||
| { | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,59 @@ | |||||
| using BWP.B3Frameworks; | |||||
| using BWP.B3Frameworks.Attributes; | |||||
| using BWP.B3Frameworks.BO; | |||||
| using BWP.B3SubstituteKill.Utils; | |||||
| using Forks.EnterpriseServices; | |||||
| using Forks.EnterpriseServices.DataForm; | |||||
| using Forks.EnterpriseServices.DomainObjects2; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| using TSingSoft.WebControls2; | |||||
| namespace BWP.B3SubstituteKill.BO | |||||
| { | |||||
| [DFClass, Serializable] | |||||
| [LogicName("代宰价格单")] | |||||
| [DmoTypeID(B3FrameworksConsts.DmoTypeIDBases.B3SubstituteKill, B3SubstituteKillConsts.DmoTypeIDOffsets.SubKillPriceBill)] | |||||
| [EditUrl("~/B3SubstituteKill/Bills/SubKillPriceBill_/SubKillPriceBillEdit.aspx")] | |||||
| public class SubKillPriceBill : DepartmentWorkFlowBill | |||||
| { | |||||
| private DateTime? date = DateTime.Now; | |||||
| [LogicName("执行时间")] | |||||
| [DFExtProperty("WebControlType", DFEditControl.DateTimeInput)] | |||||
| [DFNotEmpty] | |||||
| public DateTime? Date | |||||
| { | |||||
| get { return date; } | |||||
| set { date = value; } | |||||
| } | |||||
| private SubKillPriceBill_SupplierDetailCollection _supplierDetails = new SubKillPriceBill_SupplierDetailCollection(); | |||||
| [OneToMany(typeof(SubKillPriceBill_SupplierDetail), "ID")] | |||||
| [Join("ID", "SubKillPriceBill_ID")] | |||||
| public SubKillPriceBill_SupplierDetailCollection SupplierDetails | |||||
| { | |||||
| get { return _supplierDetails; } | |||||
| set { _supplierDetails = value; } | |||||
| } | |||||
| private SubKillPriceBill_CostItemDetailCollection _costItemDetails = new SubKillPriceBill_CostItemDetailCollection(); | |||||
| [OneToMany(typeof(SubKillPriceBill_CostItemDetail), "ID")] | |||||
| [Join("ID", "SubKillPriceBill_ID")] | |||||
| public SubKillPriceBill_CostItemDetailCollection CostItemDetails | |||||
| { | |||||
| get { return _costItemDetails; } | |||||
| set { _costItemDetails = value; } | |||||
| } | |||||
| private SubKillPriceBill_CallBackDetailCollection _callbackDetails = new SubKillPriceBill_CallBackDetailCollection(); | |||||
| [OneToMany(typeof(SubKillPriceBill_CallBackDetail), "ID")] | |||||
| [Join("ID", "SubKillPriceBill_ID")] | |||||
| public SubKillPriceBill_CallBackDetailCollection CallBackDetails | |||||
| { | |||||
| get { return _callbackDetails; } | |||||
| set { _callbackDetails = value; } | |||||
| } | |||||
| } | |||||
| } | |||||
| @ -0,0 +1,33 @@ | |||||
| using BWP.B3Frameworks.BO; | |||||
| using Forks.EnterpriseServices; | |||||
| using Forks.EnterpriseServices.DataForm; | |||||
| using Forks.EnterpriseServices.DomainObjects2; | |||||
| using Forks.Utils; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| namespace BWP.B3SubstituteKill.BO | |||||
| { | |||||
| [DFClass, Serializable, LogicName("代宰价格单_代宰回收")] | |||||
| public class SubKillPriceBill_CallBackDetail : Base | |||||
| { | |||||
| public long SubKillPriceBill_ID { get; set; } | |||||
| [LogicName("代宰回收项")] | |||||
| public long SubKillCallBack_ID { get; set; } | |||||
| [LogicName("代宰回收项")] | |||||
| [ReferenceTo(typeof(SubKillCallBack), "Name")] | |||||
| [Join("SubKillCallBack_ID", "ID")] | |||||
| public string SubKillCallBack_Name { get; set; } | |||||
| [LogicName("单价")] | |||||
| public Money<decimal>? Price { get; set; } | |||||
| } | |||||
| [Serializable] | |||||
| public class SubKillPriceBill_CallBackDetailCollection : DmoCollection<SubKillPriceBill_CallBackDetail> | |||||
| { } | |||||
| } | |||||
| @ -0,0 +1,41 @@ | |||||
| using BWP.B3Frameworks.BO; | |||||
| using Forks.EnterpriseServices; | |||||
| using Forks.EnterpriseServices.DataForm; | |||||
| using Forks.EnterpriseServices.DomainObjects2; | |||||
| using Forks.Utils; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| namespace BWP.B3SubstituteKill.BO | |||||
| { | |||||
| [DFClass, Serializable, LogicName("代宰价格单_代宰费用")] | |||||
| public class SubKillPriceBill_CostItemDetail : Base | |||||
| { | |||||
| public long SubKillPriceBill_ID { get; set; } | |||||
| [LogicName("代宰费用")] | |||||
| public long GenerationCostItem_ID { get; set; } | |||||
| [LogicName("代宰费用")] | |||||
| [ReferenceTo(typeof(GenerationCostItem), "Name")] | |||||
| [Join("GenerationCostItem_ID", "ID")] | |||||
| public string GenerationCostItem_Name { get; set; } | |||||
| [LogicName("代宰生产线")] | |||||
| public long SubKillProductLine_ID { get; set; } | |||||
| [LogicName("代宰生产线")] | |||||
| [ReferenceTo(typeof(SubKillProductLine), "Name")] | |||||
| [Join("SubKillProductLine_ID", "ID")] | |||||
| public string SubKillProductLine_Name { get; set; } | |||||
| [LogicName("单价")] | |||||
| public Money<decimal>? Price { get; set; } | |||||
| } | |||||
| [Serializable] | |||||
| public class SubKillPriceBill_CostItemDetailCollection : DmoCollection<SubKillPriceBill_CostItemDetail> | |||||
| { } | |||||
| } | |||||
| @ -0,0 +1,30 @@ | |||||
| using BWP.B3Frameworks.BO; | |||||
| using BWP.B3ProcurementInterface.BO; | |||||
| using Forks.EnterpriseServices; | |||||
| using Forks.EnterpriseServices.DataForm; | |||||
| using Forks.EnterpriseServices.DomainObjects2; | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Linq; | |||||
| using System.Text; | |||||
| namespace BWP.B3SubstituteKill.BO | |||||
| { | |||||
| [DFClass, Serializable, LogicName("代宰价格单_供应商明细")] | |||||
| public class SubKillPriceBill_SupplierDetail : Base | |||||
| { | |||||
| public long SubKillPriceBill_ID { get; set; } | |||||
| [LogicName("供应商")] | |||||
| public long Supplier_ID { get; set; } | |||||
| [LogicName("供应商")] | |||||
| [ReferenceTo(typeof(Supplier), "Name")] | |||||
| [Join("Supplier_ID", "ID")] | |||||
| public string Supplier_Name { get; set; } | |||||
| } | |||||
| [Serializable] | |||||
| public class SubKillPriceBill_SupplierDetailCollection : DmoCollection<SubKillPriceBill_SupplierDetail> | |||||
| { } | |||||
| } | |||||
| @ -0,0 +1,42 @@ | |||||
| <?xml version="1.0" encoding="utf-8"?> | |||||
| <BillReports xmlns="urn:BillReports" version="1.0" displayName="代宰价格单" phyName="代宰价格单"> | |||||
| <Report phyName="标准格式"> | |||||
| <BillReport xmlns="urn:BillReport" version="1" displayName="标准格式" > | |||||
| <Bands> | |||||
| <TextBand fontName="黑体" fontSize="15" align="Center">代宰价格单№$Dmo.ID</TextBand> | |||||
| <DFInfoBand object="$Dmo" cols="4"> | |||||
| <Field name="AccountingUnit_Name" lblWidth="4"/> | |||||
| <Field name="Department_Name" lblWidth="4"/> | |||||
| <Field name="Date" lblWidth="4"/> | |||||
| <Field name="Employee_Name" lblWidth="4"/> | |||||
| <Field name="Remark" lblWidth="4"/> | |||||
| </DFInfoBand> | |||||
| <HtmlBand> | |||||
| <![CDATA[<h2>供应商明细</h2>]]> | |||||
| </HtmlBand> | |||||
| <DFListBand collection="$SupplierDetails" itemType="$SupplierDetailType" enablePaging="false" > | |||||
| <LineNo header="序号"/> | |||||
| <Field name="Supplier_Name"/> | |||||
| </DFListBand> | |||||
| <HtmlBand> | |||||
| <![CDATA[<h2>代宰费用</h2>]]> | |||||
| </HtmlBand> | |||||
| <DFListBand collection="$CostItemDetails" itemType="$CostItemDetailType" enablePaging="false" > | |||||
| <LineNo header="序号"/> | |||||
| <Field name="GenerationCostItem_Name"/> | |||||
| <Field name="SubKillProductLine_Name"/> | |||||
| <Field name="Price"/> | |||||
| </DFListBand> | |||||
| <HtmlBand> | |||||
| <![CDATA[<h2>供应商明细</h2>]]> | |||||
| </HtmlBand> | |||||
| <DFListBand collection="$CallBackDetails" itemType="$CallBackDetailType" enablePaging="false" > | |||||
| <LineNo header="序号"/> | |||||
| <Field name="SubKillCallBack_Name"/> | |||||
| <Field name="Price"/> | |||||
| </DFListBand> | |||||
| </Bands> | |||||
| </BillReport> | |||||
| </Report> | |||||
| </BillReports> | |||||
| @ -0,0 +1 @@ | |||||
| DisplayName=B3代宰模块菜单 | |||||