public ActionResult <Task> Create([FromForm] TaskFile file)
        {
            string url = "";

            try
            {
                url = UploadFile.Upload(file.File);
                Task task = new Task
                {
                    Description = file.Description,
                    ImageUrl    = url
                };
                task.Id = _tasksInMemoryStore.Any() ?
                          _tasksInMemoryStore.Max(t => t.Id) + 1 : 1;

                _tasksInMemoryStore.Add(task);

                return(CreatedAtAction(nameof(GetById), new { id = task.Id }, task));
            }
            catch (Exception ex)
            {
                {
                    _logger.LogError($"Something went wrong inside Create action: {ex.Message}");
                    return(StatusCode(500, "Internal server error"));
                }
            }
        }
Exemple #2
0
    public TaskLoader(string filepath)
    {
        StreamReader reader = new StreamReader(filepath);

        jsonFile = reader.ReadToEnd();
        TaskFile tasks = JsonUtility.FromJson <TaskFile>(jsonFile);
    }
        public async Task <ActionResult> Card(int?id)
        {
            if (!id.HasValue)
            {
                return(HttpNotFound());
            }
            var task = await TaskClaim.Get(id.Value);

            ViewBag.StateHistory = await task.GetStateHistoryAsync();

            if (CurUser.Is(AdGroup.TaskTrackerManager, AdGroup.TaskTrackerProg))
            {
                ViewBag.Checkpoints = await TaskCheckpoint.GetListAsync(id.Value);

                ViewBag.TaskFiles = await TaskFile.GetListAsync(id.Value);

                ViewBag.TaskComments = await TaskComment.GetListAsync(id.Value);

                return(View("CardPerf", task));
            }
            else
            {
                return(View("CardUser", task));
            }
        }
        public async Task SaveFile2Task(int taskId)
        {
            if (Request.Files.Count > 0)
            {
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];
                    if (file != null && file.ContentLength > 0)
                    {
                        //string ext = Path.GetExtension(file.FileName).ToLower();
                        //if (ext != ".png" && ext != ".jpeg" && ext != ".jpg" && ext != ".gif") throw new Exception("Формат фотографии должен быть .png .jpeg .gif");

                        byte[] data = null;
                        using (var br = new BinaryReader(file.InputStream))
                        {
                            data = br.ReadBytes(file.ContentLength);
                        }
                        var taskFile = new TaskFile()
                        {
                            TaskClaimId = taskId, Data = data, Name = file.FileName
                        };
                        await taskFile.Add(CurUser.Sid);
                    }
                }
            }
        }
Exemple #5
0
        public JsonResult addFileToTask([FromBody] TaskFileViewModel taskFile)
        {
            Dictionary <string, object> result = new Dictionary <string, object>();
            var taskFilesList = repository.TaskFiles;

            Console.WriteLine("DOBILI SMO");
            Console.WriteLine(taskFile.Files);
            Console.WriteLine(taskFile.Tasks);

            foreach (var task in taskFile.Tasks)
            {
                foreach (var file in taskFile.Files)
                {
                    if (taskFilesList.Where(t => t.Task.TaskID == task.TaskID && t.FilePath == file).Count() == 0)
                    {
                        TaskFile tf = new TaskFile {
                            Task = task, FilePath = file
                        };
                        repository.Save(tf);
                    }
                }
            }

            result.Add("result", true);
            return(Json(result));
        }
Exemple #6
0
            public void Spec04()
            {
                var actual = new TaskFile(@"D:\solution\source\project", @"D:\solution\source\project\deep\path\file.js");

                I.Expect(actual.Absolute).ToBe(@"D:\solution\source\project\deep\path\file.js");
                I.Expect(actual.Virtual).ToBe(@"\deep\path\file.js");
            }
Exemple #7
0
            public void Spec02()
            {
                var taskItem = ConstructorHelper.CreateTaskItem(@"..\..\packages\library\file.js", @"path\file.js");
                var actual   = new TaskFile(@"D:\solution\source\project", taskItem);

                I.Expect(actual.Absolute).ToBe(@"D:\solution\source\project\..\..\packages\library\file.js");
                I.Expect(actual.Virtual).ToBe(@"\path\file.js");
            }
Exemple #8
0
 void AddQueueFile(TaskFile tf)
 {
     queueFiles.Enqueue(tf);
     if (threadTaskFiles == null)
     {
         threadTaskFiles = new Thread(ThreadTaskFiles);
         threadTaskFiles.Start();
     }
 }
Exemple #9
0
        public void UploadFileToProperLocationAndName()
        {
            //Given

            //create repo and populate it
            User user = new User {
                UserID = 1, RootFolderLocation = "./FileUploadTestFolder/user1/"
            };
            var         userRepo = new Mock <IUserRepository>();
            List <User> users    = new List <User>();

            users.Add(user);
            userRepo.Setup(f => f.Users).Returns(users.AsQueryable());

            Task task = new Task {
                TaskID = 1, User = user, Date = "2019-07-03", Time = "12:00"
            };
            var         taskRepo = new Mock <ITaskRepository>();
            List <Task> tasks    = new List <Task>();

            tasks.Add(task);
            taskRepo.Setup(f => f.Tasks).Returns(tasks.AsQueryable());

            TaskFile taskFile = new TaskFile {
                TaskFileID = 1, Task = task, FilePath = "./FileUploadTestFolder/user1/"
            };
            var             taskFileRepo = new Mock <ITaskFileRepository>();
            List <TaskFile> taskFiles    = new List <TaskFile>();

            taskFiles.Add(taskFile);
            taskFileRepo.Setup(f => f.TaskFiles).Returns(taskFiles.AsQueryable());

            //create file
            var file = new Mock <IFormFile>();

            file.Setup(f => f.FileName).Returns("test.txt");
            FileUpload fileUpload = new FileUpload {
                UserID = 1, FileName = "test", File = file.Object, isUserInputName = true
            };

            //create controller
            FileUploadController controller = new FileUploadController(userRepo.Object, taskRepo.Object, taskFileRepo.Object);

            //When
            controller.UploadFileForm(fileUpload);

            //Then
            Assert.True(Directory.Exists(user.RootFolderLocation));
            if (fileUpload.isUserInputName)
            {
                Assert.True(File.Exists(user.RootFolderLocation + fileUpload.FileName + ".txt"));
            }
            else
            {
                Assert.True(File.Exists(user.RootFolderLocation + "test.txt"));
            }
        }
        public bool GetIDBuffer(IntPtr handle, ref byte[] buffer)
        {
            TaskFile currentTaskFile = new TaskFile();
            TaskFile preTaskFile     = new TaskFile();

            currentTaskFile.Command        = 0xEC;
            currentTaskFile.Devic_Register = 0xA0;

            return(ATACommand(handle, ref currentTaskFile, ref preTaskFile, 512, ref buffer, true, false, false, false));
        }
Exemple #11
0
        public MainViewModel()
        {
            File     = new TaskFile();
            Filepath = null;

            TaskVM     = new TaskViewModel(this);
            CategoryVM = new CategoryViewModel(this);

            AnyChangeHappened = false;
        }
Exemple #12
0
 internal static void AssertFileEqual(TaskFile expected, TaskFile actual)
 {
     Assert.AreEqual(expected.Path, actual.Path);
     Assert.AreEqual(expected.ParentPath, actual.ParentPath);
     Assert.AreEqual(expected.Name, actual.Name);
     Assert.AreEqual(expected.EntryId, actual.EntryId);
     Assert.AreEqual(expected.GroupId, actual.GroupId);
     Assert.AreEqual(expected.FolderId, actual.FolderId);
     Assert.AreEqual(expected.Size, actual.Size);
 }
Exemple #13
0
        private void btCreateBotFolder_Click(object sender, EventArgs e)
        {
            FormEnterText form = new FormEnterText("Введите имя папки");

            if (form.ShowDialog() == DialogResult.OK)
            {
                TaskFile tf = new TaskFile();
                tf.from      = null;
                tf.to        = System.IO.Path.Combine(tbBotFolder.Text, form.Content);
                tf.direction = 4;
                AddQueueFile(tf);
            }
        }
        public async Task <IActionResult> AddTaskFile(AddTaskFileViewModel model)
        {
            if (ModelState.IsValid)
            {
                var teacherID = Context.Users.FirstOrDefault(x => x.UserName == this.User.Identity.Name).Id;
                var task      = Documentation.Tasks.FirstOrDefault(x => x.StTaskID == model.TaskID);
                if (task == null)
                {
                    return(LocalRedirect(model.ReturnUrl));
                }
                if (Files.StudentTaskFiles.Any(x => x.FileName == model.File.FileName && x.StTaskId == model.TaskID))
                {
                    ModelState.AddModelError("", "File with name " + model.File.FileName + " is alredy exist.");
                    return(View(model));
                }

                var directory = Directory.GetFiles(environment.ContentRootPath + @"/wwwroot/FileExtansions");

                var ext = new String(model.File.FileName.TakeLast(model.File.FileName.Length - (model.File.FileName.LastIndexOf('.') == -1 ? model.File.FileName.Length : model.File.FileName.LastIndexOf('.')) - 1).ToArray());
                if (!directory.Any(x => x == ("File" + ext + ".png")))
                {
                    ext = "";
                }
                var File = new TaskFile()
                {
                    FileName      = model.File.FileName,
                    FileExtansion = ext,
                    StTaskId      = model.TaskID,
                    Description   = model.Desription
                };
                using (var reader = new BinaryReader(model.File.OpenReadStream()))
                {
                    byte[] data = reader.ReadBytes((int)model.File.Length);
                    File.FileSize = String.Format(new FileSizeFormatProvider(), "{0:fs}", data.LongLength);
                    File.Value    = data;
                }

                Files.AddFile(File);
                task.IsChecked = true;
                Documentation.AddAnswer(
                    new Answer
                {
                    AnswerDate = DateTime.Now,
                    StTaskID   = model.TaskID,
                    UserID     = teacherID,
                    TextData   = $"Adding file {File.FileName} to task."
                });
                return(LocalRedirect(model.ReturnUrl));
            }
            return(View(model));
        }
Exemple #15
0
        // добавить файл к задаче
        public async Task <OperationDetailDTO> AddFileToTaskAsync(int taskID, string userFileName, string uniquefileName = null)
        {
            var detail = new OperationDetailDTO();

            try
            {
                var task = await _context.TaskModels.FindAsync(taskID);

                if (task != null)
                {
                    TaskFile newFile;
                    if (uniquefileName != null)
                    {
                        newFile = new TaskFile
                        {
                            TaskModel = task,
                            FileName  = userFileName,
                            Path      = TaskFilePath + uniquefileName,
                            FileURI   = TaskFileURI + uniquefileName,
                        };
                    }
                    else
                    {
                        newFile = new TaskFile
                        {
                            TaskModel = task,
                            FileName  = userFileName,
                            Path      = TaskFilePath + userFileName,
                            FileURI   = TaskFileURI + userFileName,
                        };
                    }

                    await _context.TaskFiles.AddAsync(newFile);

                    await _context.SaveChangesAsync();

                    detail.Succeeded = true;
                }
                else
                {
                    detail.ErrorMessages.Add("Ошибка при добавлении файла: задание не найдено.");
                }
                return(detail);
            }
            catch (Exception e)
            {
                detail.ErrorMessages.Add("Ошибка при добавлении файла к заданию. " + e.Message);
                return(detail);
            }
        }
Exemple #16
0
 private void btCopyMyBot_Click(object sender, EventArgs e)
 {
     if (lvFilesMy.SelectedItems.Count > 0)
     {
         for (int i = 0; i < lvFilesMy.SelectedItems.Count; i++)
         {
             FileInfo fi = (FileInfo)lvFilesMy.SelectedItems[i].Tag;
             TaskFile tf = new TaskFile();
             tf.from      = fi;
             tf.to        = System.IO.Path.Combine(tbBotFolder.Text, System.IO.Path.GetFileName(fi.fileName));
             tf.direction = 2;
             AddQueueFile(tf);
         }
     }
 }
Exemple #17
0
        public ActionResult CreateFiles([Bind(Include = "TaskId,PostedFiles")] TaskFile file)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    foreach (var f in file.PostedFiles)
                    {
                        //Save files
                        string DirPath = Server.MapPath("~/DbContents/Tasks/Files/");
                        if (!Directory.Exists(DirPath))
                        {
                            Directory.CreateDirectory(DirPath);
                        }

                        string FileExtension   = Path.GetExtension(f.FileName);
                        string NewFileName     = string.Format("{0}{1}", App.GetShortFileName("FILE"), FileExtension);
                        string NewFullFileName = DirPath + NewFileName;

                        file.FileName = NewFileName;

                        db.TaskFiles.Add(file);
                        db.SaveChanges();

                        f.SaveAs(NewFullFileName);
                    }

                    var files = db.TaskFiles.Where(f => f.TaskId == file.TaskId).Select(f => new {
                        f.TaskFileId,
                        f.TaskId,
                        f.FileName
                    });

                    return(Json(new
                    {
                        status = "ok",
                        message = string.Format("{0} files have been uploaded of {1}", file.PostedFiles.Count, file.PostedFiles.Count),
                        data = files
                    }, JsonRequestBehavior.AllowGet));
                }
                catch (Exception ex)
                {
                    return(Json(new { status = "error", message = "Internal server error." + ex.Message }, JsonRequestBehavior.AllowGet));
                }
            }

            return(Json(new { status = "error", message = "Data validation failed. (Insure you have uploaded files having valid sizes.)" }, JsonRequestBehavior.AllowGet));
        }
Exemple #18
0
        public async Task DownloadingAHugeTaskFileDoesNotThrowOutOfMemoryException()
        {
            const string jobId  = "Foo";
            const string taskId = "Bar";

            long bytesWritten = await InvokeActionWithDummyStreamBatchClientAsync(async (batchCli, dummyStream) =>
            {
                Protocol.Models.NodeFile protoFile = new Protocol.Models.NodeFile("Test");

                NodeFile file = new TaskFile(batchCli.JobOperations, jobId, taskId, protoFile, new List <BatchClientBehavior>());

                await file.CopyToStreamAsync(dummyStream);
            },
                                                                                  StreamLengthInBytes);

            Assert.Equal(StreamLengthInBytes, bytesWritten);
        }
Exemple #19
0
 private void btDelBotFile_Click(object sender, EventArgs e)
 {
     if (lvFilesBot.SelectedItems.Count > 0)
     {
         if (Output.MsgQue("Вы уверены что этот файл (файлы) нужно удалить?") == DialogResult.Yes)
         {
             for (int i = 0; i < lvFilesBot.SelectedItems.Count; i++)
             {
                 FileInfo fi = (FileInfo)lvFilesBot.SelectedItems[i].Tag;
                 TaskFile tf = new TaskFile();
                 tf.from      = fi;
                 tf.to        = string.Empty;
                 tf.direction = 3;
                 AddQueueFile(tf);
             }
         }
     }
 }
Exemple #20
0
        public async Task UpdateTaskFiles(List <IFormFile> filesContent, string taskFilesJson, int projectID, int taskID)
        {
            using (_context)
            {
                List <TaskFileSend> taskFiles = JsonConvert.DeserializeObject <TaskFilesList>(taskFilesJson).taskFiles;

                Project project = await _context.Projects.Where(p => p.ProjectID == projectID)
                                  .Include(p => p.Tasks).ThenInclude(t => t.TaskFiles)
                                  .FirstOrDefaultAsync();

                if (project != null)
                {
                    ProjectTask task = project.Tasks.Where(t => t.TaskID == taskID).FirstOrDefault();
                    if (task != null)
                    {
                        for (int i = 0; i < taskFiles.Count(); i++)
                        {
                            if (taskFiles[i].IsDeleted)
                            {
                                task.TaskFiles.Remove(task.TaskFiles.Where(tf => tf.TaskFileID == taskFiles[i].TaskFileID).FirstOrDefault());

                                _context.Projects.Update(project);
                                await _context.SaveChangesAsync();

                                DeleteTaskFile(taskFiles[i].TaskFileID);
                            }
                            else if (taskFiles[i].IsAdded)
                            {
                                TaskFile tf = new TaskFile();
                                tf.TaskID   = taskID;
                                tf.FileName = taskFiles[i].FileName;
                                task.TaskFiles.Add(tf);

                                _context.Projects.Update(project);
                                await _context.SaveChangesAsync();

                                Stream fileStream = filesContent[i].OpenReadStream();
                                SaveTaskFile(tf.TaskFileID, fileStream);
                            }
                        }
                    }
                }
            }
        }
Exemple #21
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        private IList <TaskFile> GenTaskFiles()
        {
            //TODO:文件名称
            IList <TaskFile> files = new List <TaskFile>();

            if (cbx_DesignDoc.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.Design;
                files.Add(file);
            }
            if (cbx_TestDoc.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.Test;
                files.Add(file);
            }
            if (cbx_RecordXls.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.Xls;
                files.Add(file);
            }
            if (cbx_DevSql.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.DevSql;
                files.Add(file);
            }
            if (cbx_DmlSql.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.DML;
                files.Add(file);
            }
            if (cbx_Readme.Checked)
            {
                TaskFile file = new TaskFile();
                file.Type = TaskFileEnum.README;
                files.Add(file);
            }
            return(files);
        }
        public bool GetSMARTBuffer(IntPtr handle, ref byte[] buffer)
        {
            IntPtr result = IntPtr.Zero;
            IntPtr buff1  = IntPtr.Zero;

            ATA_PASS_THROUGH_DIRECT input = new ATA_PASS_THROUGH_DIRECT();

            input.Length       = (UInt16)Marshal.SizeOf(input);
            input.AtaFlags     = ATA_FLAGS_DATA_IN;
            input.TimeOutValue = 2;

            TaskFile currentTaskFile = new TaskFile();
            TaskFile preTaskFile     = new TaskFile();

            currentTaskFile.Devic_Register         = 0xA0;
            currentTaskFile.Feature                = 0xD0;
            currentTaskFile.Command                = 0xB0;
            currentTaskFile.Cylinder_Low_Register  = 0x4F;
            currentTaskFile.Cylinder_High_Register = 0xC2;

            return(ATACommand(handle, ref currentTaskFile, ref preTaskFile, 512, ref buffer, true, false, false, false));
        }
Exemple #23
0
        public async Task <IActionResult> DownloadTaskFile(int projectID, int taskID, int taskFileID)
        {
            string path = $"./StoredData/{TaskFileIDToName(taskFileID)}.dat";

            if (System.IO.File.Exists(path))
            {
                TaskFile taskFile = await _taskService.GetTaskFile(projectID, taskID, taskFileID);

                if (taskFile != null)
                {
                    var memory = new MemoryStream();
                    using (var stream = new FileStream(path, FileMode.Open))
                    {
                        byte[] bytes = new byte[stream.Length];
                        stream.Read(bytes, 0, (int)stream.Length);
                        memory.Write(bytes, 0, (int)stream.Length);
                        var response = File(bytes, "application/octet-stream", taskFile.FileName);                         // FileStreamResult
                        return(response);
                    }
                }
            }
            return(NotFound());
        }
Exemple #24
0
        private IList<TaskFile> GetSourceFiles(JSLintNetSettings settings)
        {
            var ignored = settings.NormalizeIgnore();
            var taskFiles = new List<TaskFile>();

            if (this.sourceFilesSet)
            {
                foreach (var item in this.SourceFiles)
                {
                    if (JSLint.CanLint(item.ItemSpec))
                    {
                        var taskFile = new TaskFile(this.SourceDirectory, item);

                        if (!taskFile.IsIgnored(ignored))
                        {
                            taskFiles.Add(taskFile);
                        }
                    }
                }

                return taskFiles;
            }

            var files = this.fileSystemWrapper.GetFiles(this.SourceDirectory, "*", SearchOption.AllDirectories);

            foreach (var file in files)
            {
                if (JSLint.CanLint(file))
                {
                    var taskFile = new TaskFile(this.SourceDirectory, file);

                    if (!taskFile.IsIgnored(ignored))
                    {
                        taskFiles.Add(taskFile);
                    }
                }
            }

            return taskFiles;
        }
        public async Task <ActionResult> GetTaskFileData(string guid)
        {
            var file = await TaskFile.GetAsync(guid);

            return(File(file.Data, System.Net.Mime.MediaTypeNames.Application.Octet, file.Name));
        }
Exemple #26
0
 public AtaPassThroughEx32WithIdentifyDevice(AtaFlags AtaFlags = default, byte PathId = default, byte TargetId = default, byte Lun = default, byte ReservedAsUchar = default, uint TimeOutValue = default, uint ReservedAsUlong = default, TaskFile TaskFile = default, IdentifyDevice IdentifyDevice = default)
 => (Length, this.AtaFlags, this.PathId, this.TargetId, this.Lun, this.ReservedAsUchar, this.TimeOutValue, this.ReservedAsUlong, this.DataTransferLength, this.DataBufferOffset, this.TaskFile, this.IdentifyDevice)
        public static void Main(string[] args)
        {
            string file        = "tickets.csv";
            string enhancefile = "nhancement.csv";
            string taskfile    = "task.csv";

            logger.Info("Prgram Started");


            ticketFile      ticketfile  = new ticketFile(file);
            EnhancementFile enhancement = new EnhancementFile(enhancefile);
            TaskFile        task        = new TaskFile(taskfile);

            string choice;

            do
            {
                //ask question
                Console.WriteLine("1) Make a Bug Ticket file.");
                Console.WriteLine("2) Read Bug Ticket data.");
                Console.WriteLine("3) Make an Enhanced Ticket File.");
                Console.WriteLine("4) Read Enhanced Ticket data.");
                Console.WriteLine("5) Make a Task Ticket file.");
                Console.WriteLine("6) Read Task Ticket Data.");
                Console.WriteLine("Press the any key to exit");

                choice = Console.ReadLine();
                logger.Info("User choice: ", choice);

                if (choice == "1")
                {
                    Ticket ticket = new Ticket();
                    for (int i = 0; i < 10; i++)
                    {
                        Console.WriteLine("Wanna enter a ticket (Y/N)?");
                        string reply = Console.ReadLine();
                        logger.Info("User Reply: ", reply);
                        if (reply != "Y")
                        {
                            break;
                        }

                        Console.WriteLine("Please enter the TicketID: ");
                        ticket.ticketID = Console.ReadLine();

                        Console.WriteLine("Please enter the Ticket Summary: ");
                        ticket.summary = Console.ReadLine();

                        Console.WriteLine("Please enter the Ticket Status");
                        ticket.status = Console.ReadLine();

                        Console.WriteLine("What is the Level of Priority?");
                        ticket.priorityLevel = Console.ReadLine();

                        Console.WriteLine("Who was assigned to this ticket?");
                        ticket.assignee = Console.ReadLine();

                        Console.WriteLine("Who submitted the ticket?");
                        ticket.submitter = Console.ReadLine();
                        string input;

                        do
                        {
                            Console.WriteLine("Whos is watching? (Enter 'exit' to quit program): ");
                            input = Console.ReadLine();
                            if (input != "exit" && input.Length > 0)
                            {
                                ticket.watching.Add(input);
                            }
                        } while (input != "exit");
                        if (ticket.watching.Count == 0)
                        {
                            ticket.watching.Add("(Nobody's watching the ticket!)");
                        }
                        ticketfile.AddTicket(ticket);
                    }
                }
                else if (choice == "2")
                {
                    foreach (Ticket ti in ticketfile.Ticket)
                    {
                        Console.WriteLine(ti.Display());
                    }
                }
                else if (choice == "3")
                {
                    EnhancementTicket enhancementTicket = new EnhancementTicket();
                    for (int i = 0; i < 10; i++)
                    {
                        Console.WriteLine("Wanna enter a ticket (Y/N)?");
                        string reply = Console.ReadLine().ToUpper();
                        logger.Info("User Reply: ", reply);
                        if (reply != "Y")
                        {
                            break;
                        }

                        Console.WriteLine("Please enter the TicketID");
                        enhancementTicket.ticketID = Console.ReadLine();

                        Console.WriteLine("Please enter the Ticket Summary: ");
                        enhancementTicket.summary = Console.ReadLine();

                        Console.WriteLine("Please enter the Ticket Status");
                        enhancementTicket.status = Console.ReadLine();

                        Console.WriteLine("What is the Level of Priority?");
                        enhancementTicket.priorityLevel = Console.ReadLine();

                        Console.WriteLine("Who was assigned to this ticket?");
                        enhancementTicket.assignee = Console.ReadLine();

                        Console.WriteLine("Who submitted the ticket?");
                        enhancementTicket.submitter = Console.ReadLine();

                        Console.WriteLine("What's the reason for the ticket?");
                        enhancementTicket.reason = Console.ReadLine();

                        Console.WriteLine("What kind of software for the ticket?");
                        enhancementTicket.software = Console.ReadLine();

                        Console.WriteLine("How much does the ticket cost?");
                        enhancementTicket.ticketCost = double.Parse(Console.ReadLine());

                        Console.WriteLine("What the ticket estimate?");
                        enhancementTicket.ticketEstimate = Console.ReadLine();
                        string input;

                        do
                        {
                            Console.WriteLine("Who's watching? (Enter 'exit' to quit the program): ");
                            input = Console.ReadLine();
                            if (input != "exit" && input.Length > 0)
                            {
                                enhancementTicket.watching.Add(input);
                            }
                        } while (input != "done");
                        if (enhancementTicket.watching.Count == 0)
                        {
                            enhancementTicket.watching.Add("Nobody's watchin the ticket!");
                        }
                        enhancement.AddTicket(enhancementTicket);
                    }
                }

                else if (choice == "4")
                {
                    foreach (EnhancementTicket et in enhancement.EnhancedTicket)
                    {
                        Console.WriteLine(et.Display());
                    }
                }

                else if (choice == "5")
                {
                    TaskTicketing taskTickets = new TaskTicketing();
                    for (int i = 0; i < 10; i++)
                    {
                        Console.WriteLine("Wanna enter a ticket (Y/N)?: ");
                        string reply = Console.ReadLine().ToUpper();
                        logger.Info("User reply: ", reply);
                        if (reply != "Y")
                        {
                            break;
                        }

                        Console.WriteLine("Please enter the TicketID: ");
                        taskTickets.ticketID = Console.ReadLine();

                        Console.WriteLine("Please enter the Ticket Summary");
                        taskTickets.summary = Console.ReadLine();

                        Console.WriteLine("What's the Ticket Status?");
                        taskTickets.status = Console.ReadLine();

                        Console.WriteLine("What's the Level of Priority?: ");
                        taskTickets.priorityLevel = Console.ReadLine();

                        Console.WriteLine("Who's assigned to this ticket?: ");
                        taskTickets.assignee = Console.ReadLine();

                        Console.WriteLine("Who submitted the ticket?: ");
                        taskTickets.submitter = Console.ReadLine();

                        Console.WriteLine("What's the due date for this task?");
                        taskTickets.dateDue = Console.ReadLine();

                        Console.WriteLine("What is the name of the project?");
                        taskTickets.projectName = Console.ReadLine();
                        string input;

                        do
                        {
                            Console.WriteLine("Who's watching? ( Enter 'exit' to quit the program): ");
                            input = Console.ReadLine();
                            if (input != "exit" && input.Length > 0)
                            {
                                taskTickets.watching.Add(input);
                            }
                        } while (input != "exit");
                        if (taskTickets.watching.Count == 0)
                        {
                            taskTickets.watching.Add("Nobody's watching the ticket!");
                        }
                        task.AddTicket(taskTickets);
                    }
                }
                else if (choice == "6")
                {
                    foreach (TaskTicketing tt in task.TaskTicketing)
                    {
                        Console.WriteLine(tt.Display());
                    }
                }
            } while (choice == "1" || choice == "2" || choice == "3" || choice == "4" || choice == "5" || choice == "6");
            logger.Info("End of Program");
        }
Exemple #28
0
        public ActionResult ImportTask(HttpPostedFileBase file)
        {
            try
            {
                var tasks = new TaskFile(file.InputStream).ToTask();

                var db = new Context();

                List <string> existTasks = new List <string>();


                //IsDeviceNet为true设备网
                if (GlobalData.IsDeviceNet)
                {
                    foreach (var task in tasks)
                    {
                        var taskdb = db.DispatchMessages.SingleOrDefault(x => x.TaskNo == task.TaskNo);

                        if (taskdb != null)
                        {
                            //相同编号任务编号的同一版本不能重复导入
                            existTasks.Add($"{taskdb.TaskNo}({taskdb.PartNo})");
                            continue;
                        }

                        taskdb = new DispatchMessage
                        {
                            TaskNo     = task.TaskNo,
                            PartNo     = task.PartNo,
                            BatchNo    = task.BatchNo,
                            SeqNo      = task.SeqNo,
                            Count      = task.Count,
                            FacCode    = task.FacCode,
                            WeldNo     = task.WeldNo,
                            WelderNo   = task.WelderNo,
                            StartTime  = task.StartTime,
                            EndTime    = task.EndTime,
                            exportTime = task.exportTime,
                            importTime = task.importTime,
                            State      = false,
                            showState  = task.showState
                        };


                        db.DispatchMessages.Add(taskdb);
                        db.SaveChanges();
                    }
                }


                if (existTasks.Any())
                {
                    return(Json(new { succeed = true, existTasks }, "text/html"));
                }
                else
                {
                    return(Json(new { succeed = true }, "text/html"));
                }
            }
            catch (Exception e)
            {
                Log.Error(e.StackTrace);
                return(Json(new { succeed = false, error = e.Message }, "text/html"));
            }
        }
Exemple #29
0
 internal static TaskDetails GetCreatedTask(TaskUser assignor, TaskUser assignee, TaskFile file)
 {
     return(new TaskDetails(
                "e53ea032-f859-4e4b-94e2-43131fcf7243",
                "Check if we need to update the website",
                new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddMilliseconds(1534460249892),
                null,
                new DateTime(2018, 8, 29, 0, 0, 0, DateTimeKind.Utc),
                1535612399999,
                assignor,
                new[] { assignee }.ToList(),
                Api.Tasks.TaskStatus.Open,
                file));
 }
        private bool ATACommand(IntPtr handle, ref TaskFile currentTaskFile, ref TaskFile preTaskFile, int dataTransferSzie, ref byte[] buffer, bool isRead, bool isDMA, bool isExCmd, bool isnodata)
        {
            //If parameter isRead is true, the command is a read command.
            //Otherwise it's a write command.
            ATA_PASS_THROUGH_DIRECT input;
            bool   status;
            Int32  nBytesReturned;
            IntPtr result = IntPtr.Zero;
            IntPtr buff1  = IntPtr.Zero;
            int    errorMessage;

            input        = new ATA_PASS_THROUGH_DIRECT();
            input.Length = (UInt16)Marshal.SizeOf(input);
            if (!isRead)
            {
                input.AtaFlags = ATA_FLAGS_DATA_OUT;    //For write command
            }
            else
            {
                input.AtaFlags = ATA_FLAGS_DATA_IN;     //For read command
            }
            if (isnodata)
            {
                input.AtaFlags = ATA_FLAGS_DRDY_REQUIRED;     //For no data
            }

            if (isDMA)
            {
                input.AtaFlags |= ATA_FLAGS_USE_DMA;    //For direct memory access
            }
            if (isExCmd)
            {
                input.AtaFlags |= ATA_FLAGS_48BIT_COMMAND;  //For 48 bit command
            }
            input.TimeOutValue       = 60;
            input.DataTransferLength = (uint)(dataTransferSzie);    //The buffer size that you want to read or write

            input.CurrentTaskFile  = currentTaskFile;
            input.PreviousTaskFile = preTaskFile;

            buff1 = Marshal.AllocHGlobal((int)(dataTransferSzie));
            Marshal.Copy(buffer, 0, buff1, (int)(dataTransferSzie));
            input.offset = buff1;
            result       = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(ATA_PASS_THROUGH_DIRECT)));
            Marshal.StructureToPtr(input, result, false);


            status = DeviceIoControl(handle,
                                     IOCTL_ATA_PASS_THROUGH_DIRECT,
                                     result,
                                     Marshal.SizeOf(input),
                                     result,
                                     Marshal.SizeOf(input),
                                     out nBytesReturned,
                                     IntPtr.Zero);

            if (status == false)
            {
                errorMessage = Marshal.GetLastWin32Error();
            }

            input           = (ATA_PASS_THROUGH_DIRECT)Marshal.PtrToStructure(result, typeof(ATA_PASS_THROUGH_DIRECT));
            currentTaskFile = input.CurrentTaskFile;
            preTaskFile     = input.PreviousTaskFile;

            Marshal.Copy(buff1, buffer, 0, dataTransferSzie);

            Marshal.FreeHGlobal(buff1);
            Marshal.FreeHGlobal(result);

            if (status == false)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
Exemple #31
0
        void ThreadTaskFiles()
        {
            stopCopy = false;
            while (queueFiles.Count != 0 && !stopCopy)
            {
                TaskFile tf  = queueFiles.Dequeue();
                int      err = 0;
                string   op  = string.Empty;
                switch (tf.direction)
                {
                case 1:
                    op = "копирование файла";
                    if (tf.from.type == 0)
                    {
                        err = CopyFromBot(tf.from, tf.to);
                        this.Invoke(this.funcUpdateMyFileList);
                    }
                    else
                    {
                        err = -6;
                    }
                    break;

                case 2:
                    op = "копирование файла";
                    if (tf.from.type == 0)
                    {
                        err = CopyToBot(tf.from, tf.to);
                        this.Invoke(this.funcUpdateBotFileList);
                    }
                    else
                    {
                        err = -6;
                    }
                    break;

                case 3:
                    op  = "удаление файла";
                    err = DeleteFile(tf.from.fileName);
                    this.Invoke(this.funcUpdateBotFileList);
                    break;

                case 4:
                    op  = "создание папки";
                    err = CreateFolder(tf.to);
                    this.Invoke(this.funcUpdateBotFileList);
                    break;
                }

                string s = string.Empty;
                switch (err)
                {
                case 0: s = "Операция " + op + " \"" + (tf.from != null ? tf.from.fileName : tf.to) + "\" прошла успешно"; break;

                case -1: s = "Не удалось открыть поток для операции " + op + " \"" + tf.from + "\""; break;

                case -2:
                case -4:
                case -5:
                    s = "Во время операции " + op + " \"" + tf.from.fileName + "\" произошла ошибка " + err.ToString(); break;

                case -3: s = "Невозможно создать файл \"" + tf.to + "\""; break;

                case -6: s = "Можно копировать только файлы, папки нельзя"; break;

                case -7: s = "Файл \"" + tf.from.fileName + "\" отсутствует"; break;

                case -8: s = "Ошибка копирования файла \"" + tf.from.fileName + "\", неверная контрольная сумма"; break;

                default:
                    s = "При операции " + op + " произошла ошибка " + err.ToString();
                    break;
                }
                this.Invoke(this.funcAddHistory, new object[] { s });
            }
            if (stopCopy)
            {
                this.Invoke(this.funcAddHistory, new object[] { "Операции с файлами прерваны" });
            }
            this.Invoke(this.funcSetInfoCopy, new object[] { string.Empty, 0 });
            threadTaskFiles = null;
        }