Пример #1
0
        public void TestDontHaveRunningType()
        {
            RunningTypeService.Setup(r => r.GetRunningType(It.IsAny <string>())).Returns(It.IsAny <RunningType>());
            RunningNoService RunningNo = new RunningNoService(Context, RunningTypeService.Object);
            ReturnMessageDTO result    = RunningNo.GenerateRunningNo("02", "US");

            Assert.AreEqual("Not found running Tpye!!", result.Message);
        }
Пример #2
0
        public void TestHaveRunningType()
        {
            Mockdata();
            RunningNoService RunningNo = new RunningNoService(Context, RunningTypeService.Object);
            ReturnMessageDTO result    = RunningNo.GenerateRunningNo("01", "US");

            Assert.AreEqual("RunningNo Created Success!!", result.Message);
        }
 public ActionResult <ReturnMessageDTO> GetSystemCode(string runningCode, params string[] parameter)
 {
     try
     {
         parameter = parameter.Select(x => x.ToUpper()).ToArray();
         ReturnMessageDTO returnMessageDTO = RunningNoService.GenerateRunningNo(runningCode, parameter);
         return(returnMessageDTO);
     }
     catch (Exception ex)
     {
         return(NotFound(ex.Message));
     }
 }
Пример #4
0
        public ReturnMessageDTO GenerateRunningNo(string runningCode, params string[] parameter)
        {
            ReturnMessageDTO returnMessageDTO = new ReturnMessageDTO();

            try
            {
                //get running type and check null and not null
                RuRunningType runningType = RunningTypeService.GetRunningType(runningCode);

                //check running no มันคือการ get ข้อมูมลจาก database
                if (runningType == null)
                {
                    throw new Exception("Not found running Tpye!!");
                }
                RuRunningNo Running = Context.RuRunningNo.Where(x => x.RunningTypeCode == runningCode).FirstOrDefault();
                // ถ้ามัน ไม่มี วิ่งไป create แล้วส่งกลับมาเป็น RunningType
                Running = CheckParameter(parameter.Length, runningCode, parameter);
                if (Running == null)
                {
                    CreateRunningNo(runningType, parameter);
                    returnMessageDTO = GenerateRunningNo(runningCode, parameter);
                    return(returnMessageDTO);
                }
                // ถ้าเจอ ก็ update ในนี้แหล่ะ
                else
                {
                    Running = CheckParameter(parameter.Length, runningCode, parameter);
                }

                if (Running.Active == true && Running != null)
                {
                    //if (checkParameter(runningType, parameter) == true)
                    //{
                    Running.RunningNo++;
                    Running.UpdatedDate = DateTime.Now;
                    Running.UpdatedBy   = "RunningNoService";
                    string runningDigit = Running.RunningNo.ToString().PadLeft(runningType.RunningNoDigit, '0');
                    string result       = string.Format(runningType.RunningNoFormat
                                                        , Running.Parameter1
                                                        , Running.Parameter2
                                                        , Running.Parameter3
                                                        , Running.Parameter4
                                                        , Running.Parameter5
                                                        , Running.Parameter6
                                                        , Running.Parameter7
                                                        , Running.Parameter8
                                                        , Running.Parameter9
                                                        , Running.Parameter10
                                                        ).Replace("[RUNNING]", runningDigit);
                    Context.RuRunningNo.Update(Running);
                    Context.SaveChanges();
                    returnMessageDTO.Code        = result;
                    returnMessageDTO.TypeCode    = Running.RunningTypeCode;
                    returnMessageDTO.TypeName    = runningType.Name;
                    returnMessageDTO.Digit       = runningType.RunningNoDigit;
                    returnMessageDTO.Format      = runningType.RunningNoFormat;
                    returnMessageDTO.CreatedDate = Running.UpdatedDate;
                    returnMessageDTO.Message     = "RunningNo Created Success!!";
                    return(returnMessageDTO);
                    //}
                    //else
                    //{
                    //    CreateRunningNo(runningType, parameter);
                    //    return returnMessageDTO;
                    //}
                }
                throw new NotImplementedException();
            }
            catch (Exception e)
            {
                returnMessageDTO.Message = e.Message;
                return(returnMessageDTO);

                throw e;
            }
        }