/// <summary> /// 批量更新 /// </summary> /// <returns></returns> protected async Task <int> BatchUpdateAsync(List <Guid> ids, ThirdNewsUpdateDto dto) { var url = BaseUrl + "api/ThirdNews/"; try { var data = new BatchUpdate <ThirdNewsUpdateDto> { Ids = ids, UpdateDto = dto }; var response = await httpClient.PutAsJsonAsync(url, data); if (response.IsSuccessStatusCode) { return(ids.Count); } else { return(0); } } catch (Exception) { return(default);
// This method sends the status of all it's links (SNPPs) as a message to // a UDP port specified during construction as "rcPort". public void SendRCUpdateCallback(object state) { BatchUpdate batchUpdate = new BatchUpdate(); batchUpdate.senderID = routerId; batchUpdate.senderPort = localMgmtPort; int linkCounter = 0; foreach (KeyValuePair <byte, uint> ifaceDef in interfaceDefinitions) { if (peers[ifaceDef.Key] != null && peers[ifaceDef.Key].isActive) { PeerInformation peer = peers[ifaceDef.Key]; int capacity = (int)BWMgmt.AvailableBandwidthAt(ifaceDef.Key); //SendRCUpdateSingle(ifaceDef.Key); // Execute a more general method for given SNPP batchUpdate.linkList.Add(new Link( routerId, asId, snId, ifaceDef.Key, peer.remoteRouterId, peer.remoteAsId, peer.remoteSnId, peer.remoteSNPP, capacity )); linkCounter++; } } sendMgmtMessage(rcPort, batchUpdate); //Log.WriteLine("[LRM] Sent RC update ({0} links)", linkCounter); }
private void dataGridView2_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { try { if (e.RowIndex >= 0) { if (e.ColumnIndex == dataGridView2.Columns["批次"].Index) { using (BatchUpdate bu = new BatchUpdate(dataGridView2.Rows[e.RowIndex].Cells["瓶签号"].Value.ToString(), piv.userID)) { if (bu.ShowDialog() == DialogResult.OK) { if (dataGridView2.Rows[e.RowIndex].Cells["批次"].Value.ToString() != bu.Return()) { dataGridView2.Rows[e.RowIndex].Cells["checkbox"].Value = false; dataGridView2.Rows[e.RowIndex].Cells["批次"].Value = bu.Return(); } } } } if (e.ColumnIndex == dataGridView2.Columns["仓位"].Index) { using (UpdateDeskNo bu = new UpdateDeskNo(dataGridView2.Rows[e.RowIndex].Cells["瓶签号"].Value.ToString(), piv.userID)) { if (bu.ShowDialog() == DialogResult.OK) { if (dataGridView2.Rows[e.RowIndex].Cells["仓位"].Value.ToString() != bu.Return()) { dataGridView2.Rows[e.RowIndex].Cells["checkbox"].Value = false; dataGridView2.Rows[e.RowIndex].Cells["仓位"].Value = bu.Return(); } } } } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void btnRun_Click(object sender, EventArgs e) { Task.Run(() => { bool guidReport = dgvData.Columns[0].HeaderText.Equals("guid", StringComparison.OrdinalIgnoreCase); foreach (DataGridViewRow r in dgvData.Rows) { Color c = r.DefaultCellStyle.BackColor; if (chkOnlyChanged.Checked && c != Color.Yellow) { continue; } if (c == Color.Red || c == Color.Green) { continue; } string guid = r.Cells[0].Value.ToString(); if (!guidReport) { guid = EncompassHelper.LoanNumberToGuid(guid); } if (string.IsNullOrEmpty(guid)) { r.DefaultCellStyle.BackColor = Color.Red; continue; } BatchUpdate b = new BatchUpdate(guid); for (int i = 1; i < dgvData.Columns.Count; i++) { string value = r.Cells[i].Value.ToString(); string header = dgvData.Columns[i].HeaderText; b.Fields.Add(header, value); } EncompassHelper.SubmitBatch(b); r.DefaultCellStyle.BackColor = Color.Green; } }); }
public static void SubmitBatch(BatchUpdate Batch) { EncompassApplication.Session.Loans.SubmitBatchUpdate(Batch); }
async void _channel_OnDataReceived(object sender, DynamicJson rawdata) { //Parse channel array and call the appropriate events. if (rawdata[0].ToString() == "noop") { // set active client if more than 120 sec of inactivity if ((DateTime.UtcNow - _last_response_date).TotalSeconds > 120 && _client_id != null) { SetActiveClientAsync(); _last_response_date = DateTime.UtcNow; } } else if (rawdata[0].ToString() == "resync") // internal handling { SyncAllNewEventsAsync(long.Parse(rawdata[1].ToString())); } else if (rawdata[0]["p"] != null) { DynamicJson wrapper = new DynamicJson(rawdata[0]["p"].ToString()); if (wrapper["4"] != null && wrapper["4"]["2"] != null) { if (_channel.Connected && !_wasConnected) { _client_id = wrapper["4"]["2"].ToString(); _requestHeader = null; _channel.SendAck(0); _wasConnected = _channel.Connected; // load self info await GetSelfInfoAsync(); // load conversations if not loaded await SyncRecentConversationsAsync(); if (OnConnectionEstablished != null) { OnConnectionEstablished(this, null); } } } if (wrapper["2"] != null && wrapper["2"]["2"] != null) { DynamicJson cbu = new DynamicJson(wrapper["2"]["2"].ToString()); cbu.RemoveAt(0); BatchUpdate batchUpdate = ProtoJsonSerializer.Deserialize <BatchUpdate>(cbu as DynamicJson); foreach (StateUpdate state_update in batchUpdate.state_update) { if (state_update.event_notification != null) { switch (state_update.event_notification.current_event.event_type) { case EventType.EVENT_TYPE_REGULAR_CHAT_MESSAGE: case EventType.EVENT_TYPE_UNKNOWN: if (state_update.event_notification.current_event.conversation_id == null) { break; } if (_active_conversations.ContainsKey(state_update.event_notification.current_event.conversation_id.id)) { _active_conversations[state_update.event_notification.current_event.conversation_id.id].events.Add(state_update.event_notification.current_event); if (OnNewMessageReceived != null) { OnNewMessageReceived(this, state_update.event_notification.current_event); } } else { // get conversation await GetConversationAsync(state_update.event_notification.current_event.conversation_id.id); //ConversationState s = new ConversationState() //{ // conversation_id = state_update.event_notification.current_event.conversation_id, // conversation = state_update.conversation, // events = new List<Event>() { state_update.event_notification.current_event } //}; //_active_conversations.Add(s.conversation_id.id, new Model.Conversation(s)); //if (NewConversationCreated != null) // NewConversationCreated(this, _active_conversations.Last().Value); } break; case EventType.EVENT_TYPE_OTR_MODIFICATION: _active_conversations[state_update.event_notification.current_event.conversation_id.id].conversation.otr_status = state_update.event_notification.current_event.otr_status; break; case EventType.EVENT_TYPE_CONVERSATION_RENAME: _active_conversations[state_update.event_notification.current_event.conversation_id.id].conversation.name = state_update.event_notification.current_event.conversation_rename.new_name; break; } } if (state_update.presence_notification != null) { foreach (var presence in state_update.presence_notification.presence) { if (_contacts.ContainsKey(presence.user_id.gaia_id)) { _contacts[presence.user_id.gaia_id].presence = presence.presence; } } } if (state_update.self_presence_notification != null) { CurrentUser.presence = new Presence() { available = state_update.self_presence_notification.client_presence_state.state == ClientPresenceStateType.CLIENT_PRESENCE_STATE_DESKTOP_ACTIVE } } ; if (state_update.watermark_notification != null) { if (state_update.watermark_notification.sender_id.gaia_id == CurrentUser.id.gaia_id) { _active_conversations[state_update.watermark_notification.conversation_id.id].conversation.self_conversation_state.self_read_state.latest_read_timestamp = state_update.watermark_notification.latest_read_timestamp; } //else // _active_conversations[state_update.watermark_notification.conversation_id.id].read_state. = state_update.watermark_notification.latest_read_timestamp.FromUnixTime(); } } _timestamp = long.Parse(wrapper["1"]["4"].ToString()); } } }
async void _channel_OnDataReceived(object sender, JArray rawdata) { //Parse channel array and call the appropriate events. if (rawdata[0].ToString() == "noop") { // set active client if more than 120 sec of inactivity if ((DateTime.UtcNow - _last_response_date).TotalSeconds > 120 && _client_id != null) { SetActiveClientAsync(); _last_response_date = DateTime.UtcNow; } } else if (rawdata[0].ToString() == "resync") { SyncAllNewEventsAsync(long.Parse(rawdata[1].ToString())); } else if (rawdata[0]["p"] != null) { JObject wrapper = JObject.Parse(rawdata[0]["p"].ToString()); if (wrapper["3"] != null && wrapper["3"]["2"] != null) { _client_id = wrapper["3"]["2"].ToString(); _requestHeader = null; _channel.SendAck(0); if (_channel.Connected && !_wasConnected) { _wasConnected = _channel.Connected; if (ConnectionEstablished != null) { ConnectionEstablished(this, null); } // check if contacts are loaded if (_contacts == null || _contacts.Count == 0) { if (ContactListLoaded != null) { ContactListLoaded(this, _contacts.Values.ToList()); } string[] participants_id = _active_conversations.Values.SelectMany(c => c._conversation.current_participant.Where(p => p.gaia_id != CurrentUser.Id).Select(p => p.gaia_id)).Distinct().ToArray(); await GetEntityByIdAsync(participants_id); if (ConversationHistoryLoaded != null) { ConversationHistoryLoaded(this, _active_conversations.Values.ToList()); } } } } if (wrapper["2"] != null && wrapper["2"]["2"] != null) { JArray cbu = JArray.Parse(wrapper["2"]["2"].ToString()); cbu.RemoveAt(0); BatchUpdate batchUpdate = ProtoJsonSerializer.Deserialize <BatchUpdate>(cbu as JArray); foreach (StateUpdate state_update in batchUpdate.state_update) { if (state_update.event_notification != null) { switch (state_update.event_notification.current_event.event_type) { case EventType.EVENT_TYPE_REGULAR_CHAT_MESSAGE: case EventType.EVENT_TYPE_UNKNOWN: if (state_update.event_notification.current_event.conversation_id == null) { break; } if (_active_conversations.ContainsKey(state_update.event_notification.current_event.conversation_id.id)) { _active_conversations[state_update.event_notification.current_event.conversation_id.id].AddNewMessage(state_update.event_notification.current_event); if (NewMessageReceived != null) { NewMessageReceived(this, _active_conversations[state_update.event_notification.current_event.conversation_id.id]); } } else { ConversationState s = new ConversationState() { conversation_id = state_update.event_notification.current_event.conversation_id, conversation = state_update.conversation, events = new List <Event>() { state_update.event_notification.current_event } }; _active_conversations.Add(s.conversation_id.id, new Model.Conversation(s)); if (NewConversationCreated != null) { NewConversationCreated(this, _active_conversations.Last().Value); } } break; case EventType.EVENT_TYPE_OTR_MODIFICATION: _active_conversations[state_update.event_notification.current_event.conversation_id.id]._conversation.otr_status = state_update.event_notification.current_event.otr_status; break; case EventType.EVENT_TYPE_CONVERSATION_RENAME: _active_conversations[state_update.event_notification.current_event.conversation_id.id]._conversation.name = state_update.event_notification.current_event.conversation_rename.new_name; break; } } if (state_update.presence_notification != null) { foreach (var presence in state_update.presence_notification.presence) { if (_contacts.ContainsKey(presence.user_id.gaia_id)) { setPresence(_contacts[presence.user_id.gaia_id], presence.presence); } } } if (state_update.self_presence_notification != null) { CurrentUser.SetPresence(new Presence() { available = state_update.self_presence_notification.client_presence_state.state == ClientPresenceStateType.CLIENT_PRESENCE_STATE_DESKTOP_ACTIVE } ); } if (state_update.watermark_notification != null) { if (state_update.watermark_notification.sender_id.gaia_id == CurrentUser.Id) { _active_conversations[state_update.watermark_notification.conversation_id.id].SelfReadState = state_update.watermark_notification.latest_read_timestamp.FromUnixTime(); } else { _active_conversations[state_update.watermark_notification.conversation_id.id].ReadState = state_update.watermark_notification.latest_read_timestamp.FromUnixTime(); } } } _timestamp = long.Parse(wrapper["1"]["4"].ToString()); } } }
protected override void Context() { base.Context(); A.CallTo(() => _batchUpdatable.Updating).Returns(true); sut = new BatchUpdate(_batchUpdatable); }
public override Task <int> BatchUpdateAsync([FromBody] BatchUpdate <ThirdNewsUpdateDto> data) => base.BatchUpdateAsync(data);
private void BatchUpdater() { Session newSession = new Session(); newSession.Start("https://TEBE11147866.ea.elliemae.net$TEBE11147866", "admin", "Y0uT@lk!ngT0M3?"); String currentUser = EncompassApplication.Session.UserID; //Excel prep and call Microsoft.Office.Interop.Excel.Application userApp = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook userWorkbook = userApp.Workbooks.Open(@"\\ftwfs02\Groups\POS\Encompass Support\Batch_Updater1.csv"); Microsoft.Office.Interop.Excel._Worksheet userWorksheet = userWorkbook.Sheets[1]; Microsoft.Office.Interop.Excel.Range userRange = userWorksheet.UsedRange; //userWorksheet.Cells.NumberFormat = "General"; try { //set shortcut for loan call Loan loan = EncompassApplication.CurrentLoan; //row/column setup int rCnt = 1; int cCnt = 1; int rowCount = userRange.Rows.Count; int colCount = userRange.Columns.Count; string r1c2string = ""; string r1c3string = ""; string r1c4string = ""; string r1c5string = ""; string r1c6string = ""; var batchT = loan.Fields["CX.PC.BATCH.TYPE"].Value; string batchType = batchT.ToString(); DateTime dateRan = new DateTime(); dateRan = DateTime.Now; double colData1 = 0; string colDatSt = colData1.ToString(); cCnt++; var r1c2 = userWorksheet.Cells[rCnt, cCnt].Value2; r1c2string = r1c2.ToString(); cCnt++; var r1c3 = userWorksheet.Cells[rCnt, cCnt].Value2; if (r1c3 != null) { r1c3string = r1c3.ToString(); cCnt++; } var r1c4 = userWorksheet.Cells[rCnt, cCnt].Value2; if (r1c4 != null) { r1c4string = r1c4.ToString(); cCnt++; } var r1c5 = userWorksheet.Cells[rCnt, cCnt].Value2; if (r1c5 != null) { r1c5string = r1c5.ToString(); cCnt++; } var r1c6 = userWorksheet.Cells[rCnt, cCnt].Value2; if (r1c6 != null) { r1c6string = r1c6.ToString(); cCnt++; } cCnt = 1; rCnt = 2; cCnt = 2; var colData2 = userWorksheet.Cells[rCnt, cCnt].Text; string colData2string = ""; cCnt++; var colData3 = userWorksheet.Cells[rCnt, cCnt].Text; string colData3string = ""; cCnt++; var colData4 = userWorksheet.Cells[rCnt, cCnt].Text; string colData4string = ""; cCnt++; var colData5 = userWorksheet.Cells[rCnt, cCnt].Text; string colData5string = ""; cCnt++; var colData6 = userWorksheet.Cells[rCnt, cCnt].Text; string colData6string = ""; cCnt = 1; for (rCnt = 2; rCnt <= rowCount; rCnt++) { if (userWorksheet.Cells[rCnt, cCnt].Value2 is null) { break; } colData1 = (double)userWorksheet.Cells[rCnt, cCnt].Value2; colDatSt = colData1.ToString(); if (colData1.ToString().Substring(0, 1) == "6") { colDatSt = "00" + colDatSt; colData1 = Convert.ToDouble(colDatSt); } cCnt++; colData2 = userWorksheet.Cells[rCnt, cCnt].Text; colData2string = colData2.ToString(); //Additional columns as needed cCnt++; colData3 = userWorksheet.Cells[rCnt, cCnt].Text; if (colData3 != "") { colData3string = colData3.ToString(); cCnt++; } colData4 = userWorksheet.Cells[rCnt, cCnt].Text; if (colData4 != "") { colData4string = colData4.ToString(); cCnt++; } colData5 = userWorksheet.Cells[rCnt, cCnt].Text; if (colData5 != "") { colData5string = colData5.ToString(); cCnt++; } colData6 = userWorksheet.Cells[rCnt, cCnt].Text; if (colData6 != "") { colData6string = colData6.ToString(); cCnt++; } cCnt = 1; StringFieldCriterion cri = new StringFieldCriterion(); cri.FieldName = "Loan.LoanNumber"; cri.Value = colDatSt; BatchUpdate batch = new BatchUpdate(cri); batch.Fields.Add(r1c2string, colData2string); if (colData3string != "") { batch.Fields.Add(r1c3string, colData3string); } if (colData4string != "") { batch.Fields.Add(r1c4string, colData4string); } if (colData5string != "") { batch.Fields.Add(r1c5string, colData5string); } if (colData6string != "") { batch.Fields.Add(r1c6string, colData6string); } batch.Fields.Add("CX.PC.BATCH.COLL.TRACK", currentUser); batch.Fields.Add("CX.PC.BATCH.COL.DATE", dateRan); batch.Fields.Add("CX.PC.BATCH.IRON.MOUNTAIN", batchType); EncompassApplication.Session.Loans.SubmitBatchUpdate(batch); } } catch (Exception) { MessageBox.Show("Something went wrong. Please click YES to save on the next popup, rebuild the spreadsheet and run the Batch Update again."); } finally { userRange.Delete(XlDeleteShiftDirection.xlShiftUp); string fileName = @"\\ftwfs02\Groups\POS\Encompass Support\Batch_Updater1.csv"; string folder = System.IO.Path.GetDirectoryName(fileName); if (System.IO.Directory.Exists(folder)) { userWorkbook.Close(true, fileName, null); } userApp.Quit(); Marshal.ReleaseComObject(userWorksheet); Marshal.ReleaseComObject(userWorkbook); Marshal.ReleaseComObject(userApp); newSession.End(); } //userRange.Delete(XlDeleteShiftDirection.xlShiftUp); //string fileName = @"H:\Encompass Support\Batch_Updater2.csv"; //string folder = System.IO.Path.GetDirectoryName(fileName); //if (System.IO.Directory.Exists(folder)) //{ // userWorkbook.Close(true, fileName, null); //} //userApp.Quit(); //Marshal.ReleaseComObject(userWorksheet); //Marshal.ReleaseComObject(userWorkbook); //Marshal.ReleaseComObject(userApp); //newSession.End(); }
void _channel_OnDataReceived(object sender, JArray rawdata) { //Parse channel array and call the appropriate events. if (rawdata[0].ToString() == "noop") { // set active client if more than 120 sec of inactivity if ((DateTime.UtcNow - _last_response_date).TotalSeconds > 120) { SetActiveClient(); _last_response_date = DateTime.UtcNow; } } else if (rawdata[0]["p"] != null) { JObject wrapper = JObject.Parse(rawdata[0]["p"].ToString()); if (wrapper["3"] != null && wrapper["3"]["2"] != null) { _client_id = wrapper["3"]["2"].ToString(); _requestHeader = null; _channel.SendAck(0); if (_channel.Connected && !_wasConnected) { _wasConnected = _channel.Connected; if (ConnectionEstablished != null) { ConnectionEstablished(this, null); } } } if (wrapper["2"] != null && wrapper["2"]["2"] != null) { JArray cbu = JArray.Parse(wrapper["2"]["2"].ToString()); cbu.RemoveAt(0); BatchUpdate batchUpdate = ProtoJsonSerializer.Deserialize <BatchUpdate>(cbu as JArray); foreach (StateUpdate state_update in batchUpdate.state_update) { if (state_update.event_notification != null) { if (state_update.event_notification.current_event.event_type == EventType.EVENT_TYPE_REGULAR_CHAT_MESSAGE) { if (_active_conversation_ids.Contains(state_update.event_notification.current_event.conversation_id.id)) { if (NewConversationEventReceived != null) { NewConversationEventReceived(this, state_update.event_notification.current_event); } } else { if (NewConversationCreated != null) { ConversationState s = new ConversationState() { conversation_id = state_update.event_notification.current_event.conversation_id, conversation = state_update.conversation, events = new List <Event>() { state_update.event_notification.current_event } }; NewConversationCreated(this, s); } } } } if (state_update.presence_notification != null) { foreach (var presence in state_update.presence_notification.presence) { PresenceInformationReceived(this, presence); } } if (state_update.self_presence_notification != null) { PresenceInformationReceived(this, new PresenceResult() { user_id = CurrentUser.id, presence = new Presence() { available = state_update.self_presence_notification.client_presence_state.state == ClientPresenceStateType.CLIENT_PRESENCE_STATE_DESKTOP_ACTIVE } }); } } this._timestamp = long.Parse(wrapper["1"]["4"].ToString()); } } }
public async virtual Task <int> BatchUpdateAsync([FromBody] BatchUpdate <TUpdate> data) => await _store.BatchUpdateAsync(data.Ids, data.UpdateDto);