/// <summary> /// 取得DB資料 /// 個人班表 /// </summary> /// <param name="model">畫面model</param> /// <param name="datas">回傳資料</param> /// <param name="msg">回傳訊息</param> /// <returns>bool</returns> public static bool PunchUpdateInquire_DoQuery(Punch_Confirm_Remedy_Model model, out List <Punch_Confirm_Remedy_Bean> datas, out string msg) { bool result = false; msg = ""; datas = new List <Punch_Confirm_Remedy_Bean>(); try { using (var conn = new SqlConnection() { ConnectionString = DbHelper.getConnectionStrings(_attendantDBName).ConnectionString }) { Punch_Confirm_Remedy_Bean dataBean = new Punch_Confirm_Remedy_Bean() { EmpID = model.EmpID, ConfirmStatus = model.ConfirmStatus, AbnormalFlag = model.AbnormalFlag, RemedyPunchFlag = model.RemedyPunchFlag, ConfirmPunchFlag = model.ConfirmPunchFlag, StartPunchDate = model.StartPunchDate, EndPunchDate = model.EndPunchDate }; StringBuilder sb = new StringBuilder(); SqlCommand.Select_Punch_Confirm_Remedy(dataBean, ref sb, true); try { datas = conn.Query <Punch_Confirm_Remedy_Bean>(sb.ToString(), dataBean).ToList(); } catch (Exception) { throw; } if (datas == null) { throw new Exception("查無資料!"); } } result = true; } catch (Exception ex) { msg = ex.Message; } return(result); }
/// <summary> /// 取得DB資料 /// 個人班表 /// </summary> /// <param name="model">畫面model</param> /// <param name="datas">回傳資料</param> /// <param name="msg">回傳訊息</param> /// <returns>bool</returns> public static bool PunchAppdOperation_DoQuery(Punch_Confirm_Remedy_Model model, out List <Punch_Confirm_Remedy_Bean> datas, out string msg) { bool result = false; msg = ""; datas = new List <Punch_Confirm_Remedy_Bean>(); try { using (var conn = new SqlConnection() { ConnectionString = DbHelper.getConnectionStrings(_attendantDBName).ConnectionString }) { Punch_Confirm_Remedy_Bean dataBean = new Punch_Confirm_Remedy_Bean() { ValidCompID = model.ValidCompID, ValidID = model.ValidID, ConfirmStatus = model.ConfirmStatus }; StringBuilder sb = new StringBuilder(); SqlCommand.Select_Punch_Confirm_Remedy_OpenLog(dataBean, ref sb, true); try { datas = conn.Query <Punch_Confirm_Remedy_Bean>(sb.ToString(), dataBean).ToList(); } catch (Exception) { throw; } if (datas == null) { throw new Exception("查無資料!"); } } result = true; } catch (Exception ex) { msg = ex.Message; } return(result); }
/// <summary> /// 取得簽核人員資料 /// </summary> /// <param name="model">畫面model</param> /// <param name="datas">回傳資料</param> /// <param name="msg">回傳訊息</param> /// <returns>bool</returns> public static bool GetValidInfo(Punch_Confirm_Remedy_Model model, out Punch_Confirm_Remedy_Bean datas, out string msg) { bool result = false; msg = ""; datas = new Punch_Confirm_Remedy_Bean(); try { using (var conn = new SqlConnection() { ConnectionString = DbHelper.getConnectionStrings(_attendantDBName).ConnectionString }) { Punch_Confirm_Remedy_Bean dataBean = new Punch_Confirm_Remedy_Bean() { CompID = model.CompID, EmpID = model.EmpID, }; StringBuilder sb = new StringBuilder(); SqlCommand.SelectPersonValid(ref sb); try { datas = conn.Query <Punch_Confirm_Remedy_Bean>(sb.ToString(), dataBean).FirstOrDefault(); } catch (Exception) { throw; } if (datas == null) { throw new Exception("查無資料!"); } } result = true; } catch (Exception ex) { msg = ex.Message; } return(result); }
protected void LoadData() { gvMain.Visible = true; var isSuccess = false; var msg = ""; var datas = new List <Punch_Confirm_Remedy_Bean>(); var viewData = new Punch_Confirm_Remedy_Model() { ValidCompID = StringIIF(UserInfo.getUserInfo().CompID), ValidID = StringIIF(UserInfo.getUserInfo().UserID), ConfirmStatus = "2" }; isSuccess = PunchUpdate.PunchAppdOperation_DoQuery(viewData, out datas, out msg); if (isSuccess && datas != null && datas.Count > 0) { viewData.SelectGridDataList = PunchUpdate.GridDataFormat(datas); //Format Data } gvMain.DataSource = viewData.SelectGridDataList; gvMain.DataBind(); }
private void DoQuery() { var isSuccess = false; var msg = ""; var datas = new List <Punch_Confirm_Remedy_Bean>(); var viewData = new Punch_Confirm_Remedy_Model() { //CompID = StringIIF(UserInfo.getUserInfo().CompID), EmpID = StringIIF(UserInfo.getUserInfo().UserID), StartPunchDate = StringIIF(ucStartPunchDate.ucSelectedDate), EndPunchDate = StringIIF(ucEndPunchDate.ucSelectedDate), ConfirmPunchFlag = StringIIF(ddlConfirmPunchFlag.SelectedValue), ConfirmStatus = StringIIF(ddlConfirmStatus.SelectedValue), AbnormalFlag = StringIIF(ddlAbnormalFlag.SelectedValue) }; isSuccess = PunchUpdate.PunchUpdateInquire_DoQuery(viewData, out datas, out msg); if (isSuccess && datas != null && datas.Count > 0) { viewData.SelectGridDataList = PunchUpdate.GridDataFormat(datas); //Format Data } gvMain.DataSource = viewData.SelectGridDataList; gvMain.DataBind(); }
/// <summary> /// 申請後送簽流程 /// </summary> /// <param name="model">畫面model</param> /// <param name="datas">回傳資料</param> /// <param name="msg">回傳訊息</param> /// <returns>bool</returns> public static bool PunchUpdateModify_SaveData(Punch_Confirm_Remedy_Bean model, out long seccessCount, out string msg) { bool result = false; seccessCount = 0; msg = ""; bool validResult = false; Punch_Confirm_Remedy_Bean datas = new Punch_Confirm_Remedy_Bean(); string validMsg = ""; try { Dictionary <string, string> empData = new Dictionary <string, string>(); Dictionary <string, string> toUserData = new Dictionary <string, string>(); Dictionary <string, string> ValidUserData = new Dictionary <string, string>(); string flowCode = ""; string flowSN = ""; bool nextIsLastFlow = false; string meassge = ""; FlowExpress flow = new FlowExpress(Util.getAppSetting("app://AattendantDB_PunchUpdate/")); string KeyValue = "";//字串 string ShowValue = ""; string strFlowCaseID = ""; DbHelper db = new DbHelper(Aattendant._AattendantDBName); CommandHelper sb = db.CreateCommandHelper(); DbConnection cn = db.OpenConnection(); DbTransaction tx = cn.BeginTransaction(); Punch_Confirm_Remedy_Bean dataBean = new Punch_Confirm_Remedy_Bean() { FlowCaseID = model.FlowCaseID, CompID = model.CompID, EmpID = model.EmpID, EmpName = model.EmpName, DutyDate = model.DutyDate, DutyTime = model.DutyTime, PunchDate = model.PunchDate, PunchTime = model.PunchTime, PunchConfirmSeq = model.PunchConfirmSeq, DeptID = model.DeptID, DeptName = model.DeptName, OrganID = model.OrganID, OrganName = model.OrganName, FlowOrganID = model.FlowOrganID, FlowOrganName = model.FlowOrganName, MAFT10_FLAG = model.MAFT10_FLAG, ConfirmStatus = model.ConfirmStatus, PunchRemedySeq = model.PunchRemedySeq, RemedyReasonID = model.RemedyReasonID, RemedyReasonCN = model.RemedyReasonCN, RemedyPunchTime = model.RemedyPunchTime, AbnormalFlag = model.AbnormalFlag, AbnormalReasonID = model.AbnormalReasonID, AbnormalReasonCN = model.AbnormalReasonCN, AbnormalDesc = model.AbnormalDesc, Remedy_MAFT10_FLAG = model.Remedy_MAFT10_FLAG, Remedy_AbnormalFlag = model.Remedy_AbnormalFlag, Remedy_AbnormalReasonID = model.Remedy_AbnormalReasonID, Remedy_AbnormalReasonCN = model.Remedy_AbnormalReasonCN, Remedy_AbnormalDesc = model.Remedy_AbnormalReasonID == "99" ? model.Remedy_AbnormalDesc : "", LastChgComp = model.LastChgComp, LastChgID = model.LastChgID, LastChgDate = model.LastChgDate, //Remedy RemedyPunchFlag = model.RemedyPunchFlag, BatchFlag = model.BatchFlag, PORemedyStatus = model.PORemedyStatus, RejectReason = model.RejectReason, RejectReasonCN = model.RejectReasonCN, ValidDateTime = model.ValidDateTime, //ValidTime = model.ValidTime, ValidCompID = model.ValidCompID, ValidID = model.ValidID, ValidName = model.ValidName }; OBFlowUtility.QueryFlowDataAndToUserData_First(dataBean.CompID, dataBean.OrganID, dataBean.FlowOrganID, dataBean.EmpID, dataBean.EmpID, dataBean.PunchDate, out empData, out toUserData, out flowCode, out flowSN, out nextIsLastFlow, out meassge, "PO01", "PO"); Punch_Confirm_Remedy_Model validInfo = new Punch_Confirm_Remedy_Model() { CompID = toUserData["SignIDComp"], EmpID = toUserData["SignID"] }; validResult = GetValidInfo(validInfo, out datas, out validMsg); if (!validResult) { throw new Exception(validMsg); } dataBean.ValidCompID = toUserData["SignIDComp"]; dataBean.ValidID = toUserData["SignID"]; dataBean.ValidName = datas.ValidName; KeyValue = dataBean.CompID + "," + dataBean.EmpID + "," + dataBean.PunchDate + "," + dataBean.PunchRemedySeq; ShowValue = dataBean.CompID + "," + dataBean.EmpID + "," + dataBean.PunchDate + "," + dataBean.PunchTime; ValidUserData = CustVerify.getEmpID_Name_Dictionary(toUserData["SignID"], toUserData["SignIDComp"]); if (FlowExpress.IsFlowInsVerify(flow.FlowID, KeyValue.Split(","), ShowValue.Split(","), nextIsLastFlow ? "btnSendLast" : "btnSend", ValidUserData, "")) { strFlowCaseID = FlowExpress.getFlowCaseID(flow.FlowID, KeyValue); dataBean.FlowCaseID = strFlowCaseID; SqlCommand.PunchUpdateModify_InsertPunchRemedyLog(dataBean, ref sb); OBFlowUtility.ChangeFlowFlag(strFlowCaseID, flowCode, flowSN, dataBean.ValidCompID, dataBean.ValidID, "1", ref sb); OBFlowUtility.InsertHROtherFlowLogCommand(strFlowCaseID, "1", strFlowCaseID + "." + "1".PadLeft(5, '0'), "P", dataBean.EmpID, dataBean.OrganID, dataBean.FlowOrganID, dataBean.ValidID, flowCode, flowSN, "1", "1", toUserData["SignIDComp"], toUserData["SignID"], toUserData["SignOrganID"], toUserData["SignFlowOrganID"], "1", false, ref sb); try { //================ //sb.Append("錯誤製造"); //================= seccessCount = db.ExecuteNonQuery(sb.BuildCommand(), tx); //執行新增,成功筆數回傳,並做Transaction機制 tx.Commit(); //成功Transaction直接Commit } catch (Exception) { FlowExpress.IsFlowCaseDeleted(flow.FlowID, strFlowCaseID, true); //送簽用IsFlowCaseDeleted //審核用IsFlowRollBack tx.Rollback(); //失敗Transaction Rollback throw; } result = true; } } catch (Exception ex) { msg = ex.Message; } return(result); }
public static List <Punch_Confirm_Remedy_Model> GridDataFormat(List <Punch_Confirm_Remedy_Bean> dbDataList) { var result = new List <Punch_Confirm_Remedy_Model>(); foreach (var item in dbDataList) { var data = new Punch_Confirm_Remedy_Model(); //Confirm data.CompID = string.IsNullOrEmpty(item.CompID) ? "" : item.CompID; data.EmpID = string.IsNullOrEmpty(item.EmpID) ? "" : item.EmpID; data.EmpName = string.IsNullOrEmpty(item.EmpName) ? "" : item.EmpName; data.DutyDate = string.IsNullOrEmpty(item.DutyDate) ? "" : item.DutyDate; data.DutyTime = string.IsNullOrEmpty(item.DutyTime) ? "" : item.DutyTime; data.PunchDate = string.IsNullOrEmpty(item.PunchDate) ? "" : item.PunchDate; data.PunchTime = string.IsNullOrEmpty(item.PunchTime) ? "" : item.PunchTime; data.PunchConfirmSeq = string.IsNullOrEmpty(item.PunchConfirmSeq) ? "" : item.PunchConfirmSeq; data.DeptID = string.IsNullOrEmpty(item.DeptID) ? "" : item.DeptID; data.DeptName = string.IsNullOrEmpty(item.DeptName) ? "" : item.DeptName; data.OrganID = string.IsNullOrEmpty(item.OrganID) ? "" : item.OrganID;; data.OrganName = string.IsNullOrEmpty(item.OrganName) ? "" : item.OrganName; data.FlowOrganID = string.IsNullOrEmpty(item.FlowOrganID) ? "" : item.FlowOrganID; data.FlowOrganName = string.IsNullOrEmpty(item.FlowOrganName) ? "" : item.FlowOrganName; data.Sex = string.IsNullOrEmpty(item.Sex) ? "" : item.Sex; data.PunchFlag = string.IsNullOrEmpty(item.PunchFlag) ? "" : item.PunchFlag; data.WorkTypeID = string.IsNullOrEmpty(item.WorkTypeID) ? "" : item.WorkTypeID; data.WorkType = string.IsNullOrEmpty(item.WorkType) ? "" : item.WorkType; data.MAFT10_FLAG = string.IsNullOrEmpty(item.MAFT10_FLAG) ? "" : item.MAFT10_FLAG; data.ConfirmStatus = string.IsNullOrEmpty(item.ConfirmStatus) ? "" : item.ConfirmStatus; data.AbnormalType = string.IsNullOrEmpty(item.AbnormalType) ? "" : item.AbnormalType; data.ConfirmPunchFlag = string.IsNullOrEmpty(item.ConfirmPunchFlag) ? "" : item.ConfirmPunchFlag; data.PunchSeq = string.IsNullOrEmpty(item.PunchSeq) ? "" : item.PunchSeq; data.PunchRemedySeq = string.IsNullOrEmpty(item.PunchRemedySeq) ? "" : item.PunchRemedySeq; data.RemedyReasonID = string.IsNullOrEmpty(item.RemedyReasonID) ? "" : item.RemedyReasonID; data.RemedyReasonCN = string.IsNullOrEmpty(item.RemedyReasonCN) ? "" : item.RemedyReasonCN; data.RemedyPunchTime = string.IsNullOrEmpty(item.RemedyPunchTime) ? "" : item.RemedyPunchTime; data.AbnormalFlag = string.IsNullOrEmpty(item.AbnormalFlag) ? "" : item.AbnormalFlag; data.AbnormalReasonID = string.IsNullOrEmpty(item.AbnormalReasonID) ? "" : item.AbnormalReasonID; data.AbnormalReasonCN = string.IsNullOrEmpty(item.AbnormalReasonCN) ? "" : item.AbnormalReasonCN; data.AbnormalDesc = string.IsNullOrEmpty(item.AbnormalDesc) ? "" : item.AbnormalDesc; data.Remedy_AbnormalFlag = string.IsNullOrEmpty(item.Remedy_AbnormalFlag) ? "" : item.Remedy_AbnormalFlag; data.Remedy_AbnormalReasonID = string.IsNullOrEmpty(item.Remedy_AbnormalReasonID) ? "" : item.Remedy_AbnormalReasonID; data.Remedy_AbnormalReasonCN = string.IsNullOrEmpty(item.Remedy_AbnormalReasonCN) ? "" : item.Remedy_AbnormalReasonCN; data.Remedy_AbnormalDesc = string.IsNullOrEmpty(item.Remedy_AbnormalDesc) ? "" : item.Remedy_AbnormalDesc; data.Source = string.IsNullOrEmpty(item.Source) ? "" : item.Source; data.APPContent = string.IsNullOrEmpty(item.APPContent) ? "" : item.APPContent; data.LastChgComp = string.IsNullOrEmpty(item.LastChgComp) ? "" : item.LastChgComp; data.LastChgID = string.IsNullOrEmpty(item.LastChgID) ? "" : item.LastChgID; data.LastChgDate = string.IsNullOrEmpty(item.LastChgDate) ? "" : item.LastChgDate; //Confirm與Remedy沒有公用的欄位 data.RemedyPunchFlag = string.IsNullOrEmpty(item.RemedyPunchFlag) ? "" : item.RemedyPunchFlag; data.BatchFlag = string.IsNullOrEmpty(item.BatchFlag) ? "" : item.BatchFlag; data.PORemedyStatus = string.IsNullOrEmpty(item.PORemedyStatus) ? "" : item.PORemedyStatus; data.RejectReason = string.IsNullOrEmpty(item.RejectReason) ? "" : item.RejectReason; data.RejectReasonCN = string.IsNullOrEmpty(item.RejectReasonCN) ? "" : item.RejectReasonCN; data.ValidDateTime = string.IsNullOrEmpty(item.ValidDateTime) ? "" : item.ValidDateTime; data.ValidCompID = string.IsNullOrEmpty(item.ValidCompID) ? "" : item.ValidCompID; data.ValidID = string.IsNullOrEmpty(item.ValidID) ? "" : item.ValidID; data.ValidName = string.IsNullOrEmpty(item.ValidName) ? "" : item.ValidName; data.Remedy_MAFT10_FLAG = string.IsNullOrEmpty(item.Remedy_MAFT10_FLAG) ? "" : item.Remedy_MAFT10_FLAG; //gridview顯示中文用 data.ConfirmStatusGCN = string.IsNullOrEmpty(item.ConfirmStatusGCN) ? "" : item.ConfirmStatusGCN; data.ConfirmPunchFlagGCN = string.IsNullOrEmpty(item.ConfirmPunchFlagGCN) ? "" : item.ConfirmPunchFlagGCN; data.AbnormalReasonGCN = string.IsNullOrEmpty(item.AbnormalReasonGCN) ? "" : item.AbnormalReasonGCN; data.SourceGCN = string.IsNullOrEmpty(item.SourceGCN) ? "" : item.SourceGCN; data.SexGCN = string.IsNullOrEmpty(item.SexGCN) ? "" : item.SexGCN; //給預存PunchCheckData計算用資料 data.SpecialFlag = string.IsNullOrEmpty(item.SpecialFlag) ? "" : item.SpecialFlag; data.RestBeginTime = string.IsNullOrEmpty(item.RestBeginTime) ? "" : item.RestBeginTime; data.RestEndTime = string.IsNullOrEmpty(item.RestEndTime) ? "" : item.RestEndTime; data.OtherPunchTime = string.IsNullOrEmpty(item.OtherPunchTime) ? "" : item.OtherPunchTime; //永豐流程FlowCaseID data.FlowCaseID = string.IsNullOrEmpty(item.FlowCaseID) ? "" : item.FlowCaseID; result.Add(data); } return(result); }