Example #1
0
        // WorkZone is Readonly - NonCreatable, NonDeletable, NonUpdatable
        public static void Execute(CorrigoService service, WorkZone toUpdate)
        {
            if (toUpdate == null || service == null)
            {
                return;
            }

            toUpdate.DisplayAs = (toUpdate.DisplayAs ?? "") + ".";
            Console.WriteLine();
            Console.WriteLine($"Updating WorkZone with id={toUpdate.Id.ToString()}");

            var resultUpdate = service.Execute(new UpdateCommand
            {
                Entity      = toUpdate,
                PropertySet = new PropertySet {
                    Properties = new[] { "DisplayAs" }
                }
            });

            if (resultUpdate == null)
            {
                Console.WriteLine("Update of WorkZone failed");
                return;
            }

            if (resultUpdate.ErrorInfo != null && !string.IsNullOrEmpty(resultUpdate.ErrorInfo.Description))
            {
                Console.WriteLine(resultUpdate.ErrorInfo.Description);
                Console.WriteLine("Update of WorkZone failed");
                return;
            }

            Console.WriteLine("WorkZone is updated");
        }
Example #2
0
        public void UpdateDetailStatus(WorkZoneDetail workZoneDetail)// int WorkZoneId, int WorkZoneDetailId, int Status, string CreateAccount) //
        {
            logger.DebugFormat("updateDetailStatus Begin, workZoneId= {0}, workZoneDetailId = {1}, updateStatus ={2}, userName = {3}", workZoneDetail.WorkZoneId, workZoneDetail.WorkZoneDetailId, workZoneDetail.Status, workZoneDetail.CreateAccount);
            WorkZoneDetail.UpdateDetailStatus(workZoneDetail.WorkZoneId, workZoneDetail.WorkZoneDetailId, workZoneDetail.Status, workZoneDetail.CreateAccount);

            if (workZoneDetail.Status == 2)
            {
                logger.Debug("Case Finish workZone - remove detail problem");
                try
                {
                    WorkZone wk = WorkZone.GetWorkZone(workZoneDetail.WorkZoneId);

                    string pathFolderProblem = Path.Combine(System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath, Common.GetFolderWorkZoneProblem(wk.CompanyId, wk.CompanyName, wk.FactoryId, wk.FactoryName, wk.WorkZoneId, wk.Name));

                    List <DetailProblem> listProblem = DetailProblem.GetAllDetailProblem(workZoneDetail.WorkZoneId, workZoneDetail.WorkZoneDetailId);
                    foreach (DetailProblem i in listProblem)
                    {
                        i.Delete();

                        string pathFile = Path.Combine(pathFolderProblem, i.ImageFile);
                        if (File.Exists(pathFile))
                        {
                            File.Delete(pathFile);
                        }
                    }
                }
                catch (Exception ex)
                {
                    logger.Warn("Ignore case delete problem", ex);
                }
            }
        }
Example #3
0
        private static void WorkZoneMain(WorkZone workZone)
        {
            ResponseOFSC responseOFSC = new ResponseOFSC();

            Console.WriteLine("workZone :" + workZone.workZoneLabel + "travelArea: " + workZone.travelArea);

            JsonSerializerSettings settings = new JsonSerializerSettings();

            settings.Formatting = Formatting.None;

            Logger(string.Format("workzone {0}", workZone.workZoneLabel));

            if (!ctrlworkZone.Exist(workZone).flag)
            {
                responseOFSC = ctrlworkZone.Create(workZone);
            }
            else
            {
                responseOFSC = ctrlworkZone.Set(workZone);
            }


            if (responseOFSC.flag)
            {
                rowOK = rowOK += 1;
                Logger(JsonConvert.SerializeObject(workZone, settings), 4);
            }
            else
            {
                rowBAD = rowBAD += 1;
                Logger(JsonConvert.SerializeObject(workZone, settings), 5);
            }
        }
        private void ShowWorkZOneDetail()
        {
            WorkZoneDetail wzd = new WorkZoneDetail();

            wzd                = WorkZoneDetail.GetWorkZoneDetail(int.Parse(HiddenWorkZoneId.Value), int.Parse(HiddenWorkZoneDetailId.Value));
            txtNo.Text         = wzd.No;
            txtNCfileName.Text = wzd.NCFileName;
            txtPathType.Text   = wzd.PathType;
            txtCommetWZD.Text  = wzd.Comment;
            txtImgWZD.Text     = wzd.ImageFile;

            WorkZone wz             = WorkZone.GetWorkZone(int.Parse(HiddenWorkZoneId.Value));
            string   pathFileDetail = Server.MapPath("~/" + Common.GetFolderWorkZoneDetail(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name)) + "/" + wzd.ImageFile;

            if (File.Exists(pathFileDetail))
            {
                imgWZD.ImageUrl = "~/" + Common.GetFolderWorkZoneDetail(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name) + "/" + txtImgWZD.Text + "?" + (new Random()).Next(int.MinValue, int.MaxValue) + "";
            }
            else
            {
                imgWZD.ImageUrl = "~/Images/no-image.png";
            }

            panelMain.Visible       = false;
            panelEidtDetail.Visible = true;
        }
        public ResponseOFSC Create(WorkZone workZone)
        {
            ResponseOFSC result       = new ResponseOFSC();
            RootWorkZone rootWorkZone = new RootWorkZone();

            rootWorkZone.items = new List <WorkZone>();
            WorkZone workZoneItem = new WorkZone();

            // start
            if (workZone.travelArea != "MX")
            {
                workZoneItem.workZoneLabel = workZone.keylabel.FirstOrDefault();
            }
            else
            {
                workZoneItem.workZoneLabel = workZone.workZoneLabel;
            }

            workZoneItem.status       = workZone.status;
            workZoneItem.travelArea   = workZone.travelArea;
            workZoneItem.workZoneName = workZone.workZoneName;
            workZoneItem.keys.Add(workZone.keylabel.FirstOrDefault());
            rootWorkZone.items.Add(workZoneItem);

            // end

            result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones",
                                                 enumMethod.POST,
                                                 JsonConvert.SerializeObject(workZoneItem, Formatting.Indented));

            if (result.statusCode >= 200 && result.statusCode <= 300)
            {
                result.flag = true;
                return(result);
            }
            // exist current workzone then set info workzone
            if (result.statusCode == 409)
            {
                result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.workZoneLabel,
                                                     enumMethod.PUT,
                                                     JsonConvert.SerializeObject(workZoneItem, Formatting.Indented));
                if (result.statusCode == 200 || result.statusCode == 201)
                {
                    result.flag = true;
                }
                else
                {
                    result.flag = false;
                }

                Program.Logger(result.ErrorMessage, 2);
            }
            else
            {
                // Program.Logger(string.Format("Bad Zona Trabajo:{0}|Contenido:{1}|Mensaje:{2}", workZone.workZoneName + "&" + workZone.keylabel, result.Content, result.ErrorMessage), 2);
                result.flag = false;
                Program.Logger(result.ErrorMessage, 2);
            }
            return(result);
        }
        protected void btnSaveWZD_Click(object sender, EventArgs e)
        {
            try
            {
                WorkZoneDetail wzd = new WorkZoneDetail();
                wzd           = WorkZoneDetail.GetWorkZoneDetail(int.Parse(HiddenWorkZoneId.Value), int.Parse(HiddenWorkZoneDetailId.Value));
                wzd.Comment   = txtCommetWZD.Text;
                wzd.ImageFile = string.Format(Constant.WORKNC_WZ_DETAIL_IMAGE_NAME, wzd.WorkZoneDetailId);
                wzd.Update();
                if (ViewState["imgWZD"] == null)
                {
                    return;
                }

                WorkZone wz = WorkZone.GetWorkZone(int.Parse(HiddenWorkZoneId.Value));

                string path = "~/" + Common.GetFolderWorkZoneDetail(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name);

                SaveImage("imgWZD", path, wzd.ImageFile);
                ViewState.Remove("imgWZD");
                panelMain.Visible       = true;
                panelEidtDetail.Visible = false;
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Save WorkZoneDetail:", ex);
            }
        }
Example #7
0
        public static void Restore(CorrigoService service, WorkZone toRestore)
        {
            if (toRestore == null || service == null)
            {
                return;
            }
            Console.WriteLine();
            Console.WriteLine($"Restoring WorkZone with id={toRestore.Id.ToString()}");

            var restoreResult = service.Execute(new RestoreCommand
            {
                EntitySpecifier = new EntitySpecifier {
                    Id = toRestore.Id, EntityType = EntityType.WorkZone
                }
            });

            if (restoreResult == null)
            {
                Console.WriteLine("Update of WorkZone failed");
                return;
            }

            if (restoreResult.ErrorInfo != null && !string.IsNullOrEmpty(restoreResult.ErrorInfo.Description))
            {
                Console.WriteLine(restoreResult.ErrorInfo.Description);
                Console.WriteLine("Restore of WorkZone failed");
                return;
            }

            Console.WriteLine("WorkZone is restored");
        }
Example #8
0
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            try
            {
                int      countcheck = 0;
                string   id         = "";
                string   name       = "";
                CheckBox cb         = new CheckBox();
                foreach (GridViewRow r in grdWorkZoneList.Rows)
                {
                    cb = (CheckBox)r.Cells[0].FindControl("cb");
                    if (cb.Checked)
                    {
                        countcheck++;
                        if (countcheck == 2)
                        {
                            break;
                        }
                        else
                        {
                            id   = r.Cells[12].Text;
                            name = r.Cells[1].Text;
                        }
                    }
                }
                if (countcheck == 0)
                {
                    RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), GetResource("MSG_NONE_SELECTED_ITEM")) + "\");");
                    return;
                }
                else if (countcheck == 2)
                {
                    RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), GetResource("MSG_MORE_ONE_SELECTED")) + "\");");
                    return;
                }
                else
                {
                    WorkZone wz = WorkZone.GetWorkZone(int.Parse(id));
                    WorkZone.DeleteWorkZone(int.Parse(id));

                    string directoryPath = Server.MapPath("~" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name));
                    if (Directory.Exists(directoryPath))
                    {
                        Directory.Delete(directoryPath, true);
                    }
                    Search();
                }
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Delete:", ex);
            }
        }
Example #9
0
        public List <DetailProblem> GetAllFileProblem(int workZoneId, int workZoneDetailId)
        {
            //string workZoneName = WorkZone.GetWorkZoneName(workZoneId);
            List <DetailProblem> listFile = DetailProblem.GetAllDetailProblem(workZoneId, workZoneDetailId);

            WorkZone wz = WorkZone.GetWorkZone(workZoneId);

            foreach (DetailProblem i in listFile)
            {
                string pathProblem = Common.GetFolderWorkZoneProblem(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name);
                pathProblem = pathProblem.Replace("Portal", "");
                i.ImageFile = string.Format(@"{0}{1}/{2}", Common.AppSettingKey(Constant.PORTAL_CONFIG), pathProblem, i.ImageFile).Replace(" ", "%20");
            }
            return(listFile);
        }
        public List <string> Ranges(WorkZone workZone)
        {
            workZone.id = new List <string>();
            try
            {
                string[] aWorkZonetmp = workZone.source.Split('|');

                foreach (var item in aWorkZonetmp)
                {
                    if (string.IsNullOrEmpty(item))
                    {
                        continue;
                    }
                    var restmp = item.Split(',');

                    if (restmp.Count() > 1)
                    {
                        string[] aZipCode = restmp[1].Split('-');
                        if (aZipCode.Count() > 0)
                        {
                            int major = int.Parse(aZipCode[1]);
                            int minor = int.Parse(aZipCode[0]);

                            for (int i = minor; i <= major; i++)
                            {
                                string tmpzipcode = i.ToString().PadLeft(5, '0');
                                workZone.id.Add(tmpzipcode);
                            }
                        }
                    }
                    else
                    {
                        // TODO  hace falta información
                    }
                }
                List <string> tmpB = new List <string>();
                tmpB.AddRange(workZone.id.Distinct());
                workZone.id.Clear();
                workZone.id.AddRange(tmpB);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw new Exception(ex.Message + " " + ex.InnerException);
            }

            return(workZone.id);
        }
Example #11
0
        private void btnUpload_Click(object sender, EventArgs e)
        {
            try
            {
                logger.Info("Begin btnUpload_Click");
                WorkZone workZone = GetWorkZone(DIRECTORY_WORK_ZONE);
                List <WorkZoneDetail> listWorkZoneDetail = GetListWorkZoneDetail(DIRECTORY_WORK_ZONE);
                logger.Debug("Call UploadWorkZone WS");
                VMISCommon.WS.UploadWorkZone(workZone, listWorkZoneDetail.ToArray());

                MessageBox.Show(Common.GetResourceString("MSG_UPLOAD_SUCCESS"));
                this.Close();
            }
            catch (Exception ex)
            {
                logger.Error("Error btnUpload_Click ", ex);
                MessageBox.Show(ex.Message);
            }
        }
        public ResponseOFSC Exist(WorkZone workZone)
        {
            // check exist
            ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.keylabel.FirstOrDefault(),
                                                              enumMethod.GET,
                                                              string.Empty);

            //ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones/" + workZone.workZoneLabel,
            //                            enumMethod.GET,
            //                            string.Empty);

            if (result.statusCode >= 200 && result.statusCode < 300)
            {
                result.flag = true;
            }
            else
            {
                result.flag = false;
            }
            return(result);
        }
        private void FillWorkZone()
        {
            string id = Request.QueryString["Id"];

            if (id == string.Empty)
            {
                return;
            }
            WorkZone w = new WorkZone();

            w.WorkZoneId           = int.Parse(id);
            HiddenWorkZoneId.Value = id;
            w = w.GetByPrimaryKey();
            txtWorkZoneName.Text       = w.Name;
            txtWorkZonePath.Text       = w.WorkZonePath;
            txtModelDataProgramer.Text = w.ModelDataProgramer;
            txtNCDataProgramer.Text    = w.NCDataProgramer;
            txtProgramDate.Text        = SetDateFormat(w.ProgramDate.ToString());
            txtModelName.Text          = w.ModelName;
            txtParts.Text              = w.Parts;
            txtPartName.Text           = w.PartName;
            txtMachiningTimeTotal.Text = w.MachiningTimeTotal;

            string pathWZFile = Server.MapPath("~/" + Common.GetFolderWorkZone(w.CompanyId, w.CompanyName, w.FactoryId, w.FactoryName, w.WorkZoneId, w.Name)) + "/" + w.ImageFile;

            if (File.Exists(pathWZFile))
            {
                imgWorkZone.ImageUrl = "~/" + Common.GetFolderWorkZone(w.CompanyId, w.CompanyName, w.FactoryId, w.FactoryName, w.WorkZoneId, w.Name) + "/" + w.ImageFile + "?" + (new Random()).Next(int.MinValue, int.MaxValue) + "";
            }
            else
            {
                imgWorkZone.ImageUrl = "~/Images/no-image.png";
            }
            cbxFactory.SelectedValue = w.FactoryId.ToString();
            FillMachine();
            cbxMachine.SelectedValue = w.MachineId.ToString();
            cbxStatus.SelectedValue  = w.Status.ToString();
            txtComment.Text          = w.Comment;
        }
        public void UploadWorkZone(WorkZone workZoneInfo, List <WorkZoneDetail> listWorkZoneDetail)
        {
            logger.Debug("Begin Upload work ZOne");
            try
            {
                int?companyId = UserPermission.GetCompanyId(workZoneInfo.CreateAccount, false);
                if (companyId != null)
                {
                    workZoneInfo.CompanyId = companyId.Value;
                    Machine objMachine = Machine.GetMachine(workZoneInfo.MachineId);

                    workZoneInfo.FactoryId = objMachine.FactoryId;

                    WorkZone.InsertUpdateWorkZone(Server.MapPath("~/"), workZoneInfo, listWorkZoneDetail);
                    logger.Debug("End upload work ZOne");
                }
            }
            catch (Exception ex)
            {
                logger.Error("Error UploadWorkZone ", ex);
                throw ex;
            }
        }
Example #15
0
        public void UploadWorkZone(WorkZone workZoneInfo, List<WorkZoneDetail> listWorkZoneDetail)
        {
            logger.Debug("Begin Upload work ZOne");
            try
            {
                int? companyId = UserPermission.GetCompanyId(workZoneInfo.CreateAccount, false);
                if (companyId != null)
                {
                    workZoneInfo.CompanyId = companyId.Value;
                    Machine objMachine = Machine.GetMachine(workZoneInfo.MachineId);

                    workZoneInfo.FactoryId = objMachine.FactoryId;

                    WorkZone.InsertUpdateWorkZone(Server.MapPath("~/"), workZoneInfo, listWorkZoneDetail);
                    logger.Debug("End upload work ZOne");
                }
            }
            catch (Exception ex)
            {
                logger.Error("Error UploadWorkZone ", ex);
                throw ex;
            }
        }
        public ResponseOFSC Set(WorkZone workZone)
        {
            RootWorkZone rootWorkZone = new RootWorkZone();
            WorkZone     workZoneItem = new WorkZone();

            rootWorkZone.items = new List <WorkZone>();
            if (workZone.travelArea != "MX")
            {
                workZoneItem.workZoneLabel = workZone.keylabel.FirstOrDefault();
            }
            else
            {
                workZoneItem.workZoneLabel = workZone.workZoneLabel;
            }

            workZoneItem.status       = workZone.status;
            workZoneItem.travelArea   = workZone.travelArea;
            workZoneItem.workZoneName = workZone.workZoneName;
            workZoneItem.keys.Add(workZone.keylabel.FirstOrDefault());
            rootWorkZone.items.Add(workZoneItem);

            ResponseOFSC result = UtilWebRequest.SendWayAsync("rest/ofscMetadata/v1/workZones",
                                                              enumMethod.PATCH,
                                                              JsonConvert.SerializeObject(rootWorkZone, Formatting.Indented));

            if (result.statusCode >= 200 && result.statusCode < 300)
            {
                result.flag = true;
            }
            else
            {
                result.flag = false;
            }

            return(result);
        }
Example #17
0
        public static void CRUDExample(CorrigoService service)
        {
            if (service == null)
            {
                return;
            }

            WorkZone workZone = Create.Execute(service);

            if (workZone != null && workZone.Id > 0)
            {
                workZone = Read.Retrieve(service, workZone.Id);

                Delete.Execute(service, workZone.Id); // WorkZone is NonDeletable
                Update.Restore(service, workZone);    // WorkZone is not restorable

                Update.Execute(service, workZone);
            }


            var workZones = Read.RetrieveMultiple(service);

            Read.RetrieveByQuery(service);
        }
Example #18
0
        protected void btnUpload_Click(object sender, EventArgs e)
        {
            try
            {
                if (ViewState["dtDatas"] != null && ViewState["dtDataWZ"]!=null)
                {
                    if (Session["img"] == null)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), lblMessageCheckFileImg.Text) + "\");");
                        return;
                    }
                    if (cbxFactory.SelectedItem.Value == string.Empty || cbxMachine.SelectedItem.Value == string.Empty)
                    {
                        return;
                    }
                    List<WorkZone> WZName = new List<WorkZone>();
                    WZName = WorkZone.GetAll().Where(l => l.Name == txtWorkZoneName.Text.Trim()).ToList();

                    if (WZName.Count > 0)
                    {
                        lblChekFileFormat.Visible = true;
                        lblChekFileFormat.Text = string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text);
                        //txtImgName.Text = string.Empty;
                        return;
                    }
                    //get data on ViewSate
                    DataTable dtWZD = new DataTable();
                    dtWZD = (DataTable)ViewState["dtDatas"];
                    DataTable dtWZ = new DataTable();
                    dtWZ = (DataTable)ViewState["dtDataWZ"];

                    //Convert Table WorkZone to Object
                    WorkZone wz = new WorkZone();
                    wz.Name = txtWorkZoneName.Text;
                    wz.WorkZonePath = dtWZ.Rows[0]["WorkZonePath"].ToString();
                    wz.ModelDataProgramer = dtWZ.Rows[0]["ModelDataProgramer"].ToString();
                    wz.NCDataProgramer = dtWZ.Rows[0]["NCDataProgramer"].ToString();
                    wz.ProgramDate = Common.GetNullableDateTime(dtWZ.Rows[0]["ProgramDate"].ToString());
                    wz.ModelName = dtWZ.Rows[0]["ModelName"].ToString();
                    wz.Parts = dtWZ.Rows[0]["Parts"].ToString();
                    wz.PartName = dtWZ.Rows[0]["PartName"].ToString();
                    wz.MachiningTimeTotal = dtWZ.Rows[0]["MachiningTimeTotal"].ToString();
                    wz.CompanyId = int.Parse(GetCompany());
                    wz.CompanyName = Company.GetCompanyName(wz.CompanyId);
                    wz.FactoryId = int.Parse(cbxFactory.SelectedItem.Value);
                    wz.FactoryName = Company.GetCompanyName(wz.FactoryId);
                    wz.MachineId = int.Parse(cbxMachine.SelectedItem.Value);
                    wz.Comment = txtComment.Text;
                    wz.Status = 0;
                    wz.ImageFile = Constant.WORKNC_WZ_IMAGE_NAME;
                    wz.CreateAccount = this.User.Identity.Name;

                    //Convert DataTable WorkZoneDetail to List
                    List<WorkZoneDetail> listWZD = new List<WorkZoneDetail>();
                    foreach (DataRow r in dtWZD.Rows)
                    {
                        listWZD.Add(new WorkZoneDetail()
                        {
                            No = r["No"].ToString(),
                            NCFileName = r["NCFileName"].ToString(),
                            PathType = r["PathType"].ToString(),
                            ToolDia =Common.GetNullableDouble(r["ToolDia"].ToString()),
                            ToolConerR = Common.GetNullableDouble(r["ToolConerR"].ToString()),
                            ToolLenth = Common.GetNullableDouble(r["ToolLenth"].ToString()),
                            Tno = Common.GetNullableDouble(r["Tno"].ToString()),
                            StockAllowance = Common.GetNullableDouble(r["StockAllowance"].ToString()),
                            Tolerance = Common.GetNullableDouble(r["Tolerance"].ToString()),
                            Spindle = Common.GetNullableDouble(r["Spindlle"].ToString()),
                            CuttingFeedRate = Common.GetNullableDouble(r["CuttingFeedRate"].ToString()),
                            ApproachFeedRate = Common.GetNullableDouble(r["ApproachFeedRate"].ToString()),
                            MachineDistance = Common.GetNullableDouble(r["MachineDistance"].ToString()),
                            MachineTime = r["MachineTime"].ToString(),
                            Status = 0,
                            ImageFile = string.Format(Constant.WORKNC_WZ_DETAIL_IMAGE_NAME, r["No"].ToString()),
                            CreateAccount = this.User.Identity.Name
                        });
                    }

                    //Transaction upload workZone
                    int idWZ = WorkZone.TransactionUpLoad(wz, listWZD);

                    //Rename  0_workZoneName -> 1_workzoneName
                    string workZoneTemp = Server.MapPath("~/" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, 0, Session["previousName"].ToString()));
                    string workZoneFolder = Server.MapPath("~/" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, idWZ, wz.Name));

                    if (Directory.Exists(workZoneTemp))
                    {
                        Directory.Move(workZoneTemp , workZoneFolder);
                    }
                    else
                    {
                        Directory.CreateDirectory(workZoneFolder);
                    }

                    RegisterStartupScript("alert(\"" + GetJSMessage("", GetResource("MSGUPLOAD")) + "\");");
                    txtImgName.Text = string.Empty;
                    lblImgFolder.Visible = false;
                    imgWorkZone.ImageUrl = "~/Images/no-image.png";
                    AddFakeDataToGrid();

                    ViewState.Remove("dtDatas");
                    ViewState.Remove("dtDataWZ");
                    Session.RemoveAll();
                    btnLoadImage.Enabled = false;
                    lblChekFileFormat.Visible = false;
                }
                else
                {
                    RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), GetResource("requiredWorkZoneLoad")) + "\");");
                    return;
                }
                txtWorkZone.Text = txtComment.Text = txtWorkZoneName.Text = cbxFactory.SelectedValue = cbxMachine.SelectedValue = string.Empty;
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Upload:", ex);
            }
        }
Example #19
0
        public void UploadFile(DetailProblem problem)
        {
            logger.DebugFormat("Begin UploadFile , WorkZoneId = {0},  workZOneDetailId id = {1}", problem.WorkZoneId, problem.WorkZoneDetailId);
            WorkZone wk = WorkZone.GetWorkZone(problem.WorkZoneId);
            string   pathFolderProblem = Path.Combine(System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath, Common.GetFolderWorkZoneProblem(wk.CompanyId, wk.CompanyName, wk.FactoryId, wk.FactoryName, wk.WorkZoneId, wk.Name));

            logger.Debug("PhysicalPath pathFolder =" + pathFolderProblem);

            string uploadFilePath = "";

            try
            {
                using (DBContext db = new DBContext())
                {
                    using (System.Data.Common.DbTransaction tran = db.UseTransaction())
                    {
                        try
                        {
                            if (problem.FileId == 0) // case insert New
                            {
                                logger.Debug(" Case Insert new problem");

                                WorkZoneDetail d = WorkZoneDetail.GetWorkZoneDetail(problem.WorkZoneId, problem.WorkZoneDetailId);
                                d.Status          = 1; // Has Problem
                                d.ModifiedAccount = problem.CreateAccount;
                                d.Update();


                                problem.FileId = DetailProblem.GetNextFileID(d.WorkZoneId, d.WorkZoneDetailId);
                                if (problem.Base64Data != null)
                                {
                                    problem.ImageFile = string.Format("{0}_{1}.png", d.WorkZoneDetailId, problem.FileId);
                                }
                                problem.ModifiedAccount = problem.CreateAccount;
                                problem.Insert();

                                logger.Debug(" Update problem and WorkZone Detail");

                                if (!Directory.Exists(pathFolderProblem))
                                {
                                    Directory.CreateDirectory(pathFolderProblem);
                                }

                                if (!string.IsNullOrEmpty(problem.Base64Data))
                                {
                                    uploadFilePath = Path.Combine(pathFolderProblem, problem.ImageFile);
                                    logger.Debug("Case Create file problem = " + uploadFilePath);
                                    Byte[] data = Convert.FromBase64String(problem.Base64Data);
                                    File.WriteAllBytes(uploadFilePath, data);
                                    problem.Base64Data = null;
                                }
                            }
                            else if (problem.FileId != 0) // Update or Delete
                            {
                                DetailProblem p = DetailProblem.GetDetailProblem(problem.WorkZoneId, problem.WorkZoneDetailId, problem.FileId);
                                if (string.IsNullOrEmpty(problem.ImageFile))
                                {
                                    //delete
                                    logger.Debug("Case Delete detail Problem");
                                    p.Delete();

                                    uploadFilePath = Path.Combine(pathFolderProblem, p.ImageFile);
                                    logger.Debug("Case Delete file uploadFilePath = " + uploadFilePath);
                                    if (File.Exists(uploadFilePath))
                                    {
                                        File.Delete(uploadFilePath);
                                    }
                                }
                                else
                                {
                                    logger.Debug("Case update detail Problem");
                                    p.Comment         = problem.Comment;
                                    p.ModifiedAccount = problem.CreateAccount;
                                    p.Update();
                                }
                            }
                            tran.Commit();
                        }
                        catch (Exception ex)
                        {
                            tran.Rollback();
                            logger.Error("Error UploadFile", ex);
                            throw ex;
                        }
                    }
                }
                logger.Debug("End UploadFile");
            }
            catch (Exception ex)
            {
                logger.Error("Error UploadFile ", ex);
                throw ex;
            }
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (Request.QueryString["Id"].ToString() == string.Empty)
                {
                    return;
                }
                WorkZone wz = WorkZone.GetWorkZone(int.Parse(Request.QueryString["Id"].ToString()));

                int countWorKZoneName = WorkZone.GetCountWorkZoneName(int.Parse(cbxMachine.SelectedItem.Value), txtWorkZoneName.Text);
                if (wz == null)
                {
                    if (countWorKZoneName > 0)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text)) + "\");");
                        return;
                    }
                    wz               = new WorkZone();
                    wz.WorkZoneId    = int.Parse(Request.QueryString["Id"].ToString());
                    wz.CreateAccount = this.User.Identity.Name;
                }
                else
                {
                    if (countWorKZoneName > 0 && wz.Name != txtWorkZoneName.Text)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text)) + "\");");
                        return;
                    }
                }
                wz.Name        = txtWorkZoneName.Text;
                wz.CompanyId   = int.Parse(GetCompany());
                wz.CompanyName = Company.GetCompanyName(wz.CompanyId);
                wz.FactoryId   = int.Parse(cbxFactory.SelectedItem.Value);
                wz.FactoryName = Factory.GetFactoryName(wz.FactoryId);
                wz.MachineId   = int.Parse(cbxMachine.SelectedItem.Value);

                wz.WorkZonePath       = txtWorkZonePath.Text;
                wz.ModelDataProgramer = txtModelDataProgramer.Text;
                wz.NCDataProgramer    = txtNCDataProgramer.Text;
                wz.ProgramDate        = Convert.ToDateTime(txtProgramDate.Text);
                wz.ModelName          = txtModelName.Text;
                wz.Parts              = txtParts.Text;
                wz.PartName           = txtPartName.Text;
                wz.MachiningTimeTotal = txtMachiningTimeTotal.Text;

                wz.Comment         = txtComment.Text;
                wz.Status          = int.Parse(cbxStatus.SelectedItem.Value);
                wz.ImageFile       = Constant.WORKNC_WZ_IMAGE_NAME;
                wz.ModifiedAccount = this.User.Identity.Name;
                wz.Update();

                //if(previousName != wz.Name)
                //    Directory.Move(Server.MapPath("~/Portal\\Images\\WorkZone\\" + previousName + ""), Server.MapPath("~/Portal\\Images\\WorkZone\\" + txtWorkZoneName.Text + ""));

                if (txtImgName.Text != string.Empty)
                {
                    string path = "~/" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, wz.WorkZoneId, wz.Name);
                    SaveImage("imgWZ", path, wz.ImageFile);
                }
                ViewState.Remove("imgWZ");
                RegisterStartupScript("alert(\"" + GetJSMessage("", GetResource("MSGUPLOAD")) + "\");");
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Save WorkZone:", ex);
            }
        }
Example #21
0
        static void Main(string[] args)
        {
            #region Code Create WorkZones

            ctrlworkZone            = new WorkZoneController();
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine(" Leyendo Ubicación (Folder) del archivo");
            Console.WriteLine(" Por ejemplo C:\\Users\\inmotion\\Documents\\z");
            Console.ResetColor();
            sPath = ConfigurationManager.AppSettings["pathfiles"].ToString();
            // sPath = @"C:\Users\inmotion\Documents\z\workzoneTDD\MX\";
            if (Directory.Exists(sPath))
            {
                Console.WriteLine("Leyendo archivos CSV");
            }
            else
            {
                Console.Clear();
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(string.Format("Ubicación no valida {0}", sPath));
                Thread.Sleep(1800);
                Console.ResetColor();
                throw new Exception(" x=> { x.id = 'error' }");
            }

            Stopwatch stopwatch = new Stopwatch();
            stopwatch.Start();
            Logger("----------------------------------------------------------------------------------");
            Logger("Inicio");
            Logger(DateTime.Now.ToString());
            Console.WriteLine("Leyendo archivos CSV");
            // sPath = @"C:\Users\inmotion\Documents\bitbucket\ofsc\skymx\doc\workzones";
            ReadCSV(sPath);

            List <WorkZone> listworkZone = new List <WorkZone>();
            foreach (var item in Program.list)
            {
                string[] result      = item.Split(';');
                WorkZone objWorkZone = new WorkZone();
                objWorkZone.workZoneName  = result[0];
                objWorkZone.workZoneLabel = result[1];
                objWorkZone.travelArea    = result[2];
                objWorkZone.status        = result[3];
                objWorkZone.keylabel.Add(result[4]);
                listworkZone.Add(objWorkZone);
            }

            Console.WriteLine("TOTAL DE REGISTROS " + listworkZone.Count());
            Logger(" TOTAL DE REGISTROS " + listworkZone.Count());


            Console.WriteLine("En proceso " + listworkZone.Count() + " registros .");

            if (listworkZone.Count <= 500)
            {
                foreach (var item in listworkZone)
                {
                    WorkZoneMain(item);
                }
            }
            else
            {
                double microprocess  = listworkZone.Count / 5;
                int    microprocess0 = (int)microprocess;
                int    microprocess1 = microprocess0 * 2;
                int    microprocess2 = microprocess0 * 3;

                var tmp0 = listworkZone.Take(microprocess0).ToList();
                var tmp1 = listworkZone.Skip(microprocess0).Take(microprocess0).ToList();
                var tmp2 = listworkZone.Skip(microprocess1).Take(microprocess0).ToList();
                var tmp3 = listworkZone.Skip(microprocess2).Take(microprocess0).ToList();

                var tmpStromg = listworkZone.Skip(microprocess2).ToList();

                Thread thread0      = new Thread(() => WorkZoneQueue(tmp0));
                Thread thread1      = new Thread(() => WorkZoneQueue(tmp1));
                Thread thread2      = new Thread(() => WorkZoneQueue(tmp2));
                Thread thread3      = new Thread(() => WorkZoneQueue(tmp3));
                Thread threadStrong = new Thread(() => WorkZoneQueue(tmpStromg));

                threadStrong.Start();
                thread0.Start();
                thread1.Start();
                thread2.Start();
                thread3.Start();

                threadStrong.Join();
                thread0.Join();
                thread1.Join();
                thread2.Join();
                thread3.Join();
            }


            Console.WriteLine("TOTAL DE REGISTROS OK " + rowOK);
            Console.WriteLine("TOTAL DE REGISTROS MALOS " + rowBAD);
            stopwatch.Stop();
            Console.WriteLine("Ha terminado");
            Console.WriteLine("Se tardo en Milisegundos " + stopwatch.Elapsed.TotalMilliseconds);
            Console.WriteLine("Se tardo en Segundos " + stopwatch.Elapsed.TotalSeconds);
            Console.WriteLine("Se tardo en Minutos " + stopwatch.Elapsed.TotalMinutes);
            Logger("Milisegundos " + stopwatch.Elapsed.TotalMilliseconds.ToString());
            Logger("Segundos " + stopwatch.Elapsed.TotalSeconds.ToString());
            Logger("Minutos " + stopwatch.Elapsed.TotalMinutes.ToString());
            Logger(DateTime.Now.ToString());
            Logger(" End ");
            Logger("----------------------------------------------------------------------------------");
            Console.ReadLine();
            Console.ReadKey();
            #endregion
        }
Example #22
0
        /// <summary>
        /// WO Use Case2: Create WO for Work Zone
        /// Operation: Execute
        /// Command: Create Work Order
        /// Specify required fields
        ///
        /// Additional fields to specify:
        ///    Work Zone Id,
        ///    Contact: Name, Address, Phone
        ///    Comment = "Sample Work Order generated via Web Services for Work Zone"
        ///    Compute Schedule = true
        ///    Compute Assignment = true
        /// </summary>
        /// <param name="corrigoService"></param>
        /// <param name="workZone"></param>///
        public static WorkOrder CreateWorkOrderForWorkZone(CorrigoService corrigoService, WorkZone workZone)
        {
            if (workZone == null)
            {
                return(null);
            }

            //
            // Get Ids for Asset, Task, Subtype which will be used for composition of required WO properties
            // from the existing Work Order.
            //
            var requiredFields = GetWorkOrderWithRequiredFields(corrigoService);

            // Specify required fields:
            WorkOrder newWorkOrder = new WorkOrder
            {
                Items = new[]
                {
                    new WoItem
                    {
                        Asset = new Location {
                            Id = requiredFields.Items[0].Asset.Id
                        },
                        Task = new Task {
                            Id = requiredFields.Items[0].Task.Id
                        }
                    }
                },
                SubType = new WorkOrderType {
                    Id = 1
                },                                   //we need basic when WO is without custumer

                /*
                 * ID	SubType
                 *  1	Basic
                 *  2	PMRM
                 *  3	Turn
                 *  4	Request
                 *  5	Project
                 */
                ContactAddress = new ContactInfo
                {
                    Address    = "1(877) 267-7440, 8245 SW Tualatin Sherwood Road Tualatin, OR 97062",
                    AddrTypeId = ContactAddrType.Contact
                },
                TypeCategory = WOType.Basic,//Required for work orders without customers
            };


            newWorkOrder.WorkZone = new WorkZone {
                Id = workZone.Id
            };

            // Additional fields to specify:
            var command = new WoCreateCommand
            {
                WorkOrder         = newWorkOrder,
                Comment           = "Sample Work Order generated via Web Services for Work Zone",
                ComputeAssignment = true,
                ComputeSchedule   = true,
            };


            var response = corrigoService.Execute(command) as WoActionResponse;

            if (response.ErrorInfo != null)
            {
                Console.WriteLine(response.ErrorInfo.Description);
            }
            else if (response?.Wo != null)
            {
                Console.WriteLine($"Created new Work Order with Id={response.Wo.Id}");
            }

            //Console.ReadKey();
            //work order is returned in the response with its new Id.
            return(response?.Wo);
        }
Example #23
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (Request.QueryString["Id"].ToString() == string.Empty)
                    return;
                WorkZone wz = WorkZone.GetWorkZone(int.Parse(Request.QueryString["Id"].ToString()));

                int countWorKZoneName = WorkZone.GetCountWorkZoneName( int.Parse(cbxMachine.SelectedItem.Value),txtWorkZoneName.Text);
                if (wz == null)
                {
                    if(countWorKZoneName > 0)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text)) + "\");");
                        return;
                    }
                    wz = new WorkZone();
                    wz.WorkZoneId = int.Parse(Request.QueryString["Id"].ToString());
                    wz.CreateAccount = this.User.Identity.Name;
                }
                else
                {
                    if (countWorKZoneName > 0 && wz.Name != txtWorkZoneName.Text)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text)) + "\");");
                        return;
                    }
                }
                wz.Name = txtWorkZoneName.Text;
                wz.CompanyId = int.Parse(GetCompany());
                wz.CompanyName = Company.GetCompanyName(wz.CompanyId);
                wz.FactoryId = int.Parse(cbxFactory.SelectedItem.Value);
                wz.FactoryName = Factory.GetFactoryName(wz.FactoryId);
                wz.MachineId = int.Parse(cbxMachine.SelectedItem.Value);

                wz.WorkZonePath = txtWorkZonePath.Text;
                wz.ModelDataProgramer = txtModelDataProgramer.Text;
                wz.NCDataProgramer = txtNCDataProgramer.Text;
                wz.ProgramDate = Convert.ToDateTime(txtProgramDate.Text);
                wz.ModelName = txtModelName.Text;
                wz.Parts = txtParts.Text;
                wz.PartName = txtPartName.Text;
                wz.MachiningTimeTotal = txtMachiningTimeTotal.Text;

                wz.Comment = txtComment.Text;
                wz.Status = int.Parse(cbxStatus.SelectedItem.Value);
                wz.ImageFile = Constant.WORKNC_WZ_IMAGE_NAME;
                wz.ModifiedAccount = this.User.Identity.Name;
                wz.Update();

                //if(previousName != wz.Name)
                //    Directory.Move(Server.MapPath("~/Portal\\Images\\WorkZone\\" + previousName + ""), Server.MapPath("~/Portal\\Images\\WorkZone\\" + txtWorkZoneName.Text + ""));

                if (txtImgName.Text != string.Empty)
                {
                    string path = "~/" + Common.GetFolderWorkZone(wz.CompanyId , wz.CompanyName , wz.FactoryId, wz.FactoryName , wz.WorkZoneId , wz.Name);
                    SaveImage("imgWZ", path, wz.ImageFile);
                }
                ViewState.Remove("imgWZ");
                RegisterStartupScript("alert(\"" + GetJSMessage("", GetResource("MSGUPLOAD")) + "\");");
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Save WorkZone:", ex);
            }
        }
Example #24
0
        private WorkZone GetWorkZone(string directoryWorkZone)
        {
            logger.Debug("BEGIN GetWorkZone Info directoryWorkZone = " + directoryWorkZone);
            string pathHeaderInfo = Path.Combine(directoryWorkZone, "headinfo.csv");

            if (!File.Exists(pathHeaderInfo))
            {
                throw new Exception(Common.GetResourceString("MSG_HEAD_INFO_CSV_NOT_FOUND"));
            }

            WorkZone objWorkZone = new WorkZone();

            objWorkZone.Name      = txtWorkZoneName.Text;
            objWorkZone.MachineId = int.Parse(cboMachineNm.SelectedValue.ToString());

            objWorkZone.Status          = 0;
            objWorkZone.CreateAccount   = objWorkZone.ModifiedAccount = LoginUser;
            objWorkZone.ProgramDate     = dtpMachineDate.Value;
            objWorkZone.NCDataProgramer = cboOperatorNm.Text;

            //Read CSV file
            StreamReader sr        = new StreamReader(pathHeaderInfo, Encoding.GetEncoding(932));
            string       inputLine = "";

            String[] inputLineValues = null;
            Regex    r = new Regex(",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))");

            while ((inputLine = sr.ReadLine()) != null)
            {
                inputLineValues = inputLine.Split('\n');
                if (inputLineValues[0] != null && inputLineValues[0].Trim() != "")
                {
                    string[] values = r.Split(inputLineValues[0]);
                    if (values.Length >= 2)
                    {
                        objWorkZone.WorkZonePath = values[0];

                        if (!string.IsNullOrEmpty(values[13]))   //N
                        {
                            objWorkZone.Comment = CorrectString(values[13]);
                        }

                        string pathFileImage = Path.Combine(directoryWorkZone, @"doc\images\" + Constant.WORKNC_WZ_IMAGE_NAME);
                        objWorkZone.Base64Data = null;
                        if (File.Exists(pathFileImage))
                        {
                            objWorkZone.ImageFile = Path.GetFileName(pathFileImage);

                            // Load file meta data with FileInfo
                            FileInfo fileInfo = new FileInfo(pathFileImage);

                            // The byte[] to save the data in
                            byte[] data = new byte[fileInfo.Length];
                            using (FileStream fs = fileInfo.OpenRead())
                            {
                                fs.Read(data, 0, data.Length);
                            }
                            objWorkZone.Base64Data = Convert.ToBase64String(data);
                        }
                        break;
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            sr.Close();
            return(objWorkZone);
        }
Example #25
0
        private void FillWorkZone()
        {
            string id = Request.QueryString["Id"];
            if (id == string.Empty)
                return;
            WorkZone w = new WorkZone();
            w.WorkZoneId = int.Parse(id);
            HiddenWorkZoneId.Value = id;
            w = w.GetByPrimaryKey();
            txtWorkZoneName.Text = w.Name;
            txtWorkZonePath.Text = w.WorkZonePath;
            txtModelDataProgramer.Text = w.ModelDataProgramer;
            txtNCDataProgramer.Text = w.NCDataProgramer;
            txtProgramDate.Text = SetDateFormat(w.ProgramDate.ToString());
            txtModelName.Text = w.ModelName;
            txtParts.Text = w.Parts;
            txtPartName.Text = w.PartName;
            txtMachiningTimeTotal.Text = w.MachiningTimeTotal;

            string pathWZFile = Server.MapPath("~/" + Common.GetFolderWorkZone(w.CompanyId, w.CompanyName, w.FactoryId, w.FactoryName, w.WorkZoneId, w.Name)) + "/" + w.ImageFile;

            if (File.Exists(pathWZFile))
                imgWorkZone.ImageUrl = "~/" + Common.GetFolderWorkZone(w.CompanyId, w.CompanyName, w.FactoryId, w.FactoryName, w.WorkZoneId, w.Name) + "/" + w.ImageFile  + "?" + (new Random()).Next(int.MinValue, int.MaxValue) + "";
            else
                imgWorkZone.ImageUrl = "~/Images/no-image.png";
            cbxFactory.SelectedValue = w.FactoryId.ToString();
            FillMachine();
            cbxMachine.SelectedValue = w.MachineId.ToString();
            cbxStatus.SelectedValue = w.Status.ToString();
            txtComment.Text = w.Comment;
        }
Example #26
0
        public static WorkZone Retrieve(CorrigoService service, int id)
        {
            Console.WriteLine();
            Console.WriteLine($"Retrieve WorkZone with id={id}");
            CorrigoEntity result = null;

            try
            {
                result = service.Retrieve(
                    new EntitySpecifier
                {
                    EntityType = EntityType.WorkZone,
                    Id         = id
                },
                    new PropertySet
                {
                    Properties = new string[]
                    {
                        "Id",
                        "DisplayAs",
                        "TimeZone",
                        "AccessOptionsMask",
                        "AdvanceNotice",
                        "Asset.*",
                        "AutoAssignEnabled",
                        "BackupRoutingId",
                        "BillingAccount.*",
                        "BizHours.*",
                        "ContactAddresses.*",
                        "Contract.*",
                        "CpThemeId",
                        "CurrencyTypeId",
                        "CustomFields.*",
                        "DefaultAccess",
                        "Entity",
                        "EscalationRules.*",
                        "IsOffline",
                        "LanguageId",
                        "NoIncompleteItem",
                        "NoIncompletePunchList",
                        "Number",
                        "OnCallRules.*",
                        "Portfolios.*",
                        "Responsibilities.*",
                        "RoundApptTimeTo",
                        "SchedulingWindow",
                        "SpecDispatchRules.*",
                        "TaxRegion.*",
                        "Teams.*",
                        "UiShowProvidersFirst",
                        "UseBizHours",
                        "UseEscalation",
                        "UseHolidays",
                        "UseOnCall",
                        "WoNumberDigits",
                        "WoNumberPrefix",
                        "WorkPlanAutoCancel",
                        "WorkPlanAutoDependency",
                        "WorkPlanChildResolution",
                    }
                }
                    //new AllProperties()
                    );
            }
            catch (Exception e)
            {
                if (!string.IsNullOrEmpty(e.Message))
                {
                    Console.WriteLine(e.Message);
                }
            }

            if (result == null)
            {
                Console.WriteLine("Retrieve failed");
                return(null);
            }

            WorkZone toReturn = result as WorkZone;

            if (toReturn == null)
            {
                Console.WriteLine("Retrieve failed");
                return(null);
            }

            int padRightNumber = 35;

            Console.WriteLine(string.Concat("WorkZone.Id=".PadRight(padRightNumber), toReturn.Id.ToString()));
            Console.WriteLine(string.Concat("WorkZone.DisplayAs=".PadRight(padRightNumber), toReturn.DisplayAs ?? ""));
            Console.WriteLine(string.Concat("WorkZone.Asset.Id=".PadRight(padRightNumber), toReturn.Asset?.Id.ToString() ?? ""));
            Console.WriteLine(string.Concat("WorkZone.TimeZone=".PadRight(padRightNumber), toReturn.TimeZone.ToString()));



            Console.WriteLine(string.Concat("WorkZone.Number=".PadRight(padRightNumber), toReturn.Number ?? ""));


            if (toReturn.Contract != null)
            {
                Console.WriteLine(string.Concat("WorkZone.Contract.Id=".PadRight(padRightNumber),
                                                toReturn.Contract.Id.ToString()));
                Console.WriteLine(string.Concat("WorkZone.Contract.DisplayAs=".PadRight(padRightNumber),
                                                toReturn.Contract.DisplayAs));
            }

            if (toReturn.TaxRegion != null)
            {
                Console.WriteLine(string.Concat("WorkZone.TaxRegion.Id=".PadRight(padRightNumber),
                                                toReturn.TaxRegion.Id.ToString()));
                Console.WriteLine(string.Concat("WorkZone.TaxRegion.DisplayAs=".PadRight(padRightNumber),
                                                toReturn.TaxRegion.DisplayAs));
            }

            Console.WriteLine();

            return(toReturn);
        }
Example #27
0
        protected void btnUpload_Click(object sender, EventArgs e)
        {
            try
            {
                if (ViewState["dtDatas"] != null && ViewState["dtDataWZ"] != null)
                {
                    if (Session["img"] == null)
                    {
                        RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), lblMessageCheckFileImg.Text) + "\");");
                        return;
                    }
                    if (cbxFactory.SelectedItem.Value == string.Empty || cbxMachine.SelectedItem.Value == string.Empty)
                    {
                        return;
                    }
                    List <WorkZone> WZName = new List <WorkZone>();
                    WZName = WorkZone.GetAll().Where(l => l.Name == txtWorkZoneName.Text.Trim()).ToList();

                    if (WZName.Count > 0)
                    {
                        lblChekFileFormat.Visible = true;
                        lblChekFileFormat.Text    = string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text);
                        //txtImgName.Text = string.Empty;
                        return;
                    }
                    //get data on ViewSate
                    DataTable dtWZD = new DataTable();
                    dtWZD = (DataTable)ViewState["dtDatas"];
                    DataTable dtWZ = new DataTable();
                    dtWZ = (DataTable)ViewState["dtDataWZ"];

                    //Convert Table WorkZone to Object
                    WorkZone wz = new WorkZone();
                    wz.Name               = txtWorkZoneName.Text;
                    wz.WorkZonePath       = dtWZ.Rows[0]["WorkZonePath"].ToString();
                    wz.ModelDataProgramer = dtWZ.Rows[0]["ModelDataProgramer"].ToString();
                    wz.NCDataProgramer    = dtWZ.Rows[0]["NCDataProgramer"].ToString();
                    wz.ProgramDate        = Common.GetNullableDateTime(dtWZ.Rows[0]["ProgramDate"].ToString());
                    wz.ModelName          = dtWZ.Rows[0]["ModelName"].ToString();
                    wz.Parts              = dtWZ.Rows[0]["Parts"].ToString();
                    wz.PartName           = dtWZ.Rows[0]["PartName"].ToString();
                    wz.MachiningTimeTotal = dtWZ.Rows[0]["MachiningTimeTotal"].ToString();
                    wz.CompanyId          = int.Parse(GetCompany());
                    wz.CompanyName        = Company.GetCompanyName(wz.CompanyId);
                    wz.FactoryId          = int.Parse(cbxFactory.SelectedItem.Value);
                    wz.FactoryName        = Company.GetCompanyName(wz.FactoryId);
                    wz.MachineId          = int.Parse(cbxMachine.SelectedItem.Value);
                    wz.Comment            = txtComment.Text;
                    wz.Status             = 0;
                    wz.ImageFile          = Constant.WORKNC_WZ_IMAGE_NAME;
                    wz.CreateAccount      = this.User.Identity.Name;

                    //Convert DataTable WorkZoneDetail to List
                    List <WorkZoneDetail> listWZD = new List <WorkZoneDetail>();
                    foreach (DataRow r in dtWZD.Rows)
                    {
                        listWZD.Add(new WorkZoneDetail()
                        {
                            No               = r["No"].ToString(),
                            NCFileName       = r["NCFileName"].ToString(),
                            PathType         = r["PathType"].ToString(),
                            ToolDia          = Common.GetNullableDouble(r["ToolDia"].ToString()),
                            ToolConerR       = Common.GetNullableDouble(r["ToolConerR"].ToString()),
                            ToolLenth        = Common.GetNullableDouble(r["ToolLenth"].ToString()),
                            Tno              = Common.GetNullableDouble(r["Tno"].ToString()),
                            StockAllowance   = Common.GetNullableDouble(r["StockAllowance"].ToString()),
                            Tolerance        = Common.GetNullableDouble(r["Tolerance"].ToString()),
                            Spindle          = Common.GetNullableDouble(r["Spindlle"].ToString()),
                            CuttingFeedRate  = Common.GetNullableDouble(r["CuttingFeedRate"].ToString()),
                            ApproachFeedRate = Common.GetNullableDouble(r["ApproachFeedRate"].ToString()),
                            MachineDistance  = Common.GetNullableDouble(r["MachineDistance"].ToString()),
                            MachineTime      = r["MachineTime"].ToString(),
                            Status           = 0,
                            ImageFile        = string.Format(Constant.WORKNC_WZ_DETAIL_IMAGE_NAME, r["No"].ToString()),
                            CreateAccount    = this.User.Identity.Name
                        });
                    }

                    //Transaction upload workZone
                    int idWZ = WorkZone.TransactionUpLoad(wz, listWZD);

                    //Rename  0_workZoneName -> 1_workzoneName
                    string workZoneTemp   = Server.MapPath("~/" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, 0, Session["previousName"].ToString()));
                    string workZoneFolder = Server.MapPath("~/" + Common.GetFolderWorkZone(wz.CompanyId, wz.CompanyName, wz.FactoryId, wz.FactoryName, idWZ, wz.Name));

                    if (Directory.Exists(workZoneTemp))
                    {
                        Directory.Move(workZoneTemp, workZoneFolder);
                    }
                    else
                    {
                        Directory.CreateDirectory(workZoneFolder);
                    }

                    RegisterStartupScript("alert(\"" + GetJSMessage("", GetResource("MSGUPLOAD")) + "\");");
                    txtImgName.Text      = string.Empty;
                    lblImgFolder.Visible = false;
                    imgWorkZone.ImageUrl = "~/Images/no-image.png";
                    AddFakeDataToGrid();

                    ViewState.Remove("dtDatas");
                    ViewState.Remove("dtDataWZ");
                    Session.RemoveAll();
                    btnLoadImage.Enabled      = false;
                    lblChekFileFormat.Visible = false;
                }
                else
                {
                    RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), GetResource("requiredWorkZoneLoad")) + "\");");
                    return;
                }
                txtWorkZone.Text = txtComment.Text = txtWorkZoneName.Text = cbxFactory.SelectedValue = cbxMachine.SelectedValue = string.Empty;
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Upload:", ex);
            }
        }
Example #28
0
        protected void btnLoadImage_Click(object sender, EventArgs e)
        {
            try
            {
                if (ViewState["dtDatas"] == null && ViewState["dtDataWZ"] == null)
                {
                    return;
                }
                if (txtWorkZoneName.Text == string.Empty)
                {
                    txtImgName.Text = string.Empty;
                    return;
                }
                if (fileUploadImage.HasFile)
                {
                    if (WorkZone.GetCountWorkZoneName(int.Parse(cbxMachine.SelectedValue), txtWorkZoneName.Text) > 0)
                    {
                        lblChekFileFormat.Visible = true;
                        lblChekFileFormat.Text    = string.Format(GetResource("CheckWZName"), txtWorkZoneName.Text);
                        txtImgName.Text           = string.Empty;
                        return;
                    }
                    int    companyId   = int.Parse(GetCompany());
                    string companyName = Company.GetCompanyName(companyId);

                    //set tempPath in Factory

                    string pathTemp = "/" + Common.GetFolderWorkZone(companyId, companyName, int.Parse(cbxFactory.SelectedValue), cbxFactory.SelectedItem.Text, 0, txtWorkZoneName.Text);
                    string imgUrl   = "~" + pathTemp + "/";
                    if (!Directory.Exists(Server.MapPath(pathTemp)))
                    {
                        Directory.CreateDirectory(Server.MapPath(pathTemp));
                    }

                    HttpFileCollection hfc = Request.Files;
                    for (int i = 0; i < hfc.Count; i++)
                    {
                        HttpPostedFile hpf = hfc[i];
                        if (hpf.ContentLength > 0)
                        {
                            string ext = Path.GetExtension(hpf.FileName);
                            if (ext == ".bmp" || ext == ".gif" || ext == ".png" || ext == ".jpg" || ext == ".jpeg")
                            {
                                hpf.SaveAs(Server.MapPath(pathTemp) + "\\" + Path.GetFileName(hpf.FileName));
                            }
                        }
                    }
                    Session["img"]            = 1;
                    lblChekFileFormat.Visible = false;
                    imgWorkZone.ImageUrl      = imgUrl + Constant.WORKNC_WZ_IMAGE_NAME;
                    Image  img = new Image();
                    string pathWZDetailTemp = "~/" + Common.GetFolderWorkZoneDetail(companyId, companyName, int.Parse(cbxFactory.SelectedValue), cbxFactory.SelectedItem.Text, 0, txtWorkZoneName.Text);
                    foreach (GridViewRow r in GridView1.Rows)
                    {
                        img          = (Image)r.Cells[1].FindControl("imgProcess");
                        img.ImageUrl = pathWZDetailTemp + "/" + string.Format(Constant.WORKNC_WZ_DETAIL_IMAGE_NAME, r.Cells[0].Text);
                    }
                    Session["previousName"] = txtWorkZoneName.Text;
                }
            }
            catch (Exception ex)
            {
                RegisterStartupScript("alert(\"" + GetJSMessage(GetResource("Title_Error"), ex.Message) + "\");");
                logger.Error("Error in Load image:", ex);
            }
        }
Example #29
0
        public static WorkZone Execute(CorrigoService service)
        {
            Console.WriteLine();
            Debug.Print("Creating WorkZone");
            Console.WriteLine("Creating WorkZone");

            //
            // Get Asset Template Id by its name.
            // Template name can be spotted by navigation Url: https://v91.qa.corrigo.com/corpnet/assets/templatemanager.aspx
            //
            string assetTemplateName = "SK_WrokZoneTemplate";

            var assetTemplates = service.RetrieveMultiple(
                new QueryByProperty
            {
                Count       = 1,
                EntityType  = EntityType.AssetTemplate,
                PropertySet = new PropertySet
                {
                    Properties = new string[]
                    {
                        "Id",
                    }
                },
                Conditions = new[]
                {
                    new PropertyValuePair {
                        PropertyName = "DisplayAs", Value = assetTemplateName
                    },
                },
            });


            WorkZone toCreate = new WorkZone
            {
                DisplayAs         = $"Test {DateTime.Now}",
                Number            = $"Test {DateTime.Now}",
                WoNumberPrefix    = Guid.NewGuid().ToString().Split('-')[0],
                TimeZone          = 4, //(GMT-08:00) Pacific Time (US & Canada)
                AutoAssignEnabled = true,
                DefaultAccess     = PTEType.Unknown
            };


            var resultData = service.Execute(new WorkZoneCreateCommand
            {
                AssetTemplateId     = assetTemplates[0].Id,
                WorkZone            = toCreate,
                SkipDefaultSettings = false
            });

            if (resultData == null)
            {
                Debug.Print("Creation of new WorkZone failed");
                Console.WriteLine("Creation of new WorkZone failed");
                Console.WriteLine();
                return(null);
            }


            var commandResponse = resultData as WorkZoneCommandResponse;

            int?id = commandResponse?.WorkZone?.Id;

            if (id.HasValue && resultData.ErrorInfo == null)
            {
                toCreate.Id = id.Value;
                Debug.Print($"Created new WorkZone with Id={id}");
                Console.WriteLine($"Created new WorkZone with Id={id}");
                Console.WriteLine();
                return(toCreate);
            }


            Debug.Print("Creation of new WorkZone failed");
            Console.WriteLine("Creation of new WorkZone failed");
            Console.WriteLine();
            if (resultData.ErrorInfo != null && !string.IsNullOrEmpty(resultData.ErrorInfo.Description))
            {
                Debug.Print(resultData.ErrorInfo.Description);
                Console.WriteLine(resultData.ErrorInfo.Description);
            }


            return(null);
        }