public async Task <IActionResult> Put([FromBody] ProjectStatusModel data) { var p = _clientData.GetProjectStatus(data.Id); if (p == null) { return(BadRequest()); } await _clientData.UpdateProjectStatus(data); return(Ok()); }
/// <summary> /// 添加或更新记录 /// </summary> public void AddOrUpdate(ProjectStatusModel model) { try { Invoke(new Action(() => { bool add = true; //IP、Port、名称、版本、CPU、内存 if (DgvProjectList.Rows.Count > 0) { foreach (DataGridViewRow item in DgvProjectList.Rows) { try { string _ip = item.Cells[ClmIP.Name].Value.ToString(); int _port = int.Parse(item.Cells[ClmPort.Name].Value.ToString()); if (_ip == model.IP && _port == model.Port) { //item.Cells[ClmIP.Name].Value = model.IP; //item.Cells[ClmPort.Name].Value = model.Port; item.Cells[ClmName.Name].Value = model.Name; item.Cells[ClmVersion.Name].Value = model.Version; item.Cells[ClmCPU.Name].Value = model.Cpu; item.Cells[ClmRam.Name].Value = model.Ram; item.Cells[ClmStartTime.Name].Value = model.StartTime; item.Cells[ClmIsRun.Name].Value = model.IsRun ? "√" : "×××"; item.Cells[ClmTxTime.Name].Value = model.CreateTime; item.Cells[ClmRefreshTime.Name].Value = DateTime.Now; add = false; } } catch { } } } if (add) { DgvProjectList.Rows.Add( model.Name, model.IP, model.Port, model.Version, model.Cpu, model.Ram, model.IsRun ? "√" : "×××", model.StartTime, model.CreateTime, DateTime.Now); } })); } catch { } }
public static void AddProjectStatus(ProjectStatusModel status) { try { if (Str.Ok(status.IP, status.Port.ToString())) { status.CreateTime = DateTime.Now; string key = $"{status.IP}-{status.Port}"; if (R.Store.ProjectStatus.TryGetValue(key, out ProjectStatusModel _status)) { bool a = R.Store.ProjectStatus.TryUpdate(key, status, _status); } else { bool b = R.Store.ProjectStatus.TryAdd(key, status); } } } catch { } }
private void btnSave_Click(object sender, EventArgs e) { try { if (checkValid()) { ProjectStatusModel dModel; if (_isAdd) { dModel = new ProjectStatusModel(); } else { int ID = Convert.ToInt32(grvData.GetRowCellValue(grvData.FocusedRowHandle, "ID").ToString()); dModel = (ProjectStatusModel)ProjectStatusBO.Instance.FindByPK(ID); } dModel.Name = txtName.Text; if (_isAdd) { ProjectStatusBO.Instance.Insert(dModel); } else { ProjectStatusBO.Instance.Update(dModel); } LoadData(); SetInterface(false); ClearInterface(); this.DialogResult = DialogResult.OK; } } catch (Exception ex) { MessageBox.Show(ex.Message, TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public async Task <IActionResult> ChangeStatus(int statusId, int projectId, string projectComanyId) { HttpClient client = new HttpClient(); string token = HttpContext.Session.GetString("userToken"); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token); ProjectStatusModel projectStatusModel = new ProjectStatusModel() { ProjectId = projectId, StatusId = statusId }; var content = _responseAPI.GetContent <ProjectStatusModel>(projectStatusModel); HttpResponseMessage rs = await client.PutAsync(_responseAPI.APIHost + "/api/Project/Status", content); ProjectDetailViewModel projectDetailViewModel = new ProjectDetailViewModel(); if (rs.IsSuccessStatusCode) { return(RedirectToAction("Manager", "Project", new { projectId = projectId, companyId = projectComanyId })); } return(RedirectToAction("Manager", "Project", new { projectId = projectId, companyId = projectComanyId })); }
public async Task <IActionResult> Get(int id) { var ProjectStatusModel = new ProjectStatusModel(); try { var projectStatus = await _projectStatusRepository.GetAsync(id).ConfigureAwait(false); if (projectStatus == null) { return(NotFound()); } ProjectStatusModel.Id = projectStatus.Id; ProjectStatusModel.Title = projectStatus.Title; } catch (Exception ex) { return(BadRequest(ex.Message)); } return(Ok(ProjectStatusModel)); }
protected ProjectStatusFacade(ProjectStatusModel model) : base(model) { }
private async void Init() { await viewModel.LoadProject(_id); await viewModel.LoadPostProjectID(_id); await viewModel.GetListProjectDiary(_id); if (viewModel.DuAn.ImageUtilities != null) { string[] utilitiesArr = viewModel.DuAn.ImageUtilities.Split(','); Option[] utilitiesImg = new Option[utilitiesArr.Length]; List <Option> tienichduan = BDSUtilities.GetListUtilities(); for (int i = 0; i < utilitiesArr.Length; i++) { var item = utilitiesArr[i]; Option model = tienichduan.Where(x => x.Id == short.Parse(item)).SingleOrDefault(); utilitiesImg[i] = model; } flowListView.FlowItemsSource = utilitiesImg; stTienIchDuAn.IsVisible = true; } if (viewModel.DuAn.ImageList != null) { string[] ListImages = viewModel.DuAn.ImageList; for (int i = 0; i < ListImages.Length; i++) { Photo photo = new Photo(); photo.URL = Api_Link + ListImages[i]; GetPhotos.Add(photo); } lbNumImages.Text = ListImages.Count().ToString(); carouseView.ItemsSource = GetPhotos; } if (viewModel.DuAn.CategoriBDS != null) { string[] categoriArr = viewModel.DuAn.CategoriBDS.Split(','); string[] categoryNameArr = new string[categoriArr.Length]; //projectType tren app la categoriBDS tren database List <ProjectTypeModel> loaiDuAn = ProjectTypeData.GetListProjectType(); for (int i = 0; i < categoriArr.Length; i++) { var item = categoriArr[i]; ProjectTypeModel model = loaiDuAn.Where(x => x.Id == short.Parse(item)).SingleOrDefault(); categoryNameArr[i] = model.Name; } lbCategoriBDS.Text = string.Join(". ", categoryNameArr); //lay "Status" if (viewModel.DuAn.Status.HasValue) { int idStatus = viewModel.DuAn.Status.Value; List <ProjectStatusModel> listStatus = ProjectStatusData.GetList(); ProjectStatusModel modelStatus = listStatus.Single(x => x.Id == idStatus); lbStatus.Text = modelStatus.Name; if (viewModel.DuAn.Status.Value == 0) { stThoiGianMoBan.IsVisible = true; stThoiGianBanGiao.IsVisible = true; } if (viewModel.DuAn.Status.Value == 1) { stThoiGianBanGiao.IsVisible = true; } } } await ChekcIsFollowPost(); loadingPopup.IsVisible = false; stNamKhoiCong.IsVisible = true; stNamHoanThanh.IsVisible = true; // load data "Tong quan du an" lbDienTichCayXanh.Text = viewModel.DuAn.DienTichCayXanh; lbDienTichKhuDat.Text = viewModel.DuAn.DienTichKhuDat; lbDienTichSanTrungBinh.Text = viewModel.DuAn.DienTichSanTrungBinh; lbDienTichXayDung.Text = viewModel.DuAn.DienTichXayDung; lbNamKhoiCong.Text = viewModel.DuAn.NamKhoiCong.ToString(); lbNamHoanThanh.Text = viewModel.DuAn.NamHoanThanh.ToString(); lbMatDoXayDung.Text = viewModel.DuAn.MatDoXayDungPercent.ToString(); lbSoLuongSanPham.Text = viewModel.DuAn.SoLuongSanPham; lbSoTang.Text = viewModel.DuAn.SoTang.ToString(); lbSoLuongToaNha.Text = viewModel.DuAn.SoLuongToaNha.ToString(); lbSoThangMay.Text = viewModel.DuAn.SoThangMay.ToString(); lbTongDienTichSan.Text = viewModel.DuAn.TongDienTichSan; lbTongSoVongDauTu.Text = viewModel.DuAn.TongVonDauTu; lbTangHam.Text = viewModel.DuAn.TangHam.ToString(); lbThoiGianMoBan.Text = viewModel.DuAn.ThoiGianMoBan.ToString(); lbThoiGianBanGiao.Text = viewModel.DuAn.ThoiGianBanGiao.ToString(); lblChuDauTu.Text = viewModel.DuAn.ChuDauTu; lblDonViThietKeThiCong.Text = viewModel.DuAn.DonViThietKeThiCong; lblPhanKhuDuAn.Text = viewModel.DuAn.PhanKhuDuAn; var gridChildren = grContent.Children.Where(x => x.IsVisible == true).ToList(); for (int i = 0; i < gridChildren.Count(); i++) { grContent.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(9, GridUnitType.Auto) }); Grid.SetRow(gridChildren[i], i); } }
public async void Init() { bool HasResult = await viewModel.LoadPost(_id); if (!HasResult) { await DisplayAlert("", Language.bai_dang_khong_ton_tai_hoac_da_xoa, Language.dong); await Navigation.PopAsync(); return; } // cau hinh button. SetFloatingButtonGroup(); // can thue can mua thi load comment ve. hien thi o comment. if (viewModel.GetPost.PostType == 2 || viewModel.GetPost.PostType == 3) { await viewModel.LoadPostComment(); StacklayoutPostComments.IsVisible = true; onClick_HideShow_Description(null, EventArgs.Empty); // dong lai mo ta. neu post type 2 3 MessagingCenter.Subscribe <PickPostPage>(this, "OnNewPostComment", async(sender) => { loadingPopup.IsVisible = true; viewModel.PostComments.Clear(); viewModel.PostCommentPage = 1; await viewModel.LoadPostComment(); loadingPopup.IsVisible = false; }); } else { StacklayoutPostComments.IsVisible = false; } lbLoaiBatDongSan.Text = LoaiBatDongSanModel.GetList(null).SingleOrDefault(x => x.Id == viewModel.GetPost.LoaiBatDongSanId).Name; if (viewModel.GetPost.PostType == 0 || viewModel.GetPost.PostType == 1) { stListImg.IsVisible = true; } if (viewModel.GetPost.PostType == 2 || viewModel.GetPost.PostType == 3) { gridContent.Margin = new Thickness(0, 10, 0, 0); // đây frame xuong cvBDSCungKhuVuc.HeightRequest = 90; frContentPost.Margin = new Thickness(10, 0, 10, 0); } //lấy danh sách Images if (viewModel.GetPost.ImageList != null) { string[] ListImages = viewModel.GetPost.ImageList; for (int i = 0; i < ListImages.Length; i++) { Photo photo = new Photo(); photo.URL = ImageHelper.GetImageUrl("post", ListImages[i]); GetPhotos.Add(photo); } lbNumImages.Text = ListImages.Count().ToString(); carouseView.ItemsSource = GetPhotos; } if (viewModel.GetPost.TinhTrangPhapLyId.HasValue) { var TinhTrangPhapLy = viewModel.GetPost.TinhTrangPhapLyId; List <TinhTrangPhapLyModel> tinhtrangphaplyModel = TinhTrangPhapLyData.GetList(); TinhTrangPhapLyModel modelTinhTrangPhapLy = tinhtrangphaplyModel.Where(x => x.Id == TinhTrangPhapLy).SingleOrDefault(); lbTinhTrangPhapLy.Text = modelTinhTrangPhapLy.Name; } if (viewModel.GetPost.HuongId.HasValue) { var HuongNha = viewModel.GetPost.HuongId; List <HuongModel> huongnhaModel = HuongData.GetList(); HuongModel modelHuong = huongnhaModel.Where(x => x.Id == HuongNha).SingleOrDefault(); lbHuongNha.Text = modelHuong.Name; } //set trang thai duu an. if (viewModel.GetPost.Project?.Status != null) { int id_Status = viewModel.GetPost.Project.Status.Value; List <ProjectStatusModel> listStatus = ProjectStatusData.GetList(); ProjectStatusModel modelStatus = listStatus.Single(x => x.Id == id_Status); spStatus.Text = modelStatus.Name; } //kiểm tra là lấy thông tin của "nội thất tiện nghi" if (viewModel.GetPost.Utilities != null) { string[] utilitiesArr = viewModel.GetPost.Utilities.Split(','); Option[] utilitiesImg = new Option[utilitiesArr.Length]; List <Option> tienichduan = BDSUtilities.GetListUtilities(); for (int i = 0; i < utilitiesArr.Length; i++) { var item = utilitiesArr[i]; Option model = tienichduan.Where(x => x.Id == short.Parse(item)).SingleOrDefault(); utilitiesImg[i] = model; } flvUtilities.FlowItemsSource = utilitiesImg; stNoiThatTienNghi.IsVisible = true; } else { stNoiThatTienNghi.IsVisible = false; } //kiểm tra. nếu có projectId thì cho hiện "Thuộc dự an" và lấy loại bất động sản if (viewModel.GetPost.ProjectId.HasValue) { // stThuocDuAn.IsVisible = true; Guid _idProject = viewModel.GetPost.ProjectId.Value; await viewModel.LoadBDSKhac(_id, _idProject); if (viewModel.BDSKhac.Count != 0) { stBDSKhac.IsVisible = true; } // lấy loại bất động sản string[] categoriArr = viewModel.GetPost.Project.CategoriBDS.Split(','); string[] newCategoriArr = new string[categoriArr.Length]; List <ProjectTypeModel> modelCategori = ProjectTypeData.GetListProjectType(); for (int i = 0; i < categoriArr.Length; i++) { var temp = categoriArr[i]; ProjectTypeModel categoriModel = modelCategori.Where(x => x.Id == short.Parse(temp)).SingleOrDefault(); newCategoriArr[i] = categoriModel.Name; } lbCatogoriBDS.Text = string.Join(", ", newCategoriArr); } //gán dữ liệ cho label lbTongDienTichSuDung.Text = viewModel.GetPost.AreaFormatText; lbDuongVao.Text = viewModel.GetPost.DuongVao.ToString(); lbMatTien.Text = viewModel.GetPost.MatTien.ToString(); lbChieuSau.Text = viewModel.GetPost.ChieuSau.ToString(); lbTang.Text = viewModel.GetPost.Tang.ToString(); lbSoTang.Text = viewModel.GetPost.NumOfFloor.ToString(); lbSoThangMay.Text = viewModel.GetPost.SoThangMay.ToString(); lbSoDuongNgu.Text = viewModel.GetPost.NumOfBedroom.ToString(); lbSoPhongtam.Text = viewModel.GetPost.NumOfBathroom.ToString(); // hiển thị thông tin trong phần "tổng quan dự án" (những thông tin luôn hiện) stTinhTrangPhapLy.IsVisible = true; stHuongNha.IsVisible = true; stTongDienTichSuDung.IsVisible = true; //hiển thị thông tin trong phần "tổng quan dự án" (kiểm tra theo loại bất động sản) var LoaiBatDongSan = viewModel.GetPost.LoaiBatDongSanId; if (LoaiBatDongSan == 0) { stTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 1) { stTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 2) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stSoTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 3) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stSoTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 4) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stSoTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 5) { stTang.IsVisible = true; } if (LoaiBatDongSan == 6) { stTang.IsVisible = true; stSoThangMay.IsVisible = true; } if (LoaiBatDongSan == 7) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stSoTang.IsVisible = true; stSoPhongTam.IsVisible = true; stSoDuongNgu.IsVisible = true; } if (LoaiBatDongSan == 8) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stChieuSau.IsVisible = true; } if (LoaiBatDongSan == 9) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stChieuSau.IsVisible = true; } if (LoaiBatDongSan == 10) { stDuongVao.IsVisible = true; stMatTien.IsVisible = true; stChieuSau.IsVisible = true; } var gridChildren = gridContent.Children.Where(x => x.IsVisible == true).ToList(); for (int i = 0; i < gridChildren.Count(); i++) { gridContent.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(9, GridUnitType.Auto) }); Grid.SetRow(gridChildren[i], i); } //check follow await ChekcIsFollowPost(); //disable loading loadingPopup.IsVisible = false; ScrollView_Detail_M_B.IsVisible = true; }
public async void InitUpdate() { AddToolBar(); var apiResponse = await ApiHelper.Get <AddProjectModel>("api/project/" + this._id); stThongTinBoSung.IsVisible = true; if (apiResponse.IsSuccess == false) { return; } var model = apiResponse.Content as AddProjectModel; viewModel.AddProjectModel = model; DecimailEntDienTichSanTrungBinh_From.SetPrice(model.DienTichSanTrungBinh_From); DecimalEntDienTichSanTrungBinh_To.SetPrice(model.DienTichSanTrungBinh_To); DecimalDienTichCayXanhFrom.SetPrice(model.DienTichCayXanh_From); DecimalDienTichCayXanhTo.SetPrice(model.DienTichCayXanh_To); DecimalDienTichKhuDatFrom.SetPrice(model.DienTichKhuDat_From); DecimalDienTichKhuDatTo.SetPrice(model.DienTichKhuDat_To); DecimalDienTichXayDungFrom.SetPrice(model.DienTichXayDung_From); DecimalDienTichXayDungTo.SetPrice(model.DienTichXayDung_To); DecimalEntryMatDoXayDung.SetPrice(model.MatDoXayDungPercent); //set title viewModel.TitlePostProject = viewModel.AddProjectModel.Name; await Task.WhenAll( viewModel.GetProvinceAsync(), viewModel.GetDistrictAsync(), viewModel.GetWardAsync() ); //gan lai tinh/thanh, quan/huyen, phuong/xa voi ID viewModel.AddProjectModel.Province = viewModel.ProvinceList.Single(x => x.Id == model.ProvinceId); viewModel.AddProjectModel.District = viewModel.DistrictList.Single(x => x.Id == model.DistrictId); viewModel.AddProjectModel.Ward = viewModel.WardList.Single(x => x.Id == model.WardId); //set loai du an cho control // Loai du an tren app = categoriBDS trong database if (!string.IsNullOrEmpty(model.CategoriBDS)) { string[] arrCategoriBDS = model.CategoriBDS.Split(','); List <int> listLoaiDuAn = new List <int>(); foreach (var item in arrCategoriBDS) { listLoaiDuAn.Add(int.Parse(item)); } viewModel.LoaiDuAnSelecteIds = listLoaiDuAn; } //set show cac stacklayout theo loai bat dong san (so tang, tang ham....) Show(); //set trang thai cho control if (model.Status != null) { string item = viewModel.AddProjectModel.Status; var listStatus = ProjectStatusData.GetList(); ProjectStatusModel modelStatus = listStatus.Where(x => x.Id == short.Parse(item)).Single(); viewModel.AddProjectModel.TrangThai = modelStatus; } else { viewModel.AddProjectModel.TrangThai = null; } //set hinh anh cho ffimageloading if (string.IsNullOrEmpty(model.Images) == false) { string[] imageList = model.Images.Split(','); foreach (var image in imageList) { viewModel.Media.Add(new MediaFile() { PreviewPath = ImageHelper.GetImageUrl("project", image), }); } } //set ckecked tien ich du an if (model.ImageUtilities != null) { string[] arrImageUtilities = viewModel.AddProjectModel.ImageUtilities.Split(','); List <int> list = new List <int>(); foreach (var item in arrImageUtilities) { list.Add(int.Parse(item)); } viewModel.TienIchDuAnSelecteIds = list; viewModel.NumUtilitiChecked = viewModel.TienIchDuAnSelecteIds.Count(); } loadingPopup.IsVisible = false; }
public Task <int> UpdateProjectStatus(ProjectStatusModel data) { // Only Status and ID can not be null return(_dataAccess.SaveData("dbo.spClient_UpdateStatus", data, _connectionString.SqlConnectionName)); }
private void ProcessStatus() { Task.Factory.StartNew(() => { TimeSpan begin = TimeSpan.Zero; while (!IsDisposed) { try { if (File.Exists(DirTool.Combine(R.Paths.Projects, Name))) { GetProcess(); if (Process != null && !Process.HasExited) { BeginInvoke(new Action(() => { double cpu = AppInfoTool.CalcCpuRate(Process, ref begin, STATUS_INTERVAL); LBCpu.Text = $"CPU:{Math.Round(cpu, 1)} %"; CpCpuRate.SetValue((int)cpu); LBRam.Text = $"内存:{AppInfoTool.RAM(Process.Id) / 1024} MB"; //发送正常启动状态的项目信息 ProjectStatusModel model = new ProjectStatusModel() { AppID = R.AppID, IP = R.Tx.LocalIP, Port = Project.Port, Name = Project.Name, Version = Project.CurrentVersion, Cpu = (int)cpu, Ram = AppInfoTool.RAM(Process.Id) / 1024, StartTime = StartTime, IsRun = true, CreateTime = DateTime.Now }; TxSendQueue.Add(20003000, Json.Object2String(model)); })); if (Status == WorkStatus.启动成功) { StatusUI(WorkStatus.启动成功); } else { StatusUI(WorkStatus.端口占用); } } else { BeginInvoke(new Action(() => { LBCpu.Text = $"CPU:0 %"; LBRam.Text = $"内存:0 MB"; //发送未启动状态的项目信息 ProjectStatusModel model = new ProjectStatusModel() { IP = R.Tx.LocalIP, Port = Project.Port, Name = Project.Name, Version = Project.CurrentVersion, Cpu = 0, Ram = 0, StartTime = StartTime, IsRun = false, CreateTime = DateTime.Now }; TxSendQueue.Add(20003000, Json.Object2String(model)); })); if (Status == WorkStatus.正在启动) { StatusUI(WorkStatus.正在启动); } else if (Status == WorkStatus.启动失败) { StatusUI(WorkStatus.启动失败); } else { StatusUI(WorkStatus.准备就绪); } //if (Status == WorkStatus.准备就绪 && Project.AutoStart && StartTime.Year < 2000) // Start(); } } } catch { } Thread.Sleep(STATUS_INTERVAL); } }); }