Exemplo n.º 1
0
        /// <summary>
        /// check user preferred shop if found then return shopid as out parameter
        /// </summary>
        /// <param name="iUserId"></param>
        /// <param name="iShopId"></param>
        /// <returns></returns>
        private bool checkUserPrefferedShop(Int32 iUserId, out Int32 iShopId)
        {
            iShopId = 0;
            UserPreferredShopBL objPrefferedShop = UserPreferredShopBL.getShopByUserId(iUserId);

            if (objPrefferedShop != null)
            {
                iShopId = (Int32)objPrefferedShop.iShopId;
                return(true);
            }
            return(false);
        }
Exemplo n.º 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Boolean          bResult           = false;
            AccidentReportBL objAccidentReport = new AccidentReportBL();
            string           strZipFilePath    = String.Empty;

            try
            {
                String strPhoneId  = String.Empty;
                String strPhoneId1 = String.Empty;
                if (!String.IsNullOrEmpty(Request.QueryString["ShopID"]))
                {
                    //get the phone user id
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId1 = Request.QueryString["User_ID"];
                    }
                    else if (Request.Headers["User_ID"] != null)
                    {
                        strPhoneId1 = Request.Headers["User_ID"];
                    }
                    if (!Int32.TryParse(Security.DecodeNumbers(Request.QueryString["ShopID"]), out iShopID))
                    {
                        return;
                    }
                }
                else
                {
                    //get the phone user id
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId = Request.QueryString["User_ID"];
                    }
                    else if (Request.Headers["User_ID"] != null)
                    {
                        strPhoneId = Request.Headers["User_ID"];
                    }
                }
                //if (!String.IsNullOrEmpty(strPhoneId))
                //{
                //if fphone user id is found
                UserBL objUser = null;
                if (String.IsNullOrEmpty(strPhoneId1))
                {
                    objUser = UserBL.getDataByPhoneId(strPhoneId);
                }
                else
                {
                    MyCustomerBL objMyCustomer = MyCustomerBL.getDataByShopIdNPhone(iShopID, strPhoneId1);
                    if (objMyCustomer != null)
                    {
                        objUser = UserBL.getByActivityId(objMyCustomer.iUserId.Value);
                    }
                }
                if (objUser != null)
                {
                    //if user of previous phone user id is found fill his accident report information
                    String strUserName = String.Empty;

                    if (String.IsNullOrEmpty(objUser.strUserName))
                    {
                        if (Request.QueryString["Phone_Owner_Name"] != null)
                        {
                            strUserName = Request.QueryString["Phone_Owner_Name"];
                        }
                        else if (Request.Headers["Phone_Owner_Name"] != null)
                        {
                            strUserName = Request.Headers["Phone_Owner_Name"];
                        }
                    }

                    if (!String.IsNullOrEmpty(strUserName) && objUser.strFirstName != strUserName)
                    {
                        //if user's first name is changed
                        objUser.strFirstName = strUserName;
                        objUser.Save();
                    }

                    objAccidentReport.iUserId = objUser.ID;

                    if (Request.QueryString["Street_Name"] != null)
                    {
                        objAccidentReport.strStreet = Request.QueryString["Street_Name"].ToString();
                    }
                    else if (Request.Headers["Street_Name"] != null)
                    {
                        objAccidentReport.strStreet = Request.Headers["Street_Name"].ToString();
                    }

                    if (Request.QueryString["City_State"] != null)
                    {
                        objAccidentReport.strCity = Request.QueryString["City_State"].ToString();
                    }
                    else if (Request.Headers["City_State"] != null)
                    {
                        objAccidentReport.strCity = Request.Headers["City_State"].ToString();
                    }

                    if (Request.QueryString["Accident_Description"] != null)
                    {
                        objAccidentReport.strDescription = Request.QueryString["Accident_Description"].ToString();
                    }
                    else if (Request.Headers["Accident_Description"] != null)
                    {
                        objAccidentReport.strDescription = Request.Headers["Accident_Description"].ToString();
                    }

                    if (Request.QueryString["Name"] != null)
                    {
                        objAccidentReport.strDriverName = Request.QueryString["Name"].ToString();
                    }
                    else if (Request.Headers["Name"] != null)
                    {
                        objAccidentReport.strDriverName = Request.Headers["Name"].ToString();
                    }

                    if (Request.QueryString["Phone"] != null)
                    {
                        objAccidentReport.strDriverPhone = Request.QueryString["Phone"].ToString();
                    }
                    else if (Request.Headers["Phone"] != null)
                    {
                        objAccidentReport.strDriverPhone = Request.Headers["Phone"].ToString();
                    }

                    if (Request.QueryString["License_State_and_Plate"] != null)
                    {
                        objAccidentReport.strDriverLicenseStatePlate = Request.QueryString["License_State_and_Plate"].ToString();
                    }
                    else if (Request.Headers["License_State_and_Plate"] != null)
                    {
                        objAccidentReport.strDriverLicenseStatePlate = Request.Headers["License_State_and_Plate"].ToString();
                    }

                    if (Request.QueryString["Driver_License"] != null)
                    {
                        objAccidentReport.strDriverLicenseNo = Request.QueryString["Driver_License"].ToString();
                    }
                    else if (Request.Headers["Driver_License"] != null)
                    {
                        objAccidentReport.strDriverLicenseNo = Request.Headers["Driver_License"].ToString();
                    }

                    if (Request.QueryString["Vehicle_Type"] != null)
                    {
                        objAccidentReport.strDriverVehicleType = Request.QueryString["Vehicle_Type"].ToString();
                    }
                    else if (Request.Headers["Vehicle_Type"] != null)
                    {
                        objAccidentReport.strDriverVehicleType = Request.Headers["Vehicle_Type"].ToString();
                    }

                    if (Request.QueryString["Their_Insurance_Company"] != null)
                    {
                        objAccidentReport.strInsuranceCompanyName = Request.QueryString["Their_Insurance_Company"].ToString();
                    }
                    else if (Request.Headers["Their_Insurance_Company"] != null)
                    {
                        objAccidentReport.strInsuranceCompanyName = Request.Headers["Their_Insurance_Company"].ToString();
                    }

                    if (Request.QueryString["Their_Insurance_Policy"] != null)
                    {
                        objAccidentReport.strInsurancePolicyNo = Request.QueryString["Their_Insurance_Policy"].ToString();
                    }
                    else if (Request.Headers["Their_Insurance_Policy"] != null)
                    {
                        objAccidentReport.strInsurancePolicyNo = Request.Headers["Their_Insurance_Policy"].ToString();
                    }

                    if (Request.QueryString["Police_Office_and_Badge"] != null)
                    {
                        objAccidentReport.strPoliceOffice = Request.QueryString["Police_Office_and_Badge"].ToString();
                    }
                    else if (Request.Headers["Police_Office_and_Badge"] != null)
                    {
                        objAccidentReport.strPoliceOffice = Request.Headers["Police_Office_and_Badge"].ToString();
                    }

                    if (Request.QueryString["Police_Report"] != null)
                    {
                        objAccidentReport.strPoliceReportNo = Request.QueryString["Police_Report"].ToString();
                    }
                    else if (Request.Headers["Police_Report"] != null)
                    {
                        objAccidentReport.strPoliceReportNo = Request.Headers["Police_Report"].ToString();
                    }

                    if (Request.QueryString["Witness"] != null)
                    {
                        objAccidentReport.strWitnesses = Request.QueryString["Witness"].ToString();
                    }
                    else if (Request.Headers["Witness"] != null)
                    {
                        objAccidentReport.strWitnesses = Request.Headers["Witness"].ToString();
                    }

                    if (Request.QueryString["Witness_Comment"] != null)
                    {
                        objAccidentReport.strWitnessComments = Request.QueryString["Witness_Comment"].ToString();
                    }
                    else if (Request.Headers["Witness_Comment"] != null)
                    {
                        objAccidentReport.strWitnessComments = Request.Headers["Witness_Comment"].ToString();
                    }

                    if (Request.QueryString["Misc_Notes"] != null)
                    {
                        objAccidentReport.strMiscNotes = Request.QueryString["Misc_Notes"].ToString();
                    }
                    else if (Request.Headers["Misc_Notes"] != null)
                    {
                        objAccidentReport.strMiscNotes = Request.Headers["Misc_Notes"].ToString();
                    }

                    byte[] photo;

                    UserPreferredShopBL objUserPreferredShop = UserPreferredShopBL.getShopByUserId(objUser.ID);


                    MessageBL objMessage = null;
                    if (objUserPreferredShop != null || iShopID > 0)
                    {
                        //add one message against his preferred shop
                        objMessage              = new MessageBL();
                        objMessage.strMessage   = "Accident Report";
                        objMessage.iPhoneUserID = objUser.ID;
                        if (objUserPreferredShop != null)
                        {
                            objMessage.iShopID = objUserPreferredShop.iShopId;
                        }
                        else
                        {
                            objMessage.iShopID = iShopID;
                        }
                        objMessage.dtMessageTime = DateTime.Now;
                        objMessage.iType         = Constants.AccidentReport;
                        if (objMessage.Save())
                        {
                            if (Request.ContentType.Contains("image"))
                            {
                                if (Request.ContentLength > 1)
                                {
                                    photo = Request.BinaryRead(Request.ContentLength);
                                    //int cnt = Request.TotalBytes;
                                    //photo = Request.BinaryRead(cnt);
                                    MemoryStream         bipimag = new MemoryStream(photo);
                                    System.Drawing.Image imag    = new Bitmap(bipimag);
                                    if (!String.IsNullOrEmpty(Server.MapPath(Constants.ACIIDENTREPORTIMAGE)))
                                    {
                                        String filePath = Server.MapPath(Constants.ACIIDENTREPORTIMAGE) + "\\" + objMessage.ID + ".jpeg";
                                        imag.Save(Constants.SHOPAPP_PATH_IMAGES + "\\" + objMessage.ID + ".jpeg", System.Drawing.Imaging.ImageFormat.Jpeg);
                                        objMessage.strAttachment = objMessage.ID + ".jpeg";
                                    }
                                }
                            }
                            else if (Request.ContentType.Contains("multipart"))
                            {
                                if (Request.Files.Count > 0 && !String.IsNullOrEmpty(Constants.SHOPAPP_PATH_IMAGES))
                                {
                                    // Zip the file if more than one photo
                                    if (Request.Files.Count > 1)
                                    {
                                        strZipFilePath = Constants.SHOPAPP_PATH_IMAGES + "\\" + objMessage.ID + ".zip";
                                        ZipOutputStream objZipFile = new ZipOutputStream(File.Create(strZipFilePath));
                                        //0-9, 9 being the highest level of compression
                                        objZipFile.SetLevel(3);
                                        // To permit the zip to be unpacked by built-in extractor in WinXP and Server2003, WinZip 8, Java, and other older code,
                                        // you need to do one of the following: Specify UseZip64.Off, or set the Size.
                                        // If the file may be bigger than 4GB, or you do not need WinXP built-in compatibility, you do not need either,
                                        // but the zip will be in Zip64 format which not all utilities can understand.
                                        objZipFile.UseZip64 = UseZip64.Off;
                                        for (int i = 0; i < Request.Files.Count; i++)
                                        {
                                            HttpPostedFile file = Request.Files[i];
                                            if (!Directory.Exists(Constants.SHOPAPP_PATH_IMAGES + "\\TempZipFiles"))
                                            {
                                                Directory.CreateDirectory(Constants.SHOPAPP_PATH_IMAGES + "\\TempZipFiles");
                                            }
                                            String strFilePath = Constants.SHOPAPP_PATH_IMAGES + "\\TempZipFiles\\" + file.FileName;
                                            if (File.Exists(strFilePath))
                                            {
                                                File.Delete(strFilePath);
                                            }
                                            file.SaveAs(strFilePath);
                                            string   strEntryName = Path.GetFileName(strFilePath); // Removes drive from name and fixes slash direction
                                            ZipEntry objZipEntry  = new ZipEntry(strEntryName);
                                            objZipEntry.DateTime = DateTime.Now;
                                            objZipFile.PutNextEntry(objZipEntry);
                                            // Zip the file in buffered chunks
                                            // the "using" will close the stream even if an exception occurs
                                            byte[] buffer = new byte[4096];
                                            using (FileStream streamReader = File.OpenRead(strFilePath))
                                            {
                                                StreamUtils.Copy(streamReader, objZipFile, buffer);
                                            }
                                            objZipFile.CloseEntry();
                                            File.Delete(strFilePath);
                                        }
                                        objZipFile.IsStreamOwner = true;        // Makes the Close also Close the underlying stream
                                        objZipFile.Close();
                                        objMessage.strAttachment = objMessage.ID + ".zip";
                                    }
                                    else
                                    {
                                        // String filePath = Server.MapPath(Constants.ACIIDENTREPORTIMAGE) + "\\" + objMessage.ID + Path.GetExtension(Request.Files[0].FileName);
                                        Request.Files[0].SaveAs(Constants.SHOPAPP_PATH_IMAGES + "\\" + objMessage.ID + Path.GetExtension(Request.Files[0].FileName));
                                        objMessage.strAttachment = objMessage.ID + Path.GetExtension(Request.Files[0].FileName);
                                    }
                                }
                            }
                            objMessage.Save();
                            objAccidentReport.iMessageId = objMessage.ID;
                            //save the accident report if saved return true else false
                            if (objAccidentReport.Save())
                            {
                                bResult = true;
                                if (Request.QueryString["Contact_Email_ID"] != null)
                                {
                                    SendAccidentReport(objMessage, objAccidentReport, Request.QueryString["Contact_Email_ID"], Request.Headers["Customer_Email_ID"], Request.Headers["Accident_Report_Date"]);
                                }
                                else if (!String.IsNullOrEmpty(Request.Headers["Contact_Email_ID"]))
                                {
                                    SendAccidentReport(objMessage, objAccidentReport, Request.Headers["Contact_Email_ID"], Request.Headers["Customer_Email_ID"], Request.Headers["Accident_Report_Date"]);
                                }
                            }
                        }
                    }
                }
                //}
            }
            catch (Exception ex)
            {
                bResult = false;
            }

            XmlDocument  xmlDoc = new XmlDocument();
            MemoryStream stream = new MemoryStream();
            //XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.ASCII);
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.UTF8);

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("AccidentReport");
            xmlWriter.WriteElementString("Status", bResult ? "Success" : "Fail");
            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
            xmlWriter.Flush();
            byte[] byteArray = stream.ToArray();
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.AppendHeader("Content-Disposition", "filename=MyExportedFile.xml");
            HttpContext.Current.Response.AppendHeader("Content-Length", byteArray.Length.ToString());
            HttpContext.Current.Response.ContentType = "text/xml";
            HttpContext.Current.Response.BinaryWrite(byteArray);
        }
Exemplo n.º 3
0
        private bool setUserPrefferedShop(Int32 iUserId, out Int32 iShopId, out Boolean hasGroupOfPrivateShops, out Boolean bPerfromOperation)
        {
            iShopId = 0;
            hasGroupOfPrivateShops = false;
            bPerfromOperation      = true;
            UserPreferredShopBL objPrefferedShop = UserPreferredShopBL.getShopByUserId(iUserId);
            Int32 iPrivateShopId = 0;

            if (Request.QueryString[Constants.QUERYSTRING_PRIVATELABELSHOPID] != null)
            {
                iPrivateShopId = Convert.ToInt32(Request.QueryString[Constants.QUERYSTRING_PRIVATELABELSHOPID]);
            }
            else if (Request.Form[Constants.QUERYSTRING_PRIVATELABELSHOPID] != null)
            {
                iPrivateShopId = Convert.ToInt32(Request.Form[Constants.QUERYSTRING_PRIVATELABELSHOPID]);
            }
            if (iPrivateShopId > 0)
            {
                BodyShopBL objShop = null;
                List <BodyShopPrivateLabelBL> lstBodyShopPrivateLabelBL = new List <BodyShopPrivateLabelBL>();
                lstBodyShopPrivateLabelBL = BodyShopPrivateLabelBL.GetShopListByPrivateLabelId(iPrivateShopId);

                //Check that more than one shop within this private labeling group? if yes then don't assign preferred shop
                if (lstBodyShopPrivateLabelBL.Count > 1)
                {
                    //This privateLabelId exist for a group of shops; user need to select preferred shop from "Select Preferred Shop" page
                    hasGroupOfPrivateShops = true;
                    return(false);
                }
                else
                {
                    objShop = BodyShopBL.getShopById(Convert.ToInt32(lstBodyShopPrivateLabelBL[0].iShopID));
                }
                if (objShop != null)
                {
                    if (objPrefferedShop == null)
                    {
                        objPrefferedShop = new UserPreferredShopBL();
                    }
                    else
                    {
                        //If user has alredy set same preferred shop then return.
                        if (objShop.ID == objPrefferedShop.iShopId)
                        {
                            bPerfromOperation = false;
                            return(false);
                        }
                        MessageBL objMesssage = MessageBL.getDataByUserShopIdAndType(iUserId, objShop.ID, Constants.REGISTRATIONMESSAGTYPE);
                        if (objMesssage != null)
                        {
                            objMesssage.Delete();
                        }
                    }
                    objPrefferedShop.iShopId = objShop.ID;
                    objPrefferedShop.iUserId = iUserId;
                    if (objPrefferedShop.Save())
                    {
                        iShopId = objShop.ID;
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            return(false);
        }
Exemplo n.º 4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Boolean bResult = false;

            try
            {
                String strPhoneId  = String.Empty;
                String strPhoneId1 = String.Empty;

                if (!String.IsNullOrEmpty(Request.QueryString["ShopID"]))
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId1 = Request.QueryString["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId1 = Request.Form["User_ID"];
                    }
                    if (!Int32.TryParse(Security.DecodeNumbers(Request.QueryString["ShopID"]), out iShopID))
                    {
                        return;
                    }
                }
                else
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId = Request.QueryString["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId = Request.Form["User_ID"];
                    }
                }
                UserBL objUser = null;
                if (!String.IsNullOrEmpty(strPhoneId))
                {
                    //if phone user id is found
                    objUser = UserBL.getDataByPhoneId(strPhoneId);
                }
                else
                {
                    MyCustomerBL objMyCustomer = MyCustomerBL.getDataByShopIdNPhone(iShopID, strPhoneId1);
                    if (objMyCustomer != null)
                    {
                        objUser = UserBL.getByActivityId(objMyCustomer.iUserId.Value);
                    }
                }

                if (objUser != null)
                {
                    String strUserName = String.Empty;

                    if (string.IsNullOrEmpty(objUser.strUserName))
                    {
                        if (Request.QueryString["Phone_Owner_Name"] != null)
                        {
                            objUser.strUserName = Request.QueryString["Phone_Owner_Name"];
                        }
                        else if (Request.Form["Phone_Owner_Name"] != null && !string.IsNullOrEmpty(Request.Form["Phone_Owner_Name"].ToString()))
                        {
                            objUser.strUserName = Request.Form["Phone_Owner_Name"];
                        }
                    }
                    objUser.Save();

                    UserPreferredShopBL objUserPreferredShop = UserPreferredShopBL.getShopByUserId(objUser.ID);



                    MessageBL objMessage = null;
                    if (objUserPreferredShop != null || iShopID > 0)
                    {
                        objMessage = new MessageBL();
                        objMessage.iPhoneUserID = objUser.ID;
                        if (objUserPreferredShop != null)
                        {
                            objMessage.iShopID = objUserPreferredShop.iShopId;
                        }
                        else
                        {
                            objMessage.iShopID = iShopID;
                        }
                        objMessage.dtMessageTime = DateTime.Now;

                        if (Request.QueryString["Message"] != null)
                        {
                            objMessage.strMessage = Request.QueryString["Message"].ToString();
                        }
                        else if (Request.Form["Message"] != null)
                        {
                            objMessage.strMessage = Request.Form["Message"].ToString();
                        }

                        String strType = String.Empty;
                        if (Request.QueryString["MessageType"] != null)
                        {
                            strType = Request.QueryString["MessageType"].ToString();
                        }
                        else if (Request.Form["MessageType"] != null)
                        {
                            strType = Request.Form["MessageType"].ToString();
                        }

                        String[] strPhoneNumbers = null;
                        if (Request.QueryString["smsTo"] != null)
                        {
                            strPhoneNumbers = Request.QueryString["smsTo"].ToString().Split(',');
                        }

                        if (strType.ToLower() == "predefinedsms" && Request.QueryString["Message"] != null)
                        {
                            String strMSG = Request.QueryString["Message"].ToString();
                            if (strPhoneNumbers != null)
                            {
                                SMS objSMS = new SMS();
                                foreach (String item in strPhoneNumbers)
                                {
                                    objSMS.SendSMS(item, objMessage.strMessage, objUser.strPhone, objUser.ID);
                                }
                            }
                        }

                        try
                        {
                            if (Request.QueryString["Latitude"] != null)
                            {
                                objMessage.fLatitude = Convert.ToDouble(Request.QueryString["Latitude"]);
                            }
                            else if (Request.Form["Latitude"] != null)
                            {
                                objMessage.fLatitude = Convert.ToDouble(Request.Form["Latitude"]);
                            }
                        }
                        catch (Exception ex)
                        {
                            objMessage.fLatitude = 0.0;
                        }
                        try
                        {
                            if (Request.QueryString["Longitude"] != null)
                            {
                                objMessage.fLongitude = Convert.ToDouble(Request.QueryString["Longitude"]);
                            }
                            else if (Request.Form["Longitude"] != null)
                            {
                                objMessage.fLongitude = Convert.ToDouble(Request.Form["Longitude"]);
                            }
                        }
                        catch (Exception ex)
                        {
                            objMessage.fLongitude = 0.0;
                        }
                        objMessage.iType = Constants.PredefinedSMS;

                        objMessage.Save();

                        BodyShopBL objBodyShop = null;
                        if (objUserPreferredShop != null)
                        {
                            objBodyShop = BodyShopBL.getShopById(Convert.ToInt32(objUserPreferredShop.iShopId));
                        }
                        else
                        {
                            objBodyShop = BodyShopBL.getShopById(iShopID);
                        }

                        if (objBodyShop != null)
                        {
                            objBodyShop.iNoHelpSelection = (objBodyShop.iNoHelpSelection == null) ? 1 : (objBodyShop.iNoHelpSelection + 1);

                            if (objBodyShop.Save())
                            {
                                if (Cache["CommunicationList"] != null)
                                {
                                    Cache.Remove("CommunicationList");
                                }
                                if (Cache["OpportunityList"] != null)
                                {
                                    Cache.Remove("OpportunityList");
                                }
                                if (Cache["RepairProspect"] != null)
                                {
                                    Cache.Remove("RepairProspect");
                                }
                                if (Cache["EmailMarketing"] != null)
                                {
                                    Cache.Remove("EmailMarketing");
                                }
                                if (Cache["TextMarketing"] != null)
                                {
                                    Cache.Remove("TextMarketing");
                                }
                                bResult = true;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                bResult = false;
            }

            XmlDocument  xmlDoc = new XmlDocument();
            MemoryStream stream = new MemoryStream();
            //XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.ASCII);
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.UTF8);

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("EditCountReport");
            xmlWriter.WriteElementString("Status", bResult ? "Success" : "Fail");
            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
            xmlWriter.Flush();
            byte[] byteArray = stream.ToArray();
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.AppendHeader("Content-Disposition", "filename=MyExportedFile.xml");
            HttpContext.Current.Response.AppendHeader("Content-Length", byteArray.Length.ToString());
            HttpContext.Current.Response.ContentType = "text/xml";
            HttpContext.Current.Response.BinaryWrite(byteArray);
        }
Exemplo n.º 5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Boolean bResult = false;

            try
            {
                String strPhoneId  = String.Empty;
                String strPhoneId1 = String.Empty;

                if (!String.IsNullOrEmpty(Request.QueryString["ShopID"]))
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId1 = Request.QueryString["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId1 = Request.Form["User_ID"];
                    }
                    if (!Int32.TryParse(Security.DecodeNumbers(Request.QueryString["ShopID"]), out iShopID))
                    {
                        return;
                    }
                }
                else
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId = Request.QueryString["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId = Request.Form["User_ID"];
                    }
                }
                UserBL objUser = null;
                if (!String.IsNullOrEmpty(strPhoneId))
                {
                    //if phone user id is found
                    objUser = UserBL.getDataByPhoneId(strPhoneId);
                }
                else
                {
                    MyCustomerBL objMyCustomer = MyCustomerBL.getDataByShopIdNPhone(iShopID, strPhoneId1);
                    if (objMyCustomer != null)
                    {
                        objUser = UserBL.getByActivityId(objMyCustomer.iUserId.Value);
                    }
                }
                if (objUser != null)
                {
                    //if user of that phone user id is found fill message info
                    String strUserName = String.Empty;

                    if (string.IsNullOrEmpty(objUser.strUserName))
                    {
                        if (Request.QueryString["Phone_Owner_Name"] != null)
                        {
                            objUser.strUserName = Request.QueryString["Phone_Owner_Name"];
                        }
                        else if (Request.Form["Phone_Owner_Name"] != null && !string.IsNullOrEmpty(Request.Form["Phone_Owner_Name"].ToString()))
                        {
                            objUser.strUserName = Request.Form["Phone_Owner_Name"];
                        }
                    }

                    //if (!String.IsNullOrEmpty(strUserName) && objUser.strFirstName != strUserName)
                    //{
                    //if user's first name is changed replace it
                    //objUser.strFirstName = strUserName;
                    objUser.Save();
                    //}

                    UserPreferredShopBL objUserPreferredShop = UserPreferredShopBL.getShopByUserId(objUser.ID);



                    if (objUserPreferredShop != null || iShopID > 0)
                    {
                        String strMSG = String.Empty;
                        //save the message against his preferred body shop
                        MessageBL objMessage = new MessageBL();
                        objMessage.iPhoneUserID = objUser.ID;
                        if (objUserPreferredShop != null)
                        {
                            objMessage.iShopID = objUserPreferredShop.iShopId;
                        }
                        else
                        {
                            objMessage.iShopID = iShopID;
                        }
                        objMessage.dtMessageTime = DateTime.Now;

                        if (Request.QueryString["Message"] != null)
                        {
                            objMessage.strMessage = Request.QueryString["Message"].ToString();
                        }
                        else if (Request.Form["Message"] != null)
                        {
                            objMessage.strMessage = Request.Form["Message"].ToString();
                        }

                        String strType = String.Empty;
                        if (Request.QueryString["MessageType"] != null)
                        {
                            strType = Request.QueryString["MessageType"].ToString();
                        }
                        else if (Request.Form["MessageType"] != null)
                        {
                            strType = Request.Form["MessageType"].ToString();
                        }

                        //Check isSendSMS flag to send SMS via Web Application
                        Boolean bIsSendSMS       = false;
                        String  strBodyShopPhone = String.Empty;
                        if (Request.QueryString["sendSMS"] != null && Request.QueryString["sendSMS"].ToString() == "1")
                        {
                            bIsSendSMS = true;
                        }

                        BodyShopBL objBodyShop = null;
                        if (objUserPreferredShop != null && objUserPreferredShop.iShopId.HasValue)
                        {
                            objBodyShop = BodyShopBL.getShopById(objUserPreferredShop.iShopId.Value);
                        }
                        else if (iShopID > 0)
                        {
                            objBodyShop = BodyShopBL.getShopById(iShopID);
                        }
                        if (objBodyShop != null && objBodyShop.strPhone != null)
                        {
                            strBodyShopPhone = objBodyShop.strPhone;
                        }

                        if (!String.IsNullOrEmpty(strType))
                        {
                            switch (strType.ToLower())
                            {
                            //select the message type eg. SMS, Email, Predefined SMS
                            case "sms":
                                objMessage.iType = Constants.SMS;
                                if (bIsSendSMS)
                                {
                                    if (!String.IsNullOrEmpty(strBodyShopPhone))
                                    {
                                        SMS objSMS = new SMS();
                                        objSMS.SendSMS(strBodyShopPhone, objMessage.strMessage, objUser.strPhone, objUser.ID);
                                    }
                                }
                                break;

                            case "email":
                                objMessage.iType = Constants.Email;
                                break;

                            case "predefinedsms":
                                objMessage.iType = Constants.PredefinedSMS;
                                break;
                            }
                        }

                        //save the message n if saved return true to phone n remove cache
                        if (objMessage.Save())
                        {
                            bResult = true;
                            if (objMessage.iType == Constants.PredefinedSMS)
                            {
                                if (Cache["OpportunityList"] != null)
                                {
                                    Cache.Remove("OpportunityList");
                                }
                            }
                            else if (objMessage.iType == Constants.SMS || objMessage.iType == Constants.Email)
                            {
                                if (Cache["CommunicationList"] != null)
                                {
                                    Cache.Remove("CommunicationList");
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                bResult = false;
            }

            XmlDocument  xmlDoc = new XmlDocument();
            MemoryStream stream = new MemoryStream();
            //XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.ASCII);
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.UTF8);

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("MessageReport");
            xmlWriter.WriteElementString("Status", bResult ? "Success" : "Fail");
            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
            xmlWriter.Flush();
            byte[] byteArray = stream.ToArray();
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.AppendHeader("Content-Disposition", "filename=MyExportedFile.xml");
            HttpContext.Current.Response.AppendHeader("Content-Length", byteArray.Length.ToString());
            HttpContext.Current.Response.ContentType = "text/xml";
            HttpContext.Current.Response.BinaryWrite(byteArray);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Boolean bResult = false;

            try
            {
                //String strPhoneId = String.Empty;

                ////get the phone user id
                //if (Request.QueryString["User_ID"] != null)
                //    strPhoneId = Request.QueryString["User_ID"];
                //else if (Request.Headers["User_ID"] != null)
                //    strPhoneId = Request.Headers["User_ID"];
                //else if (Request.Form["User_ID"] != null)
                //    strPhoneId = Request.Form["User_ID"];
                String strPhoneId  = String.Empty;
                String strPhoneId1 = String.Empty;

                if (!String.IsNullOrEmpty(Request.QueryString["ShopID"]))
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId1 = Request.QueryString["User_ID"];
                    }
                    else if (Request.Headers["User_ID"] != null)
                    {
                        strPhoneId = Request.Headers["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId1 = Request.Form["User_ID"];
                    }
                    if (!Int32.TryParse(Security.DecodeNumbers(Request.QueryString["ShopID"]), out iShopID))
                    {
                        return;
                    }
                }
                else
                {
                    if (Request.QueryString["User_ID"] != null)
                    {
                        strPhoneId = Request.QueryString["User_ID"];
                    }
                    else if (Request.Headers["User_ID"] != null)
                    {
                        strPhoneId = Request.Headers["User_ID"];
                    }
                    else if (Request.Form["User_ID"] != null)
                    {
                        strPhoneId = Request.Form["User_ID"];
                    }
                }
                UserBL objUser = null;
                if (!String.IsNullOrEmpty(strPhoneId))
                {
                    string[] strPhones = strPhoneId.Split('_');

                    //find user using phoneID for private label
                    if (strPhones.Length == 3)
                    {
                        objUser = UserBL.getDataByPhoneId(strPhoneId);
                    }
                    else
                    {
                        objUser = UserBL.GetDataByPhoneNumber(strPhones[0]);
                    }
                    if (objUser != null)
                    {
                        MyCustomerBL objMyCustomer = MyCustomerBL.getDataByUserId(objUser.ID);
                        if (objMyCustomer != null)
                        {
                            iShopID = objMyCustomer.iShopId;
                        }
                    }
                }
                else
                {
                    MyCustomerBL objMyCustomer = MyCustomerBL.getDataByShopIdNPhone(iShopID, strPhoneId1);
                    if (objMyCustomer != null)
                    {
                        objUser = UserBL.getByActivityId(objMyCustomer.iUserId.Value);
                    }
                }
                if (objUser != null)
                {
                    //if user of previous phone user id is found fill his accident report information
                    String strUserName = String.Empty;

                    if (String.IsNullOrEmpty(objUser.strUserName))
                    {
                        if (Request.QueryString["Phone_Owner_Name"] != null)
                        {
                            strUserName = Request.QueryString["Phone_Owner_Name"];
                        }
                        else if (Request.Headers["Phone_Owner_Name"] != null)
                        {
                            strUserName = Request.Headers["Phone_Owner_Name"];
                        }
                        else if (Request.Form["Phone_Owner_Name"] != null)
                        {
                            strUserName = Request.Form["Phone_Owner_Name"];
                        }
                    }

                    if (!String.IsNullOrEmpty(strUserName) && objUser.strFirstName != strUserName)
                    {
                        //if user's first name is changed
                        objUser.strFirstName = strUserName;
                        objUser.Save();
                    }
                    UserPreferredShopBL objUserPreferredShop = UserPreferredShopBL.getShopByUserId(objUser.ID);


                    MessageBL objMessage = null;
                    if (objUserPreferredShop != null || iShopID > 0)
                    {
                        String strMessage = "Requested Appointment on: ";
                        if (Request.QueryString["datetime"] != null)
                        {
                            strMessage = strMessage + String.Format("{0:g}", Convert.ToDateTime(Request.QueryString["datetime"].ToString()));
                        }
                        else if (Request.Headers["datetime"] != null)
                        {
                            strMessage = strMessage + String.Format("{0:g}", Convert.ToDateTime(Request.Headers["datetime"].ToString()));
                        }
                        else if (Request.Form["datetime"] != null)
                        {
                            DateTime dtAppointmentDate;
                            DateTime.TryParse((Request.Form["datetime"].ToString()), out dtAppointmentDate);
                            strMessage = strMessage + String.Format("{0:g}", dtAppointmentDate.ToString());
                        }



                        if (Request.QueryString["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.QueryString["reason"].ToString();
                        }
                        else if (Request.Headers["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.Headers["reason"].ToString();
                        }
                        else if (Request.Form["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.Form["reason"].ToString();
                        }
                        //add one message against his preferred shop
                        objMessage              = new MessageBL();
                        objMessage.strMessage   = strMessage;
                        objMessage.iPhoneUserID = objUser.ID;
                        if (objUserPreferredShop != null)
                        {
                            objMessage.iShopID = objUserPreferredShop.iShopId;
                        }
                        else
                        {
                            objMessage.iShopID = iShopID;
                        }
                        objMessage.dtMessageTime = DateTime.Now;
                        objMessage.iType         = Constants.REQUEST_APPOINTMENT;
                        if (objMessage.Save())
                        {
                            bResult = true;
                        }
                    }
                    else if (iShopID > 0)
                    {
                        String strMessage = "Requested Appointment on: ";
                        if (Request.QueryString["datetime"] != null)
                        {
                            strMessage = strMessage + String.Format("{0:g}", Convert.ToDateTime(Request.QueryString["datetime"].ToString()));
                        }
                        else if (Request.Headers["datetime"] != null)
                        {
                            strMessage = strMessage + String.Format("{0:g}", Convert.ToDateTime(Request.Headers["datetime"].ToString()));
                        }
                        else if (Request.Form["datetime"] != null)
                        {
                            DateTime dtAppointmentDate;
                            DateTime.TryParse((Request.Form["datetime"].ToString()), out dtAppointmentDate);
                            strMessage = strMessage + String.Format("{0:g}", dtAppointmentDate.ToString());
                        }



                        if (Request.QueryString["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.QueryString["reason"].ToString();
                        }
                        else if (Request.Headers["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.Headers["reason"].ToString();
                        }
                        else if (Request.Form["reason"] != null)
                        {
                            strMessage = strMessage + " For: " + Request.Form["reason"].ToString();
                        }
                        //add one message against his preferred shop
                        objMessage               = new MessageBL();
                        objMessage.strMessage    = strMessage;
                        objMessage.iPhoneUserID  = objUser.ID;
                        objMessage.iShopID       = iShopID;
                        objMessage.dtMessageTime = DateTime.Now;
                        objMessage.iType         = Constants.REQUEST_APPOINTMENT;
                        if (objMessage.Save())
                        {
                            bResult = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                bResult = false;
            }

            XmlDocument  xmlDoc = new XmlDocument();
            MemoryStream stream = new MemoryStream();
            //XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.ASCII);
            XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.UTF8);

            xmlWriter.WriteStartDocument();
            xmlWriter.WriteStartElement("ScheduleRepairAppointment");
            xmlWriter.WriteElementString("Status", bResult ? "Success" : "Fail");
            xmlWriter.WriteEndElement();
            xmlWriter.WriteEndDocument();
            xmlWriter.Flush();
            byte[] byteArray = stream.ToArray();
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.AppendHeader("Content-Disposition", "filename=MyExportedFile.xml");
            HttpContext.Current.Response.AppendHeader("Content-Length", byteArray.Length.ToString());
            HttpContext.Current.Response.ContentType = "text/xml";
            HttpContext.Current.Response.BinaryWrite(byteArray);
        }