コード例 #1
0
        public Boolean UpdateEvaluateCondition(ReportEvaluateCondition Condition)
        {
            Boolean result = false;

            StringBuilder sql_Select = new StringBuilder();

            //增加查询条件 Scdel=0 2013-10-17
            sql_Select.Append("select ID,SCTS,ModelIndex,SheetIndex,Description,ReportNumber,ReportDate,Scts_1 from sys_biz_reminder_evaluatecondition where Scdel=0 and modelIndex='");
            sql_Select.Append(Condition.ModelIndex);
            sql_Select.Append("' and SheetIndex='");
            sql_Select.Append(Condition.SheetIndex);
            sql_Select.Append("'");

            DataTable Data = GetDataTable(sql_Select.ToString());

            if (Data != null)
            {
                DataRow Row = null;
                if (Data.Rows.Count > 0)
                {
                    Row = Data.Rows[0];
                }
                else
                {
                    Row = Data.NewRow();
                    Data.Rows.Add(Row);
                }

                Row["ID"]           = Condition.Index;
                Row["SCTS"]         = DateTime.Now.ToString();
                Row["ModelIndex"]   = Condition.ModelIndex;
                Row["SheetIndex"]   = Condition.SheetIndex;
                Row["Description"]  = Condition.Description;
                Row["ReportNumber"] = Condition.ReportNumber;
                Row["ReportDate"]   = Condition.ReportDate;
                //新增字段Scts_1    2013-10-17
                Row["Scts_1"] = DateTime.Now.ToString();
                try
                {
                    object r = Update(Data);
                    result = (Convert.ToInt32(r) == 1);
                }
                catch
                {
                }
            }

            return(result);
        }
コード例 #2
0
 public static Boolean UpdateEvaluateCondition(ReportEvaluateCondition EvaluateCondition)
 {
     return(Convert.ToBoolean(Agent.CallService("Yqun.BO.ReminderManager.dll", "UpdateEvaluateCondition", new object[] { EvaluateCondition })));
 }
コード例 #3
0
        private void Execute(object paremeter)
        {
            Boolean Result;

            ThreadParameter p          = paremeter as ThreadParameter;
            String          ModelIndex = p.ModelIndex;
            DataSet         Data       = p.Data;
            StringBuilder   sql_Select = new StringBuilder();

            // 增加查询条件 Scdel=0     2013-10-19
            sql_Select.Append("Select Description, Sheets from sys_biz_Module where Scdel=0 and ID ='");
            sql_Select.Append(ModelIndex);
            sql_Select.Append("'");

            DataTable Table = GetDataTable(sql_Select.ToString());

            if (Table != null && Table.Rows.Count > 0)
            {
                DataRow  Row        = Table.Rows[0];
                String   Sheets     = Row["Sheets"].ToString();
                String[] SheetArray = Sheets.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                if (SheetArray.Length > 0)
                {
                    String ReportIndex = SheetArray[SheetArray.Length - 1];
                    ReportEvaluateCondition Evaluate = Manager.InitEvaluateConditions(ModelIndex, ReportIndex);
                    if (Evaluate != null)
                    {
                        DataTable ExtentData = Data.Tables[string.Format("[biz_norm_extent_{0}]", ModelIndex)];
                        String    DataID     = ExtentData.Rows[0]["ID"].ToString();
                        String    SCTS       = ExtentData.Rows[0]["SCTS"].ToString();
                        String    SCPT       = ExtentData.Rows[0]["SCPT"].ToString();
                        String    ReportName = Row["Description"].ToString();

                        String ReportNumber = "";
                        if (Evaluate.ReportNumber != "")
                        {
                            String[]  keywords = Evaluate.ReportNumber.Trim('{', '}').Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries);
                            DataTable TempData = Data.Tables[string.Format("[{0}]", keywords[0].Trim())];
                            ReportNumber = TempData.Rows[0][keywords[1].Trim()].ToString();
                        }
                        else
                        {
                            logger.Error(string.Format("试验模板‘{0}’没有配置报告编号", Evaluate.Description));
                        }

                        String ReportDate = "";
                        if (Evaluate.ReportDate != "")
                        {
                            String[]  keywords = Evaluate.ReportDate.Trim('{', '}').Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries);
                            DataTable TempData = Data.Tables[string.Format("[{0}]", keywords[0].Trim())];
                            ReportDate = TempData.Rows[0][keywords[1].Trim()].ToString();
                        }
                        else
                        {
                            logger.Error(string.Format("试验模板‘{0}’没有配置报告日期", Evaluate.Description));
                        }

                        List <string> NotStandardItems = new List <string>();
                        foreach (ItemCondition Item in Evaluate.Items)
                        {
                            String Specifiedvalue = Calculator.CalcCondition(Item.Specifiedvalue, Data);
                            if (string.Compare(Calculator.CalcQualified(Item.Expression, Data), Boolean.TrueString, true) != 0 && Specifiedvalue != "")
                            {
                                string[]  words     = Item.TrueValue.Trim('{', '}').Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries);
                                DataTable TableData = Data.Tables[string.Format("[{0}]", words[0].Trim())];
                                object    value     = TableData.Rows[0][words[1].Trim()];

                                //logger.Error("Item.Specifiedvalue:" + Item.Specifiedvalue);
                                Item.Specifiedvalue = Specifiedvalue;
                                //logger.Error("Item.Specifiedvalue:" + Specifiedvalue);

                                NotStandardItems.Add(string.Format("{0},{1},{2}", Item.Text, Item.Specifiedvalue, value));
                            }
                        }

                        if (NotStandardItems.Count > 0)
                        {
                            Boolean    needSendSMS = false;
                            SMSManager smsManager  = new SMSManager();
                            if (!p.IsAdministrator)
                            {
                                needSendSMS = smsManager.NeedSendSMS(DataID, string.Join("||", NotStandardItems.ToArray()));
                            }

                            Result = ItemConditionManager.UpdateItemConditions(DataID, SCTS, SCPT, ModelIndex, ReportName, ReportNumber, ReportDate, string.Join("||", NotStandardItems.ToArray()));
                            if (needSendSMS)
                            {
                                //smsManager.SendSMS(DataID, string.Join("||", NotStandardItems.ToArray()));
                            }
                        }
                        else
                        {
                            //判断并修改AdditionalQualified标记
                            ItemConditionManager.QualifyInvalidReport(DataID);
                        }
                    }
                }
            }

            try
            {
                if (ModelIndex != TestRoomBasicInformation.拌和站基本情况登记表 &&
                    ModelIndex != TestRoomBasicInformation.试验人员技术档案 &&
                    ModelIndex != TestRoomBasicInformation.试验室仪器设备汇总表 &&
                    ModelIndex != TestRoomBasicInformation.试验室综合情况登记表)
                {
                    String    tablename  = string.Format("[biz_norm_extent_{0}]", ModelIndex);
                    DataTable ExtentData = Data.Tables[tablename];
                    String    DataID     = ExtentData.Rows[0]["ID"].ToString();
                    String    sql        = String.Format("select ID from sys_biz_reminder_evaluateData where ID='{0}' and AdditionalQualified=0", DataID);
                    DataTable data       = GetDataTable(sql);
                    int       v          = (data != null && data.Rows.Count > 0 ? 0 : 1);
                    sql = "update " + tablename + " set IsQualified = " + v + " where ID='" + DataID + "'";
                    int r = ExcuteCommand(sql);
                    //logger.Error("更新合格字段IsQualified的返回值为" + r);
                }
            }
            catch (Exception ex)
            {
                logger.Error("更新合格字段IsQualified失败,原因是" + ex.Message);
            }
        }
コード例 #4
0
        public ReportEvaluateCondition InitEvaluateConditions(String ModelIndex, String SheetIndex)
        {
            ReportEvaluateCondition r = null;

            //增加查询条件 Scdel=0 2013-10-17
            StringBuilder sql_Select = new StringBuilder();

            sql_Select.Append("select ID, Description,ReportNumber,ReportDate from sys_biz_reminder_evaluatecondition where Scdel=0 and modelIndex='");
            sql_Select.Append(ModelIndex);
            sql_Select.Append("' and SheetIndex='");
            sql_Select.Append(SheetIndex);
            sql_Select.Append("'");

            //增加查询条件 Scdel=0 2013-10-17
            StringBuilder sql_Item = new StringBuilder();

            sql_Item.Append("select ID,Text,Specifiedvalue,Truevalue,Expression from sys_biz_reminder_Itemcondition where Scdel=0 and EvaluateIndex='");
            sql_Item.Append(string.Concat(ModelIndex, "_", SheetIndex));
            sql_Item.Append("' order by OrderIndex");

            DataSet ds = GetDataSet(new string[] { sql_Select.ToString(), sql_Item.ToString() });

            if (ds != null)
            {
                DataTable ReportEvaluateTable = ds.Tables["sys_biz_reminder_evaluatecondition"];
                DataTable ItemTable           = ds.Tables["sys_biz_reminder_Itemcondition"];

                if (ReportEvaluateTable.Rows.Count > 0)
                {
                    DataRow Row          = ReportEvaluateTable.Rows[0];
                    String  ID           = Row["ID"].ToString();
                    String  Description  = Row["Description"].ToString();
                    String  ReportNumber = Row["ReportNumber"].ToString();
                    String  ReportDate   = Row["ReportDate"].ToString();

                    r              = new ReportEvaluateCondition();
                    r.Index        = ID;
                    r.ModelIndex   = ModelIndex;
                    r.SheetIndex   = SheetIndex;
                    r.Description  = Description;
                    r.ReportNumber = ReportNumber;
                    r.ReportDate   = ReportDate;

                    foreach (DataRow ItemRow in ItemTable.Rows)
                    {
                        String Index          = ItemRow["ID"].ToString();
                        String Text           = ItemRow["Text"].ToString();
                        String Specifiedvalue = ItemRow["Specifiedvalue"].ToString();
                        String Truevalue      = ItemRow["Truevalue"].ToString();
                        String Expression     = ItemRow["Expression"].ToString();

                        ItemCondition Condition = new ItemCondition();
                        Condition.Index          = Index;
                        Condition.EvaluateIndex  = string.Concat(ModelIndex, "_", SheetIndex);
                        Condition.Text           = Text;
                        Condition.Specifiedvalue = Specifiedvalue;
                        Condition.TrueValue      = Truevalue;
                        Condition.Expression     = Expression;

                        r.Items.Add(Condition);
                    }
                }
            }

            return(r);
        }