Пример #1
0
        public async Task <IHttpActionResult> PutCadJob(int id, CadJob cadJob)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != cadJob.ID)
            {
                return(BadRequest());
            }

            db.Entry(cadJob).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!CadJobExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }



            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #2
0
        public async Task <IHttpActionResult> GetCadJob(int id)
        {
            CadJob cadJob = await db.CadJobs.FindAsync(id);

            if (cadJob == null)
            {
                return(NotFound());
            }

            return(Ok(cadJob));
        }
Пример #3
0
        public async Task <IHttpActionResult> DeleteCadJob(int id)
        {
            CadJob cadJob = await db.CadJobs.FindAsync(id);

            if (cadJob == null)
            {
                return(NotFound());
            }

            db.CadJobs.Remove(cadJob);
            await db.SaveChangesAsync();

            return(Ok(cadJob));
        }
Пример #4
0
        public async Task <IHttpActionResult> PostCadJob([FromBody] Job job)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            CadJob cadJob = new CadJob()
            {
                LCID        = job.LCID,
                ProductID   = job.ProductID,
                VersionID   = job.VersionID,
                ComponentID = job.ComponentID,
                Description = job.Description,
            };

            cadJob.StatusID    = (byte)JobStatus.Submitted;
            cadJob.OwnerID     = 4;
            cadJob.CreatedTime = DateTime.Now;

            db.CadJobs.Add(cadJob);
            db.SaveChanges();

            int jobId = cadJob.ID;

            //add a new map about job id and pattern id into JobPattern table.
            JobPattern jobPattern = new JobPattern();

            jobPattern.JobId     = jobId;
            jobPattern.PatternId = job.PatternID;

            int retVal = DBUtil.executeCommand(jobPattern.ToSQLString());



            if (!string.IsNullOrEmpty(job.Trace))
            {
                string[] splitTraces = job.Trace.Split(new char[] { ';' }).Distinct <string>().ToArray <string>();
                foreach (string aTrace in splitTraces)
                {
                    var rawTraceFile = new RawTraceFile()
                    {
                        FileName           = "",
                        FilePath           = aTrace,
                        FileTypeID         = 1,
                        ResultTable        = "",
                        JobID              = jobId,
                        ProductVersionID   = job.VersionID,
                        ProductComponentID = job.ComponentID
                    };
                    db.RawTraceFiles.Add(rawTraceFile);
                }
            }

            /*
             * if (!string.IsNullOrEmpty(job.PDB))
             * {
             *  string[] splitPDBs = job.PDB.Split(new char[] { ';' }).Distinct<string>().ToArray<string>();
             *  foreach (string aPDB in splitPDBs)
             *  {
             *      db.RawPDBDirs.Add(new RawPDBDir()
             *      {
             *          DirName = aPDB,
             *          JobID = jobId
             *      });
             *  }
             * }
             */

            if (!string.IsNullOrEmpty(job.TMF))
            {
                string[] splitTMFs = job.TMF.Split(new char[] { ';' }).Distinct <string>().ToArray <string>();
                foreach (string aTMF in splitTMFs)
                {
                    db.RawTMFDirs.Add(new RawTMFDir()
                    {
                        DirName = aTMF,
                        JobID   = jobId
                    });
                }
            }


            /*
             * if (!string.IsNullOrEmpty(job.Source))
             * {
             *  string[] splitSources = job.Source.Split(new char[] { ';' }).Distinct<string>().ToArray<string>();
             *  foreach (string aSource in splitSources)
             *  {
             *      db.RawSourceDirs.Add(new RawSourceDir()
             *      {
             *          DirName = aSource,
             *          JobID = jobId
             *      });
             *  }
             * }
             */

            await db.SaveChangesAsync();

            return(Ok(jobId));
        }