Exemplo n.º 1
0
        //status add
        private void AddStatus_Click(object sender, RoutedEventArgs e)
        {
            AddStatus statusWindow = new AddStatus();

            statusWindow.ShowDialog();
            statusesGrid.ItemsSource = _db.statuses.ToList();
        }
Exemplo n.º 2
0
        private void button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                AddStatus addstatus = AddStatus.Add;

                if (IsValid())
                {
                    addstatus = bl.AddTrainee(trainee);
                    trainee   = new Trainee();
                    switch (addstatus)
                    {
                    case AddStatus.Add:
                        lblUpdateMesssage.Content    = "נוסף בהצלחה";
                        lblUpdateMesssage.Visibility = Visibility.Visible;
                        break;

                    case AddStatus.Update:
                        lblUpdateMesssage.Content    = "עודכן בהצלחה";
                        lblUpdateMesssage.Visibility = Visibility.Visible;
                        break;

                    default:
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                lblUpdateMesssage.Content    = ex.Message;
                lblUpdateMesssage.Visibility = Visibility.Visible;
            }
        }
Exemplo n.º 3
0
        public AddStatus AddTrainee(Trainee t)
        {
            AddStatus addStatus = AddStatus.Add;
            Trainee   trainee   = null;

            trainee = dal.searchTrainee(t.Id);
            if (trainee != null)
            {
                addStatus = AddStatus.Update;
                UpdateTrainee(t);
            }
            else
            {
                dal.AddTrainee(t);
            }
            return(addStatus);
        }
Exemplo n.º 4
0
        public AddStatus AddTester(Tester t)
        {
            AddStatus addStatus = AddStatus.Add;
            Tester    tester    = null;

            tester = dal.searchTester(t.Id);
            if (tester != null)
            {
                addStatus = AddStatus.Update;
                UpdateTester(t);
            }
            else
            {
                dal.AddTester(t);
            }
            return(addStatus);
        }
        private void button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                AddStatus addstatus = AddStatus.Add;

                if (IsValid())
                {
                    addstatus = bl.AddTester(tester);
                    tester    = new Tester();
                    switch (addstatus)
                    {
                    case AddStatus.Add:
                        lblUpdateMesssage.Content    = "נוסף בהצלחה";
                        lblUpdateMesssage.Visibility = Visibility.Visible;
                        break;

                    case AddStatus.Update:
                        lblUpdateMesssage.Content    = "עודכן בהצלחה";
                        lblUpdateMesssage.Visibility = Visibility.Visible;
                        break;

                    default:
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                lblUpdateMesssage.Content    = ex.Message;
                lblUpdateMesssage.Visibility = Visibility.Visible;
            }

            Thread.Sleep(2000);
            this.Close();
        }
Exemplo n.º 6
0
        public JsonResult CreateJson(AddStatus status)
        {
            string messageResult = "Progress has been updated";

            using (var dbTrans = db.Database.BeginTransaction())
            {
                try
                {
                    foreach (AddStatusDtl dtl in status.dtl)
                    {
                        ass_complaint_dtl compDtl = db.ass_complaint_dtl.Where(a => a.id == dtl.compDtlId).FirstOrDefault();
                        if (compDtl != null)
                        {
                            compDtl.curr_status_id = dtl.statusId;
                            ass_status_update up = new ass_status_update
                            {
                                compdtl_id  = dtl.compDtlId,
                                status_id   = dtl.statusId,
                                status_date = DateTime.Today,
                                remark      = dtl.remark,
                                user_id     = int.Parse(User.Identity.Name)
                            };
                            db.ass_status_update.Add(up);
                            db.SaveChanges();

                            ass_complaint complaint = db.ass_complaint
                                                      .Where(a => a.id == compDtl.comp_id)
                                                      .FirstOrDefault();
                            if (!complaint.ass_complaint_dtl.Where(x => x.curr_status_id == null || !x.ass_status.name.Contains("CLOSED")).Any())
                            {
                                complaint.closing_date = DateTime.Today;
                            }

                            bool cancel = true;
                            foreach (ass_complaint_dtl itemDtl in complaint.ass_complaint_dtl)
                            {
                                if (!itemDtl.currentStatus.Contains("CANCEL"))
                                {
                                    cancel = false;
                                }
                            }

                            if (cancel)
                            {
                                complaint.cancel_date = DateTime.Now;
                            }

                            ass_status currentStatus = db.ass_status.Where(a => a.id == dtl.statusId).FirstOrDefault();
                            if (currentStatus != null && currentStatus.name.Contains("DONE") && complaint.cp_email != "")
                            {
                                if (!complaint.ass_complaint_dtl.Where(x => x.curr_status_id == null || (!x.ass_status.name.Contains("CLOSED") && !x.ass_status.name.Contains("DONE"))).Any())
                                {
                                    //#GET SENDER EMAIL
                                    ass_email_sender mailSender   = db.ass_email_sender.FirstOrDefault();
                                    string           templateBody = mailSender.email_template;

                                    //#SEND EMAIL
                                    DateTime today  = DateTime.Today;
                                    string   mailNo = today.Day.ToString() + "/ASS-GLC/" + IntExtensions.ToRomanNumeral(today.Month) + "/" + today.Year;
                                    string   templateHTML;
                                    //Read template file from the App_Data folder
                                    using (var sr = new StreamReader(Server.MapPath("\\App_Data\\Templates\\") + "MailAssDone.html"))
                                    {
                                        templateHTML = sr.ReadToEnd();
                                    }
                                    MailMessage mail = new MailMessage();
                                    mail.To.Add(complaint.cp_email);
                                    //mail.To.Add("*****@*****.**");
                                    //mail.From = new MailAddress("*****@*****.**");
                                    mail.From    = new MailAddress(mailSender.email);
                                    mail.Subject = "Surat Pemberitahuan Komplain Telah Selesai";
                                    string messageBody = @"
                                    <table style='width:100%'>
                                        <tr>
                                            <th>#</th>
                                            <th>Uraian Checklist</th>
                                            <th>Proses</th>
                                            <th>Keterangan</th>
                                        </tr>";

                                    int x = 1;
                                    foreach (ass_complaint_dtl ass_complaint_dtl in complaint.ass_complaint_dtl)
                                    {
                                        string descs = ass_complaint_dtl.ass_category.name + " "
                                                       + ass_complaint_dtl.ass_location.name + " "
                                                       + ass_complaint_dtl.descs;
                                        string contentDtl = "<tr>";
                                        contentDtl  += "<td>" + x.ToString() + "</td>";
                                        contentDtl  += "<td>" + descs + "</td>";
                                        contentDtl  += "<td>" + ass_complaint_dtl.currentStatus + "</td>";
                                        contentDtl  += "<td>" + ass_complaint_dtl.currentRemark + "</td>";
                                        contentDtl  += "</tr>";
                                        messageBody += contentDtl;
                                        x++;
                                    }
                                    messageBody += "</table>";

                                    string Body = templateBody.Replace("{emailNo}", mailNo)
                                                  .Replace("{cluster}", complaint.pm_tenancy.pl_project.descs)
                                                  .Replace("{lotNo}", complaint.lot_no)
                                                  .Replace("{date}", DateTime.Today.ToString("dd MMMM yyyy"))
                                                  .Replace("{complaintDetail}", messageBody)
                                                  .Replace("{complaintDate}", complaint.check_date.ToString("dd MMM yyyy"));
                                    Body            = templateHTML.Replace("{body}", Body);
                                    mail.Body       = Body;
                                    mail.IsBodyHtml = true;
                                    SmtpClient smtp = new SmtpClient();
                                    smtp.Host = "mx.agungsedayu.com";
                                    smtp.Port = 25;
                                    smtp.UseDefaultCredentials = false;
                                    //smtp.Credentials = new System.Net.NetworkCredential
                                    //("*****@*****.**", "aqswde123");// Enter seders User name and password
                                    smtp.Credentials = new System.Net.NetworkCredential
                                                           (mailSender.email, EncrypHelpers.Decrypt(mailSender.password));// Enter seders User name and password
                                    smtp.EnableSsl = true;
                                    smtp.Send(mail);

                                    ass_complaint_mail compMail = new ass_complaint_mail
                                    {
                                        mail_no    = mailNo,
                                        email_to   = complaint.cp_email,
                                        mail_date  = today,
                                        comp_id    = complaint.id,
                                        user_id    = int.Parse(User.Identity.Name),
                                        audit_date = DateTime.Now
                                    };
                                    db.ass_complaint_mail.Add(compMail);
                                    db.SaveChanges();
                                    //#END SEND EMAIL
                                    messageResult = "Progress has been updated and Email has been sent.";
                                }
                            }

                            db.SaveChanges();
                        }
                    }
                    dbTrans.Commit();
                    return(Json(new { success = 1, ex = messageResult }));
                }
                catch (Exception ex)
                {
                    dbTrans.Rollback();
                    return(Json(new { success = 0, ex = ex.ToString() }));
                }
            }
        }
Exemplo n.º 7
0
        public new AddStatus Add(OrderItem i_item)
        {
            AddStatus status = AddStatus.Available;

            if (i_item == null)
            {
                return(status);
            }
            int id = i_item.Id;

            if (id == 0)
            {
                return(status);
            }
            double nextTotal = i_item.Total + m_total;//preview total if item is added to list

            if (m_budget > 0)
            {
                if (nextTotal == m_budget)
                {
                    status = AddStatus.LastItemAchieved;
                }
                else if (nextTotal < m_budget)
                {
                    status = AddStatus.Available;
                }
                else
                {
                    return(AddStatus.OverFlow);
                }
            }
            m_total = nextTotal;
            if (m_productIndex == null)
            {
                m_productIndex = new Dictionary <int, int>();
            }
            else if (m_productIndex.ContainsKey(id))
            {
                int index = m_productIndex[id];
                if (index >= Count)
                {
                    m_productIndex.Remove(id);
                }
                else
                {
                    OrderItem existingItem = this[index];
                    if (existingItem == null)
                    {
                        RemoveAt(index);
                        m_productIndex.Remove(id);
                    }
                    else
                    {
                        existingItem.Merge(i_item);
                        return(status);
                    }
                }
            }
            m_productIndex.Add(id, Count);
            base.Add(i_item);
            return(status);
        }
Exemplo n.º 8
0
        /// <summary>新增單字,將單字、單字的例句加進本地資料,需搭配getHTML</summary>
        /// <param name="word">"單字</param>
        /// <param name="htmlstr">getHTML的結果</param>
        /// <param name="success">輸出結果,方便得知失敗原因,有Success或SearchFail或HaveWord</param>
        public static void addWordData(string word, string htmlstr, out AddStatus success)
        {
            if (!Words.Keys.Contains(word))//判斷資料庫內是否已經有該單字
            {
                var htmlDoc = NSoupClient.Parse(htmlstr);
                try
                {
                    var allBlock     = htmlDoc.GetElementsByTag("ol").First(x => x.Attr("class") == "mb-15 reg searchCenterMiddle");
                    var meaningBlock = allBlock.GetElementsByTag("div").First(x => x.Attr("class") == "grp grp-tab-content-explanation tabsContent tab-content-explanation tabActived");

                    var phonetic = htmlDoc.GetElementsByTag("div").First(x => x.Attr("class") == "compList ml-25 d-ib").Text();
                    phonetic = phonetic.Replace('ˋ', '`');

                    var w         = new Word(word, phonetic);//給word物件單字和音標
                    var sentences = new List <Sentence>();

                    var           rows           = meaningBlock.GetElementsByTag("li").ToArray();
                    var           sentencesByPos = new Dictionary <string, Dictionary <string, List <Sentence> > >();
                    string        partOfSpeech   = "";
                    List <string> chiMeaning     = null;
                    for (int i = 0; i < rows.Length; i++)//詞性
                    {
                        var rowStr = rows[i].Text();
                        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\d+");
                        System.Text.RegularExpressions.Match match = regex.Match(rowStr);
                        if (match.Success)
                        {
                            //中文意思
                            var meaning = rows[i].GetElementsByTag("span").First().Text();
                            chiMeaning.Add(meaning);
                            if (!sentencesByPos[partOfSpeech].ContainsKey(meaning))
                            {
                                sentencesByPos[partOfSpeech].Add(meaning, new List <Sentence>());
                            }
                            var sentenceElements = rows[i].GetElementsByTag("p");
                            foreach (var sentenceElement in sentenceElements)
                            {
                                var sentence          = sentenceElement.Text();
                                int firstChineseIndex = -1;
                                for (int j = 0; j < sentence.Length; j++)
                                {
                                    UnicodeCategory cat = char.GetUnicodeCategory(sentence[j]);
                                    if (cat == UnicodeCategory.OtherLetter)
                                    {
                                        firstChineseIndex = j;
                                        break;
                                    }
                                }
                                var engSentence = sentence.Substring(0, firstChineseIndex - 1);
                                var chiSentence = sentence.Substring(firstChineseIndex);
                                var s           = new Sentence(chiSentence, engSentence, word, partOfSpeech, chiMeaning.Count - 1);
                                sentencesByPos[partOfSpeech][meaning].Add(s);
                                sentences.Add(s);
                            }
                        }
                        else
                        {
                            if (partOfSpeech != string.Empty)
                            {
                                w.chineseMeaning[partOfSpeech] = chiMeaning;
                            }
                            //詞性
                            partOfSpeech = rowStr;
                            sentencesByPos[partOfSpeech] = new Dictionary <string, List <Sentence> >();
                            chiMeaning = new List <string>();
                        }
                    }
                    w.chineseMeaning[partOfSpeech] = chiMeaning;
                    Sentances[word] = sentences;
                    Words[word]     = w;
                    saveDataToLocal();//儲存資料在本地端
                    success = AddStatus.Success;
                }
                catch (Exception e)
                {
                    success = AddStatus.SearchFail;
                }
            }
            else
            {
                success = AddStatus.HaveWord;
            }
        }
Exemplo n.º 9
0
 public AddResult(AddStatus status, int quantity)
 {
     Status   = status;
     Quantity = quantity;
 }
Exemplo n.º 10
0
 private static void SetStatus(string message) => AddStatus?.Invoke(message);