/// <summary> /// 任务退回 /// </summary> /// <param name="strTaskId">任务Id</param> /// <returns></returns> private string GoToBack(string strTaskId) { bool IsSuccess = new TMisMonitorResultLogic().TaskGoBackInQcCheck_QHD(strTaskId, LogInfo.UserInfo.ID, "duty_other_analyse_control", "0", "40", "30"); return(IsSuccess == true ? "1" : "0"); }
/// <summary> /// 判断分析类现场项目是否全部走到了该环节(现场结果复核) /// </summary> /// <param name="strTaskId"></param> /// <returns></returns> public string IsCanToSend(string strTaskId) { bool IsCanToSend = new TMisMonitorResultLogic().IsAnalySampleItemFlow(strTaskId, "02"); return(IsCanToSend == true ? "1" : "0"); }
//判断任务是否可以发送 public string IsCanSendTaskQcToNextFlow(string strTaskId) { bool IsCanGoToBack = new TMisMonitorResultLogic().TaskCanSendInQcCheck_QHD(strTaskId, LogInfo.UserInfo.ID, "04", true); return(IsCanGoToBack == true ? "1" : "0"); }
/// <summary> /// 退回之前判断任务是否可以回退 /// </summary> /// <param name="strTaskId">任务ID</param> /// <returns></returns> public string IsCanGoToBack(string strTaskId) { bool IsCanGoToBack = new TMisMonitorResultLogic().IsCanGoToBack(strTaskId, LogInfo.UserInfo.ID, "duty_other_analyse", "01"); return(IsCanGoToBack == true ? "1" : "0"); }
/// <summary> /// 发送到下一环节 /// </summary> /// <param name="strTaskId">任务ID</param> /// <returns></returns> public string SendToNext(string strTaskId) { bool IsSuccess = new TMisMonitorResultLogic().sendToNextFlow(strTaskId, LogInfo.UserInfo.ID, "duty_other_analyse", "03", "01", "02"); return(IsSuccess == true ? "1" : "0"); }
/// <summary> /// 保存质控数据 /// </summary> /// <returns></returns> public string saveQcValue() { bool isSuccess = false; if (this.hidQC_TYPE.Value == "5") { //空白数据 string strEmptyValue1 = Request["QC_EMPTY_IN_VALUE1"] == "" ? "0" : Request["QC_EMPTY_IN_VALUE1"].ToString(); string strEmptyValue2 = Request["QC_EMPTY_IN_VALUE2"] == "" ? "0" : Request["QC_EMPTY_IN_VALUE2"].ToString(); string strEmptyValue3 = Request["QC_EMPTY_IN_VALUE3"] == "" ? "0" : Request["QC_EMPTY_IN_VALUE3"].ToString(); string strEmptyValue = Request["QC_EMPTY_IN_RESULT"] == "" ? "0" : Request["QC_EMPTY_IN_RESULT"].ToString(); string strEmptyCount = this.dEmptyCount.Value.Trim() == "" ? "0" : this.dEmptyCount.Value.Trim(); TMisMonitorQcEmptyBatVo QcEmptyBatVo = new TMisMonitorQcEmptyBatVo(); QcEmptyBatVo.ID = this.hidID.Value; QcEmptyBatVo.QC_EMPTY_IN_RESULT = strEmptyValue; QcEmptyBatVo.REMARK1 = strEmptyValue1; QcEmptyBatVo.REMARK2 = strEmptyValue2; QcEmptyBatVo.REMARK3 = strEmptyValue3; QcEmptyBatVo.QC_EMPTY_IN_COUNT = strEmptyCount; isSuccess = new TMisMonitorQcEmptyBatLogic().Edit(QcEmptyBatVo); } if (this.hidQC_TYPE.Value == "8") { //标准样数据 string strSRC_IN_VALUE1 = Request["SRC_IN_VALUE1"] == "" ? "0" : Request["SRC_IN_VALUE1"].ToString(); string strSRC_IN_VALUE2 = Request["SRC_IN_VALUE2"] == "" ? "0" : Request["SRC_IN_VALUE2"].ToString(); string strSRC_IN_VALUE3 = Request["SRC_IN_VALUE3"] == "" ? "0" : Request["SRC_IN_VALUE3"].ToString(); string strStResult = this.dSrcCount.Value.Trim() == "" ? "0" : this.dSrcCount.Value.Trim(); TMisMonitorQcStVo QcStVo = new TMisMonitorQcStVo(); QcStVo.ID = this.hidID.Value; QcStVo.REMARK1 = strSRC_IN_VALUE1; QcStVo.REMARK2 = strSRC_IN_VALUE2; QcStVo.REMARK3 = strSRC_IN_VALUE3; QcStVo.ST_RESULT = strStResult; isSuccess = new TMisMonitorQcStLogic().Edit(QcStVo); } if (this.hidQC_TYPE.Value == "6") { //实验室加标数据 string strAddResultEx = Request["ADD_RESULT_EX"] == "" ? "0" : Request["ADD_RESULT_EX"].ToString(); string strQcAdd = Request["QC_ADD"] == "" ? "0" : Request["QC_ADD"].ToString(); string strAddBack = Request["ADD_BACK"] == "" ? "0" : Request["ADD_BACK"].ToString(); TMisMonitorQcAddVo QcAddVo = new TMisMonitorQcAddVo(); QcAddVo.ID = this.hidID.Value; QcAddVo.ADD_RESULT_EX = strAddResultEx; QcAddVo.QC_ADD = strQcAdd; QcAddVo.ADD_BACK = strAddBack; isSuccess = new TMisMonitorQcAddLogic().Edit(QcAddVo); } if (this.hidQC_TYPE.Value == "7") { //实验室明码平行 string strTwinResult1 = Request["TWIN_RESULT1"] == "" ? "0" : Request["TWIN_RESULT1"].ToString(); string strTwinResult2 = Request["TWIN_RESULT2"] == "" ? "0" : Request["TWIN_RESULT2"].ToString(); string strTwinAvg = Request["TWIN_AVG"] == "" ? "0" : Request["TWIN_AVG"].ToString(); string strTwinOffSet = Request["TWIN_OFFSET"] == "" ? "0" : Request["TWIN_OFFSET"].ToString(); TMisMonitorQcTwinVo QcTwinVo = new TMisMonitorQcTwinVo(); QcTwinVo.ID = this.hidID.Value; QcTwinVo.TWIN_RESULT1 = strTwinResult1; QcTwinVo.TWIN_RESULT2 = strTwinResult2; QcTwinVo.TWIN_AVG = strTwinAvg; QcTwinVo.TWIN_OFFSET = strTwinOffSet; isSuccess = new TMisMonitorQcTwinLogic().Edit(QcTwinVo); if (isSuccess) { TMisMonitorResultVo ResultVo = new TMisMonitorResultVo(); ResultVo.ID = this.hidSrcResultID.Value; ResultVo.ITEM_RESULT = strTwinAvg; isSuccess = new TMisMonitorResultLogic().Edit(ResultVo); } } return(isSuccess == true ? "1" : "0"); }
/// <summary> /// 根据监测项目获取分析方法 /// </summary> /// <param name="strItemId">监测项目ID</param> /// <returns></returns> public string getAnalysisByItemId(string strItemId) { DataTable dt = new TMisMonitorResultLogic().getAnalysisByItemId(strItemId); return(DataTableToJson(dt)); }
public static string getBlindString(string strSampleId) { string strBlindString = new TMisMonitorResultLogic().getBlindString(strSampleId); return(strBlindString); }
public static string btnSendClick(string strSubtaskID, string strSampleIDs, string strAttribute) { bool isSuccess = true; string strReturn = ""; TMisMonitorSampleInfoVo objSampleInfoVo = new TMisMonitorSampleInfoVo(); string[] objSampleID = strSampleIDs.TrimEnd(',').Split(','); for (int i = 0; i < objSampleID.Length; i++) { objSampleInfoVo.ID = objSampleID[i].ToString(); if (new TMisMonitorResultLogic().SelectSampleDeptWithSampleID(objSampleID[i].ToString()).Rows.Count > 0) { objSampleInfoVo.NOSAMPLE = "1"; } else { objSampleInfoVo.NOSAMPLE = "2"; } new TMisMonitorSampleInfoLogic().Edit(objSampleInfoVo); } TMisMonitorSubtaskVo objSubtask = new TMisMonitorSubtaskLogic().Details(strSubtaskID); TMisMonitorTaskVo objTask = new TMisMonitorTaskLogic().Details(objSubtask.TASK_ID); //如果接收科室是现场室就直接把现场监测项目发送到现场复核 if (objTask.STATE == "01") { isSuccess = new TMisMonitorResultLogic().updateResultBySample(strSampleIDs.TrimEnd(','), "022", true); } strReturn = "1"; objSampleInfoVo = new TMisMonitorSampleInfoVo(); objSampleInfoVo.SUBTASK_ID = strSubtaskID; objSampleInfoVo.NOSAMPLE = "0"; objSampleInfoVo = new TMisMonitorSampleInfoLogic().Details(objSampleInfoVo); if (objSampleInfoVo.ID.Length == 0) { strReturn = "2"; string strTaskID = objSubtask.TASK_ID; if (objSubtask.MONITOR_ID.Contains("000000004") || objSubtask.MONITOR_ID == "000000005") { objSubtask.TASK_STATUS = "03"; } else { objSubtask.TASK_STATUS = "021"; } //子任务所有项目都属于现场项目,跳过分析环节 DataTable dtSampleDept = new TMisMonitorResultLogic().SelectSampleDeptWithSubtaskID(strSubtaskID); if (dtSampleDept.Rows.Count == 0) { objSubtask.TASK_STATUS = "03"; //objSubtask.REMARK1 = objSubtask.ID; } isSuccess = new TMisMonitorSubtaskLogic().Edit(objSubtask); //任务全部完成,修改任务表状态 int iStatus = 0; objSubtask = new TMisMonitorSubtaskVo(); objSubtask.TASK_ID = strTaskID; DataTable dtTask = new TMisMonitorSubtaskLogic().SelectByTable(objSubtask); for (int j = 0; j < dtTask.Rows.Count; j++) { if (dtTask.Rows[j]["TASK_STATUS"].ToString() != "09") { iStatus += 1; } } if (iStatus == 0) { objTask = new TMisMonitorTaskVo(); objTask.ID = strTaskID; objTask.TASK_STATUS = "09"; new TMisMonitorTaskLogic().Edit(objTask); } } TMisMonitorSampleSkyVo objSampleSky = new TMisMonitorSampleSkyVo(); for (int i = 0; i < strAttribute.Split('-').Length; i++) { if (strAttribute.Split('-')[i].Contains("|")) { objSampleSky.SUBTASK_ID = strSubtaskID; objSampleSky.WEATHER_ITEM = strAttribute.Split('-')[i].Split('|')[0]; objSampleSky = new TMisMonitorSampleSkyLogic().Details(objSampleSky); objSampleSky.WEATHER_INFO = strAttribute.Split('-')[i].Split('|')[1]; objSampleSky.SUBTASK_ID = strSubtaskID; objSampleSky.WEATHER_ITEM = strAttribute.Split('-')[i].Split('|')[0]; if (objSampleSky.ID.Length > 0) { isSuccess = new TMisMonitorSampleSkyLogic().Edit(objSampleSky); } else { objSampleSky.ID = GetSerialNumber("TMisMonitorSampleSky"); isSuccess = new TMisMonitorSampleSkyLogic().Create(objSampleSky); } } } return(isSuccess == true ? strReturn : "0"); }
public static string CopyPointItem(string strCopyID, string strPastID, string strSubtaskID) { bool isSuccess = true; string strCopyPointID = new TMisMonitorSampleInfoLogic().Details(strCopyID).POINT_ID; string strPastPointID = new TMisMonitorSampleInfoLogic().Details(strPastID).POINT_ID; TMisMonitorTaskItemVo objPointItemCopy = new TMisMonitorTaskItemVo(); objPointItemCopy.IS_DEL = "0"; objPointItemCopy.TASK_POINT_ID = strCopyPointID; DataTable dtCopy = new TMisMonitorTaskItemLogic().SelectByTable(objPointItemCopy); TMisMonitorTaskItemVo objPointItemPast = new TMisMonitorTaskItemVo(); objPointItemPast.IS_DEL = "0"; objPointItemPast.TASK_POINT_ID = strPastPointID; DataTable dtPast = new TMisMonitorTaskItemLogic().SelectByTable(objPointItemPast); string strIsExistItem = ""; for (int i = 0; i < dtPast.Rows.Count; i++) { strIsExistItem += "," + dtPast.Rows[i]["ITEM_ID"].ToString(); } strIsExistItem += strIsExistItem.Length > 0 ? "," : ""; //获取粘贴样品ID,填充结果表数据 TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(strPastID); for (int i = 0; i < dtCopy.Rows.Count; i++) { DataRow dr = dtCopy.Rows[i]; string strCopyItemID = dr["ITEM_ID"].ToString(); if (!strIsExistItem.Contains(strCopyItemID)) { TMisMonitorTaskItemVo objPointItem = new TMisMonitorTaskItemVo(); objPointItem.ID = GetSerialNumber("t_base_company_point_item_id"); objPointItem.IS_DEL = "0"; objPointItem.TASK_POINT_ID = strPastPointID; objPointItem.ITEM_ID = strCopyItemID; isSuccess = new TMisMonitorTaskItemLogic().Create(objPointItem); TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = objSample.ID; objResult.ITEM_ID = strCopyItemID; objResult.QC_TYPE = objSample.QC_TYPE; objResult.RESULT_STATUS = "01"; //填充默认分析方法和方法依据 TBaseItemAnalysisVo objItemAnalysis = new TBaseItemAnalysisVo(); objItemAnalysis.ITEM_ID = strCopyItemID; objItemAnalysis.IS_DEFAULT = "是"; objItemAnalysis.IS_DEL = "0"; objItemAnalysis = new TBaseItemAnalysisLogic().Details(objItemAnalysis); if (objItemAnalysis.ID.Length > 0) { TBaseMethodAnalysisVo objMethod = new TBaseMethodAnalysisLogic().Details(objItemAnalysis.ANALYSIS_METHOD_ID); objResult.ANALYSIS_METHOD_ID = objMethod.ID; objMethod.METHOD_ID = objMethod.METHOD_ID; } isSuccess = new TMisMonitorResultLogic().Create(objResult); string strAnalysisManagerID = ""; string strAnalysisManID = ""; TMisMonitorResultVo objResultTemp = new TMisMonitorResultVo(); objResultTemp.ID = objResult.ID; DataTable dtManager = new TMisMonitorResultLogic().SelectManagerByTable(objResultTemp); if (dtManager.Rows.Count > 0) { strAnalysisManagerID = dtManager.Rows[0]["ANALYSIS_MANAGER"].ToString(); strAnalysisManID = dtManager.Rows[0]["ANALYSIS_ID"].ToString(); } TMisMonitorResultAppVo objResultApp = new TMisMonitorResultAppVo(); objResultApp.ID = GetSerialNumber("MonitorResultAppId"); objResultApp.RESULT_ID = objResult.ID; objResultApp.HEAD_USERID = strAnalysisManagerID; objResultApp.ASSISTANT_USERID = strAnalysisManID; isSuccess = new TMisMonitorResultAppLogic().Create(objResultApp); } } if (isSuccess) { return("1"); } else { return("0"); } }
/// <summary> /// 新增现场平行质控信息 /// </summary> /// <returns></returns> private static bool AddQcTwinInfo(string strSampleID, string strQcType, string strListQc3, string strQc3Count) { bool IsSuccess = true; string strOldResultID = ""; TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(strSampleID); objSample.ID = GetSerialNumber("MonitorSampleId"); objSample.QC_TYPE = strQcType; objSample.QC_SOURCE_ID = strSampleID; if (strQcType == "4") { objSample.SAMPLE_NAME += "密码平行"; } else { objSample.SAMPLE_NAME += "现场平行"; } if (!new TMisMonitorSampleInfoLogic().Create(objSample)) { IsSuccess = false; } for (int i = 0; i < strListQc3.Split(',').Length; i++) { TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.SAMPLE_ID = strSampleID; objResult.QC_TYPE = "0"; objResult.ITEM_ID = strListQc3.Split(',')[i]; objResult = new TMisMonitorResultLogic().Details(objResult); strOldResultID = objResult.ID; objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = objSample.ID; objResult.QC_TYPE = strQcType; objResult.QC_SOURCE_ID = strOldResultID; objResult.SOURCE_ID = strOldResultID; objResult.QC = strQC; if (!new TMisMonitorResultLogic().Create(objResult)) { IsSuccess = false; } InsertResultAPP(objResult.ID); TMisMonitorQcTwinVo objQcTwin = new TMisMonitorQcTwinVo(); objQcTwin.ID = GetSerialNumber("QcTwinId"); objQcTwin.RESULT_ID_SRC = strOldResultID; objQcTwin.RESULT_ID_TWIN1 = objResult.ID; objQcTwin.QC_TYPE = strQcType; if (!new TMisMonitorQcTwinLogic().Create(objQcTwin)) { IsSuccess = false; } } if (strQc3Count == "2") { objSample.ID = GetSerialNumber("MonitorSampleId"); if (strQcType == "4") { objSample.SAMPLE_NAME += "密码平行2"; } else { objSample.SAMPLE_NAME += "现场平行2"; } if (!new TMisMonitorSampleInfoLogic().Create(objSample)) { IsSuccess = false; } for (int i = 0; i < strListQc3.Split(',').Length; i++) { TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.SAMPLE_ID = strSampleID; objResult.QC_TYPE = "0"; objResult.ITEM_ID = strListQc3.Split(',')[i]; objResult = new TMisMonitorResultLogic().Details(objResult); strOldResultID = objResult.ID; objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = objSample.ID; objResult.QC_TYPE = strQcType; objResult.QC_SOURCE_ID = strOldResultID; objResult.SOURCE_ID = strOldResultID; objResult.QC = strQC; if (!new TMisMonitorResultLogic().Create(objResult)) { IsSuccess = false; } InsertResultAPP(objResult.ID); TMisMonitorQcTwinVo objQcTwin = new TMisMonitorQcTwinVo(); objQcTwin.RESULT_ID_SRC = strOldResultID; objQcTwin.QC_TYPE = strQcType; objQcTwin = new TMisMonitorQcTwinLogic().Details(objQcTwin); objQcTwin.TWIN_RESULT2 = objResult.ID; if (!new TMisMonitorQcTwinLogic().Edit(objQcTwin)) { IsSuccess = false; } } } return(IsSuccess); }
public static string SaveDataItem(string strSubtaskID, string strSample, string strSelItem_IDs) { bool isSuccess = true; string[] arrSelItemId = strSelItem_IDs.Split(','); TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(strSample); TMisMonitorTaskItemVo objPointItemSet = new TMisMonitorTaskItemVo(); objPointItemSet.IS_DEL = "1"; TMisMonitorTaskItemVo objPointItemWhere = new TMisMonitorTaskItemVo(); objPointItemWhere.IS_DEL = "0"; objPointItemWhere.TASK_POINT_ID = objSample.POINT_ID; new TMisMonitorTaskItemLogic().Edit(objPointItemSet, objPointItemWhere); TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult = new TMisMonitorResultVo(); if (strSample.Length > 0) { objResult.SAMPLE_ID = strSample; new TMisMonitorResultLogic().Delete(objResult); } if (strSelItem_IDs.Length > 0) { for (int i = 0; i < arrSelItemId.Length; i++) { TMisMonitorTaskItemVo objPointItem = new TMisMonitorTaskItemVo(); objPointItem.ID = GetSerialNumber("t_mis_monitor_task_item_id"); objPointItem.IS_DEL = "0"; objPointItem.TASK_POINT_ID = objSample.POINT_ID; objPointItem.ITEM_ID = arrSelItemId[i]; isSuccess = new TMisMonitorTaskItemLogic().Create(objPointItem); objResult = new TMisMonitorResultVo(); objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = objSample.ID; objResult.ITEM_ID = arrSelItemId[i]; objResult.QC_TYPE = objSample.QC_TYPE; objResult.RESULT_STATUS = "01"; //填充默认分析方法和方法依据 TBaseItemAnalysisVo objItemAnalysis = new TBaseItemAnalysisVo(); objItemAnalysis.ITEM_ID = arrSelItemId[i]; objItemAnalysis.IS_DEFAULT = "是"; objItemAnalysis.IS_DEL = "0"; objItemAnalysis = new TBaseItemAnalysisLogic().Details(objItemAnalysis); if (objItemAnalysis.ID.Length > 0) { TBaseMethodAnalysisVo objMethod = new TBaseMethodAnalysisLogic().Details(objItemAnalysis.ANALYSIS_METHOD_ID); objResult.ANALYSIS_METHOD_ID = objMethod.ID; objMethod.METHOD_ID = objMethod.METHOD_ID; } isSuccess = new TMisMonitorResultLogic().Create(objResult); string strAnalysisManagerID = ""; string strAnalysisManID = ""; TMisMonitorResultVo objResultTemp = new TMisMonitorResultVo(); objResultTemp.ID = objResult.ID; DataTable dtManager = new TMisMonitorResultLogic().SelectManagerByTable(objResultTemp); if (dtManager.Rows.Count > 0) { strAnalysisManagerID = dtManager.Rows[0]["ANALYSIS_MANAGER"].ToString(); strAnalysisManID = dtManager.Rows[0]["ANALYSIS_ID"].ToString(); } TMisMonitorResultAppVo objResultApp = new TMisMonitorResultAppVo(); objResultApp.ID = GetSerialNumber("MonitorResultAppId"); objResultApp.RESULT_ID = objResult.ID; objResultApp.HEAD_USERID = strAnalysisManagerID; objResultApp.ASSISTANT_USERID = strAnalysisManID; isSuccess = new TMisMonitorResultAppLogic().Create(objResultApp); } } if (isSuccess) { return("1"); } else { return("0"); } }
//获取指定点位的监测项目信息 private string getItemList() { string strSampleID = Request.Params["strSampleID"]; string strSortname = Request.Params["sortname"]; string strSortorder = Request.Params["sortorder"]; int intPageIdx = Convert.ToInt32(Request.Params["page"]); int intPagesize = Convert.ToInt32(Request.Params["pagesize"]); string strSelPointID = (Request.Params["selPointID"] != null) ? Request.Params["selPointID"] : ""; if (strSelPointID.Length <= 0) { return(""); } if (strSortname == null || strSortname.Length < 0) { strSortname = TMisMonitorTaskItemVo.ID_FIELD; } TMisMonitorResultVo objResult = new TMisMonitorResultVo(); if (strSampleID == null) { strSampleID = strSelPointID; } objResult.SAMPLE_ID = strSampleID; objResult.SORT_FIELD = strSortname; objResult.SORT_TYPE = strSortorder; DataTable dt = new TMisMonitorResultLogic().SelectByTable(objResult, intPageIdx, intPagesize); DataColumn dcP; dcP = new DataColumn("TASK_POINT_ID", Type.GetType("System.String")); dt.Columns.Add(dcP); for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["TASK_POINT_ID"] = strSelPointID; } int intTotalCount = new TMisMonitorResultLogic().GetSelectResultCount(objResult); //TMisMonitorTaskItemVo objPointItem = new TMisMonitorTaskItemVo(); //objPointItem.IS_DEL = "0"; //objPointItem.TASK_POINT_ID = strSelPointID; //objPointItem.SORT_FIELD = strSortname; //objPointItem.SORT_TYPE = strSortorder; //TMisMonitorTaskItemLogic logicPointItem = new TMisMonitorTaskItemLogic(); //int intTotalCount = logicPointItem.GetSelectResultCount(objPointItem); ;//总计的数据条数 //DataTable dt = logicPointItem.SelectByTable(objPointItem, intPageIdx, intPagesize); foreach (DataRow row in dt.Rows) { string strSamplingInstrumentId = row["SAMPLING_INSTRUMENT"] == null ? "" : row["SAMPLING_INSTRUMENT"].ToString(); if (strSamplingInstrumentId != "") { string strSamplingInstrumentName = new TBaseItemSamplingInstrumentLogic().Details(strSamplingInstrumentId).INSTRUMENT_NAME; row["REMARK_1"] = strSamplingInstrumentName; } } string strJson = CreateToJson(dt, intTotalCount); return(strJson); }
/// <summary> /// 样品发送 /// </summary> /// <param name="strResultId">监测结果Id</param> /// <returns></returns> public string ResultGoToBack(string strResultId) { bool isSuccess = new TMisMonitorResultLogic().SendResultToNext_ZZ(strResultId, LogInfo.UserInfo.ID, "40", "30"); return(isSuccess == true ? "1" : "0"); }
public static string deleteSample(string strSampleID) { bool IsSuccess = new TMisMonitorResultLogic().deleteSampleInfo(strSampleID); return(IsSuccess == true ? "1" : "0"); }
public static bool QcSave(string strSampleID, string strQcType, string strItemId, string strQcAddValue) { deleteSampleInfo(strSampleID, strQcType); bool isSuccess = true; if (strItemId == "") { return(isSuccess); } string strSourceResultId = ""; TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(strSampleID); objSample.ID = GetSerialNumber("MonitorSampleId"); objSample.QC_TYPE = strQcType; objSample.QC_SOURCE_ID = strSampleID; objSample.SAMPLE_NAME += "现场加标"; //objSample.SAMPLE_CODE = GetSampleCode_QHD(strSampleID); //新增点位时候,自动生成该点位的样品编码 TMisMonitorSubtaskVo objSubtask = new TMisMonitorSubtaskLogic().Details(objSample.SUBTASK_ID); TMisMonitorTaskVo objTask = new TMisMonitorTaskLogic().Details(objSubtask.TASK_ID); TBaseSerialruleVo objSerial = new TBaseSerialruleVo(); objSerial.SAMPLE_SOURCE = objTask.SAMPLE_SOURCE; objSerial.SERIAL_TYPE = "2"; objSample.SAMPLECODE_CREATEDATE = DateTime.Now.ToString("yyyy-MM-dd"); //objSample.SAMPLE_CODE = CreateBaseDefineCodeForSample(objSerial, objTask, objSubtask); if (!new TMisMonitorSampleInfoLogic().Create(objSample)) { isSuccess = false; } for (int i = 0; i < strItemId.Split(',').Length; i++) { TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.SAMPLE_ID = strSampleID; objResult.QC_TYPE = "0"; objResult.ITEM_ID = strItemId.Split(',')[i]; objResult = new TMisMonitorResultLogic().Details(objResult); strSourceResultId = objResult.ID; objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = objSample.ID; objResult.QC_TYPE = strQcType; objResult.QC_SOURCE_ID = strSourceResultId; objResult.SOURCE_ID = strSourceResultId; objResult.QC = "###"; if (!new TMisMonitorResultLogic().Create(objResult)) { isSuccess = false; } InsertResultAPP(objResult.ID); TMisMonitorQcAddVo objQcAdd = new TMisMonitorQcAddVo(); objQcAdd.ID = GetSerialNumber("QcAddId"); objQcAdd.RESULT_ID_SRC = strSourceResultId; objQcAdd.RESULT_ID_ADD = objResult.ID; objQcAdd.QC_TYPE = strQcType; objQcAdd.QC_ADD = strQcAddValue.Split(',')[i]; if (!new TMisMonitorQcAddLogic().Create(objQcAdd)) { isSuccess = false; } } return(isSuccess); }
public string getCalculate() { string objStr = ""; //空白平均值 string strEmptyValue = ""; string strEmptyCount = ""; //标准样平均值 string strSrcValue = ""; string strSrcCount = ""; //回收率 string strAddBack = ""; //平均值 string strAvgValue = ""; //偏差 string strOffSet = ""; //如果是实验室空白 if (this.hidQC_TYPE.Value == "5") { //空白个数值 string strValue1 = Request["QC_EMPTY_IN_VALUE1"].ToString().Trim(); string strValue2 = Request["QC_EMPTY_IN_VALUE2"].ToString().Trim(); string strValue3 = Request["QC_EMPTY_IN_VALUE3"].ToString().Trim(); //空白个数 strEmptyCount = (int.Parse(strValue1 == "" ? "0" : "1") + int.Parse(strValue2 == "" ? "0" : "1") + int.Parse(strValue3 == "" ? "0" : "1")).ToString(); //计算平均值 if (strEmptyCount != "0") { strEmptyValue = ((decimal.Parse(strValue1 == "" ? "0" : strValue1) + decimal.Parse(strValue2 == "" ? "0" : strValue2) + decimal.Parse(strValue3 == "" ? "0" : strValue3)) / int.Parse(strEmptyCount)).ToString(); } objStr = "{\"strEmptyCount\":\"" + strEmptyCount + "\",\"strEmptyValue\":\"" + strEmptyValue + "\"}"; } //如果是标准样 if (this.hidQC_TYPE.Value == "8") { //标准样个数值 string strValue1 = Request["SRC_IN_VALUE1"].ToString().Trim(); string strValue2 = Request["SRC_IN_VALUE2"].ToString().Trim(); string strValue3 = Request["SRC_IN_VALUE3"].ToString().Trim(); //标准样个数 strSrcCount = (int.Parse(strValue1 == "" ? "0" : "1") + int.Parse(strValue2 == "" ? "0" : "1") + int.Parse(strValue3 == "" ? "0" : "1")).ToString(); //计算平均值 if (strSrcCount != "0") { strSrcValue = ((decimal.Parse(strValue1 == "" ? "0" : strValue1) + decimal.Parse(strValue2 == "" ? "0" : strValue2) + decimal.Parse(strValue3 == "" ? "0" : strValue3)) / int.Parse(strSrcCount)).ToString(); } objStr = "{\"strSrcCount\":\"" + strSrcCount + "\",\"strSrcValue\":\"" + strSrcValue + "\"}"; } //如果是实验室加标 if (this.hidQC_TYPE.Value == "6") { //测定值 string strAddResultEx = Request["ADD_RESULT_EX"].ToString(); //加标量 string strQcAdd = Request["QC_ADD"].ToString(); //原始测定值 string strResult = Request["ADD_RESULT"].ToString(); //计算回收率 decimal AddBack = 0; if (strResult != "" && strResult != "0" && strQcAdd != "") { AddBack = Math.Abs(decimal.Parse(strAddResultEx) - decimal.Parse(strResult)) / decimal.Parse(strQcAdd) * 100; strAddBack = Math.Round(AddBack, 1).ToString(); } objStr = "{\"strAddBack\":\"" + strAddBack + "\"}"; } //实验室明码平行 if (this.hidQC_TYPE.Value == "7") { string strResultId = Request["hidSrcResultID"].ToString(); string strValue1 = Request["TWIN_RESULT1"].ToString(); string strValue2 = Request["TWIN_RESULT2"].ToString(); if (strResultId != "" && strValue1 != "" && strValue2 != "") { //根据结果ID获取监测监测项目ID string strQcTwinValue = new TMisMonitorResultLogic().getQcTwinValueEx(strResultId, strValue1, strValue2); strAvgValue = strQcTwinValue.Split(',')[0]; strOffSet = strQcTwinValue.Split(',')[1]; } objStr = "{\"strAvgValue\":\"" + strAvgValue + "\",\"strOffSet\":\"" + strOffSet + "\"}"; } return(objStr); }
public string getSubTaskInfo(string workID, string strUser) { string strJson = ""; var identification = CCFlowFacade.GetFlowIdentification(strUser, long.Parse(workID)); TMisMonitorSubtaskVo objSubtaskVo = new TMisMonitorSubtaskLogic().Details(identification); TMisMonitorTaskVo objTaskVo = new TMisMonitorTaskLogic().Details(objSubtaskVo.TASK_ID); strJson += "'任务编号':'" + objTaskVo.TICKET_NUM + "','监测类别':'" + new TBaseMonitorTypeInfoLogic().Details(objSubtaskVo.MONITOR_ID).MONITOR_TYPE_NAME + "'"; TMisMonitorSampleInfoVo objSampleVo = new TMisMonitorSampleInfoVo(); objSampleVo.SUBTASK_ID = objSubtaskVo.ID; List <TMisMonitorSampleInfoVo> listSample = new List <TMisMonitorSampleInfoVo>(); listSample = new TMisMonitorSampleInfoLogic().SelectByObject(objSampleVo, 0, 0); strJson += ",'监测点位':["; for (int i = 0; i < listSample.Count; i++) { if (i == 0) { strJson += "{"; } else { strJson += ",{"; } strJson += "'点位名称':'" + listSample[i].SAMPLE_NAME + "','样品编号':'" + listSample[i].SAMPLE_CODE + "','条码':'" + listSample[i].SAMPLE_BARCODE + "'"; strJson += ",'监测项目':["; TMisMonitorResultVo objResultVo = new TMisMonitorResultVo(); objResultVo.SAMPLE_ID = listSample[i].ID; List <TMisMonitorResultVo> listResult = new TMisMonitorResultLogic().SelectByObject(objResultVo, 0, 0); for (int j = 0; j < listResult.Count; j++) { if (j == 0) { strJson += "{"; } else { strJson += ",{"; } strJson += "'项目名称':'" + new TBaseItemInfoLogic().Details(listResult[j].ITEM_ID).ITEM_NAME + "','现场项目':'" + new TBaseItemInfoLogic().Details(listResult[j].ITEM_ID).IS_SAMPLEDEPT + "'"; strJson += "}"; } strJson += "]}"; } strJson += "]"; strJson = "[{" + strJson + "}]"; return(strJson); }
public static string btnSendClick(string strSubtaskID, string strAttribute) { bool isSuccess = true; TMisMonitorSubtaskVo objSubtask = new TMisMonitorSubtaskLogic().Details(strSubtaskID); string strTaskID = objSubtask.TASK_ID; if (objSubtask.MONITOR_ID == "000000004" || objSubtask.MONITOR_ID == "000000005") { objSubtask.TASK_STATUS = "09"; } else { objSubtask.TASK_STATUS = "03"; } //子任务所有项目都属于现场项目,跳过分析环节 DataTable dtSampleDept = new TMisMonitorResultLogic().SelectSampleDeptWithSubtaskID(strSubtaskID); if (dtSampleDept.Rows.Count == 0) { objSubtask.TASK_STATUS = "09"; } isSuccess = new TMisMonitorSubtaskLogic().Edit(objSubtask); //任务全部完成,修改任务表状态 int iStatus = 0; objSubtask = new TMisMonitorSubtaskVo(); objSubtask.TASK_ID = strTaskID; DataTable dtTask = new TMisMonitorSubtaskLogic().SelectByTable(objSubtask); for (int j = 0; j < dtTask.Rows.Count; j++) { if (dtTask.Rows[j]["TASK_STATUS"].ToString() != "09") { iStatus += 1; } } if (iStatus == 0) { TMisMonitorTaskVo objTask = new TMisMonitorTaskVo(); objTask.ID = strTaskID; objTask.TASK_STATUS = "09"; new TMisMonitorTaskLogic().Edit(objTask); } TMisMonitorSampleSkyVo objSampleSky = new TMisMonitorSampleSkyVo(); for (int i = 0; i < strAttribute.Split('-').Length; i++) { if (strAttribute.Split('-')[i].Contains("|")) { objSampleSky.SUBTASK_ID = strSubtaskID; objSampleSky.WEATHER_ITEM = strAttribute.Split('-')[i].Split('|')[0]; objSampleSky = new TMisMonitorSampleSkyLogic().Details(objSampleSky); objSampleSky.WEATHER_INFO = strAttribute.Split('-')[i].Split('|')[1]; objSampleSky.SUBTASK_ID = strSubtaskID; objSampleSky.WEATHER_ITEM = strAttribute.Split('-')[i].Split('|')[0]; if (objSampleSky.ID.Length > 0) { isSuccess = new TMisMonitorSampleSkyLogic().Edit(objSampleSky); } else { objSampleSky.ID = GetSerialNumber("TMisMonitorSampleSky"); isSuccess = new TMisMonitorSampleSkyLogic().Create(objSampleSky); } } } return(isSuccess == true ? "1" : "0"); }
/// <summary> /// 样品发送 /// </summary> /// <param name="strSimpleId">样品ID</param> /// <returns></returns> public string SendToNext(string strSimpleId) { bool isSuccess = new TMisMonitorResultLogic().ResultSendToNext(strSimpleId, LogInfo.UserInfo.ID, "02", "03"); return(isSuccess == true ? "1" : "0"); }
public static string GetLims(string strValue) { bool isSuccess = true; string strConnection = ConfigurationManager.ConnectionStrings["Lims"].ToString(); DataTable dt = new TMisMonitorResultLogic().getSimpleCodeInResult_QY(strValue, new PageBase().LogInfo.UserInfo.ID, "20"); foreach (DataRow dr in dt.Rows) { if (dr["ITEM_RESULT"].ToString().Length == 0) { string strResultId = dr["ID"].ToString(); string strSampleCode = dr["SAMPLE_CODE"].ToString(); string strApparatusCode = dr["APPARATUS_CODE"].ToString(); string strItemId = dr["ITEM_ID"].ToString(); string strUnitSrc = "mg/L"; //暂时写死单位为mg/L string strItemName = ""; //获取项目在仪器中对应的化学式,暂时写死 if ("000000052|000000147|000000690|000000896|000000897|000001261|000001358|000001374|000001471|000001487|000001584|000001600|000001697|000001713|000001810".Contains(strItemId)) { strItemName = "As4"; } if ("000000056|000000151|000000694|000000890|000000891|000001265|000001356|000001378|000001469|000001491|000001582|000001604|000001695|000001717|000001808".Contains(strItemId)) { strItemName = "Cd"; } if ("000000059|000000142|000000158|000000697|000000884|000000886|000000887|000000888|000001268|000001354|000001381|000001467|000001494|000001580|000001607|000001693|000001720|000001806".Contains(strItemId)) { strItemName = "Hg4"; } if ("000000073|000000711|000001282|000001395|000001508|000001621|000001734".Contains(strItemId)) { strItemName = "TN"; } TMisMonitorTaskItemLogic objLogic = new TMisMonitorTaskItemLogic(); string strSql = "select * from T_LIMS_APPARATUS_DATA where APPARATUS_CODE='{0}'"; strSql = string.Format(strSql, strApparatusCode); DataTable dtTable = objLogic.SelectSQL_ByTable_forMobile(strSql, 0, 0); string strRe = "", strUnit = "", strSrcID = "", strTableName = ""; #region get Lims Data if (dtTable.Rows.Count > 0) { DataRow drTable = dtTable.Rows[0]; strTableName = drTable["LIMS_TABLE"].ToString(); string strRltColName = drTable["LIMS_RESULT_COL"].ToString(); string strUnitColName = drTable["LIMS_UNIT_COL"].ToString(); string strSampleColName = drTable["LIMS_SAMPLE_COL"].ToString(); string strItemColName = drTable["LIMS_ITEM_COL"].ToString(); DataTable objTable = new DataTable(); string strLimsSql = "select * from " + strTableName + " where IF_ERR='0' and " + strSampleColName + " ='" + strSampleCode + "' and " + strItemColName + " = '" + strItemName + "'"; objTable = ExecuteDataTableEx(strLimsSql, strConnection); if (objTable.Rows.Count > 0) { DataRow drResult = objTable.Rows[0]; strRe = drResult[strRltColName].ToString(); strUnit = drResult[strUnitColName].ToString(); strSrcID = drResult["ID"].ToString(); } } #endregion if (strRe.Length > 0) { TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.ID = strResultId; objResult.REMARK_4 = strSrcID; objResult.REMARK_5 = strTableName; objResult.REMARK_3 = "1"; if (strUnit == "ug/L" || strUnit == "μg/L") { if (strUnitSrc == "mg/L") { float fRe = float.Parse(strRe) / 1000; objResult.ITEM_RESULT = fRe.ToString(); } } else { objResult.ITEM_RESULT = strRe; } new TMisMonitorResultLogic().Edit(objResult); } } } return(isSuccess == true ? "1" : "0"); }
protected void Page_Load(object sender, EventArgs e) { //定义结果 string strResult = ""; if (!IsPostBack) { if (Request.QueryString["type"] == "check") { var UserNo = Request.QueryString["UserNo"];//有两个UserNo???等解决 UserNo = UserNo.Split(',').Count() > 1 ? UserNo.Split(',')[1] : UserNo; UserNo = UserNo.Trim(','); var workID = Convert.ToInt32(Request.QueryString["OID"]);//OID为流程ID var strSubTaskID = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split('|')[0]; var sampleIdList = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries).ToList(); if (sampleIdList.Count > 0) { sampleIdList.RemoveAt(0); } //huangjinjun add 2016.1.26 如果REMARK3等于true,将ph值、电导率、溶解氧设为分析项目 TMisMonitorTaskVo tm = new TMisMonitorTaskVo(); TMisMonitorSubtaskVo tmsub = new TMisMonitorSubtaskVo(); tmsub = new TMisMonitorSubtaskLogic().Details(strSubTaskID); tm.ID = tmsub.TASK_ID; DataTable dt = new TMisMonitorTaskLogic().SelectByTable(tm); if (dt.Rows[0]["REMARK3"].ToString() == "true") { bool bl = new TBaseItemInfoLogic().EditItemTypeFX(); } else { bool bl = new TBaseItemInfoLogic().EditItemTypeXC(); } //获取现场项目 DataTable dtSampleItem = new TMisMonitorResultLogic().SelectSampleItemWithSubtaskID(strSubTaskID, sampleIdList: sampleIdList); if (dtSampleItem.Rows.Count > 0) { TMisMonitorSubtaskAppVo objSubtaskAppVo = new TMisMonitorSubtaskAppVo(); objSubtaskAppVo.SUBTASK_ID = strSubTaskID; objSubtaskAppVo = new TMisMonitorSubtaskAppLogic().Details(objSubtaskAppVo); //objSubtaskAppVo.SAMPLING_CHECK = "administrator";//临时测试 if (!string.IsNullOrEmpty(objSubtaskAppVo.SAMPLING_CHECK)) { //TSysUserVo objUserVo = new TSysUserLogic().Details(objSubtaskAppVo.SAMPLING_CHECK); //var childFlowID = System.Configuration.ConfigurationManager.AppSettings["XCSSH"].ToString().Trim(','); //var childNodeID = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["XCSSHJNode"]); //CCFlowFacade.Node_CreateBlankWork(UserNo, childFlowID, UserNo, null, workID, fid, flowId, nodeId, UserNo, childNodeID, objUserVo.USER_NAME.Trim(','), "@GroupMark=" + strSubTaskID); } else { Response.Write("false没有指定现场项目复核人,不能发送"); Response.ContentType = "text/plain"; Response.ContentEncoding = Encoding.UTF8; Response.End(); } //yinchengyi 2015-4-24 打开页面时 记录ccflow流程ID信息到业务系统数据库 //TMisMonitorSubtaskVo objSubtaskVo = new TMisMonitorSubtaskVo(); //objSubtaskVo.ID = strSubTaskID; //objSubtaskVo.CCFLOW_ID1 = workID.ToString(); //objSubtaskVo.CCFLOW_ID2 = fid.ToString(); //if (!new TMisMonitorSubtaskLogic().Edit(objSubtaskVo)) //{ // Response.Write("false流程ID更新失败,不能发送"); // Response.ContentType = "text/plain"; // Response.ContentEncoding = Encoding.UTF8; // Response.End(); //} } //分析类现场项目判断 var strTaskID = ""; var FID = Convert.ToInt64(Request.QueryString["FID"]); TMisContractPlanVo objPlanVo = new TMisContractPlanVo(); objPlanVo.CCFLOW_ID1 = FID.ToString(); objPlanVo = new TMisContractPlanLogic().Details(objPlanVo); if (objPlanVo.ID.Length > 0 && objPlanVo.REAMRK1 == "1") { //当前流程属于送样的 strTaskID = new TMisMonitorTaskLogic().Details(new TMisMonitorTaskVo { PLAN_ID = objPlanVo.ID }).ID; strSubTaskID = ""; } else { strTaskID = ""; strSubTaskID = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split('|')[0]; } DataTable dtInfo = new TMisMonitorResultLogic().getItemInfoBySubTaskID_MAS(strTaskID, strSubTaskID, true); for (int i = 0; i < dtInfo.Rows.Count; i++) { if (dtInfo.Rows[i]["IS_ANYSCENE_ITEM"].ToString() == "1") { if (dtInfo.Rows[i]["USER_NAME"].ToString() == "") { Response.Write("false分析负责人信息没有选择完整,请检查"); Response.ContentType = "text/plain"; Response.End(); } } } Response.Write("true"); Response.ContentEncoding = Encoding.UTF8; Response.ContentType = "text/plain"; Response.End(); } if (Request.QueryString["type"] == "AfterSuccessSend") { Response.ContentEncoding = Encoding.GetEncoding("gb2312"); var UserNo = Request.QueryString["UserNo"];//有两个UserNo???等解决 UserNo = UserNo.Split(',').Count() > 1 ? UserNo.Split(',')[1] : UserNo; var workID = Convert.ToInt32(Request.QueryString["OID"]);//OID为流程ID var flowId = Request.QueryString["FK_Flow"]; var nodeId = Convert.ToInt32(Request.QueryString["FK_Node"]); var fid = Convert.ToInt32(Request.QueryString["FID"]); var strSubTaskID = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split('|')[0]; var sampleIdList = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries).ToList(); if (sampleIdList.Count > 0) { sampleIdList.RemoveAt(0); } //huangjinjun add 2016.1.26 如果REMARK3等于true,将ph值、电导率、溶解氧设为分析项目 TMisMonitorTaskVo tm = new TMisMonitorTaskVo(); TMisMonitorSubtaskVo tmsub = new TMisMonitorSubtaskVo(); tmsub = new TMisMonitorSubtaskLogic().Details(strSubTaskID); tm.ID = tmsub.TASK_ID; DataTable dt = new TMisMonitorTaskLogic().SelectByTable(tm); if (dt.Rows[0]["REMARK3"].ToString() == "true") { bool bl = new TBaseItemInfoLogic().EditItemTypeFX(); } else { bool bl = new TBaseItemInfoLogic().EditItemTypeXC(); } //获取现场项目 DataTable dtSampleItem = new TMisMonitorResultLogic().SelectSampleItemWithSubtaskID(strSubTaskID, sampleIdList: sampleIdList); if (dtSampleItem.Rows.Count > 0) { TMisMonitorSubtaskAppVo objSubtaskAppVo = new TMisMonitorSubtaskAppVo(); objSubtaskAppVo.SUBTASK_ID = strSubTaskID; objSubtaskAppVo = new TMisMonitorSubtaskAppLogic().Details(objSubtaskAppVo); if (!string.IsNullOrEmpty(objSubtaskAppVo.SAMPLING_CHECK)) { TSysUserVo objUserVo = new TSysUserLogic().Details(objSubtaskAppVo.SAMPLING_CHECK); var childFlowID = System.Configuration.ConfigurationManager.AppSettings["XCSSH"].ToString(); var childNodeID = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["XCSSHJNode"]); var subTaskVo = new TMisMonitorSubtaskLogic().Details(strSubTaskID); var taskVo = new TMisMonitorTaskLogic().Details(subTaskVo.TASK_ID); var tempID = CCFlowFacade.Node_CreateBlankWork(UserNo, childFlowID, UserNo, null, workID, fid, flowId, nodeId, UserNo, childNodeID, objUserVo.USER_NAME, "@GroupMark=" + strSubTaskID); CCFlowFacade.SetFlowTitle(UserNo, childFlowID, tempID, taskVo.PROJECT_NAME); } } //创建分析类现场项目 var strTaskID = ""; var FID = Convert.ToInt64(Request.QueryString["FID"]); UserNo = UserNo.Split(',').Count() > 1 ? UserNo.Split(',')[1] : UserNo; UserNo = UserNo.Trim(','); TMisContractPlanVo objPlanVo = new TMisContractPlanVo(); objPlanVo.CCFLOW_ID1 = FID.ToString(); objPlanVo = new TMisContractPlanLogic().Details(objPlanVo); if (objPlanVo.ID.Length > 0 && objPlanVo.REAMRK1 == "1") { //当前流程属于送样的 strTaskID = new TMisMonitorTaskLogic().Details(new TMisMonitorTaskVo { PLAN_ID = objPlanVo.ID }).ID; strSubTaskID = ""; } else { strTaskID = ""; strSubTaskID = CCFlowFacade.GetFlowIdentification(UserNo, workID).Split('|')[0]; } var childFlowID3 = System.Configuration.ConfigurationManager.AppSettings["FXLXCXM"].ToString().Trim(','); var childNodeID3 = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["FXLXCXMJNode"]);//配置为跳转到分析室审核流程的第三个节点by lhm DataTable dtInfo = new TMisMonitorResultLogic().getItemInfoBySubTaskID_MAS(strTaskID, strSubTaskID, true); for (int i = 0; i < dtInfo.Rows.Count; i++) { if (dtInfo.Rows[i]["USER_NAME"].ToString() == "") { Response.Write("false分析负责人信息没有选择完整,请检查"); Response.ContentType = "text/plain"; Response.End(); } var itemVo = new TBaseItemInfoLogic().Details(dtInfo.Rows[i]["ITEM_ID"].ToString()); var sampleVo = new TMisMonitorSampleInfoLogic().Details(dtInfo.Rows[i]["SAMPLE_ID"].ToString()); var subtaskVO = new TMisMonitorSubtaskLogic().Details(sampleVo.SUBTASK_ID); var taskVo = new TMisMonitorTaskLogic().Details(subtaskVO.TASK_ID); long workid = 0; var title = string.Format("{0} {1}", taskVo.PROJECT_NAME, itemVo.ITEM_NAME); if (dtInfo.Rows[i]["IS_ANYSCENE_ITEM"].ToString() == "1") //分析类现场项目 { workid = CCFlowFacade.Node_CreateBlankWork(UserNo, childFlowID3, UserNo, null, workID, fid, flowId, nodeId, UserNo, childNodeID3, dtInfo.Rows[i]["USER_NAME"].ToString().Trim(','), "@GroupMark=" + dtInfo.Rows[i]["RESULTID"].ToString().Trim(',')); CCFlowFacade.SetFlowTitle(Request["UserNo"].ToString(), childFlowID3, workid, title); } } Response.Write("发送成功"); Response.ContentType = "text/plain"; Response.End(); } if (!string.IsNullOrEmpty(Request.QueryString["DirectionType"])) { var type = Request.QueryString["DirectionType"]; var direction = Request.QueryString["Direction"]; var UserNo = Request.QueryString["UserNo"]; var workID = Request.QueryString["WorkId"]; var strSubTaskID = CCFlowFacade.GetFlowIdentification(UserNo, Convert.ToInt64(workID)).Split('|')[0]; //huangjinjun add 2016.1.26 如果REMARK3等于true,将ph值、电导率、溶解氧设为分析项目 TMisMonitorTaskVo tm = new TMisMonitorTaskVo(); TMisMonitorSubtaskVo tmsub = new TMisMonitorSubtaskVo(); tmsub = new TMisMonitorSubtaskLogic().Details(strSubTaskID); tm.ID = tmsub.TASK_ID; DataTable dt = new TMisMonitorTaskLogic().SelectByTable(tm); if (dt.Rows[0]["REMARK3"].ToString() == "true") { bool bl = new TBaseItemInfoLogic().EditItemTypeFX(); } else { bool bl = new TBaseItemInfoLogic().EditItemTypeXC(); } var sampleIdList = CCFlowFacade.GetFlowIdentification(UserNo, Convert.ToInt64(workID)).Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries).ToList(); if (sampleIdList.Count > 0) { sampleIdList.RemoveAt(0); } switch (type) { case "type1": //分析类现场项目在该环节创建时,该逻辑需要更改为是否存在分析类项目 by lhm //DataTable dtSampleDept = new TMisMonitorResultLogic().SelectSampleDeptWithSubtaskID(strSubTaskID);//存在分析类项目和分析类现场项目 DataTable dtSampleDept = new TMisMonitorResultLogic().SelectSampleDeptWithSubtaskID2(strSubTaskID, sampleIdList); //存在分析类项目 if (direction == "d1") { if (dtSampleDept.Rows.Count == 0) { Response.Write("1"); } else { Response.Write("0"); } } else if (direction == "d2") { if (dtSampleDept.Rows.Count > 0) { Response.Write("1"); } else { Response.Write("0"); } } Response.End(); break; default: Response.Write("0"); Response.End(); break; } } //数据加载 if (Request.QueryString["WorkID"] != null) { var workID = Convert.ToInt64(Request.QueryString["WorkID"]); ccflowWorkId = workID.ToString(); ccflowFid = Request.QueryString["FID"]; var identification = CCFlowFacade.GetFlowIdentification(LogInfo.UserInfo.USER_NAME, workID).Split('|')[0]; this.SUBTASK_ID.Value = identification; strSubTaskID = identification; strSourceID = identification; TMisMonitorSubtaskVo objSubtaskVo = new TMisMonitorSubtaskLogic().Details(strSubTaskID); strMonitorID = objSubtaskVo.MONITOR_ID; this.MONITOR_ID.Value = strMonitorID; TMisMonitorTaskVo objTask = new TMisMonitorTaskLogic().Details(objSubtaskVo.TASK_ID); //huangjinjun add 2016.1.26 如果REMARK3等于true,将ph值、电导率、溶解氧设为分析项目 if (objTask.REMARK3 == "true") { bool bl = new TBaseItemInfoLogic().EditItemTypeFX(); } else { bool bl = new TBaseItemInfoLogic().EditItemTypeXC(); } this.PLAN_ID.Value = objTask.PLAN_ID; //yinchengyi 2015-4-24 打开页面时 记录ccflow流程ID信息到业务系统数据库 //TMisMonitorSubtaskVo objSubtaskVo = new TMisMonitorSubtaskVo(); //objSubtaskVo.ID = strSubTaskID; objSubtaskVo.CCFLOW_ID1 = workID.ToString(); objSubtaskVo.CCFLOW_ID2 = ccflowFid.ToString(); if (!new TMisMonitorSubtaskLogic().Edit(objSubtaskVo)) { //todo_yinchengyi: } } if (!string.IsNullOrEmpty(Request.QueryString["strSubtaskID"])) { //监测子任务ID this.SUBTASK_ID.Value = Request.QueryString["strSubtaskID"].ToString(); } //点位动态属性信息拷贝 AttributeValueCopy(); //样品编号 //SetSampleCode(); //委托书信息 if (!string.IsNullOrEmpty(Request.QueryString["type"]) && Request.QueryString["type"] == "getContractInfo") { strResult = GetContractInfo(); Response.Write(strResult); Response.End(); } //获取现场复核人信息 if (Request["type"] != null && Request["type"].ToString() == "GetCheckUser") { strResult = GetCheckUser(Request.QueryString["MonitorID"].ToString()); Response.Write(strResult); Response.End(); } if (Request["type"] != null && Request["type"].ToString() == "isSendToCheck2") { strResult = isSendToCheck2(); Response.Write(strResult); Response.End(); } } }
/// <summary> /// 退回到上一环节 /// </summary> /// <param name="strTaskId">任务ID</param> /// <returns></returns> public string GoToBack(string strTaskId) { bool IsSuccess = new TMisMonitorResultLogic().subTaskGoToBack(strTaskId, LogInfo.UserInfo.ID, "02", "duty_other_analyse"); return(IsSuccess == true ? "1" : "0"); }
/// <summary> /// 将任务发送至下一环节 /// </summary> /// <param name="strTaskId">任务ID</param> /// <returns></returns> public string SendToNext(string strTaskId) { bool isSuccess = new TMisMonitorResultLogic().SendTaskCheckToNextFlow(strTaskId, LogInfo.UserInfo.ID, "04", "duty_other_analyse_result"); return(isSuccess == true ? "1" : "0"); }
public string IsCanSendTaskCheckToNextFlow(string strTaskId) { bool IsCanGoToBack = new TMisMonitorResultLogic().IsCanSendTaskCheckToNextFlow(strTaskId, LogInfo.UserInfo.ID, "duty_other_analyse_result", "03"); return(IsCanGoToBack == true ? "1" : "0"); }
protected void ReturnAllTaskStep() { //任务对象 TMisMonitorTaskVo objTask = new TMisMonitorTaskLogic().Details(this.TASK_ID.Value); //子任务信息 TMisMonitorSubtaskVo objSubTask = new TMisMonitorSubtaskLogic().Details(new TMisMonitorSubtaskVo() { TASK_ID = this.TASK_ID.Value, MONITOR_ID = this.dllMonitor.SelectedValue }); //样品信息 TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(new TMisMonitorSampleInfoVo() { SUBTASK_ID = objSubTask.ID, QC_TYPE = "0" }); //样品结果信息 DataTable dtResult = new TMisMonitorResultLogic().SelectResultAndAppWithSubtaskID(objSubTask.ID); //校阅 //委托书对象 TMisContractVo objContract = new TMisContractLogic().Details(objTask.CONTRACT_ID); //预约表 TMisContractPlanVo objPlan = new TMisContractPlanLogic().Details(new TMisContractPlanVo() { CONTRACT_ID = objContract.ID }); //预约频次表(已预约未办理数) int intIsPlanNoDo = new TMisContractPointFreqLogic().GetSelectResultCount(new TMisContractPointFreqVo() { CONTRACT_ID = objContract.ID, IF_PLAN = "0" }); #region 暂行的定制生成任务追踪方法 页面HTML构建 //定义已处理DIV样式 string strDivHas = "<div style='width:150px;height:50px;background-color:#5a8f5a;text-align: center;vertical-align: middle;'>{0}</div>"; //定义待处理DIV样式 string strDivWait = "<div style='width:150px;height:50px;background-color:#de9a1d;text-align: center;vertical-align: middle;'>{0}</div>"; //定义特殊处理DIV样式 //string strDivSepecial = "<div style='width:100px;height:50px;background-color:#e34323;text-align: center;vertical-align: middle;'>{0}</div"; //定义未处理DIV样式 //string strDivNo = "<div style='width:100px;height:50px;background-color:#a9a9a9;text-align: center;vertical-align: middle;'>{0}</div>"; Table table1 = new Table(); table1.CssClass = "tMain"; TableRow row1 = new TableRow();//委托流程连接 TableCell cell1 = new TableCell(); cell1.Text = string.Format(strDivHas, "<a href='#' onclick='ShowContract();'>委托流程</a>"); row1.Cells.Add(cell1); table1.Rows.Add(row1); table1.Rows.Add(GetFollowRow()); //是否已预约 TableRow rowPlan = new TableRow(); TableCell cellPlan = new TableCell(); if (intIsPlanNoDo > 0) { cellPlan.Text = string.Format(strDivHas, "环节名:采样预约"); rowPlan.Cells.Add(cellPlan); table1.Rows.Add(rowPlan); } else { cellPlan.Text = string.Format(strDivWait, "环节名:采样预约"); rowPlan.Cells.Add(cellPlan); table1.Rows.Add(rowPlan); this.divSample.Controls.Add(table1); return; } table1.Rows.Add(GetFollowRow()); //是否预约办理 TableRow rowDo = new TableRow(); TableCell cellDo = new TableCell(); if (objPlan.HAS_DONE == "1")//已办理 { cellDo.Text = string.Format(strDivHas, "环节名:预约办理"); rowDo.Cells.Add(cellDo); table1.Rows.Add(rowDo); } else { cellDo.Text = string.Format(strDivWait, "环节名:预约办理"); rowDo.Cells.Add(cellDo); table1.Rows.Add(rowDo); this.divSample.Controls.Add(table1); return; } //采样负责人 string strSampleManager = GetSampleManager(objSubTask.SAMPLING_MANAGER_ID); //交接人 string strSampleAccept = string.Empty; DataTable dtSampleAccept = new TSysUserDutyLogic().SelectUserDuty("sample_allocation_sheet", this.dllMonitor.SelectedValue); if (dtSampleAccept.Rows.Count > 0) { strSampleAccept = GetSampleManager(dtSampleAccept.Rows[0]["USERID"].ToString()); } //是否采样 if (objSubTask.TASK_STATUS == "02") { table1 = GetCommonRow(table1, strDivWait, "采样", strSampleManager); } //样品交接 if (objSubTask.TASK_STATUS == "021") { table1 = GetCommonRow(table1, strDivHas, "采样", strSampleManager); table1 = GetCommonRow(table1, strDivWait, "样品交接", strSampleAccept); } //分析任务分配 DataRow[] dr1 = dtResult.Select(" RESULT_STATUS='01'");//过滤过分析分配环节任务 //分析结果录入 DataRow[] dr2 = dtResult.Select(" RESULT_STATUS='20'"); //数据审核 DataRow[] dr3 = dtResult.Select(" RESULT_STATUS='30'"); //分析室主任审核 DataRow[] dr4 = dtResult.Select(" RESULT_STATUS='40'"); //技术室主任审核 DataRow[] dr5 = dtResult.Select(" RESULT_STATUS='50'"); if (objSubTask.TASK_STATUS == "03") { if (dr1.Length > 0)//环节在分析任务分配 { table1 = GetCommonRow(table1, strDivHas, "采样", strSampleManager); table1 = GetCommonRow(table1, strDivHas, "样品交接", strSampleAccept); table1 = GetCommonRow(table1, strDivWait, "分析任务分配", "XXX"); } else { table1 = GetCommonRow(table1, strDivHas, "采样", strSampleManager); table1 = GetCommonRow(table1, strDivHas, "样品交接", strSampleAccept); table1 = GetCommonRow(table1, strDivHas, "分析任务分配", "XXX"); table1 = GetResultRow(table1, strDivHas, strDivWait, "分析结果录入", dtResult); if (dr2.Length > 0) //结果提交不完全时 { if (dr5.Length > 0) //流程已到技术室审核环节(最后环节) { table1 = GetCommonRow(table1, strDivWait, "数据审核", "XXX"); table1 = GetCommonRow(table1, strDivWait, "分析室主任审核", "XXX"); table1 = GetCommonRow(table1, strDivWait, "技术室主任审核", "XXX"); } else { if (dr4.Length > 0)//流程仅到分析室审核 { table1 = GetCommonRow(table1, strDivWait, "数据审核", "XXX"); table1 = GetCommonRow(table1, strDivWait, "分析室主任审核", "XXX"); } else { if (dr3.Length > 0)//流程仅到数据审核 { table1 = GetCommonRow(table1, strDivWait, "数据审核", "XXX"); } } } } else//结果提交完全时 { if (dr3.Length > 0)//数据审核不完全 { table1 = GetCommonRow(table1, strDivWait, "数据审核", "XXX"); } else { table1 = GetCommonRow(table1, strDivHas, "数据审核", "XXX"); } if (dr4.Length > 0)//分析审核不完全 { table1 = GetCommonRow(table1, strDivWait, "分析室主任审核", "XXX"); } else { table1 = GetCommonRow(table1, strDivHas, "分析室主任审核", "XXX"); } if (dr5.Length > 0) //流程已到技术室审核环节(最后环节) { if (objSubTask.TASK_STATUS == "09" && objTask.TASK_STATUS == "09") //分析流程完成 { table1 = GetCommonRow(table1, strDivHas, "技术室主任审核", "XXX"); TableRow row = new TableRow();//委托流程连接 TableCell cell = new TableCell(); cell.Text = string.Format(strDivHas, "<a href='#' onclick='ShowReport();'>报告流程</a>"); row.Cells.Add(cell); table1.Rows.Add(row); } else { table1 = GetCommonRow(table1, strDivWait, "技术室主任审核", "XXX"); } } } } } this.divSample.Controls.Add(table1); #endregion }
/// <summary> /// 将任务回退到上一环节 /// </summary> /// <param name="strTaskId">任务ID</param> /// <returns></returns> public string GoToBackTask(string strTaskId, string strSubTaskID, string strSuggestion) { bool isSuccess = false; //TMisMonitorSubtaskVo objSubTaskVo = new TMisMonitorSubtaskVo(); //if (new TMisMonitorSubtaskLogic().Details(strSubTaskId).REMARK1 == "") //{ // objSubTaskVo.ID = strSubTaskId; // objSubTaskVo.TASK_STATUS = "122";//退回状态 // objSubTaskVo.TASK_TYPE = "退回"; // isSuccess = new TMisMonitorSubtaskLogic().Edit(objSubTaskVo); //} //else //{ isSuccess = new TMisMonitorSubtaskLogic().SampleResultCheckBackTo(strTaskId, strSubTaskID, "02", "50", "退回"); bool isSampleDept = new TMisMonitorSubtaskLogic().isExistAnysceneDept(strTaskId, strSubTaskID); DataTable dtSampleItem = new TMisMonitorResultLogic().SelectSampleItemWithSubtaskID(strSubTaskID); //} TMisReturnInfoVo objReturnInfoVo = new TMisReturnInfoVo(); objReturnInfoVo.TASK_ID = strTaskId; objReturnInfoVo.SUBTASK_ID = strSubTaskID; if (dtSampleItem.Rows.Count > 0) //有现场类项目 { objReturnInfoVo.CURRENT_STATUS = SerialType.Monitor_003; objReturnInfoVo.BACKTO_STATUS = SerialType.Monitor_002; TMisReturnInfoVo obj = new TMisReturnInfoLogic().Details(objReturnInfoVo); if (obj.ID.Length > 0) { objReturnInfoVo.ID = obj.ID; objReturnInfoVo.SUGGESTION = strSuggestion; isSuccess = new TMisReturnInfoLogic().Edit(objReturnInfoVo); } else { objReturnInfoVo.ID = GetSerialNumber("t_mis_return_id"); objReturnInfoVo.SUGGESTION = strSuggestion; isSuccess = new TMisReturnInfoLogic().Create(objReturnInfoVo); } } if (isSampleDept) //有分析类现场项目 { objReturnInfoVo.ID = ""; objReturnInfoVo.SUGGESTION = ""; objReturnInfoVo.CURRENT_STATUS = SerialType.Monitor_003; objReturnInfoVo.BACKTO_STATUS = SerialType.Monitor_010; TMisReturnInfoVo obj = new TMisReturnInfoLogic().Details(objReturnInfoVo); if (obj.ID.Length > 0) { objReturnInfoVo.ID = obj.ID; objReturnInfoVo.SUGGESTION = strSuggestion; isSuccess = new TMisReturnInfoLogic().Edit(objReturnInfoVo); } else { objReturnInfoVo.ID = GetSerialNumber("t_mis_return_id"); objReturnInfoVo.SUGGESTION = strSuggestion; isSuccess = new TMisReturnInfoLogic().Create(objReturnInfoVo); } } return(isSuccess == true ? "1" : "0"); }
protected void btnImport_Click(object sender, EventArgs e) { string strPrintId = this.strPrintId.Value; TMisMonitorSubtaskVo objSubTask = new TMisMonitorSubtaskLogic().Details(strPrintId); //objSubTask.TASK_ID = strPrintId; //DataTable dtSub = new TMisMonitorSubtaskLogic().SelectByTable(objSubTask); string strSampleIDs = ""; //for (int i = 0; i < dtSub.Rows.Count; i++) //{ // GetPoint_UnderTask(dtSub.Rows[i]["ID"].ToString(), ref strSampleIDs); //} GetPoint_UnderTask(strPrintId, ref strSampleIDs); //获取基本信息 DataTable dt = new TMisMonitorSampleInfoLogic().getSamplingAllocationSheetInfoBySampleId(strSampleIDs, "02,021", "1"); int iPageCount = dt.Rows.Count / 17; if (dt.Rows.Count % 17 != 0) { iPageCount += 1; } string strWaterType = "000000001,000000018,000000024,000000027,EnvDrinking,EnvDrinkingSource,EnvDWWater,EnvEstuaries,EnvMudRiver,EnvMudSea,EnvRain,EnvReservoir,EnvRiver,EnvSeaBath"; string strGasType = "000000002,000000021,000000023,EnvAir,EnvDWAir,EnvSpeed"; string strSoilType = "EnvSoil"; string strTemplate = ""; if (strWaterType.Contains(objSubTask.MONITOR_ID)) { strTemplate = "template/QHDSamplingCode_Water.xls"; } else if (strSoilType.Contains(objSubTask.MONITOR_ID)) { strTemplate = "template/QHDSamplingCode_Soil.xls"; } else { strTemplate = "template/QHDSamplingCode_Gas.xls"; } FileStream file = new FileStream(HttpContext.Current.Server.MapPath(strTemplate), FileMode.Open, FileAccess.Read); HSSFWorkbook hssfworkbook = new HSSFWorkbook(file); //sheet复制 for (int k = 1; k < iPageCount; k++) { hssfworkbook.CloneSheet(0); hssfworkbook.SetSheetName(k, "Sheet" + (k + 1).ToString()); } for (int m = 1; m <= iPageCount; m++) { ISheet sheet = hssfworkbook.GetSheet("Sheet" + m.ToString()); sheet.GetRow(23).GetCell(0).SetCellValue("样品交接数量: " + dt.Rows.Count.ToString()); sheet.GetRow(2).GetCell(0).SetCellValue(string.Format(" 采 样 日 期: {0} 年 {1} 月 {2} 日", DateTime.Now.Year.ToString(), DateTime.Now.Month.ToString(), DateTime.Now.Day.ToString())); sheet.GetRow(3).GetCell(0).SetCellValue(string.Format(" 样品交接日期: {0} 年 {1} 月 {2} 日 {3} 点 {4} 分", DateTime.Now.Year.ToString(), DateTime.Now.Month.ToString(), DateTime.Now.Day.ToString(), DateTime.Now.Hour.ToString(), DateTime.Now.Minute.ToString())); sheet.GetRow(1).GetCell(6).SetCellValue(string.Format("第 {0} 页 共 {1} 页", m.ToString(), iPageCount.ToString())); DataTable dtNew = new DataTable(); dtNew = dt.Copy(); dtNew.Clear(); for (int n = (m - 1) * 17; n < m * 17; n++) { if (n >= dt.Rows.Count) { break; } dtNew.ImportRow(dt.Rows[n]); } for (int i = 0; i < dtNew.Rows.Count; i++) { string strItmeNum = ""; TMisMonitorResultVo objResult = new TMisMonitorResultVo(); objResult.RESULT_STATUS = "01"; objResult.SAMPLE_ID = dtNew.Rows[i]["ID"].ToString(); DataTable dtResult = new TMisMonitorResultLogic().SelectByTable(objResult); for (int j = 0; j < dtResult.Rows.Count; j++) { TBaseItemInfoVo objItem = new TBaseItemInfoVo(); objItem.ID = dtResult.Rows[j]["ITEM_ID"].ToString(); //objItem.IS_SAMPLEDEPT = "否"; DataTable dtItem = new TBaseItemInfoLogic().SelectByTable(objItem); if (dtItem.Rows.Count > 0 && dtItem.Rows[0]["ITEM_NUM"].ToString().Length > 0) { strItmeNum += (strItmeNum.Length > 0) ? "," + dtItem.Rows[0]["ITEM_NUM"].ToString() : dtItem.Rows[0]["ITEM_NUM"].ToString(); } } sheet.GetRow(i + 6).GetCell(0).SetCellValue((i + 1).ToString()); sheet.GetRow(i + 6).GetCell(1).SetCellValue(dtNew.Rows[i]["SAMPLE_CODE"].ToString()); sheet.GetRow(i + 6).GetCell(6).SetCellValue(strItmeNum); } } using (MemoryStream stream = new MemoryStream()) { hssfworkbook.Write(stream); HttpContext curContext = HttpContext.Current; // 设置编码和附件格式 curContext.Response.ContentType = "application/vnd.ms-excel"; curContext.Response.ContentEncoding = Encoding.UTF8; curContext.Response.Charset = ""; curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("样品交接记录表.xls", Encoding.UTF8)); curContext.Response.BinaryWrite(stream.GetBuffer()); curContext.Response.End(); } }
/// <summary> /// 样品发送 /// </summary> /// <param name="strResultId">监测结果Id</param> /// <returns></returns> public string ResultGoToBack(string strResultId) { bool isSuccess = new TMisMonitorResultLogic().SendResultToNext_QHD(strResultId, "03"); return(isSuccess == true ? "1" : "0"); }
private bool createQcInfo(string strSampleID, string strQcType, string strItemId) { bool isSuccess = true; if (strItemId == "") { return(isSuccess); } TMisMonitorSampleInfoVo objSample = new TMisMonitorSampleInfoLogic().Details(strSampleID); string strQcSampleId = GetSerialNumber("MonitorSampleId"); objSample.ID = strQcSampleId; objSample.QC_TYPE = strQcType; objSample.QC_SOURCE_ID = strSampleID; //objSample.SAMPLE_CODE = GetSampleCode_QHD(strSampleID); TMisMonitorSubtaskVo objSubtask = new TMisMonitorSubtaskLogic().Details(objSample.SUBTASK_ID); TMisMonitorTaskVo objTask = new TMisMonitorTaskLogic().Details(objSubtask.TASK_ID); TBaseSerialruleVo objSerial = new TBaseSerialruleVo(); objSerial.SAMPLE_SOURCE = objTask.SAMPLE_SOURCE; objSerial.SERIAL_TYPE = "2"; //objSample.SAMPLECODE_CREATEDATE = DateTime.Now.ToString("yyyy-MM-dd"); //objSample.SAMPLE_CODE = CreateBaseDefineCodeForSample(objSerial, objTask, objSubtask); if (strQcType == "3") { objSample.SAMPLE_NAME += "现场平行"; } if (strQcType == "1") { objSample.SAMPLE_NAME += "现场空白"; } if (strQcType == "4") { objSample.SAMPLE_NAME += "密码平行"; } //在样品表中添加样品数据 if (!new TMisMonitorSampleInfoLogic().Create(objSample)) { isSuccess = false; } //遍历监测项目信息,将监测项目信息添加到结果表、结果分析执行表、平行样结果表中 for (int i = 0; i < strItemId.Split(',').Length; i++) { //根据需要做质控的监测项目获取原始样的结果表ID TMisMonitorResultVo objSourceResult = new TMisMonitorResultVo(); objSourceResult.SAMPLE_ID = strSampleID; objSourceResult.QC_TYPE = "0"; objSourceResult.ITEM_ID = strItemId.Split(',')[i]; TMisMonitorResultVo objResult = new TMisMonitorResultLogic().Details(objSourceResult); string strSourceId = objResult.ID; //将数据写入结果表中 objResult.ID = GetSerialNumber("MonitorResultId"); objResult.SAMPLE_ID = strQcSampleId; objResult.QC_TYPE = strQcType; objResult.SOURCE_ID = strSourceId; objResult.QC_SOURCE_ID = strSourceId; if (!new TMisMonitorResultLogic().Create(objResult)) { isSuccess = false; } //将数据写入结果分析执行表中 InsertResultAPP(objResult.ID); //将结果写入分析样结果表中 TMisMonitorQcTwinVo objQcTwin = new TMisMonitorQcTwinVo(); objQcTwin.ID = GetSerialNumber("QcTwinId"); objQcTwin.RESULT_ID_SRC = strSourceId; objQcTwin.RESULT_ID_TWIN1 = objResult.ID; objQcTwin.QC_TYPE = strQcType; if (!new TMisMonitorQcTwinLogic().Create(objQcTwin)) { isSuccess = false; } } return(isSuccess); }