Пример #1
0
        public ActionResult <GenericResponseModel> Check([FromBody] CustomerDto pObject)
        {
            var loUserId          = HelperMethods.GetApiUserIdFromToken(HttpContext.User.Identity);
            var loGenericResponse = new GenericResponseModel
            {
                Status = "Fail",
                Code   = -1
            };

            if (pObject.birth_date == null)
            {
                if (!DateTime.TryParse(pObject.birthdate, out var loBirthdate))
                {
                    loGenericResponse.Status  = "Fail";
                    loGenericResponse.Code    = -1;
                    loGenericResponse.Message = "Geçersiz doğum tarihi";
                    return(loGenericResponse);
                }

                pObject.birth_date = loBirthdate;
            }

            var loIdentity = new Identity(pObject.identity, pObject.customer_name.ToUpper(), pObject.customer_surname.ToUpper(), pObject.birth_date.Value.Year);

            if (!loIdentity.CheckIdentity())
            {
                loGenericResponse.Status  = "Fail";
                loGenericResponse.Code    = -1;
                loGenericResponse.Message = "Kimlik bilgileriniz doğrulanamadı.";
                return(loGenericResponse);
            }

            var loCustomer = GetData.GetCustomerByIdentity(pObject.identity.ToString());

            loGenericResponse.Code = 1;

            if (loCustomer != null)
            {
                loGenericResponse.Code =
                    GetData.GetOfferByOwnerAndAssetId(loCustomer.row_guid.ToString(), pObject.asset_uuid.ToString()) == null ? 1 : 0;//Bu adam bu iş için teklif verdiyse panele yönlendirelim.
            }



            return(loGenericResponse);
        }
Пример #2
0
        public ActionResult <GenericResponseModel> Insert([FromBody] CustomerDto pObject)
        {
            var loUserId          = HelperMethods.GetApiUserIdFromToken(HttpContext.User.Identity);
            var loGenericResponse = new GenericResponseModel
            {
                Status = "Fail",
                Code   = -1
            };

            if (pObject.birth_date == null)
            {
                if (!DateTime.TryParse(pObject.birthdate, out var loBirthdate))
                {
                    loGenericResponse.Status  = "Fail";
                    loGenericResponse.Code    = -1;
                    loGenericResponse.Message = "Geçersiz doğum tarihi";
                    return(loGenericResponse);
                }

                pObject.birth_date = loBirthdate;
            }

            var loIdentity = new Identity(pObject.identity, pObject.customer_name.ToUpper(), pObject.customer_surname.ToUpper(), pObject.birth_date.Value.Year);

            if (!loIdentity.CheckIdentity())
            {
                loGenericResponse.Status  = "Fail";
                loGenericResponse.Code    = -1;
                loGenericResponse.Message = "Kimlik bilgileriniz doğrulanamadı.";
                return(loGenericResponse);
            }

            var loCheckUserHasRegistered = GetData.GetCustomerByIdentity(pObject.identity.ToString());

            if (loCheckUserHasRegistered != null && loCheckUserHasRegistered.user_type_system_type_id == pObject.user_type_system_type_id)
            {
                loCheckUserHasRegistered.send_agreement  = pObject.send_agreement;
                loCheckUserHasRegistered.asset_uuid      = pObject.asset_uuid;
                loCheckUserHasRegistered.pre_offer_price = pObject.pre_offer_price;
                pObject = loCheckUserHasRegistered;

                var loOfferToCheck =
                    GetData.GetOfferByOwnerAndAssetId(pObject.row_guid.ToString(), pObject.asset_uuid.ToString());

                if (loOfferToCheck != null)
                {
                    loGenericResponse.Status  = "Fail";
                    loGenericResponse.Code    = -1;
                    loGenericResponse.Message = "Verdiğiniz bilgilerle daha önce kayıt oluşturulmuştur. Lütfen tarafınıza iletilen kullanıcı adı ve şifreniz ile sisteme giriş yaparak teklifinizi veriniz.";
                    return(loGenericResponse);
                }
            }
            else
            {
                pObject.row_create_date  = DateTime.Now;
                pObject.row_guid         = Guid.NewGuid();
                pObject.row_create_user  = pObject.row_guid;
                pObject.is_deleted       = false;
                pObject.is_active        = true;
                pObject.identity_no      = pObject.identity.ToString().Trim();
                pObject.address          = pObject.address?.ToUpper().Trim();
                pObject.customer_name    = pObject.customer_name?.ToUpper().Trim();
                pObject.customer_surname = pObject.customer_surname?.ToUpper().Trim();
                pObject.company_name     = pObject.company_name?.ToUpper().Trim();
                pObject.iban             = pObject.iban?.ToUpper().Trim();
                pObject.tax_office       = pObject.tax_office?.ToUpper().Trim();
                pObject.tax_no           = pObject.tax_no?.ToUpper().Trim();
                pObject.phone            = HelperMethods.SerializePhone(pObject.phone?.ToUpper());
                pObject.mail             = pObject.mail?.ToLower();
            }

            Offer loOffer = null;

            if (pObject.send_agreement)
            {
                if (pObject.asset_uuid == null)
                {
                    loGenericResponse.Status  = "Fail";
                    loGenericResponse.Code    = -1;
                    loGenericResponse.Message = "Gayrimenkul seçilmeden işleme devam edilemez.";
                    return(loGenericResponse);
                }


                loOffer = new Offer
                {
                    asset_uuid = pObject.asset_uuid.Value,
                    owner_uuid = pObject.row_guid,
                    offer_state_type_system_type_id = (int)OfferStateTypes.WaitingAgreement,
                    row_create_date = pObject.row_create_date,
                    row_create_user = pObject.row_create_user,
                    row_guid        = Guid.NewGuid(),
                    agreement_uuid  = Guid.NewGuid(),
                    pre_offer_price = pObject.pre_offer_price ?? 0,
                    is_active       = true,
                    is_deleted      = false
                };
            }
            var loResult = Crud <Customer> .InsertCustomerWithOffer(pObject, loOffer);

            if (loResult > 0)
            {
                Task.Run(() => HelperMethods.SendDocumentToSign(pObject, loOffer));
                pObject.id               = (int)loResult;
                loGenericResponse.Data   = pObject;
                loGenericResponse.Status = "Ok";
                loGenericResponse.Code   = 200;
            }
            else
            {
                loGenericResponse.Status  = "Fail";
                loGenericResponse.Code    = -1;
                loGenericResponse.Message = "Kayıt başarısız";
            }

            return(loGenericResponse);
        }