Пример #1
0
        private void Execute(object paremeter)
        {
            ThreadParameter p             = paremeter as ThreadParameter;
            JZDocument      document      = p.document;
            Sys_Module      module        = p.module;
            String          invalidString = "";

            if (module != null)
            {
                if (module.QualifySettings != null && module.QualifySettings.Count > 0)
                {
                    foreach (QualifySetting qs in module.QualifySettings)
                    {
                        Object obj = JZCommonHelper.GetCellValue(document, qs.SheetID, qs.CellName);
                        if (obj != null && obj.ToString() != "")
                        {
                            invalidString = obj.ToString().Trim(' ', '\r', '\n');
                            break;
                        }
                    }
                }
            }
            if (invalidString != "")
            {
                try
                {
                    String[] arr = invalidString.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                    if (arr.Length < 3)
                    {
                        logger.Error("无效的不合格短信内容,document的ID为" + document.ID + ";短信内容为:" + invalidString);
                        return;
                    }
                    Boolean    needSendSMS = false;
                    SMSManager smsManager  = new SMSManager();
                    if (!p.IsAdministrator)
                    {
                        needSendSMS = smsManager.NeedSendSMS(document.ID.ToString(), invalidString);
                        logger.Error(invalidString + "needsendsms=" + needSendSMS);
                    }

                    if (needSendSMS)
                    {
                        smsManager.SendSMS(document.ID.ToString(), invalidString, p.LineID, p.TestRoomCode, p.SegmentName, p.CompanyName, p.TestRoomName, p.LineName);
                    }
                }
                catch (Exception ex)
                {
                    logger.Error("更新合格字段IsQualified失败,原因是" + ex.Message);
                }
            }
            icm.SyncInvalidReport(document.ID, invalidString);
        }