コード例 #1
0
 public ServiceResult InsertMaterialRejectForm(Material_Reject_Form pForm)
 {
     try
     {
         using (var db = new AgnosDBContext())
         {
             db.Material_Reject_Form.Add(pForm);
             db.SaveChanges();
             db.Entry(pForm).GetDatabaseValues();
             return(new ServiceResult()
             {
                 Code = ReturnCode.SUCCESS,
                 Msg = Success.GetMessage(ReturnCode.SUCCESS_INSERT),
                 Field = Resource.Material_Reject
             });
         }
     }
     catch (Exception ex)
     {
         return(new ServiceResult()
         {
             Code = ReturnCode.ERROR_INSERT,
             Msg = Error.GetMessage(ReturnCode.ERROR_INSERT),
             Field = Resource.Material_Reject,
             Exception = ex
         });
     }
 }
コード例 #2
0
        public ServiceResult SaveMaterialRejectForm(Material_Reject_Form pForm)
        {
            try
            {
                using (var db = new AgnosDBContext())
                {
                    var form = db.Material_Reject_Form.Where(w => w.Material_Reject_ID == pForm.Material_Reject_ID).FirstOrDefault();
                    if (form != null)
                    {
                        db.Material_Reject_Form.Remove(form);
                    }

                    db.Material_Reject_Form.Add(pForm);
                    db.SaveChanges();
                    return(new ServiceResult()
                    {
                        Code = ReturnCode.SUCCESS,
                        Msg = Success.GetMessage(ReturnCode.SUCCESS_INSERT),
                        Field = Resource.Material_Reject
                    });
                }
            }
            catch (Exception ex)
            {
                return(new ServiceResult()
                {
                    Code = ReturnCode.ERROR_INSERT,
                    Msg = Error.GetMessage(ReturnCode.ERROR_INSERT),
                    Field = Resource.Attachment_File,
                    Exception = ex
                });
            }
        }
コード例 #3
0
        public ServiceResult UpdateMaterialReject(Material_Reject pRej, Material_Reject_Form pForm = null)
        {
            try
            {
                using (var db = new AgnosDBContext())
                {
                    var current = db.Material_Reject.Where(w => w.Material_Reject_ID == pRej.Material_Reject_ID).FirstOrDefault();
                    if (current != null)
                    {
                        if (string.IsNullOrEmpty(pRej.RMR_No))
                        {
                            //------------- Start Running Number-----------------//
                            var runningNumber = db.Running_Number_Config.Where(w => w.Running_Number_Type == Running_Number_Type.RMR).FirstOrDefault();
                            if (runningNumber == null)
                            {
                                runningNumber = new Running_Number_Config()
                                {
                                    Ref_Count           = 1,
                                    Number_Of_Digit     = 2,
                                    Running_Number_Type = Running_Number_Type.RMR,
                                    Create_On           = currentdate,
                                    Create_By           = userlogin.Email_Address,
                                    Running_Year        = currentdate.Year
                                };
                            }
                            else
                            {
                                if (!(runningNumber.Running_Year.HasValue && runningNumber.Running_Year == currentdate.Year))
                                {
                                    // reset Ref_Count
                                    runningNumber.Ref_Count    = 1;
                                    runningNumber.Running_Year = currentdate.Year;
                                    runningNumber.Update_On    = currentdate;
                                    runningNumber.Update_By    = userlogin.Email_Address;
                                }
                            }
                            string RMR_No = runningNumber.Ref_Count.ToString().PadLeft(runningNumber.Number_Of_Digit.Value, '0') + "/" + currentdate.Year.ToString().Substring(2, 2);
                            var    rcri   = new MaterialRejectCriteria();
                            rcri.RMR_No = RMR_No;
                            bool validNo = false;
                            while (!validNo)
                            {
                                var rej    = new Material_Reject();
                                var result = GetMaterialReject(rcri);
                                if (result.Code == ReturnCode.SUCCESS)
                                {
                                    var rejs = result.Object as List <Material_Reject>;
                                    if (rejs.Count() == 0)
                                    {
                                        validNo = true;
                                    }
                                    else
                                    {
                                        if (runningNumber.Ref_Count == 0)
                                        {
                                            runningNumber.Ref_Count = 1;
                                        }

                                        runningNumber.Update_On = currentdate;
                                        runningNumber.Update_By = userlogin.Email_Address;
                                        runningNumber.Ref_Count++;
                                        RMR_No = runningNumber.Ref_Count.ToString().PadLeft(runningNumber.Number_Of_Digit.Value, '0') + "/" + currentdate.Year.ToString().Substring(2, 2);
                                    }
                                }
                            }
                            runningNumber.Ref_Count++;
                            pRej.RMR_No = RMR_No;
                            if (runningNumber.Running_Number_Config_ID == 0)
                            {
                                db.Running_Number_Config.Add(runningNumber);
                            }
                            //------------- End Running Number-----------------//
                        }

                        if (pForm != null)
                        {
                            var form = db.Material_Reject_Form.Where(w => w.Material_Reject_ID == current.Material_Reject_ID).FirstOrDefault();
                            if (form != null)
                            {
                                db.Material_Reject_Form.Remove(form);
                            }

                            db.Material_Reject_Form.Add(pForm);
                        }

                        SaveProductMaping(db, pRej.Product_Code, pRej.Product_Name);
                        pRej.Update_On = currentdate;
                        pRej.Update_By = userlogin.Email_Address;
                        db.Entry(current).CurrentValues.SetValues(pRej);
                        db.SaveChanges();
                    }

                    return(new ServiceResult()
                    {
                        Code = ReturnCode.SUCCESS,
                        Msg = Success.GetMessage(ReturnCode.SUCCESS_UPDATE),
                        Field = Resource.Material_Reject
                    });
                }
            }
            catch (Exception ex)
            {
                return(new ServiceResult()
                {
                    Code = ReturnCode.ERROR_UPDATE,
                    Msg = Error.GetMessage(ReturnCode.ERROR_UPDATE),
                    Field = Resource.Material_Reject,
                    Exception = ex
                });
            }
        }