private void ICD_ProcWorkHistory(int clientID, HEADER obj) { string user = obj.msgUser; int taskID = int.Parse(obj.ext1); DataTable table = DatabaseMgr.GetTaskHistory(taskID); if (table == null) { return; } List <WorkHistory> vec = new List <WorkHistory>(); foreach (DataRow item in table.Rows) { WorkHistory his = new WorkHistory(); his.recordID = (int)item["recordID"]; his.taskID = (int)item["taskID"]; his.time = item["time"].ToString();; his.editor = item["user"].ToString(); his.columnName = item["columnName"].ToString(); his.fromInfo = item["fromInfo"].ToString(); his.toInfo = item["toInfo"].ToString(); vec.Add(his); } WorkHistoryList msg = new WorkHistoryList(); msg.FillServerHeader(DEF.CMD_TaskHistory, 0); msg.workHistory = vec.ToArray(); sendMsg(user, msg); }
private void btnReport_Click(object sender, EventArgs e) { bool typeReport = (mTask.state == "완료대기") ? false : true; DlgReportTask dlg = new DlgReportTask(typeReport); dlg.ShowDialog(); if (dlg.mIsOK) { WorkHistoryList msg = new WorkHistoryList(); msg.FillClientHeader(DEF.CMD_TaskEdit, 0); msg.workHistory[0].editor = MyInfo.mMyInfo.userID; msg.workHistory[0].taskID = mTask.recordID; if (typeReport) { msg.workHistory[0].columnName = (dlg.Type == "중간보고") ? "reportMid" : "reportDone"; msg.workHistory[0].toInfo = dlg.Time + "," + dlg.Msg; } else { msg.workHistory[0].columnName = (dlg.Type == "승인") ? "confirmOK" : "confirmNO"; msg.workHistory[0].toInfo = dlg.Time + "," + dlg.Msg; } string info = string.Format("[{0}] : {1}", msg.workHistory[0].columnName, msg.workHistory[0].toInfo); SendChatMessage(info, true); ICDPacketMgr.GetInst().sendMsgToServer(msg); } }
private void ICD_EditTask(int clientID, HEADER obj) { WorkHistoryList msg = obj as WorkHistoryList; DatabaseMgr.EditTask(msg); int taskID = msg.workHistory[0].taskID; if ((msg.workHistory.Length == 1) && (msg.workHistory[0].columnName == "confirmOK")) { string[] data = new string[2]; data = msg.workHistory[0].toInfo.Split(',', (char)2); DatabaseMgr.EditTaskBase(taskID, "timeDone", data[0]); } ICD.WorkList task = new ICD.WorkList(); task.FillServerHeader(DEF.CMD_TaskLatestInfo, 0); DatabaseMgr.GetTaskLatest(taskID, ref task.works[0]); sendMsg(task.works[0].worker, task); sendMsg(task.works[0].director, task); }