public bool AddAppProspect(App_Prospect prospect)
        {
            var parmsCollection = new ParmsCollection();
            var dataSet         = this.clientDbContext.ExecuteQueryOrStoredProcedure_ToDataSet("[MobileApp].[addApp_Prospect]",
                                                                                               parmsCollection
                                                                                               .AddParm("@RowID", SqlDbType.Int, prospect.RowID)
                                                                                               .AddParm("@AppProspectID", SqlDbType.VarChar, prospect.AppProspectID)
                                                                                               .AddParm("@AccountID", SqlDbType.Int, prospect.AccountID)
                                                                                               .AddParm("@Address", SqlDbType.NVarChar, prospect.Address)
                                                                                               .AddParm("@Name", SqlDbType.NVarChar, prospect.Name)
                                                                                               .AddParm("@SexID", SqlDbType.Int, prospect.SexID)
                                                                                               .AddParm("@Birthday", SqlDbType.DateTime,
                                                                                                        (prospect.Birthday <= new DateTime(1947, 1, 1) || !prospect.Birthday.HasValue) ? DateTime.Now.Date : prospect.Birthday.Value.Date)
                                                                                               .AddParm("@NationalityID", SqlDbType.Int, prospect.NationalityID)
                                                                                               .AddParm("@MobilePhone", SqlDbType.VarChar, prospect.MobilePhone)
                                                                                               .AddParm("@Email", SqlDbType.VarChar, prospect.Email)
                                                                                               .AddParm("@IdentityTypeID", SqlDbType.Int, (prospect.IdentityTypeID == default(int)) ? 179 : prospect.IdentityTypeID)
                                                                                               .AddParm("@IdentityNo", SqlDbType.VarChar, prospect.IdentityNo)
                                                                                               .AddParm("@SaleAgentID", SqlDbType.Int, prospect.SaleAgentID)
                                                                                               .AddParm("@ProjectID", SqlDbType.Int, prospect.ProjectID)
                                                                                               .AddParm("@PhaseID", SqlDbType.Int, prospect.PhaseID)

                                                                                               .AddParm("@ProbabilityID", SqlDbType.Int, prospect.ProbabilityID)
                                                                                               .AddParm("@Remark", SqlDbType.NVarChar, prospect.Remark)

                                                                                               .AddParm("@CreateUserID", SqlDbType.Int, userContext.LoggedInUserId)
                                                                                               .AddParm("@CreateDate", SqlDbType.DateTime, DateTime.Now)
                                                                                               .AddParm("@ModifyUserID", SqlDbType.Int, userContext.LoggedInUserId)
                                                                                               .AddParm("@ModifyDate", SqlDbType.DateTime, DateTime.Now)
                                                                                               );

            return(true);
        }
        public IActionResult IsDuplicateProspect([FromBody] App_Prospect prospect)
        {
            prospect.CreateUserID = this.userContext.LoggedInUserId;
            prospect.CreateDate   = DateTime.Now;

            prospect.ModifyUserID = this.userContext.LoggedInUserId;
            prospect.ModifyDate   = DateTime.Now;

            return(Ok(propertyBusinessAccess.IsDuplicateProspect(prospect)));
        }
        public bool IsDuplicateProspect(App_Prospect prospect)
        {
            prospect.Name       = string.IsNullOrWhiteSpace(prospect.Name) ? "" : prospect.Name.Trim();
            prospect.IdentityNo = string.IsNullOrWhiteSpace(prospect.IdentityNo) ? "" : prospect.IdentityNo.Trim();

            var prospectDb = default(vw_PS_Prospect);

            if (prospect.RowID == default(int))
            {
                prospectDb = this.clientDbContext.vw_PS_Prospects($"Name = '{prospect.Name}'").FirstOrDefault();
            }
            else
            {
                prospectDb = this.clientDbContext.vw_PS_Prospects($"RowID <> {prospect.RowID} AND Name = '{prospect.Name}'").FirstOrDefault();
            }

            if (prospectDb == null)
            {
                return(false);
            }
            else
            {
                if (prospect.RowID == default(int))
                {
                    prospectDb = this.clientDbContext.vw_PS_Prospects($"Name = '{prospect.Name}' AND IdentityTypeID = {prospect.IdentityTypeID} AND IdentityNo = '{prospect.IdentityNo}'").FirstOrDefault();
                }
                else
                {
                    prospectDb = this.clientDbContext.vw_PS_Prospects($"RowID = {prospect.RowID} AND Name = '{prospect.Name}' AND IdentityTypeID = {prospect.IdentityTypeID} AND IdentityNo = '{prospect.IdentityNo}'").FirstOrDefault();
                }

                if (prospectDb == null)
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }
        }
 public bool AddAppProspect(App_Prospect prospect)
 {
     return(this.propertyDataAccess.AddAppProspect(prospect));
 }
 public bool IsDuplicateProspect(App_Prospect prospect)
 {
     return(this.propertyDataAccess.IsDuplicateProspect(prospect));
 }