Esempio n. 1
0
        public HttpResponseMessage postapplyinsurance(tblInsurance insurance)
        {
            int x = Convert.ToInt32(insurance.FarmerId);

            /*ObjectParameter sumfinal = new ObjectParameter("sumfinal", typeof(float));
             * ObjectParameter fshare = new ObjectParameter("fshare", typeof(float));
             * ObjectParameter gvtshare = new ObjectParameter("gvtshare", typeof(float));
             *
             *
             * var result = entities.proc_calculateInsurance(insurance.CropType, insurance.CropName, insurance.Area, sumfinal, fshare, gvtshare);
             * calculateinsurance ci = new calculateinsurance();
             * ci.InsuranceCompany = "AGRICULTURE INSURANCE COMPANY";
             * var msp = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.MspPerQuintal).FirstOrDefault();
             * var yeild = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.YeildPerHectareTons).FirstOrDefault();
             * ci.SumInsuredPerHectare = Convert.ToSingle(msp) * Convert.ToSingle(yeild) * 10;
             * ci.SharePremium = Convert.ToSingle(gvtshare.Value);
             * ci.PremiumAmount = Convert.ToSingle(fshare.Value);
             * ci.CropName = insurance.CropName;
             * ci.Area = Convert.ToSingle(insurance.Area);
             * ci.SumInsured = Convert.ToSingle(sumfinal.Value);*/



            var msp   = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.MspPerQuintal).FirstOrDefault();
            var yeild = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.YeildPerHectareTons).FirstOrDefault();

            insurance.SumInsured        = Convert.ToDecimal((msp) * Convert.ToDecimal(yeild) * 10);
            insurance.DateofApplication = DateTime.Now;
            insurance.FarmerId          = x;
            entities.tblInsurances.Add(insurance);
            entities.SaveChanges();
            var sum      = Convert.ToDouble(insurance.SumInsured * Convert.ToDecimal(insurance.Area));
            var obj      = entities.tblUsers.Where(f => f.fId == x).FirstOrDefault();
            var policyno = entities.tblInsurances.Where(k => k.FarmerId == x).FirstOrDefault();
            //sending email
            string to = obj.EmailId;

            MailMessage mm = new MailMessage();

            mm.From = new MailAddress("*****@*****.**");
            mm.To.Add(to);
            mm.Subject    = "Insurance details";
            mm.Body       = "your policyno:" + policyno.InsuranceApplicationId + "   Suminsured by company is:" + sum;
            mm.IsBodyHtml = false;
            SmtpClient smtp = new SmtpClient("smtp.gmail.com");

            smtp.UseDefaultCredentials = true;
            smtp.Port        = 587;
            smtp.EnableSsl   = true;
            smtp.Credentials = new System.Net.NetworkCredential("*****@*****.**", "farmerfriend");
            smtp.Send(mm);
            //return Request.CreateResponse(HttpStatusCode.OK, "Email sent");

            return(Request.CreateResponse(HttpStatusCode.OK, "Succesfully applied"));
        }
        public IHttpActionResult PostInsuranceRegistration(InsuranceApp regfom)
        {
            tblInsurance tblInsurance = new tblInsurance();

            tblInsurance.Season          = regfom.Season;
            tblInsurance.Area            = regfom.Area;
            tblInsurance.FarmerId        = Convert.ToInt32(regfom.Farmerid);
            tblInsurance.CompanyName     = regfom.CompanyName;
            tblInsurance.SumInsured      = regfom.SumAssured;
            tblInsurance.Year            = regfom.Year;
            tblInsurance.DateOfInsurance = DateTime.Today;
            tblInsurance.Crop            = regfom.CropName;
            db.tblInsurances.Add(tblInsurance);
            db.SaveChanges();
            return(Ok("OK"));
        }
Esempio n. 3
0
        public HttpResponseMessage approveclaim(DateTime dateofloss, tblInsurance insurance)
        {
            DbContextTransaction transaction = entities.Database.BeginTransaction();

            try
            {
                entities.proc_checkexpiredateofclaim(Convert.ToInt32(insurance.InsuranceApplicationId), insurance.DateofApplication, dateofloss,
                                                     insurance.FarmerId, insurance.CropType);
                entities.SaveChanges();
                transaction.Commit();
            }
            catch (Exception e)
            {
                transaction.Rollback();
                return(Request.CreateErrorResponse(HttpStatusCode.Ambiguous, e.Message));
            }
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
Esempio n. 4
0
        public HttpResponseMessage approveclaim(DateTime dateofloss, tblInsurance insurance)
        {
            DbContextTransaction transaction = entities.Database.BeginTransaction();

            try
            {
                var result = entities.sp_validateClaim(insurance.DateofApplication, dateofloss, insurance.FarmerId, insurance.CropType).FirstOrDefault();
                entities.sp_updateClaim(Convert.ToInt32(insurance.InsuranceApplicationId), Convert.ToInt32(result));
                entities.SaveChanges();
                transaction.Commit();
                tblFarmer farmer = entities.tblFarmers.Where(fa => fa.fId == insurance.FarmerId).FirstOrDefault();
                if (result == 1)
                {
                    EmailModel email = new EmailModel();
                    HttpClient http  = new HttpClient();
                    http.BaseAddress = new Uri("http://localhost:61674/api/Email");

                    email.to      = farmer.fEmailId;
                    email.subject = "Insurace Claim approved";
                    email.body    = "your policy number of" + insurance.InsuranceApplicationId + "\t is approved Money will be credited in you account number:" + farmer.fAccountNo;

                    var consumewebApi = http.PostAsJsonAsync <EmailModel>("email", email);
                }
                else
                {
                    EmailModel email = new EmailModel();
                    HttpClient http  = new HttpClient();
                    http.BaseAddress = new Uri("http://localhost:61674/api/Email");
                    email.to         = farmer.fEmailId;

                    email.subject = "Insurace Claim NOT approved";
                    email.body    = "your policy number of" + insurance.InsuranceApplicationId + "\t Is Expired, you are not allowed to CLAIM";
                    var consumewebApi = http.PostAsJsonAsync <EmailModel>("email", email);
                }
            }
            catch (Exception e)
            {
                transaction.Rollback();
                return(Request.CreateErrorResponse(HttpStatusCode.Ambiguous, e.Message));
            }
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
        public HttpResponseMessage postinsurancedetails(tblInsurance insurance)
        {
            int x = Convert.ToInt32(insurance.FarmerId);

            ObjectParameter sumfinal = new ObjectParameter("sumfinal", typeof(float));
            ObjectParameter fshare   = new ObjectParameter("fshare", typeof(float));
            ObjectParameter gvtshare = new ObjectParameter("gvtshare", typeof(float));


            var result            = entities.proc_calculateInsurance(insurance.CropType, insurance.CropName, insurance.Area, sumfinal, fshare, gvtshare);
            calculateinsurance ci = new calculateinsurance();

            ci.InsuranceCompany = "AGRICULTURE INSURANCE COMPANY";
            var msp   = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.MspPerQuintal).FirstOrDefault();
            var yeild = entities.tblCropDetails.Where(c => c.CropName == insurance.CropName).Select(t => t.YeildPerHectareTons).FirstOrDefault();

            ci.SumInsuredPerHectare = Convert.ToSingle(msp) * Convert.ToSingle(yeild) * 10;
            ci.SharePremium         = Convert.ToSingle(gvtshare.Value);
            ci.PremiumAmount        = Convert.ToSingle(fshare.Value);
            ci.CropName             = insurance.CropName;
            ci.Area       = Convert.ToSingle(insurance.Area);
            ci.SumInsured = Convert.ToSingle(sumfinal.Value);



            //if (insurance.FarmerId != null)
            //{
            //insurance.SumInsured = Convert.ToDecimal(Convert.ToSingle(msp) * Convert.ToSingle(yeild));
            //insurance.DateofApplication = DateTime.Now;
            //insurance.FarmerId = x;
            //entities.tblInsurances.Add(insurance);
            //entities.SaveChanges();
            //return Request.CreateResponse(HttpStatusCode.OK, "Succesfully applied");
            //}


            return(Request.CreateResponse <calculateinsurance>(ci));
        }
        public ActionResult InsuranceInfo(tblInsurance model)
        {
            try
            {
                if (model.id == 0)
                {   // insert
                    // set new Guid for primary key
                    int id = db.tblInsurances.Max(x => x.id);
                    model.id = ++id;

                    // Insert into table
                    db.tblInsurances.Add(model);
                    db.SaveChanges();
                }
                else
                {   // update
                    // get original record for unedited fields
                    tblInsurance record = db.tblInsurances.Where(x => x.id == model.id).Single();

                    // transfer form fields
                    record.Ins_Co_Name = model.Ins_Co_Name;
                    record.Ins_Contact = model.Ins_Contact;

                    // Update record
                    db.Entry(record).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(HandleException(ex));
            }

            // return Status OK
            return(Content(model.id.ToString()));
        }