コード例 #1
0
        public IHttpActionResult SaveSpecialModifyVersion(GradeMaterialDto material)
        {
            JsonObject json = new JsonObject();
            string     msg  = string.Empty;
            DataTable  dt   = biz.IsCanSpecial_UpdateVersion(material.SampleName, material.LOT_NO, material.Grades);

            if (dt.Rows.Count > 0)
            {
                // can revise
                msg = dt.Rows[0]["MSG"].ToString();
                if (!string.IsNullOrEmpty(msg))
                {
                    json["Error"] = msg;
                    return(Ok(json));
                }
                int       version  = int.Parse(dt.Rows[0]["Version"].ToString());
                DataTable dtNewest = biz.NewestGrades(dt.Rows[0]["ID"].ToString());
                if (dtNewest.Rows.Count < 0)
                {
                    json["Error"] = "NO property Name";
                    return(Ok(json));
                }
                DateTime lastversionDate = Convert.ToDateTime(dtNewest.Rows[0]["ValidDate"]);
                if (lastversionDate > material.ValidDate)
                {
                    return(BadRequest("Valid Date is Error ,it is min  Last Version"));
                }

                GradeMaterial gm = new GradeMaterial();
                gm.ID = Guid.NewGuid().ToString();

                gm.SampleName = material.SampleName;
                gm.LOT_NO     = material.LOT_NO;
                gm.Version    = version;
                gm.Grades     = material.Grades == null ? "00" : material.Grades;
                gm.UserID     = material.UserID;
                gm.Stamp      = System.DateTime.Now;
                gm.Status     = "N";
                gm.VersionSpc = "V" + gm.Version.ToString().PadLeft(2, '0');
                //gm.Remark = material.Remark;
                msg = biz.InsertGradeMaterial(gm);
                if (!string.IsNullOrEmpty(msg))
                {
                    json["Error"] = msg;
                    return(Ok(json));
                }

                List <QCGrades> grades = new List <QCGrades>();
                foreach (var g in material.GradesDto)
                {
                    QCGrades grade = new QCGrades();
                    grade.ID           = gm.ID;
                    grade.PropertyName = g.PropertyName;
                    grade.Grade        = material.Grade;
                    grade.Enable       = g.Enable;
                    grade.MaxValue     = g.MaxValue;
                    grade.MinValue     = g.MinValue;
                    grade.Prec         = g.Prec;
                    grade.ValueSpec    = g.ValueSpec;
                    grade.ValidTODate  = null;
                    grade.CreateDate   = System.DateTime.Now;;
                    grade.ValidDate    = material.ValidDate;
                    grade.Stamp        = System.DateTime.Now;
                    grade.UserID       = material.UserID;
                    grade.Remark       = "revise";
                    grades.Add(grade);
                }

                msg = biz.CreateNewVersion(gm.ID.ToString(), gm.Version, grades);


                if (!string.IsNullOrEmpty(msg))
                {
                    json["Error"] = msg;
                    return(Ok(json));
                }

                //update last verion date

                json["ID"]         = gm.ID;
                json["Version"]    = gm.Version;
                json["VersionSpc"] = gm.VersionSpc;
                json["SampleName"] = material.SampleName;
                json["LOT_NO"]     = material.LOT_NO;
                json["Grades"]     = material.Grades;
                return(Ok(json));
            }
            else
            {
                return(BadRequest("DOn't get Row"));
            }
        }
コード例 #2
0
        public IHttpActionResult UpdateGrade(GradeMaterialDto material)
        {
            try
            {
                JsonObject    json = new JsonObject();
                GradeMaterial gm   = new GradeMaterial();
                string        msg  = String.Empty;
                gm.SampleName = material.SampleName;
                gm.LOT_NO     = material.LOT_NO;
                gm.Grades     = material.Grades == null ? "00" : material.Grades;

                gm.ID         = material.ID;
                gm.Version    = material.Version;
                gm.Status     = "N";
                gm.UserID     = material.UserID;
                gm.VersionSpc = "V" + gm.Version.ToString().PadLeft(2, '0');
                gm.Stamp      = System.DateTime.Now;
                //gm.Remark = material.Remark;
                string _id = biz.IsExsitGrade(material.SampleName, material.LOT_NO, material.Grades);
                if (!string.IsNullOrEmpty(_id))
                {
                    bool isDelete = biz.DeleteAllGradeByDarf(_id);
                    if (!isDelete)
                    {
                        json["Error"] = "DELETE Failed";
                        return(Ok(json));
                    }
                }
                msg = biz.UpdateGradeMaterial(gm);
                if (!string.IsNullOrEmpty(msg))
                {
                    json["Error"] = msg;
                    return(Ok(json));
                }
                gm = biz.GetGradeMaterial(gm.ID.ToString());
                List <QCGrades> grades = new List <QCGrades>();
                foreach (var g in material.GradesDto)
                {
                    QCGrades grade = new QCGrades();
                    grade.ID = gm.ID;

                    grade.PropertyName = g.PropertyName;
                    grade.Grade        = material.Grade;
                    grade.Enable       = g.Enable;
                    grade.MaxValue     = g.MaxValue;
                    grade.MinValue     = g.MinValue;
                    grade.Prec         = g.Prec;
                    grade.ValueSpec    = g.ValueSpec;
                    grade.ValidTODate  = null;
                    grade.CreateDate   = System.DateTime.Now;;
                    grade.ValidDate    = material.ValidDate;
                    grade.Stamp        = System.DateTime.Now;
                    grade.UserID       = material.UserID;
                    grades.Add(grade);
                }

                msg = biz.CreateNewVersion(gm.ID.ToString(), gm.Version, grades);
                if (!string.IsNullOrEmpty(msg))
                {
                    json["Error"] = msg;
                    return(Ok(json));
                }
                json["ID"]         = gm.ID;
                json["Version"]    = gm.Version;
                json["SampleName"] = material.SampleName;
                json["LOT_NO"]     = material.LOT_NO;
                json["Grades"]     = material.Grades;
                json["VersionSpc"] = gm.VersionSpc;

                return(Ok(json));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                Loger.Error(ex);
                return(BadRequest(ex.Message + ex.StackTrace));
            }
        }