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); }
public static Boolean UpdateEvaluateCondition(ReportEvaluateCondition EvaluateCondition) { return(Convert.ToBoolean(Agent.CallService("Yqun.BO.ReminderManager.dll", "UpdateEvaluateCondition", new object[] { EvaluateCondition }))); }
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); } }
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); }