279 lines
12 KiB
VB.net
279 lines
12 KiB
VB.net
Imports System
|
|
Imports System.ComponentModel
|
|
|
|
Imports DevExpress.Xpo
|
|
Imports DevExpress.Data.Filtering
|
|
|
|
Imports DevExpress.ExpressApp
|
|
Imports DevExpress.Persistent.Base
|
|
Imports DevExpress.Persistent.BaseImpl
|
|
Imports DevExpress.Persistent.Validation
|
|
Public Enum eInsuranceState
|
|
eNothing = 0
|
|
eByCustomers = 1
|
|
eByCustomersFrom = 2
|
|
End Enum
|
|
<DefaultClassOptions(), NavigationItem(False), CreatableItem(False)> _
|
|
<DefaultProperty("DisplayName")> _
|
|
Public Class APCSheetByProducts 'Agricultural Production Contracts termék sorok
|
|
Inherits BaseObject
|
|
|
|
Private _RowIndex As Long
|
|
Private _APCSheetHeader As APCSheetHeader
|
|
Private _Products As Products 'Termék
|
|
Private _InsuranceState As eInsuranceState 'Ki fizeti a biztosítást
|
|
Private _ContractQuantity As Double 'Adott termékre szerzõdött terület ha
|
|
Private _MaxContractQuantity As Double 'Max szerzõdhetõ mennyiség hektáronként
|
|
Private _FundingHatoHUF As Double 'Egységre jutó finanszírozás /ha /tonna
|
|
Private _FundingHaHUF As Double 'Egységre jutó finanszírozás /ha
|
|
Private _FundingAmountHUF As Double 'Finanszírozás összesen
|
|
Private _FundingAmountUsedHUF As Double 'Ebbõl felhasználva összesen
|
|
Private _FundingAmountAvailableHUF As Double 'Még felhasználható összesen
|
|
Private _ColleteralHatoHUF As Double 'Egységre jutó fedezeti érték /ha /tonna
|
|
Private _CollateralhaHUF As Double 'Egységre jutó fedezeti érték /ha
|
|
Private _CollateralAmountHUF As Double 'Fedezeti érték összesen
|
|
Private _FundingDate As Date 'Fizetési határidõ az elvitt termékre vonatkozólag
|
|
Private _ProductExpirationDate As Date 'Lejárati dátum
|
|
Private _Contracts As Contracts 'Szerzõdés
|
|
Private _ContractsSignatureDate As Date 'Szerzõdés aláírásásnak dátuma
|
|
|
|
Public Sub New(ByVal session As Session)
|
|
MyBase.New(session)
|
|
End Sub
|
|
Public Overrides Sub AfterConstruction()
|
|
MyBase.AfterConstruction()
|
|
End Sub
|
|
|
|
Property RowIndex As Long
|
|
Get
|
|
Return _RowIndex
|
|
End Get
|
|
Set(value As Long)
|
|
SetPropertyValue("RowIndex", _RowIndex, value)
|
|
End Set
|
|
End Property
|
|
<Association("APCSheetHeader-APCSheetByProducts", GetType(APCSheetHeader)), VisibleInListView(False)> _
|
|
Property APCSheetHeader As APCSheetHeader
|
|
Get
|
|
Return _APCSheetHeader
|
|
End Get
|
|
Set(value As APCSheetHeader)
|
|
SetPropertyValue("APCSheetHeader", _APCSheetHeader, value)
|
|
End Set
|
|
End Property
|
|
Property Products As Products
|
|
Get
|
|
Return _Products
|
|
End Get
|
|
Set(value As Products)
|
|
SetPropertyValue("Products", _Products, value)
|
|
End Set
|
|
End Property
|
|
Property InsuranceState As eInsuranceState
|
|
Get
|
|
Return _InsuranceState
|
|
End Get
|
|
Set(value As eInsuranceState)
|
|
SetPropertyValue("InsuranceState", _InsuranceState, value)
|
|
End Set
|
|
End Property
|
|
Property ContractQuantity As Double
|
|
Get
|
|
Return _ContractQuantity
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("ContractQuantity", _ContractQuantity, value)
|
|
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving Then
|
|
FundingAmountHUF = value * FundingHaHUF
|
|
CollateralAmountHUF = value * MaxContractQuantity * ColleteralHatoHUF
|
|
FundingAmountAvailableHUF = FundingAmountHUF - FundingAmountUsedHUF
|
|
End If
|
|
End Set
|
|
End Property
|
|
Property MaxContractQuantity As Double
|
|
Get
|
|
Return _MaxContractQuantity
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("MaxContractQuantity", _MaxContractQuantity, value)
|
|
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving Then
|
|
FundingHaHUF = value * FundingHatoHUF
|
|
CollateralAmountHUF = value * ContractQuantity * ColleteralHatoHUF
|
|
End If
|
|
End Set
|
|
End Property
|
|
Property FundingHatoHUF As Double
|
|
Get
|
|
Return _FundingHatoHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("FundingHatoHUF", _FundingHatoHUF, value)
|
|
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving Then
|
|
FundingHaHUF = value * MaxContractQuantity
|
|
End If
|
|
End Set
|
|
End Property
|
|
Property FundingHaHUF As Double
|
|
Get
|
|
Return _FundingHaHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("FundingHaHUF", _FundingHaHUF, value)
|
|
End Set
|
|
End Property
|
|
Property FundingAmountHUF As Double
|
|
Get
|
|
Return _FundingAmountHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("FundingAmountHUF", _FundingAmountHUF, value)
|
|
End Set
|
|
End Property
|
|
Property FundingAmountUsedHUF As Double
|
|
Get
|
|
Return _FundingAmountUsedHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("FundingAmountUsedHUF", _FundingAmountUsedHUF, value)
|
|
End Set
|
|
End Property
|
|
Property FundingAmountAvailableHUF As Double
|
|
Get
|
|
Return _FundingAmountAvailableHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("FundingAmountAvailableHUF", _FundingAmountAvailableHUF, value)
|
|
End Set
|
|
End Property
|
|
Property ColleteralHatoHUF As Double
|
|
Get
|
|
Return _ColleteralHatoHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("ColleteralHatoHUF", _ColleteralHatoHUF, value)
|
|
If Not Session.IsObjectsLoading And Not Session.IsObjectsSaving Then
|
|
CollateralAmountHUF = value * MaxContractQuantity * ContractQuantity
|
|
CollateralhaHUF = value * MaxContractQuantity
|
|
End If
|
|
End Set
|
|
End Property
|
|
Property CollateralhaHUF As Double
|
|
Get
|
|
Return _CollateralhaHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("CollateralhaHUF", _CollateralhaHUF, value)
|
|
End Set
|
|
End Property
|
|
Property CollateralAmountHUF As Double
|
|
Get
|
|
Return _CollateralAmountHUF
|
|
End Get
|
|
Set(value As Double)
|
|
SetPropertyValue("CollateralAmountHUF", _CollateralAmountHUF, value)
|
|
End Set
|
|
End Property
|
|
Property FundingDate As Date
|
|
Get
|
|
Return _FundingDate
|
|
End Get
|
|
Set(value As Date)
|
|
SetPropertyValue("FundingDate", _FundingDate, value)
|
|
End Set
|
|
End Property
|
|
Property ProductExpirationDate As Date
|
|
Get
|
|
Return _ProductExpirationDate
|
|
End Get
|
|
Set(value As Date)
|
|
SetPropertyValue("ProductExpirationDate", _ProductExpirationDate, value)
|
|
End Set
|
|
End Property
|
|
<VisibleInListView(False)> _
|
|
Property Contracts As Contracts
|
|
Get
|
|
Return _Contracts
|
|
End Get
|
|
Set(value As Contracts)
|
|
SetPropertyValue("Contracts", _Contracts, value)
|
|
End Set
|
|
End Property
|
|
Property ContractsSignatureDate As Date
|
|
Get
|
|
Return _ContractsSignatureDate
|
|
End Get
|
|
Set(value As Date)
|
|
SetPropertyValue("ContractsSignatureDate", _ContractsSignatureDate, value)
|
|
End Set
|
|
End Property
|
|
|
|
ReadOnly Property DisplayName As String
|
|
Get
|
|
If APCSheetHeader IsNot Nothing Then
|
|
If _Products IsNot Nothing Then
|
|
Return Me.APCSheetHeader.DocumentNumber & ", " & Me.Products.ShortName & ", " & Format(Me.FundingAmountHUF, "#,##0")
|
|
Else
|
|
Return Me.APCSheetHeader.DocumentNumber & ", " & Format(Me.FundingAmountHUF, "#,##0")
|
|
End If
|
|
Else
|
|
Return Nothing
|
|
End If
|
|
End Get
|
|
End Property
|
|
|
|
<VisibleInListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property SumContractQuantity As Double 'Összes szerzõdött mennyiség
|
|
Get
|
|
Return Math.Round(ContractQuantity * MaxContractQuantity, 2, MidpointRounding.AwayFromZero)
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property FundingHaHUF_Text_HUF As String 'Egységre jutó finanszírozás /ha szövegesen magyarul
|
|
Get
|
|
Return GeneralFunction.GetHUNumberToText(Math.Round(FundingHaHUF, 0, MidpointRounding.AwayFromZero))
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property FundingAmountHUF_Text_HUF As String 'Finanszírozás összesen szövegesen magyarul
|
|
Get
|
|
Return GeneralFunction.GetHUNumberToText(Math.Round(FundingAmountHUF, 0, MidpointRounding.AwayFromZero))
|
|
End Get
|
|
End Property
|
|
'//XPCollection a felhasznált tételekrõl
|
|
<VisibleInListView(False), VisibleInLookupListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property OrderInRows As XPCollection(Of OrderInRows)
|
|
Get
|
|
Return New XPCollection(Of OrderInRows)(PersistentCriteriaEvaluationBehavior.InTransaction, Session,
|
|
CriteriaOperator.Parse("APCSheetByProducts=? and IsNull(GCRecord)=True and IsNull(OrderInHeader)=False", Me))
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInLookupListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property OrderInRowsOther As XPCollection(Of OrderInRowsOther)
|
|
Get
|
|
Return New XPCollection(Of OrderInRowsOther)(PersistentCriteriaEvaluationBehavior.InTransaction, Session,
|
|
CriteriaOperator.Parse("APCSheetByProducts=? and IsNull(GCRecord)=True and IsNull(OrderInHeader)=False", Me))
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInLookupListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property InvoiceRows As XPCollection(Of InvoiceRows)
|
|
Get
|
|
Return New XPCollection(Of InvoiceRows)(PersistentCriteriaEvaluationBehavior.InTransaction, Session,
|
|
CriteriaOperator.Parse("(OrderInRows.APCSheetByProducts=? or OrderInRowsOther.APCSheetByProducts=?) and IsNull(GCRecord)=True and IsNull(InvoiceHeader)=False and InvoiceHeader.IsEditable=False and InvoiceHeader.DocumentNumber !=''", Me, Me))
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInLookupListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property DeliveryNoteOutRows As XPCollection(Of DeliveryNoteOutRows)
|
|
Get
|
|
Return New XPCollection(Of DeliveryNoteOutRows)(PersistentCriteriaEvaluationBehavior.InTransaction, Session,
|
|
CriteriaOperator.Parse("StorageOutRowsInRows.StorageOutRows.OrderInRows.APCSheetByProducts=? and IsNull(GCRecord)=True and IsNull(DeliveryNoteOutHeader)=False and DeliveryNoteOutHeader.IsEditable=False", Me))
|
|
End Get
|
|
End Property
|
|
<VisibleInListView(False), VisibleInLookupListView(False), VisibleInDetailView(False)> _
|
|
ReadOnly Property StorageOutRowsInRows As XPCollection(Of StorageOutRowsInRows)
|
|
Get
|
|
Return New XPCollection(Of StorageOutRowsInRows)(PersistentCriteriaEvaluationBehavior.InTransaction, Session,
|
|
CriteriaOperator.Parse("StorageOutRows.OrderInRows.APCSheetByProducts=? and IsNull(GCRecord)=True and IsNull(StorageOutRows.OrderInRows.OrderInHeader)=False and IsNull(StorageOutRows.StorageOutHeader)=False", Me))
|
|
End Get
|
|
End Property
|
|
End Class
|