Пример #1
0
        public static bool AddJob(FileHelper fileModel, string entityName, string primaryKey, int printerId, string userId)
        {
            string printDirectory = FileDirectoryService.GetPathByName("PrintServiceDirectory");
            BaseModelContext <PrintModel> printDb = new BaseModelContext <PrintModel>();
            PrintModel printModel = new PrintModel()
            {
                EntityName   = entityName,
                PrimaryKey   = primaryKey,
                PrinterId    = printerId,
                FileLocation = "C:\\Temp",
                Status       = PrintModel.newStatus
            };

            printDb.Models.Add(printModel);
            printDb.SaveChanges(userId);
            if (printModel.Id > 0)
            {
                string printServicePath = printDirectory + printModel.Id.ToString() + "-" + fileModel.FileName;
                if (fileModel.CopyTo(printServicePath))
                {
                    printModel.Status       = PrintModel.queuedStatus;
                    printModel.FileLocation = printServicePath;
                    printDb.Entry(printModel);
                    printDb.SaveChanges(userId);
                    return(true);
                }
                else
                {
                    printDb.Models.Remove(printModel);
                    printDb.SaveChanges(userId);
                }
            }
            return(false);
        }