public string GetFormResult(Fast.EB.WKF.ExternalUtility.ApplyTask applyTask) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(applyTask.CurrentDocXML); CTB_HR_PERTUCO l_pert = new CTB_HR_PERTUCO(); string l_FormID = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='FormID']").Attributes["fieldValue"].Value; //訂單需要同意才進入 if (applyTask.FormResult == Fast.EB.WKF.Engine.ApplyResult.Adopt) { string l_str考核種類 = ""; DataRow l_row = l_pert.NewRow(); l_row["PERTNO"] = Guid.NewGuid().ToString(); l_row["GUID"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='FormID']").Attributes["fieldValue"].Value; string l_strTaskid = applyTask.TaskId; CTB_HR_ASSESS_STAFF_UCO l_STAFF = new CTB_HR_ASSESS_STAFF_UCO(); DataTable dt = l_STAFF.getlast(l_strTaskid); l_row["SMID"] = dt.Rows[0]["SMID"].ToString(); string l_strSMID = dt.Rows[0]["SMID"].ToString(); l_row["RANK"] = dt.Rows[0]["RANK"].ToString(); int l_int月份 = DateTime.Today.Month; if (l_int月份 > 9 || l_int月份 < 3) { l_row["ASSESS_TYPE"] = "年終"; l_row["RANK_Y"] = dt.Rows[0]["RANK_Y"].ToString(); l_str考核種類 = "年終"; } else if (2 < l_int月份 && l_int月份 < 7) { l_row["ASSESS_TYPE"] = "端午"; l_str考核種類 = "端午"; } else if (6 < l_int月份 && l_int月份 < 10) { l_row["ASSESS_TYPE"] = "中秋"; l_str考核種類 = "中秋"; } l_row["Form_TYPE"] = "課長級以下"; l_row["EDIT_DATE"] = DateTime.Today.ToString("yyyy/MM/dd"); l_row["YEAR"] = DateTime.Today.Year.ToString(); l_row["TASK_ID"] = applyTask.TaskId; string l_年度 = DateTime.Today.Year.ToString(); DataTable l_dt = l_pert.check(l_strSMID, l_str考核種類, l_年度); if (l_dt != null && l_dt.Rows.Count > 0) { return(""); } else { l_pert.Insert(l_row); } } //訂單否決刪除單子 else { //刪除明細檔 CTB_HR_ASSESS_STAFF_DETAILUCO l_STAFF_DETAIL = new CTB_HR_ASSESS_STAFF_DETAILUCO(); l_STAFF_DETAIL.DeletebyReject(l_FormID); CTB_HR_ASSESS_STAFF_UCO l_STAFF = new CTB_HR_ASSESS_STAFF_UCO(); l_STAFF.DeletebyReject(applyTask.TaskId); } return(""); }
public string GetFormResult(Fast.EB.WKF.ExternalUtility.ApplyTask applyTask) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(applyTask.CurrentDocXML); CTB_HR_ASSESS_STAFF_UCO l_STAFF = new CTB_HR_ASSESS_STAFF_UCO(); if (applyTask.SignResult == Fast.EB.WKF.Engine.SignResult.Approve) //簽核中需要同意才進入 { DataRow row = l_STAFF.NewRow(); row["GUID"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='FormID']").Attributes["fieldValue"].Value; //row["SMID"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='SMID']").Attributes["fieldValue"].Value; //自訂欄位的寫法 row["SMID"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["SMID"].Value; row["KNOWLEDGE"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["KNOWLEDGE"].Value; row["FORCE"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["FORCE"].Value; row["SENSE"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["SENSE"].Value; row["INTERGITY"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["INTERGITY"].Value; row["EXECUTION"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["EXECUTION"].Value; row["ABILITY"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["ABILITY"].Value; row["EQ"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["EQ"].Value; row["Total"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["Total"].Value; row["RANK"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["RANK"].Value; row["SIGNER"] = Current.Name; row["EDIT_DATE"] = DateTime.Today.ToString("yyyy/MM/dd"); row["TASK_ID"] = applyTask.TaskId; row["SITE_CODE"] = applyTask.SiteCode; int l_int月份 = DateTime.Today.Month; //非年終不用進去 if (l_int月份 > 9 || l_int月份 < 3) { row["KNOWLEDGE_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["KNOWLEDGE_Y"].Value; row["FORCE_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["FORCE_Y"].Value; row["SENSE_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["SENSE_Y"].Value; row["INTERGITY_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["INTERGITY_Y"].Value; row["EXECUTION_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["EXECUTION_Y"].Value; row["ABILITY_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["ABILITY_Y"].Value; row["EQ_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["EQ_Y"].Value; row["Staff_Car"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["Staff_Car"].Value; row["Total_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["Total_Y"].Value; row["RANK_Y"] = xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']/FieldValue").Attributes["RANK_Y"].Value; row["ASSESS_TYPE"] = "年終"; } else if (2 < l_int月份 && l_int月份 < 7) { row["ASSESS_TYPE"] = "端午"; } else if (6 < l_int月份 && l_int月份 < 10) { row["ASSESS_TYPE"] = "中秋"; } //row["DOC_NBR"] = applyTask.FormNumber; DataTable l_dt = l_STAFF.getDatsByID(applyTask.TaskId, applyTask.SiteCode); if (l_dt != null && l_dt.Rows.Count > 0) { l_STAFF.UpdateByTASKID(row); } else { l_STAFF.Insert(row); } //xmlDoc.SelectSingleNode("/Form/FormFieldValue/FieldItem[@fieldId='Staff']").InnerXml = ""; //AssessCompetentPO po = new AssessCompetentPO(); //po.UpdateCurrentDoc(applyTask.TaskId, xmlDoc.OuterXml); } return(""); }