| @ -0,0 +1,158 @@ | |||
| using BWP.B3SheepButcherManage; | |||
| using BWP.B3SheepButcherManage.BL; | |||
| using BWP.B3SheepButcherManage.BO; | |||
| using BWP.B3SheepButcherManage.NamedValueTemplate; | |||
| using BWP.Web.CustomPageLayout; | |||
| using BWP.Web.Layout; | |||
| using BWP.Web.Utils; | |||
| using BWP.Web.WebControls; | |||
| using Forks.EnterpriseServices.DataForm; | |||
| using Forks.Utils.Collections; | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| using System.Web.UI; | |||
| using System.Web.UI.WebControls; | |||
| using TSingSoft.WebControls2; | |||
| namespace BWP.Web.Pages.B3SheepButcherManage.Bills.HurryButcher_ | |||
| { | |||
| public class HurryButcherEdit : DepartmentWorkFlowBillEditPage<HurryButcher, IHurryButcherBL> | |||
| { | |||
| private DFEditGrid _detailGrid; | |||
| protected override void BuildBody(Control control) | |||
| { | |||
| base.BuildBody(control); | |||
| AddDetails(control.EAdd(new TitlePanel("单据明细", "单据明细"))); | |||
| } | |||
| protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection pageLayoutSection) | |||
| { | |||
| var layoutManager = new LayoutManager("", mDFInfo, mDFContainer); | |||
| var config = new AutoLayoutConfig(); | |||
| layoutManager.Config = config; | |||
| config.Add("AccountingUnit_ID"); | |||
| config.Add("Department_ID"); | |||
| config.Add("Employee_ID"); | |||
| config.Add("Supplier_ID"); | |||
| config.Add("Date"); | |||
| config.Add("Store_ID"); | |||
| config.Add("Remark"); | |||
| pageLayoutSection.SetRequired("AccountingUnit_ID"); | |||
| pageLayoutSection.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo); | |||
| titlePanel.Controls.Add(layoutManager.CreateLayout()); | |||
| } | |||
| private void AddDetails(TitlePanel titlePanel) | |||
| { | |||
| var vPanel = titlePanel.EAdd(new VLayoutPanel()); | |||
| if (CanSave) | |||
| { | |||
| var hPanel = vPanel.Add(new HLayoutPanel(), new VLayoutOption(HorizontalAlign.Left)); | |||
| var beforeTsbt = hPanel.Add(new TSButton("新增磅前")); | |||
| beforeTsbt.Click += delegate { | |||
| _detailGrid.GetFromUI(); | |||
| var detail = new HurryButcher_Detail(); | |||
| Dmo.Details.Add(detail); | |||
| _detailGrid.DataBind(); | |||
| }; | |||
| var dialogButton = hPanel.Add(new DialogButton | |||
| { | |||
| Text = "选择磅后", | |||
| //Url = "SelectHurryButcherDetailDialog.aspx?Supplier_ID='+ __DFContainer.getValue('Supplier_ID')+'" | |||
| }); | |||
| dialogButton.Url = AspUtil.AddParamToUrl("SelectHurryButcherDetailDialog.aspx", "Supplier_ID", "'+__DFContainer.getValue('Supplier_ID')+'"); | |||
| dialogButton.Click += delegate { | |||
| _detailGrid.GetFromUI(); | |||
| var details = DialogUtil.GetCachedObj<HurryButcher_Detail>(this); | |||
| foreach (HurryButcher_Detail detail in details) | |||
| { | |||
| Dmo.Details.Add(detail); | |||
| } | |||
| _detailGrid.DataBind(); | |||
| }; | |||
| } | |||
| var editor = new DFCollectionEditor<HurryButcher_Detail>(() => Dmo.Details); | |||
| editor.AllowDeletionFunc = () => CanSave; | |||
| editor.CanDeleteFunc = detail => true; | |||
| editor.IsEditableFunc = (field, detail) => CanSave; | |||
| _detailGrid = new DFEditGrid(editor); | |||
| _detailGrid.DFGridSetEnabled = false; | |||
| _detailGrid.Width = Unit.Percentage(100); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("AfterWeigh")); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Weigh_ID")); | |||
| var tecColumn = _detailGrid.Columns.EAdd(new DFEditGridColumn<DFNamedValueInput<工艺>>("Technics")); | |||
| tecColumn.InitEditControl += (sender, e) => { | |||
| e.Control.Width = 160; | |||
| }; | |||
| _detailGrid.Columns.EAdd(new DFEditGridColumn<DFChoiceBox>("LiveVarieties_ID")).InitEditControl += (sender, e) => | |||
| { | |||
| e.Control.EnableTopItem = true; | |||
| e.Control.EnableInputArgument = true; | |||
| e.Control.DataKind = B3ProduceUnitedInfos.B3ProduceUnitedInfosDataSources.活体品种; | |||
| e.Control.DFDisplayField = "LiveVarieties_Name"; | |||
| e.Control.Width = 160; | |||
| }; | |||
| _detailGrid.Columns.EAdd(new DFEditGridColumn<DFChoiceBox>("Livestock_ID")).InitEditControl += (sender, e) => | |||
| { | |||
| e.Control.EnableTopItem = true; | |||
| e.Control.EnableInputArgument = true; | |||
| e.Control.DataKind = B3SheepButcherManageConsts.DataSources.活体级别; | |||
| e.Control.DFDisplayField = "Livestock_Name"; | |||
| e.Control.Width = 160; | |||
| }; | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFTextBox>("Number")); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFTextBox>("GrossWeight")); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFTextBox>("Weight")); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn("Destroy")); | |||
| _detailGrid.Columns.Add(new DFEditGridColumn<DFTextBox>("Remark")); | |||
| mDFContainer.AddNonDFControl(_detailGrid, "$detailGrid"); | |||
| var dic = new Dictionary<string, Unit>(); | |||
| dic.Add("是否过磅", Unit.Percentage(5)); | |||
| dic.Add("过磅单号", Unit.Percentage(8)); | |||
| dic.Add("工艺", Unit.Percentage(12)); | |||
| dic.Add("级别", Unit.Percentage(12)); | |||
| dic.Add("毛重", Unit.Percentage(12)); | |||
| dic.Add("头数", Unit.Percentage(12)); | |||
| dic.Add("重量", Unit.Percentage(12)); | |||
| dic.Add("备注", Unit.Percentage(12)); | |||
| dic.Add("是否销毁", Unit.Percentage(12)); | |||
| _detailGrid.PreferWidthGridSet = dic; | |||
| var section = mPageLayoutManager.AddSection("DetaiColumns", "明细列"); | |||
| titlePanel.SetPageLayoutSetting(mPageLayoutManager, section.Name); | |||
| section.ApplyLayout(_detailGrid, mPageLayoutManager, DFInfo.Get(typeof(HurryButcher_Detail))); | |||
| vPanel.Add(_detailGrid); | |||
| } | |||
| public override void AppToUI() | |||
| { | |||
| base.AppToUI(); | |||
| _detailGrid.DataBind(); | |||
| } | |||
| public override void GetFromUI() | |||
| { | |||
| base.GetFromUI(); | |||
| _detailGrid.GetFromUI(); | |||
| } | |||
| } | |||
| } | |||
| @ -0,0 +1,39 @@ | |||
| using BWP.B3SheepButcherManage.BL; | |||
| using BWP.B3SheepButcherManage.BO; | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| using TSingSoft.WebControls2; | |||
| namespace BWP.Web.Pages.B3SheepButcherManage.Bills.HurryButcher_ | |||
| { | |||
| public class HurryButcherList: DomainBillListPage<HurryButcher, IHurryButcherBL> | |||
| { | |||
| 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"); | |||
| config.Add("Supplier_ID"); | |||
| })); | |||
| } | |||
| protected override void AddDFBrowseGridColumn(DFBrowseGrid grid, string field) | |||
| { | |||
| base.AddDFBrowseGridColumn(grid, field); | |||
| if (field == "BillState") | |||
| { | |||
| AddDFBrowseGridColumn(grid, "AccountingUnit_Name"); | |||
| AddDFBrowseGridColumn(grid, "Department_Name"); | |||
| AddDFBrowseGridColumn(grid, "Employee_Name"); | |||
| AddDFBrowseGridColumn(grid, "Supplier_Name"); | |||
| AddDFBrowseGridColumn(grid, "CheckUser_Name"); | |||
| AddDFBrowseGridColumn(grid, "Remark"); | |||
| } | |||
| } | |||
| } | |||
| } | |||
| @ -0,0 +1,72 @@ | |||
| <?xml version="1.0" encoding="utf-8" ?> | |||
| <Select xmlns="urn:XDQuery"> | |||
| <Columns> | |||
| <Field name="ID"/> | |||
| </Columns> | |||
| <From> | |||
| <DmoClass class="BWP.B3SheepButcherManage.BO.HurryButcher, B3SheepButcherManage"/> | |||
| </From> | |||
| <Where> | |||
| <And> | |||
| <EQ> | |||
| <Field name="ID"/> | |||
| <QBE paramName="ID"/> | |||
| </EQ> | |||
| <EQ> | |||
| <Field name="Supplier_ID"/> | |||
| <QBE paramName="Supplier_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,85 @@ | |||
| using BWP.B3SheepButcherManage.BO; | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| using Forks.EnterpriseServices.DataForm; | |||
| using TSingSoft.WebControls2; | |||
| using BWP.Web.Layout; | |||
| using BWP.Web.Utils; | |||
| using TSingSoft.WebPluginFramework; | |||
| using BWP.B3SheepButcherManage.NamedValueTemplate; | |||
| using Forks.Utils; | |||
| using Forks.Utils.Collections; | |||
| using Forks.EnterpriseServices.DomainObjects2.DQuery; | |||
| using Forks.EnterpriseServices.DomainObjects2; | |||
| using Forks.EnterpriseServices.SqlDoms; | |||
| using BWP.B3Frameworks.BO.NamedValueTemplate; | |||
| namespace BWP.Web.Pages.B3SheepButcherManage.Bills.HurryButcher_ | |||
| { | |||
| class SelectHurryButcherDetailDialog : DmoMultiSelectDialog<WeightBill, HurryButcher_Detail> | |||
| { | |||
| protected override void CreateQuery(VLayoutPanel vPanel) | |||
| { | |||
| var panel = new LayoutManager("", mDFInfo, mQueryContainer); | |||
| panel.Add("WeighTime", QueryCreator.DateRange(mDFInfo.Fields["WeighTime"], mQueryContainer, "MinWeighTime", "MaxWeighTime", null, BLContext.Today.AddDays(1).AddMinutes(-1))); | |||
| var config = new AutoLayoutConfig(); | |||
| panel.Config = config; | |||
| config.Add("ID"); | |||
| config.Add("Supplier_ID"); | |||
| config.Add("WeighTime"); | |||
| vPanel.Add(panel.CreateLayout()); | |||
| base.CreateQuery(vPanel); | |||
| } | |||
| protected override void CreateQueryGridColumns(DFBrowseGrid grid) | |||
| { | |||
| grid.Columns.Add(new DFBrowseGridColumn("WeighTime")); | |||
| grid.Columns.Add(new DFBrowseGridColumn("ID")); | |||
| grid.Columns.Add(new DFBrowseGridColumn("Supplier_Name")); | |||
| //grid.Columns.Add(new DFBrowseGridColumn("LiveMark")); | |||
| grid.Columns.Add(new DFBrowseGridColumn("LiveVarieties_Name")); | |||
| //grid.Columns.Add(new DFEditGridColumn<DFNamedValueInput<工艺>>("SuggestedProcess1")); | |||
| grid.Columns.Add(new DFBrowseGridColumn("Number")); | |||
| grid.Columns.Add(new DFBrowseGridColumn("Weight")); | |||
| grid.Columns.EAdd(new DFEditGridColumn<DFTextBox>("RemainNumber")).HeaderText = "本次计划数"; | |||
| } | |||
| protected override void SetResultFromDFDataRow(HurryButcher_Detail dmo, DFDataRow row) | |||
| { | |||
| dmo.Weigh_Detail_ID = (long)row["DetailID"]; | |||
| dmo.Weigh_ID = (long)row["ID"]; | |||
| //dmo.LiveMark = (string)row["LiveMark"]; | |||
| dmo.Number = (int?)row["RemainNumber"] ?? 0; | |||
| //dmo.Technics = (NamedValue<工艺>?)row["SuggestedProcess1"]; | |||
| dmo.LiveVarieties_ID = (long?)row["LiveVarieties_ID"]; | |||
| dmo.LiveColonyHouse_Name = (string)row["LiveVarieties_Name"]; | |||
| dmo.AfterWeigh = true; | |||
| } | |||
| protected override DQueryDom GetQueryDom() | |||
| { | |||
| var dom = base.GetQueryDom(); | |||
| var detail = new JoinAlias(typeof(WeightBill_Record)); | |||
| var bill = dom.From.RootSource.Alias; | |||
| dom.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(bill, "ID", detail, "WeightBill_ID")); | |||
| //dom.Columns.Add(DQSelectColumn.Field("LiveMark", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Field("LiveVarieties_ID", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Field("LiveVarieties_Name", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Field("Number", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Field("Weight", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Field("RemainNumber", detail)); | |||
| //dom.Columns.Add(DQSelectColumn.Field("SuggestedProcess1", detail)); | |||
| dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(detail, "ID"), "DetailID")); | |||
| dom.Where.Conditions.Add(DQCondition.EQ("BillState", 单据状态.已审核)); | |||
| dom.Where.Conditions.Add(DQCondition.GreaterThan(detail, "RemainNumber", 0)); | |||
| if (!string.IsNullOrWhiteSpace(Request.QueryString["Supplier_ID"])) | |||
| { | |||
| dom.Where.Conditions.Add(DQCondition.EQ("Supplier_ID", long.Parse(Request.QueryString["Supplier_ID"]))); | |||
| } | |||
| return dom; | |||
| } | |||
| } | |||
| } | |||
| @ -0,0 +1,63 @@ | |||
| <?xml version="1.0" encoding="utf-8" ?> | |||
| <Select xmlns="urn:XDQuery"> | |||
| <Columns> | |||
| </Columns> | |||
| <From> | |||
| <DmoClass class="BWP.B3SheepButcherManage.BO.WeightBill, B3SheepButcherManage"/> | |||
| </From> | |||
| <Where> | |||
| <And> | |||
| <EQ> | |||
| <Field name="ID"/> | |||
| <QBE paramName="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> | |||
| <EQ> | |||
| <Field name="AccountingUnit_ID"/> | |||
| <QBE paramName="AccountingUnit_ID"/> | |||
| </EQ> | |||
| <EQ> | |||
| <Field name="Employee_ID"/> | |||
| <QBE paramName="Employee_ID"/> | |||
| </EQ> | |||
| <EQ> | |||
| <Field name="Department_ID"/> | |||
| <QBE paramName="Department_ID"/> | |||
| </EQ> | |||
| <GreaterThanOrEqual> | |||
| <Field name="CreateTime"/> | |||
| <QBE paramName="MinCreateTime" /> | |||
| </GreaterThanOrEqual> | |||
| <LessThanOrEqual> | |||
| <Field name="CreateTime"/> | |||
| <QBE paramName="MaxCreateTime"/> | |||
| </LessThanOrEqual> | |||
| <GreaterThanOrEqual> | |||
| <Field name="WeighTime"/> | |||
| <QBE paramName="MinWeighTime" /> | |||
| </GreaterThanOrEqual> | |||
| <LessThanOrEqual> | |||
| <Field name="WeighTime"/> | |||
| <QBE paramName="MaxWeighTime"/> | |||
| </LessThanOrEqual> | |||
| <EQ> | |||
| <Field name="BillState"/> | |||
| <QBE paramName ="BillState"/> | |||
| </EQ> | |||
| </And> | |||
| </Where> | |||
| </Select> | |||
| @ -0,0 +1,40 @@ | |||
| using BWP.B3Frameworks.BL; | |||
| using BWP.B3SheepButcherManage.BL; | |||
| using BWP.B3SheepButcherManage.BO; | |||
| using Forks.EnterpriseServices; | |||
| using Forks.EnterpriseServices.BusinessInterfaces; | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| namespace BWP.B3SheepButcherManage.BL | |||
| { | |||
| [BusinessInterface(typeof(HurryButcherBL))] | |||
| [LogicName("羊急宰单")] | |||
| public interface IHurryButcherBL : IDepartmentWorkFlowBillBL<HurryButcher> | |||
| { | |||
| } | |||
| public class HurryButcherBL : DepartmentWorkFlowBillBL<HurryButcher>, IHurryButcherBL | |||
| { | |||
| protected override void doCheck(HurryButcher dmo) | |||
| { | |||
| base.doCheck(dmo); | |||
| var weighDetailIDs = new List<long>(); | |||
| foreach (HurryButcher_Detail detail in dmo.Details) | |||
| { | |||
| if (detail.Weigh_Detail_ID != null) | |||
| { | |||
| if (!weighDetailIDs.Contains(detail.Weigh_Detail_ID.Value)) | |||
| weighDetailIDs.Add(detail.Weigh_Detail_ID.Value); | |||
| } | |||
| } | |||
| var weightBL = BIFactory.Create<IWeightBillBL>(this); | |||
| foreach (var weighDetailID in weighDetailIDs) | |||
| { | |||
| weightBL.UpdateDetailOtherNumber(weighDetailID); | |||
| } | |||
| } | |||
| } | |||
| } | |||
| @ -0,0 +1,71 @@ | |||
| using BWP.B3Frameworks; | |||
| using BWP.B3Frameworks.BO; | |||
| using BWP.B3ProcurementInterface.BO; | |||
| using BWP.B3ProcurementInterface.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; | |||
| using TSingSoft.WebPluginFramework; | |||
| namespace BWP.B3SheepButcherManage.BO | |||
| { | |||
| [Serializable, DFClass, LogicName("羊急宰单")] | |||
| [DmoTypeID(B3FrameworksConsts.DmoTypeIDBases.B3SheepButcherManage, B3SheepButcherManageConsts.DmoTypeIDOffsets.HurryButcher)] | |||
| public class HurryButcher: DepartmentWorkFlowBill | |||
| { | |||
| private DateTime _date = BLContext.Today; | |||
| [LogicName("屠宰日期")] | |||
| public DateTime Date | |||
| { | |||
| get { return _date; } | |||
| set { _date = value; } | |||
| } | |||
| [LogicName("结算单号")] | |||
| [DFExtProperty(B3FrameworksConsts.DFExtProperties.WebControlType, DFEditControl.StaticText)] | |||
| public long? StatPay_ID { get; set; } | |||
| [LogicName("供应商")] | |||
| [DFDataKind(B3ProcurementInterfaceDataSources.供应商用于屠宰场)] | |||
| [DFExtProperty(B3FrameworksConsts.DFExtProperties.DisplayField, "Supplier_Name")] | |||
| [DFExtProperty(B3FrameworksConsts.DFExtProperties.QueryDataKind, B3ProcurementInterfaceDataSources.供应商用于屠宰场)] | |||
| public long? Supplier_ID { get; set; } | |||
| [DFDataKind(B3FrameworksConsts.DataSources.授权仓库)] | |||
| [DFExtProperty(B3FrameworksConsts.DFExtProperties.DisplayField, "Store_Name")] | |||
| [DFExtProperty(B3FrameworksConsts.DFExtProperties.QueryDataKind, B3FrameworksConsts.DataSources.授权仓库全部)] | |||
| [DFPrompt("仓库")] | |||
| [DFNotEmpty] | |||
| public long? Store_ID { get; set; } | |||
| [LogicName("仓库")] | |||
| [ReferenceTo(typeof(Store), "Name")] | |||
| [Join("Store_ID", "ID")] | |||
| public string Store_Name { get; set; } | |||
| private readonly HurryButcher_DetailCollection _details = new HurryButcher_DetailCollection(); | |||
| [OneToMany(typeof(HurryButcher_Detail), "ID")] | |||
| [Join("ID", "HurryButcher_ID")] | |||
| public HurryButcher_DetailCollection Details | |||
| { | |||
| get { return _details; } | |||
| } | |||
| #region ReferenceTo | |||
| [LogicName("供应商")] | |||
| [ReferenceTo(typeof(Supplier), "Name")] | |||
| [Join("Supplier_ID", "ID")] | |||
| public string Supplier_Name { get; set; } | |||
| #endregion | |||
| } | |||
| } | |||
| @ -0,0 +1,88 @@ | |||
| using BWP.B3Frameworks.BO; | |||
| using BWP.B3ProduceUnitedInfos.BO; | |||
| using BWP.B3SheepButcherManage.NamedValueTemplate; | |||
| 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.B3SheepButcherManage.BO | |||
| { | |||
| [Serializable, DFClass, LogicName("急宰单明细")] | |||
| public class HurryButcher_Detail:Base | |||
| { | |||
| public long HurryButcher_ID { get; set; } | |||
| [LogicName("活体品种")] | |||
| public long? LiveVarieties_ID { get; set; } | |||
| [LogicName("活体标识")] | |||
| public string LiveMark { get; set; } | |||
| [LogicName("结算单号")] | |||
| public long? StatPay_ID { get; set; } | |||
| [LogicName("过磅单号")] | |||
| public long? Weigh_ID { get; set; } | |||
| [LogicName("圈舍ID")] | |||
| public long? LiveColonyHouse_ID { get; set; } | |||
| [LogicName("工艺")] | |||
| public NamedValue<工艺>? Technics { get; set; } | |||
| [LogicName("级别")] | |||
| public long? Livestock_ID { get; set; } | |||
| [LogicName("重量")] | |||
| public Money<decimal>? Weight { get; set; } | |||
| [LogicName("毛重")] | |||
| public Money<decimal>? GrossWeight { get; set; } | |||
| [LogicName("头数"), DFNotEmpty] | |||
| public int Number { get; set; } | |||
| [LogicName("是否过磅")] | |||
| [DFBoolDisplayFormatter("磅后", "磅前")] | |||
| [DbColumn(DefaultValue = false)] | |||
| public bool AfterWeigh { get; set; } | |||
| [LogicName("是否销毁")] | |||
| public bool Destroy { get; set; } | |||
| [LogicName("备注")] | |||
| public string Remark { get; set; } | |||
| [LogicName("过磅单明细ID")] | |||
| public long? Weigh_Detail_ID { get; set; } | |||
| #region ReferenceTo | |||
| [LogicName("活体品种")] | |||
| [ReferenceTo(typeof(LiveVarieties), "Name")] | |||
| [Join("LiveVarieties_ID", "ID")] | |||
| public string LiveVarieties_Name { get; set; } | |||
| [ReferenceTo(typeof(LiveColonyHouse), "Name")] | |||
| [Join("LiveColonyHouse_ID", "ID")] | |||
| [LogicName("圈舍")] | |||
| public string LiveColonyHouse_Name { get; set; } | |||
| [LogicName("级别")] | |||
| [ReferenceTo(typeof(Livestock), "Name")] | |||
| [Join("Livestock_ID", "ID")] | |||
| public string Livestock_Name { get; set; } | |||
| #endregion | |||
| } | |||
| [Serializable] | |||
| public class HurryButcher_DetailCollection : DmoCollection<HurryButcher_Detail> | |||
| { | |||
| } | |||
| } | |||
| @ -0,0 +1,14 @@ | |||
| using Forks.Utils; | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| namespace BWP.B3SheepButcherManage.NamedValueTemplate | |||
| { | |||
| public sealed class 工艺 | |||
| { | |||
| public static readonly NamedValue<工艺> 烫褪 = new NamedValue<工艺>(0); | |||
| public static readonly NamedValue<工艺> 毛剥 = new NamedValue<工艺>(1); | |||
| } | |||
| } | |||
| @ -0,0 +1,7 @@ | |||
| <?xml version="1.0" encoding="utf-8" ?> | |||
| <NamedValueSettings> | |||
| <NamedValue type="BWP.B3SheepButcherManage.NamedValueTemplate.工艺, B3SheepButcherManage"> | |||
| <Word name="烫褪" value="0"/> | |||
| <Word name="毛剥" value="1"/> | |||
| </NamedValue> | |||
| </NamedValueSettings> | |||