using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Criteria; namespace GB5Shared.DTO.Framework.Login { public class LoginDTO { private string usercode; private string password; private string databasename; private object sessionid; private string validtotime; private string validityofsession; private string machineip; private int userid; private string username; private int serverconfigid; private string baseuri; private int roleid; private int deviceid; private int appid; private int serverid; private int workouid; private int workperiodid; private int workpartybranchid; private int workpartyid = -1; private int workstoreid; private DateTime workdate; private CriteriaDTO usercriteriadto; private string attachmentdirectory; //Added by Vikash on 22-08-2012 as per suggestion to track operationMode required for Logging private int timezoneid; private byte modeofoperation; //Added by Vikash on 10-Dec-2012 for keeping Track of Timezone private int timezone; private string timezonedisplayname; //Added by Vikash on 08-12-2012 as per suggestion to track Database Offeset private int serviceoffset; private int databaseoffset; private int finaloffsetvalue;//Added by Vikash on 30th July 2019 //Added by Vikash To Detect Database Type on 18 -Dec-2012 private byte databasetype; private int usercriteriaconfigid; //Added by Parthiban D on 18Jan2013 - want to get in user level UserCriteriaConfig //Added by Vikash Since Required for Sync as told by Palanisamy and approved by VV sir on 8 th Apr 2013 Mail private int clientid = -1; //Added by Vikash on 14th May for Getting the DBSourceType private byte sourcetype; //Added by Vikash Required For Scheduler Run private int isvalidationrequired = 0; private int isschedulerrun = 1;//Always No..Only For Scheduler it will set as 1; //Added by Vikash Required For Location Finding as per suggested by VV Sir private string geocode = ""; //Added by Vikash Required For Not Opening and closing the session For Report private int istransactionbeginrequired = 0;//Default Yes 1--No 2--Read Commited.. //Added by Vikash on 30 Apr for Getting User Mail under redmine Bug #3657: private string userprimarymailid; //Added by Vikash on 03 June 2014 private string connectiondatabasename; private string starttime; //Added By Vikash on 20th August 2014 private string dateformat = "dd/MM/yyyy"; private string currencyformat = "#,##,###.##"; private string timeformat = "HH:MM"; private string quantityformat = "###0.00"; //Added by Balaji for PPT private string userloginname; private string feuri;//Added by Vikash For getting FE Hosting on 8th Jan 2015 private string geo; private byte modeofworking; private int logineventlogid = -1; private DateTime periodfromdate; private DateTime periodtodate; private DateTime serverdate; private string reportbaseuri = ""; //Added by Vivek on 17 Aug 2017 for Validate GST Data Screen in GST Module private DateTime gstinfromdate = Convert.ToDateTime(DateTime.UtcNow.ToString("yyyy-MM-dd")); private DateTime gstintodate = Convert.ToDateTime(DateTime.UtcNow.ToString("yyyy-MM-dd")); private string salesgstin = ""; private string purchasegstin = ""; private int counteroperationid = -1; // private int isinvalidsession = -1; //-1 Not Required 0 InvalidSession 1 To Check Session //private string servermachinename; private string workdatestring; private string runstatus; private string lastloginusedtime; private int expirytime = 30; private int gracetime = 15; private int isipbasedcheckingrequired = 1;//Added by Vikash on 30 March 2020 private int isdeveloperencryptionrequired = 0;//Yes //Added by Vikash on 15 Apr 2020//This will come from MDeveloper New fields //Added by Vikash on 23 Jan 2025 as per Asked by VV Sir private string languageid = ""; private int attachmentoption = 0;//0 Alfresco, 1 FileNet, 2 AmazonS3 ,3 File Based private string pushnotificationtoken = ""; // Server-side only: set by BaseEndpoint from X-Wip-Approval header. // Never persisted or serialised from client input. // > 0 means this request is an approved WIP callback replaying a saved entity. [System.Text.Json.Serialization.JsonIgnore] [Newtonsoft.Json.JsonIgnore] public int WipApprovalId { get; set; } = 0; // Server-side only: full URL of the current request (scheme + host + path). // Captured by BaseEndpoint and used as the WIP callback endpoint when // MWORKFLOWCONFIG.CALLBACKENDPOINT is not configured — fully automatic, zero config. [System.Text.Json.Serialization.JsonIgnore] [Newtonsoft.Json.JsonIgnore] public string? RequestUrl { get; set; } // Server-side only: true when the [FromBody] parameter is a collection type (List etc.). // Detected by BaseEndpoint via reflection on TRequest — no per-endpoint configuration needed. // EventHandler uses this to store WIP DATAJSON as "[{...}]" so the dispatcher sends the // correct body format on WIP approval callback without any retry or guesswork. [System.Text.Json.Serialization.JsonIgnore] [Newtonsoft.Json.JsonIgnore] public bool IsBodyArray { get; set; } = false; // Server-side only: JSON snapshot of the HTTP request body captured by BaseEndpoint // BEFORE the BLL runs. On WIP approval callbacks, EventHandler uses this to restore // BLL-regenerated fields (e.g. task number, invoice number) back to their original // WIP-submission values before persisting — ensuring number consistency for the user. [System.Text.Json.Serialization.JsonIgnore] [Newtonsoft.Json.JsonIgnore] public string? WipOriginalBodyJson { get; set; } // Server-side only: set by EventHandler when a WIP workflow is triggered (entity // queued for approval rather than saved immediately). BaseEndpoint reads this after // ExecuteAsync to replace the BLL's "saved successfully" message with a clear // pending-approval notice so the caller is not misled. [System.Text.Json.Serialization.JsonIgnore] [Newtonsoft.Json.JsonIgnore] public bool WipTriggered { get; set; } = false; public string UserCode { get { return usercode; } set { usercode = value; } } public string PushNotificationToken { get { return pushnotificationtoken; } set { pushnotificationtoken = value; } } public string Password { get { return password; } set { password = value; } } public string DatabaseName { get { return databasename; } set { databasename = value; } } public object SessionId { get { return sessionid; } set { sessionid = value; } } public string ValidToTime { get { return validtotime; } set { validtotime = value; } } public string ValidityOfSession { get { return validityofsession; } set { validityofsession = value; } } public string MachineIP { get { return machineip; } set { machineip = value; } } public int UserId { get { return userid; } set { userid = value; } } public string UserName { get { return username; } set { username = value; } } public int ServerConfigId { get { return serverconfigid; } set { serverconfigid = value; } } public string BaseUri { get { return baseuri; } set { baseuri = value; } } public int RoleId { get { return roleid; } set { roleid = value; } } public int DeviceId { get { return deviceid; } set { deviceid = value; } } public int AppId { get { return appid; } set { appid = value; } } public int ServerId { get { return serverid; } set { serverid = value; } } public int WorkOUId { get { return workouid; } set { workouid = value; } } public int WorkPeriodId { get { return workperiodid; } set { workperiodid = value; } } public int WorkPartyBranchId { get { return workpartybranchid; } set { workpartybranchid = value; } } public int WorkPartyId { get { return workpartyid; } set { workpartyid = value; } } public int WorkStoreId { get { return workstoreid; } set { workstoreid = value; } } public DateTime WorkDate { get { return workdate; } set { workdate = value; } } public CriteriaDTO UserCriteriaDTO { get { return usercriteriadto; } set { usercriteriadto = value; } } public string AttachmentDirectory { get { return attachmentdirectory; } set { attachmentdirectory = value; } } public byte ModeOfOperation { get { return modeofoperation; } set { modeofoperation = value; } } public int TimeZoneId { get { return timezoneid; } set { timezoneid = value; } } public int TimeZone { get { return timezone; } set { timezone = value; } } public string TimeZoneDisplayName { get { return timezonedisplayname; } set { timezonedisplayname = value; } } public int ServiceOffSet { get { return serviceoffset; } set { serviceoffset = value; } } public int DatabaseOffset { get { return databaseoffset; } set { databaseoffset = value; } } public int FinalOffSetValue { get { return finaloffsetvalue; } set { finaloffsetvalue = value; } } public byte DatabaseType { get { return databasetype; } set { databasetype = value; } } public int UserCriteriaConfigId { get { return usercriteriaconfigid; } set { usercriteriaconfigid = value; } } public int ClientId { get { return clientid; } set { clientid = value; } } public byte SourceType { get { return sourcetype; } set { sourcetype = value; } } public int IsValidationRequired { get { return isvalidationrequired; } set { isvalidationrequired = value; } } public int IsSchedulerRun { get { return isschedulerrun; } set { isschedulerrun = value; } } public string GeoCode { get { return geocode; } set { geocode = value; } } public int IsTransactionBeginRequired { get { return istransactionbeginrequired; } set { istransactionbeginrequired = value; } } public string UserPrimaryMailId { get { return userprimarymailid; } set { userprimarymailid = value; } } public string ConnectionDatabaseName { get { return connectiondatabasename; } set { connectiondatabasename = value; } } public string StartTime { get { return starttime; }//Only Sent By Fe... set { starttime = value; } } public virtual string DateFormat { get { return dateformat; } set { dateformat = value; } } public virtual string CurrencyFormat { get { return currencyformat; } set { currencyformat = value; } } public virtual string TimeFormat { get { return timeformat; } set { timeformat = value; } } public virtual string QuantityFormat { get { return quantityformat; } set { quantityformat = value; } } public virtual string UserLoginName { get { return userloginname; } set { userloginname = value; } } public virtual string Geo { get { return geo; } set { geo = value; } } public virtual byte ModeOfWorking { get { return modeofworking; } set { modeofworking = value; } } public virtual int LoginEventLogId { get { return logineventlogid; } set { logineventlogid = value; } } public virtual string FEUri { get { return feuri; } set { feuri = value; } } public virtual DateTime PeriodFromDate { get { return periodfromdate; } set { periodfromdate = value; } } public virtual DateTime PeriodToDate { get { return periodtodate; } set { periodtodate = value; } } public DateTime ServerDate { get { return serverdate; } set { serverdate = value; } } public string ReportBaseUri { get { return reportbaseuri; } set { reportbaseuri = value; } } //Added by Vivek on 17 Aug 2017 for Validate GST Data Screen in GST Module public DateTime GSTINFromDate { get { return gstinfromdate; } set { gstinfromdate = value; } } public DateTime GSTINToDate { get { return gstintodate; } set { gstintodate = value; } } public string SalesGSTIn { get { return salesgstin; } set { salesgstin = value; } } public string PurchaseGSTIn { get { return purchasegstin; } set { purchasegstin = value; } } #region Added by Vikash on 19th Sep 2017 for Redine 19070 private int isalreadylogin = -1; public int IsAlreadyLogin { get { return isalreadylogin; } set { isalreadylogin = value; } } #endregion public int CounterOperationId { get { return counteroperationid; } set { counteroperationid = value; } } #region Added by Vikash on 29th Oct 2018 for redmine 22567 private string servermachinename; private string severname; private string serverip; private string serveruniquedetails; private string oucode; private string ouname; public string ServerMachineName { get { return servermachinename; } set { servermachinename = value; } } public string ServerName { get { return severname; } set { severname = value; } } public string ServerIP { get { return serverip; } set { serverip = value; } } public string ServerUniqueDetails { get { return serveruniquedetails; } set { serveruniquedetails = value; } } public string OuCode { get { return oucode; } set { oucode = value; } } public string OuName { get { return ouname; } set { ouname = value; } } #endregion public string WorkDateString { get { return workdatestring; } set { workdatestring = value; } } public string RunStatus { get { return runstatus; } set { runstatus = value; } } #region Added by Vikash For Redmine 23532 on 14th Dec 2018 private byte selectlistoperationtype; public byte SelectlistOperationType { get { return selectlistoperationtype; } set { selectlistoperationtype = value; } } public string LastLoginUsedTime { get { return lastloginusedtime; } set { lastloginusedtime = value; } } public int ExpiryTime { get { return expirytime; } set { expirytime = value; } } public int GraceTime { get { return gracetime; } set { gracetime = value; } } #endregion #region Added by Vikash for Third PartyCalling Gb4 on 27th Feb 2019 private int developerid = -1; private string developeraccesskeyid = ""; public int DeveloperId { get { return developerid; } set { developerid = value; } } public string DeveloperAccessKeyId { get { return developeraccesskeyid; } set { developeraccesskeyid = value; } } #endregion #region ServerConfigRelatedScript added by Vikash on 22nd March 2019 for Redmine Task #24627 private int serverconfigoffset = 0; private int serverconfigmaxvalue = 0; public int ServerConfigOffset { get { return serverconfigoffset; } set { serverconfigoffset = value; } } public int ServerConfigMaxValue { get { return serverconfigmaxvalue; } set { serverconfigmaxvalue = value; } } #endregion private int workfinancebookid;//Added by Vikash on 30th July 2019 public int WorkFinanceBookId { get { return workfinancebookid; } set { workfinancebookid = value; } } public int IsIpBasedCheckingRequired { get { return isipbasedcheckingrequired; } set { isipbasedcheckingrequired = value; } } public int IsDeveloperEncryptionRequired { get { return isdeveloperencryptionrequired; } set { isdeveloperencryptionrequired = value; } } public string LanguageId { get { return languageid; } set { languageid = value; } } public int AttachmentOption { get { return attachmentoption; } set { attachmentoption = value; } } private string delimiter = ",";///Added by Vikash on 30 Sep 2020.. public string Delimiter { get { return delimiter; } set { delimiter = value; } } //public int IsInvalidSession //{ // get { return isinvalidsession; } // set { isinvalidsession = value; } //} private string browserinfo = ""; private string clientmachineip = ""; private string clientcountry = ""; public string BrowserInfo { get { return browserinfo; } set { browserinfo = value; } } public string ClientMachineIp { get { return clientmachineip; } set { clientmachineip = value; } } public string ClientCountry { get { return clientcountry; } set { clientcountry = value; } } private decimal feversion = 4;//Default 4 ,This will be passing during login ..Added by Vikash on 03rd June 2021.. public decimal FEVersion { get { return feversion; } set { feversion = value; } } private string tempbaseuri = ""; public string TempBaseURI { get { return tempbaseuri; } set { tempbaseuri = value; } } #region Partner / White-Label Branding — populated during login from resolved brand chain private int partnerproductid = 0; private string appname = "GoodBooks"; private string primarycolor = "#003399"; private string secondarycolor = "#0055CC"; private string accentcolor = "#FF6600"; private string fontfamily = "Inter"; public int PartnerProductId { get { return partnerproductid; } set { partnerproductid = value; } } public string AppName { get { return appname; } set { appname = value; } } public string PrimaryColor { get { return primarycolor; } set { primarycolor = value; } } public string SecondaryColor { get { return secondarycolor; } set { secondarycolor = value; } } public string AccentColor { get { return accentcolor; } set { accentcolor = value; } } public string FontFamily { get { return fontfamily; } set { fontfamily = value; } } #endregion } }