using BeWo.Validation; using BS.Shared.Core; using BS.Shared.DataContracts; using BS.Shared.DataContracts.Compact; using BS.Shared.Extensions; namespace BeWo.ViewModel { public class EmployeeTokenRelationVM : AbstractDCMapperVM { //public static string PropertyName_Notice = "Notice"; public static string PropertyName_Token = "Token"; public static string PropertyName_Employee = "Employee"; public static string PropertyName_TokenString = "TokenString"; //private string _Notice; private CompactTokenDC _Token; private EmployeeDC _Employee; public EmployeeTokenRelationVM(EmployeeTokenRelationDC pDC) : base(pDC, pDC.Employee2TokenOid == null) { } //public string Notice //{ // get { return _Notice; } // set // { // if (AreDifferent(_Notice, value)) // { // _Notice = value; // StoreDirtyInformation(AreDifferent(DataContract.Customer2TokenNotice, value), PropertyName_Notice); // FirePropertyChanged(PropertyName_Notice); // } // } //} public CompactTokenDC Token { get { return _Token; } set { if (AreDifferent(_Token, value)) { _Token = value; StoreDirtyInformation(AreDifferent(DataContract.Token, value), PropertyName_Token); FirePropertyChanged(PropertyName_Token); FirePropertyChanged(PropertyName_TokenString); } } } public EmployeeDC Employee { get { return _Employee; } set { if (AreDifferent(_Employee, value)) { _Employee = value; StoreDirtyInformation(AreDifferent(DataContract.Employee, value), PropertyName_Employee); FirePropertyChanged(PropertyName_Employee); } } } [Validation(ValidationRule = ValidationRules.NotNullOrStringEmpty)] public string TokenString { get { return _Token.ToStringNullCheck(); } // Validation Workaround set { } } protected override void InitByDataContract(EmployeeTokenRelationDC pDataContract) { if (!IsNew) { //_Notice = pDataContract.Customer2TokenNotice; _Token = pDataContract.Token; _Employee = pDataContract.Employee; } } protected override EmployeeTokenRelationDC MapToDataContract(EmployeeTokenRelationDC pDataContract, bool doCommit) { //pDataContract.Customer2TokenNotice = _Notice; pDataContract.Token = _Token; pDataContract.Employee = _Employee; return pDataContract; } } }