protected void SaveNewRecord(object sender, DirectEventArgs e) { try { //Getting the id to check if it is an Add or an edit as they are managed within the same form. string obj = e.ExtraParams["values"]; JsonSerializerSettings settings = new JsonSerializerSettings(); CustomResolver res = new CustomResolver(); // res.AddRule("leaveRequest1_employeeId", "employeeId"); //res.AddRule("leaveRequest1_ltId", "ltId"); // res.AddRule("leaveRequest1_status", "status"); settings.ContractResolver = res; LeaveReplacementApproval b = JsonConvert.DeserializeObject <LeaveReplacementApproval>(obj, settings); b.apStatus = Convert.ToInt16(LeaveApprovalStatusControl.GetApprovalStatus()); // b.leaveDays = Convert.ToDouble(leaveDaysField.Text); //b.status = Convert.ToInt16(status1); string id = e.ExtraParams["id"]; // Define the object to add or edit as null if (!b.isPaid.HasValue) { b.isPaid = false; } if (employeeId.SelectedItem != null) { b.employeeName = employeeId.SelectedItem.Text; } if (ltId.SelectedItem != null) { b.ltName = ltId.SelectedItem.Text; } //List<LeaveDay> days = GenerateLeaveDays(e.ExtraParams["days"]); try { LeaveReturnRecordRequest rec = new LeaveReturnRecordRequest(); rec.leaveId = CurrentLeaveId.Text; RecordResponse <LeaveReplacementApproval> recordResponse = _selfServiceService.ChildGetRecord <LeaveReplacementApproval>(rec); if (!recordResponse.Success) { Common.errorMessage(recordResponse); return; } PostRequest <LeaveReplacementApproval> request = new PostRequest <LeaveReplacementApproval>(); request.entity = recordResponse.result; request.entity.replApStatus = apStatus.GetApprovalStatus(); PostResponse <LeaveReplacementApproval> r = _selfServiceService.ChildAddOrUpdate <LeaveReplacementApproval>(request); //check if the insert failed if (!r.Success) //it maybe be another condition { //Show an error saving... X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(r);; return; } else { b.recordId = r.recordId; Store1.Reload(); //Display successful notification Notification.Show(new NotificationConfig { Title = Resources.Common.Notification, Icon = Icon.Information, Html = Resources.Common.RecordSavingSucc }); //RecordRequest rec = new RecordRequest(); //rec.RecordID = b.recordId; //RecordResponse<LeaveRequest> recordResponse = _leaveManagementService.ChildGetRecord<LeaveRequest>(rec); //if (!recordResponse.Success) //{ // X.Msg.Alert(Resources.Common.Error, recordResponse.Summary).Show(); // return; //} //leaveRef.Text = recordResponse.result.leaveRef; //this.EditRecordWindow.Close(); //SetTabPanelEnabled(true); //////RowSelectionModel sm = this.GridPanel1.GetSelectionModel() as RowSelectionModel; //////sm.DeselectAll(); //////sm.Select(b.recordId.ToString()); } } catch (Exception ex) { //Error exception displaying a messsage box X.MessageBox.ButtonText.Ok = Resources.Common.Ok; X.Msg.Alert(Resources.Common.Error, Resources.Common.ErrorSavingRecord).Show(); } } catch (Exception exp) { X.Msg.Alert(Resources.Common.Error, exp.Message).Show(); } }
protected void PoPuP(object sender, DirectEventArgs e) { string id = e.ExtraParams["leaveId"]; string employeeIdParam = e.ExtraParams["employeeId"]; string returnTypeParam = e.ExtraParams["returnType"]; string type = e.ExtraParams["type"]; ApprovalsGridPanel.Disabled = false; switch (type) { case "imgEdit": BasicInfoTab.Reset(); //LeaveRequestListRequest leaveReq = new LeaveRequestListRequest(); //leaveReq.BranchId = 0; //leaveReq.DepartmentId = 0; //leaveReq.raEmployeeId = 0; //leaveReq.EmployeeId = Convert.ToInt32(employeeId.SelectedItem.Value); //leaveReq.status = 2; //leaveReq.Size = "50"; //leaveReq.StartAt = "0"; //leaveReq.SortBy = "recordId"; //leaveReq.Filter = ""; //ListResponse<LeaveRequest> leaveResp = _leaveManagementService.ChildGetAll<LeaveRequest>(leaveReq); //if (!leaveResp.Success) //{ // X.MessageBox.ButtonText.Ok = Resources.Common.Ok; // Common.errorMessage(leaveResp); // return; //} //leaveIdStore.DataSource = leaveResp.Items; //leaveIdStore.DataBind(); LeaveReturnRecordRequest r = new LeaveReturnRecordRequest(); r.leaveId = id; RecordResponse <LeaveReturn> response = _leaveManagementService.ChildGetRecord <LeaveReturn>(r); if (!response.Success) { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } employeeId.GetStore().Add(new object[] { new { recordId = response.result.employeeId, fullName = response.result.employeeName } }); employeeId.SetValue(response.result.employeeId); employeeId.Select(response.result.employeeId); fillLeavesStore(); //Step 2 : call setvalues with the retrieved object this.BasicInfoTab.SetValues(response.result); FillApprovalsStore(id, employeeIdParam, returnTypeParam); this.EditRecordWindow.Title = Resources.Common.EditWindowsTitle; this.EditRecordWindow.Show(); break; case "imgDelete": X.Msg.Confirm(Resources.Common.Confirmation, Resources.Common.DeleteOneRecord, new MessageBoxButtonsConfig { Yes = new MessageBoxButtonConfig { //We are call a direct request metho for deleting a record Handler = String.Format("App.direct.DeleteRecord({0},{1},{2})", id, employeeIdParam, returnTypeParam), Text = Resources.Common.Yes }, No = new MessageBoxButtonConfig { Text = Resources.Common.No } }).Show(); break; case "imgAttach": //Here will show up a winow relatice to attachement depending on the case we are working on break; default: break; } }
protected void PoPuP(object sender, DirectEventArgs e) { string id = e.ExtraParams["id"]; string type = e.ExtraParams["type"]; string replApStatus = e.ExtraParams["replApStatus"]; CurrentLeaveId.Text = id; apStatus.disableApprovalStatus(true); SaveButton.Hidden = true; switch (type) { case "imgEdit": //Step 1 : get the object from the Web Service //startDate.SuspendEvent("change"); //endDate.SuspendEvent("change"); leaveDaysField.SetHidden(true); leaveHours.SetHidden(true); workingHours.SetHidden(true); LeaveReturnRecordRequest r = new LeaveReturnRecordRequest(); r.leaveId = id; // CurrentLeave.Text = r.RecordID; // shouldDisableLastDay.Text = "0"; RecordResponse <LeaveRequest> response = _selfServiceService.ChildGetRecord <LeaveRequest>(r); if (!response.Success) { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } //Step 2 : call setvalues with the retrieved object this.BasicInfoTab.SetValues(response.result); LeaveApprovalStatusControl.setApprovalStatus(response.result.apStatus.ToString()); // calDays.Value = (response.result.endDate - response.result.startDate).Days + 1; FillLeaveType(); ltId.Select(response.result.ltId.ToString()); //status.Select(response.result.status); // StoredLeaveChanged.Text = "0"; if (response.result.employeeId != "0") { employeeId.GetStore().Add(new object[] { new { recordId = response.result.employeeId, fullName = response.result.employeeName } }); employeeId.SetValue(response.result.employeeId); } LoadQuickViewInfo(response.result.employeeId, response.result.startDate); //LeaveDayListRequest req = new LeaveDayListRequest(); //req.LeaveId = r.RecordID; //ListResponse<LeaveDay> resp = _leaveManagementService.ChildGetAll<LeaveDay>(req); //if (!resp.Success) //{ // Common.errorMessage(resp); // return; //} //; //resp.Items.ForEach(x => x.dow = (short)DateTime.ParseExact(x.dayId, "yyyyMMdd", new CultureInfo("en")).DayOfWeek); panelRecordDetails.ActiveTabIndex = 0; //else if (response.result.status == 3 || response.result.status == -1) // setUsed(true); //else //{ setNormal(); } setApproved(true); calDays.Value = (response.result.endDate - response.result.startDate).Days + 1; apStatus.setApprovalStatus(replApStatus); this.EditRecordWindow.Title = Resources.Common.EditWindowsTitle; this.EditRecordWindow.Show(); //employeeId.ResumeEvent("select"); //startDate.ResumeEvent("change"); //endDate.ResumeEvent("change"); if (replApStatus == "1") { apStatus.disableApprovalStatus(false); SaveButton.Hidden = false; } break; case "imgDelete": X.Msg.Confirm(Resources.Common.Confirmation, Resources.Common.DeleteOneRecord, new MessageBoxButtonsConfig { Yes = new MessageBoxButtonConfig { //We are call a direct request metho for deleting a record Handler = String.Format("App.direct.DeleteRecord({0})", id), Text = Resources.Common.Yes }, No = new MessageBoxButtonConfig { Text = Resources.Common.No } }).Show(); break; case "colAttach": //Here will show up a winow relatice to attachement depending on the case we are working on break; default: break; } }