void UpEndAttendance_Click(object sender, EventArgs e) { isVisitStart = false; Common.SetIsAttendanceRun(user.username, isVisitStart); locMgr.RemoveUpdates(this); // SAVE upPrevBlock.Visibility = ViewStates.Gone; upNextBlock.Visibility = ViewStates.Gone; FragmentManager.BeginTransaction().Remove(fragment).Commit(); fragmentNum = 1; Attendance newAttendance = AttendanceManager.GetCurrentAttendance(); List <AttendanceResult> newAttendanceResults = AttendanceResultManager.GetCurrentAttendanceResults(); List <AttendancePhoto> newAttendancePhotos = AttendancePhotoManager.GetCurrentAttendancePhotos(); // List<AttendanceGPSPoint> newAttendanceGPSPoints = AttendanceGPSPointManager.GetCurrentAttendanceGPSPoints (); int attID = AttendanceManager.SaveAttendance(newAttendance); if (newAttendanceResults != null) { AttendanceResultManager.SaveNewAttendanceResults(attID, newAttendanceResults); } if (newAttendancePhotos != null) { AttendancePhotoManager.SaveNewAttendancePhotos(attID, newAttendancePhotos); } if (attendanceGPSPoints != null) { AttendanceGPSPointManager.SaveNewAttendanceGPSPoints(attID, attendanceGPSPoints); } //Correct Pharmacy Pharmacy pharmacy = PharmacyManager.GetPharmacy(selectedPharmacyID); pharmacy.prev = DateTime.Now; pharmacy.next = DateTimeFormatInfo.CurrentInfo.Calendar.AddWeeks(pharmacy.prev, 2); PharmacyManager.SavePharmacy(pharmacy); //Clear AttendanceManager.SetCurrentAttendance(null); AttendanceResultManager.SetCurrentAttendanceResults(null); AttendancePhotoManager.SetCurrentAttendancePhotos(null); RefreshMainView(); }
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Use this to return your custom view for this Fragment // return inflater.Inflate(Resource.Layout.YourFragment, container, false); base.OnCreateView(inflater, container, savedInstanceState); View rootView = inflater.Inflate(Resource.Layout.Block1Fragment, container, false); pharmacyID = Arguments.GetInt(Common.PHARMACY_ID); user = Common.GetCurrentUser(); netCategories = Common.GetNetCategories(user.username); promos = Common.GetPromos(user.username); merchant = Common.GetMerchant(user.username); territory = Common.GetTerritory(user.username); pharmacy = PharmacyManager.GetPharmacy(pharmacyID); var tradenets = Common.GetTradeNets(user.username); Dictionary <int, string> tnDict = new Dictionary <int, string> (); foreach (var item in tradenets) { tnDict.Add(item.id, item.shortName); } ; attendance = AttendanceManager.GetCurrentAttendance(); if (attendance == null) { attendance = AttendanceManager.GetLastAttendance(pharmacyID); if (attendance == null) { attendance = new Attendance() { pharmacy = pharmacyID, date = DateTime.Now, merchant = merchant.id }; } else { attendance.id = -1; attendance.date = DateTime.Now; } } rootView.FindViewById <TextView> (Resource.Id.b1fTradenetText).Text = tnDict [pharmacy.tradenet]; //@"Аптечная Сеть"; rootView.FindViewById <TextView> (Resource.Id.b1fCityText).Text = territory.baseCity; rootView.FindViewById <TextView> (Resource.Id.b1fPharmacyNameText).Text = pharmacy.shortName; rootView.FindViewById <TextView> (Resource.Id.b1fPharmacyAddressText).Text = pharmacy.address; rootView.FindViewById <TextView> (Resource.Id.b1fCategoryInOTCText).Text = pharmacy.category_otc; rootView.FindViewById <TextView> (Resource.Id.b1fLastAttendanceText).Text = pharmacy.prev == DateTime.MinValue ? String.Empty : pharmacy.prev.ToString(@"d"); rootView.FindViewById <TextView> (Resource.Id.b1fNextAttendanceText).Text = pharmacy.next == DateTime.MinValue ? String.Empty : pharmacy.next.ToString(@"d"); rootView.FindViewById <TextView> (Resource.Id.b1fAllAttendanciesText).Text = AttendanceManager.GetStatistics(pharmacy.id); categoryNetSpinner = rootView.FindViewById <Spinner> (Resource.Id.b1fCategoryNetSpinner); ArrayAdapter adapter = new ArrayAdapter(Activity, Android.Resource.Layout.SimpleSpinnerItem, (from item in netCategories select item.key).ToArray <string>()); adapter.SetDropDownViewResource(Resource.Layout.SpinnerItem); categoryNetSpinner.Adapter = adapter; categoryNetSpinner.ItemSelected += (object sender, AdapterView.ItemSelectedEventArgs e) => { attendance.category_net = netCategories[e.Position].id; }; // SetValue for (int i = 0; i < netCategories.Count; i++) { if (netCategories [i].id == attendance.category_net) { categoryNetSpinner.SetSelection(i); } } telephoneEdit = rootView.FindViewById <EditText> (Resource.Id.b1fTelephoneEdit); telephoneEdit.Text = attendance.telephone; purchaserFIOEdit = rootView.FindViewById <EditText> (Resource.Id.b1fPurchaserFIOEdit); purchaserFIOEdit.Text = attendance.purchaserFIO; promosEdit = rootView.FindViewById <EditText> (Resource.Id.b1fPromosEdit); promosButton = rootView.FindViewById <Button> (Resource.Id.b1fPromosButton); promosButton.Click += (object sender, EventArgs e) => { bool[] checkedItems = new bool[promos.Count]; if (attendance.promos != null) { for (int i = 0; i < promos.Count; i++) { if (attendance.promos.Contains(promos[i].id)) { checkedItems[i] = true; tempPromos.Add(promos[i].id); } } } string[] items = (from promo in promos orderby promo.id select promo.name).ToArray <string>(); AlertDialog.Builder builder; builder = new AlertDialog.Builder(Activity); builder.SetTitle("Выбор ПРОМО-матералов"); builder.SetCancelable(false); builder.SetMultiChoiceItems(items, checkedItems, MultiListClicked); builder.SetPositiveButton(@"Сохранить", delegate { attendance.promos = tempPromos.ToArray <int>(); builder.Dispose(); RefreshPromos(); } ); builder.SetNegativeButton(@"Отмена", delegate { builder.Dispose(); }); builder.Show(); }; RefreshPromos(); pharmacistCountEdit = rootView.FindViewById <EditText> (Resource.Id.b1fPharmacistCountEdit); pharmacistCountEdit.Text = attendance.pharmacistCount.ToString(); commentEdit = rootView.FindViewById <EditText> (Resource.Id.b1fCommentEdit); commentEdit.Text = attendance.comment; RefreshControlsState(); return(rootView); }
void RefreshContent() { llSyncItems.RemoveAllViews(); queue = (List <SyncQueue>)SyncQueueManager.GetSyncQueue(selectedDate); foreach (var q in queue) { View view = LayoutInflater.Inflate(Resource.Layout.SyncFragmentItem, null); RelativeLayout rl = view.FindViewById <RelativeLayout> (Resource.Id.sfiRelativeLayout); ImageView iv = view.FindViewById <ImageView> (Resource.Id.sfiStatusImage); TextView type = view.FindViewById <TextView> (Resource.Id.sfiTypeInfoText); TextView loc = view.FindViewById <TextView> (Resource.Id.sfiLocationText); try { if (q.isSync) { rl.SetBackgroundColor(Android.Graphics.Color.LightGreen); iv.SetImageResource(Resource.Drawable.ic_check_circle_white_36dp); type.SetTextAppearance(this, Resource.Style.text_success); loc.SetTextAppearance(this, Resource.Style.text_success_small); } else { rl.SetBackgroundColor(Android.Graphics.Color.LightPink); iv.SetImageResource(Resource.Drawable.ic_highlight_off_white_36dp); type.SetTextAppearance(this, Resource.Style.text_danger); loc.SetTextAppearance(this, Resource.Style.text_danger_small); } Attendance att = null; Pharmacy pharm = null; switch (q.type) { case SyncQueueType.sqtAttendance: att = AttendanceManager.GetAttendance(q.itemID); pharm = PharmacyManager.GetPharmacy(att.pharmacy); type.Text = string.Format(@"Тип: Посещение аптеки {0} за дату {1}", pharm.fullName, att.date.ToString(@"d")); loc.Text = string.Format(@"Размещение: {0}", q.fileLocation); break; case SyncQueueType.sqtAttendanceResult: AttendanceResult attRes = AttendanceResultManager.GetAttendanceResult(q.itemID); att = AttendanceManager.GetAttendance(attRes.attendance); pharm = PharmacyManager.GetPharmacy(att.pharmacy); type.Text = string.Format(@"Тип: Значение по препарату в посещение аптеки {0} за дату {1}", pharm.fullName, att.date.ToString(@"d")); loc.Text = string.Format(@"Размещение: {0}", q.fileLocation); break; case SyncQueueType.sqtAttendanceGPSPoint: AttendanceGPSPoint attGPS = AttendanceGPSPointManager.GetAttendanceGPSPoint(q.itemID); att = AttendanceManager.GetAttendance(attGPS.attendance); pharm = PharmacyManager.GetPharmacy(att.pharmacy); type.Text = string.Format(@"Тип: GPS значение в посещение аптеки {0} за дату {1} - lat:{2}, lon:{3}", pharm.fullName, att.date.ToString(@"d"), attGPS.latitude, attGPS.longitude); loc.Text = string.Format(@"Размещение: {0}", q.fileLocation); break; case SyncQueueType.sqtAttendancePhoto: AttendancePhoto attPho = AttendancePhotoManager.GetAttendancePhoto(q.itemID); type.Text = string.Format(@"Фото: {0}", attPho.photoPath); loc.Text = q.fileLocation; break; default: type.Text = @"Неизвестный тип файла"; type.SetTextColor(Android.Graphics.Color.DarkRed); break; } } catch (Exception ex) { type.Text = @"Error:"; loc.Text = ex.Message; } llSyncItems.AddView(view); } }