コード例 #1
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 5)
            {
                throw new ArgumentException("A player has to have a firstname,lastname,nationality,rating and positionId");
            }
            var firstName   = args[0];
            var lastName    = args[1];
            var nationality = args[2];
            var rating      = InputValidations.ValidateRatingConversion(InputValidations.MIN_RATING, InputValidations.MAX_RATING, args[3],
                                                                        "Invalid rating");
            var position = InputValidations.ValidateRatingConversion(InputValidations.MIN_POSITION, InputValidations.MAX_POSITION, args[4],
                                                                     "Invalid position");

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, firstName,
                                            $"A player's firstname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, lastName,
                                            $"A player's lastname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, nationality,
                                            $"A nationality must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var player = service.CreatePlayer(firstName, lastName, nationality, rating, position);

            return($"Created player {firstName} {lastName}");
        }
コード例 #2
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 1)
            {
                throw new ArgumentException("League name should be entered");
            }
            var name = args[0];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"A league's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var teams = service.ShowTable(name);

            var answer = $"League Table {name} \r\n";

            answer += $"  Team Name      GS-GC Points\r\n";
            var count = 1;

            foreach (var team in teams.OrderByDescending(t => t.Points)
                     .ThenByDescending(t => t.GoalDifference)
                     .ThenByDescending(t => t.GoalsScored))
            {
                answer += $"{count}.{team.Name} {team.City} - {team.GoalsScored}-{team.GoalsConcede}  {team.Points}\r\n";
                count++;
            }

            return(answer.Trim());
        }
コード例 #3
0
 static void Main(string[] args)
 {
     try
     {
         if (InputValidations.ValidateInputs(args))
         {
             if (InputValidations.ValidateInputValues(args))
             {
                 //*** Proceed with Search Query Engines using JSON - REST API */
                 Console.WriteLine("Proceed with Search Query Engines using JSON - REST API");
                 //Use Asynchronus calls to handle results
                 //CompareSearchResults.cs
             }
             else
             {
                 Console.WriteLine("Error: " + ErrorMessages.programmingError);
             }
         }
         else
         {
             Console.WriteLine("Error: " + ErrorMessages.inputError);
         }
     }
     catch (Exception e)
     {
         Console.WriteLine("Error: " + ErrorMessages.genericError);
         Console.WriteLine("Error Detail: " + e.Message);
     }
 }
コード例 #4
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 4)
            {
                throw new ArgumentException("Team has to have a name,city,country,owner");
            }
            var name    = args[0];
            var city    = args[1];
            var country = args[2];
            var owner   = args[3];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, country,
                                            $"A country must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, owner,
                                            $"An owner must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");


            var team = service.CreateTeam(name, city, country, owner);

            return($"Created team {name} {city}");
        }
コード例 #5
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 4)
            {
                throw new ArgumentException("A has has to have a name,city,country,owner");
            }
            var name      = args[0];
            var city      = args[1];
            var firstName = args[2];
            var lastName  = args[3];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, firstName,
                                            $"A player's firstname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, lastName,
                                            $"A player's lastname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");


            var team = service.BuyPlayer(name, city, firstName, lastName);

            return($"Team {team.Name} {team.City} has bought {firstName} {lastName}");
        }
コード例 #6
0
ファイル: InsertWindow.cs プロジェクト: MaayanWag/CS_Ex03
 private void getLicenseNumber()
 {
     Console.Write("Please insert vehicle license number: ");
     m_LicenseNumber = Console.ReadLine();
     try
     {
         InputValidations.CheckIfLicenseNumberIsValid(m_LicenseNumber);
         m_IsInputValid = true;
     }
     catch (FormatException fe)
     {
         Console.WriteLine(fe.Message);
     }
 }
コード例 #7
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 1)
            {
                throw new ArgumentException("A League has to has name");
            }
            var name = args[0];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"A league's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var league = service.ResetTeams(name);

            return($"Teams data reset in league {name}");
        }
コード例 #8
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 1)
            {
                throw new ArgumentException("League name should be entered");
            }
            var name = args[0];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"A league's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var matches = service.ShowAllMatches(name);
            var answer  = PrintLeagueMatches(matches);

            return(answer);
        }
コード例 #9
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 2)
            {
                throw new ArgumentException("A player has to have a firstname,lastname,nationality,rating and positionId");
            }
            var firstName = args[0];
            var lastName  = args[1];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, firstName,
                                            $"A player's firstname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, lastName,
                                            $"A player's lastname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");


            var player = service.RetirePlayer(firstName, lastName);

            return($"Player  {player.FirstName} {player.LastName} has retired");
        }
コード例 #10
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 2)
            {
                throw new ArgumentException("Team has to have a name and city");
            }
            var name = args[0];
            var city = args[1];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var team = service.ShowTeam(name, city);
            var strb = new StringBuilder();

            return(strb.AppendLine($"Team name: {team.Name}\r\n Team city: {team.City}\r\n Team country: { team.Country}\r\n Team owner: {team.Owner}\r\n Team manager: {team.Manager}\r\n Team budget: {team.Budget}\r\n").ToString().Trim());
        }
コード例 #11
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 2)
            {
                throw new ArgumentException("Team has to have a name and city");
            }
            var name = args[0];
            var city = args[1];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var team   = service.ShowTeamPlayers(name, city);
            var answer = PrintShowTeamPlayers(team);

            return(answer);
        }
コード例 #12
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 3)
            {
                throw new ArgumentException("Write 3 parameters separated by (;).");
            }

            var name   = args[0];
            var city   = args[1];
            var league = args[2];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, league,
                                            $"A league's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            service.AddTeamToLeague(name, city, league);
            return($"Team {name} {city} has been added to league {league}.");
        }
コード例 #13
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 3)
            {
                throw new ArgumentException("A manager has to have a firstname,lastname and nationality");
            }
            var firstName   = args[0];
            var lastName    = args[1];
            var nationality = args[2];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, firstName,
                                            $"A manager's firstname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, lastName,
                                            $"A manager's lastname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, nationality,
                                            $"A nationality must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var player = service.CreateManager(firstName, lastName, nationality);

            return($"Created manager {firstName} {lastName}");
        }
コード例 #14
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 1)
            {
                throw new ArgumentException("League name should be entered");
            }
            var name = args[0];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"A league's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var matches = service.PlayAllMatches(name);
            var answer  = $"Matches for League {name} \r\n";

            foreach (var match in matches)
            {
                answer += $"{match.HomeTeam.Name} {match.HomeTeam.City} - {match.AwayTeam.Name} {match.AwayTeam.City}" +
                          $" => {match.HomeTeamGoals}:{match.AwayTeamGoals}\r\n";
            }

            return(answer.Trim());
        }
コード例 #15
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 4)
            {
                throw new ArgumentException("A stadium has to have a name, city, country and capacity.");
            }

            var name     = args[0];
            var city     = args[1];
            var country  = args[2];
            var capacity = InputValidations.ValidateRatingConversion(InputValidations.MIN_STADIUM, InputValidations.MAX_STADIUM, args[3],
                                                                     "Invalid Stadium Capacity");

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"A stadium name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"A city name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, country,
                                            $"A country name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            service.CreateStadium(name, city, country, capacity);
            return($"Stadium {name} in {city} has been created.");
        }
コード例 #16
0
        public string Execute(IReadOnlyList <string> args)
        {
            if (args.Count != 4)
            {
                throw new ArgumentException("The command has to have a firstname,lastname,team name and city");
            }
            var firstName = args[0];
            var lastName  = args[1];
            var name      = args[2];
            var city      = args[3];

            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, firstName,
                                            $"A player's firstname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, lastName,
                                            $"A player's lastname must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, name,
                                            $"Team's name must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");
            InputValidations.ValidateLength(InputValidations.MIN_NAME, InputValidations.MAX_NAME, city,
                                            $"Team's city must be between {InputValidations.MIN_NAME} and {InputValidations.MAX_NAME} characters");

            var manager = service.HireManager(firstName, lastName, name, city);

            return($"Team {name} {city} hired {manager.FirstName} {manager.LastName}");
        }
コード例 #17
0
        private List <ShipmentDataRequest> ExtractShipmentDataRequest(List <ExcelDataObject> excelDataObjects, int workflowID, string addressBookEnable, out int?workflowStatus)
        {
            List <ShipmentDataRequest> shipmentData = new List <ShipmentDataRequest>();
            List <AddressBook>         addressBooks = this.addressBookService.GetAddressBooks();
            int?wfStatus = 0;

            //foreach (ExcelDataObject excelDataObject in excelDataObjects)
            excelDataObjects.ForEach(excelDataObject =>
            {
                bool allPropertiesNull = !excelDataObject.GetType().GetProperties().Any(prop => prop == null);
                if (allPropertiesNull)
                {
                    ShipmentDataRequest shipmentDataRequest = new ShipmentDataRequest();

                    if (!string.IsNullOrWhiteSpace(excelDataObject.S_shipmentno))
                    {
                        shipmentDataRequest.BIL_TYP_TE = excelDataObject.S_billtype;
                        shipmentDataRequest.CCY_VAL_TE = string.Empty;
                        shipmentDataRequest.COD_TE     = string.Empty;
                        shipmentDataRequest.CSG_CTC_TE = excelDataObject.S_cneectc;

                        decimal decimalvalue           = 0;
                        shipmentDataRequest.DIM_WGT_DE = 0;
                        if (!string.IsNullOrEmpty(excelDataObject.S_dimwei))
                        {
                            if (decimal.TryParse(excelDataObject.S_dimwei, out decimalvalue))
                            {
                                shipmentDataRequest.DIM_WGT_DE = decimalvalue;
                            }
                        }

                        //shipmentDataRequest.DIM_WGT_DE = null; //Convert.ToDecimal(excelDataObject.S_dimwei);
                        shipmentDataRequest.DST_CTY_TE = excelDataObject.S_dstcity;
                        shipmentDataRequest.DST_PSL_TE = excelDataObject.S_dstpsl != null && excelDataObject.S_dstpsl.Contains('.') ? excelDataObject.S_dstpsl.Split('.')[0] : excelDataObject.S_dstpsl;
                        shipmentDataRequest.EXP_SLC_CD = excelDataObject.S_expslic;
                        shipmentDataRequest.EXP_TYP    = "顺丰即日";//excelDataObject.S_expslic;
                        shipmentDataRequest.IMP_NR     = excelDataObject.S_impr;
                        shipmentDataRequest.IMP_SLC_TE = excelDataObject.S_impslic;
                        shipmentDataRequest.IN_FLG_TE  = excelDataObject.S_inflight;
                        shipmentDataRequest.ORG_CTY_TE = excelDataObject.S_orgcity;

                        string pststring = Convert.ToString(excelDataObject.S_orgpsl);
                        if (InputValidations.IsDecimalFormat(pststring))
                        {
                            shipmentDataRequest.ORG_PSL_CD = Decimal.ToInt32(Decimal.Parse(pststring)).ToString();
                        }
                        else
                        {
                            shipmentDataRequest.ORG_PSL_CD = pststring;
                        }

                        // OU_FLG_TE = Convert.ToString(excelDataObject.S_outflight),

                        int intvalue = 0;
                        shipmentDataRequest.PCS_QTY_NR = 0;
                        if (!string.IsNullOrEmpty(excelDataObject.pcs))
                        {
                            if (int.TryParse(excelDataObject.pcs, out intvalue))
                            {
                                shipmentDataRequest.PCS_QTY_NR = intvalue;
                            }
                        }

                        //shipmentDataRequest.PCS_QTY_NR = null;//Convert.ToInt32(Convert.ToDouble(excelDataObject.pcs));
                        shipmentDataRequest.PH_NR      = excelDataObject.S_ph != null && excelDataObject.S_ph.Contains('.') ? excelDataObject.S_ph.Split('.')[0] : excelDataObject.S_ph;
                        shipmentDataRequest.PKG_NR_TE  = excelDataObject.S_packageno;
                        shipmentDataRequest.PKG_WGT_DE = Convert.ToDecimal(excelDataObject.S_pkgwei);
                        shipmentDataRequest.PK_UP_TM   = null;   //Convert.ToString(excelDataObject.S_pkuptime),
                        shipmentDataRequest.PYM_MTD    = "寄付月结"; //excelDataObject.pymt;
                        shipmentDataRequest.RCV_ADR_TE = excelDataObject.S_address1;
                        shipmentDataRequest.RCV_CPY_TE = excelDataObject.S_receivercompany;
                        shipmentDataRequest.SHP_ADR_TE = excelDataObject.address;

                        if (addressBookEnable.ToLower() == "true")
                        {
                            AddressBook translatedAddress =
                                addressBooks
                                ?.FirstOrDefault(
                                    (AddressBook address) =>
                                    address.ConsigneeAddress.Replace(" ", "").ToLower().Trim().Equals(
                                        excelDataObject.S_address1.Replace(" ", "").ToLower().Trim(), StringComparison.OrdinalIgnoreCase));

                            if (translatedAddress != null)
                            {
                                shipmentDataRequest.SHP_ADR_TR_TE = translatedAddress.ConsigneeTranslatedAddress;
                                shipmentDataRequest.SMT_STA_NR    = (int)Enums.ATStatus.Translated;
                                wfStatus = shipmentDataRequest.SMT_STA_NR;
                                shipmentDataRequest.SMT_STA_TE       = Convert.ToString(Enums.ATStatus.Translated);
                                shipmentDataRequest.CON_NR           = translatedAddress.Confidence;
                                shipmentDataRequest.ACY_TE           = translatedAddress.Accuracy;
                                shipmentDataRequest.TranslationScore = translatedAddress.TranslationScore;
                            }
                            else
                            {
                                shipmentDataRequest.SHP_ADR_TR_TE = string.Empty;
                                shipmentDataRequest.SMT_STA_NR    = (int)Enums.ATStatus.Uploaded;
                                shipmentDataRequest.SMT_STA_TE    = Convert.ToString(Enums.ATStatus.Uploaded);
                            }
                        }
                        else if (addressBookEnable.ToLower() == "false")
                        {
                            shipmentDataRequest.SHP_ADR_TR_TE = string.Empty;
                            shipmentDataRequest.SMT_STA_NR    = (int)Enums.ATStatus.Uploaded;
                            shipmentDataRequest.SMT_STA_TE    = Convert.ToString(Enums.ATStatus.Uploaded);
                        }

                        shipmentDataRequest.SHP_CPY_NA = excelDataObject.S_shippercompany;
                        shipmentDataRequest.SHP_CTC_TE = excelDataObject.S_shptctc;

                        DateTime dDate;
                        int intdate;
                        shipmentDataRequest.SHP_DT = null;
                        if (!string.IsNullOrEmpty(excelDataObject.S_shipdate))
                        {
                            if (int.TryParse(excelDataObject.S_shipdate, out intdate))
                            {
                                shipmentDataRequest.SHP_DT = null;
                            }
                            else if (DateTime.TryParse(excelDataObject.S_shipdate, out dDate))
                            {
                                shipmentDataRequest.SHP_DT = Convert.ToDateTime(excelDataObject.S_shipdate);
                            }
                        }
                        //if(!string.IsNullOrEmpty(excelDataObject.S_shipdate))
                        //{
                        //    if (DateTime.TryParse(excelDataObject.S_shipdate, out dDate))
                        //    {
                        //        shipmentDataRequest.SHP_DT = Convert.ToDateTime(excelDataObject.S_shipdate);
                        //    }
                        //}
                        shipmentDataRequest.SHP_DT    = null; //Convert.ToDateTime(excelDataObject.S_shipdate);
                        shipmentDataRequest.SHP_NR    = excelDataObject.S_shpr;
                        shipmentDataRequest.SHP_PH_TE = excelDataObject.S_shptph != null && excelDataObject.S_shptph.Contains('.') ? excelDataObject.S_shptph.Split('.')[0] : excelDataObject.S_shptph;
                        shipmentDataRequest.SMT_NR_TE = excelDataObject.S_shipmentno;

                        shipmentDataRequest.SMT_VAL_DE        = 0;
                        shipmentDataRequest.SMT_WGT_DE        = Convert.ToDecimal(excelDataObject.S_shptwei);
                        shipmentDataRequest.SVL_NR            = Convert.ToString(excelDataObject.svl);
                        shipmentDataRequest.WGT_UNT_TE        = excelDataObject.S_weiunit;
                        shipmentDataRequest.WFL_ID            = workflowID;
                        shipmentDataRequest.SF_TRA_LG_ID      = null;
                        shipmentDataRequest.QQS_TRA_LG_ID     = null;
                        shipmentDataRequest.FST_INV_LN_DES_TE = excelDataObject.S_1stinvoicelinedesc;
                        shipmentDataRequest.POD_RTN_SVC       = "0";

                        shipmentData.Add(shipmentDataRequest);
                    }
                }
            });
            workflowStatus = wfStatus;
            return(shipmentData);
        }
コード例 #18
0
 public void ValidateHourlyFee_For_InvalidHourlyFee_Throws_InvalidHourlyFee(double hourlyFee)
 {
     Assert.Throws <InvalidHourlyFee>(() => InputValidations.ValidateHourlyFee(hourlyFee));
 }
コード例 #19
0
 public void ValidateMonth_For_InvalidMonth_Throws_InvalidMonth(int monthNumber)
 {
     Assert.Throws <InvalidMonth>(() => InputValidations.ValidateMonth(monthNumber));
 }
コード例 #20
0
 public void ValidateWorkedHours_For_InvalidWorkedHours_Throws_InvalidWorkedHours(double workedHours)
 {
     Assert.Throws <InvalidWorkedHours>(() => InputValidations.ValidateWorkedHours(workedHours));
 }
コード例 #21
0
        //[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
        //[HttpPost]
        public ShipmentDataResponse CreateShipments(List <ExcelDataObject> excelDataObjects, int workflowID)
        {
            //int i = 0;
            ShipmentDataResponse shipmentDataResponse = new ShipmentDataResponse();

            try
            {
                List <ShipmentDataRequest> shipmentData = new List <ShipmentDataRequest>();
                foreach (ExcelDataObject excelDataObject in excelDataObjects)
                {
                    bool allPropertiesNull = !excelDataObject.GetType().GetProperties().Any(prop => prop == null);
                    if (allPropertiesNull)
                    {
                        ShipmentDataRequest shipmentDataRequest = new ShipmentDataRequest();

                        if (!string.IsNullOrWhiteSpace(excelDataObject.S_shipmentno))
                        {
                            shipmentDataRequest.BIL_TYP_TE = excelDataObject.S_billtype;
                            shipmentDataRequest.CCY_VAL_TE = string.Empty;
                            shipmentDataRequest.COD_TE     = string.Empty;
                            shipmentDataRequest.CSG_CTC_TE = excelDataObject.S_cneectc;

                            decimal decimalvalue = 0;
                            shipmentDataRequest.DIM_WGT_DE = 0;
                            if (!string.IsNullOrEmpty(excelDataObject.S_dimwei))
                            {
                                if (decimal.TryParse(excelDataObject.S_dimwei, out decimalvalue))
                                {
                                    shipmentDataRequest.DIM_WGT_DE = decimalvalue;
                                }
                            }

                            //shipmentDataRequest.DIM_WGT_DE = null; //Convert.ToDecimal(excelDataObject.S_dimwei);
                            shipmentDataRequest.DST_CTY_TE = excelDataObject.S_dstcity;
                            shipmentDataRequest.DST_PSL_TE = excelDataObject.S_dstpsl;
                            shipmentDataRequest.EXP_SLC_CD = excelDataObject.S_expslic;
                            shipmentDataRequest.EXP_TYP    = "顺丰即日";//excelDataObject.S_expslic;
                            shipmentDataRequest.IMP_NR     = excelDataObject.S_impr;
                            shipmentDataRequest.IMP_SLC_TE = excelDataObject.S_impslic;
                            shipmentDataRequest.IN_FLG_TE  = excelDataObject.S_inflight;
                            shipmentDataRequest.ORG_CTY_TE = excelDataObject.S_orgcity;

                            string pststring = Convert.ToString(excelDataObject.S_orgpsl);
                            if (InputValidations.IsDecimalFormat(pststring))
                            {
                                shipmentDataRequest.ORG_PSL_CD = Decimal.ToInt32(Decimal.Parse(pststring)).ToString();
                            }
                            else
                            {
                                shipmentDataRequest.ORG_PSL_CD = pststring;
                            }

                            // OU_FLG_TE = Convert.ToString(excelDataObject.S_outflight),

                            int intvalue = 0;
                            shipmentDataRequest.PCS_QTY_NR = 0;
                            if (!string.IsNullOrEmpty(excelDataObject.pcs))
                            {
                                if (int.TryParse(excelDataObject.pcs, out intvalue))
                                {
                                    shipmentDataRequest.PCS_QTY_NR = intvalue;
                                }
                            }

                            //shipmentDataRequest.PCS_QTY_NR = null;//Convert.ToInt32(Convert.ToDouble(excelDataObject.pcs));
                            shipmentDataRequest.PH_NR         = excelDataObject.S_ph;
                            shipmentDataRequest.PKG_NR_TE     = excelDataObject.S_packageno;
                            shipmentDataRequest.PKG_WGT_DE    = Convert.ToDecimal(excelDataObject.S_pkgwei);
                            shipmentDataRequest.PK_UP_TM      = null;   //Convert.ToString(excelDataObject.S_pkuptime),
                            shipmentDataRequest.PYM_MTD       = "寄付月结"; //excelDataObject.pymt;
                            shipmentDataRequest.RCV_ADR_TE    = excelDataObject.S_address1;
                            shipmentDataRequest.RCV_CPY_TE    = excelDataObject.S_receivercompany;
                            shipmentDataRequest.SHP_ADR_TE    = excelDataObject.address;
                            shipmentDataRequest.SHP_ADR_TR_TE = string.Empty;
                            shipmentDataRequest.SHP_CPY_NA    = excelDataObject.S_shippercompany;
                            shipmentDataRequest.SHP_CTC_TE    = excelDataObject.S_shptctc;

                            DateTime dDate;
                            int      intdate;
                            shipmentDataRequest.SHP_DT = null;
                            if (!string.IsNullOrEmpty(excelDataObject.S_shipdate))
                            {
                                if (int.TryParse(excelDataObject.S_shipdate, out intdate))
                                {
                                    shipmentDataRequest.SHP_DT = null;
                                }
                                else if (DateTime.TryParse(excelDataObject.S_shipdate, out dDate))
                                {
                                    shipmentDataRequest.SHP_DT = Convert.ToDateTime(excelDataObject.S_shipdate);
                                }
                            }
                            //if(!string.IsNullOrEmpty(excelDataObject.S_shipdate))
                            //{
                            //    if (DateTime.TryParse(excelDataObject.S_shipdate, out dDate))
                            //    {
                            //        shipmentDataRequest.SHP_DT = Convert.ToDateTime(excelDataObject.S_shipdate);
                            //    }
                            //}
                            shipmentDataRequest.SHP_DT            = null; //Convert.ToDateTime(excelDataObject.S_shipdate);
                            shipmentDataRequest.SHP_NR            = excelDataObject.S_shpr;
                            shipmentDataRequest.SHP_PH_TE         = excelDataObject.S_shptph;
                            shipmentDataRequest.SMT_NR_TE         = excelDataObject.S_shipmentno;
                            shipmentDataRequest.SMT_STA_NR        = 0;
                            shipmentDataRequest.SMT_STA_TE        = "Uploaded";
                            shipmentDataRequest.SMT_VAL_DE        = 0;
                            shipmentDataRequest.SMT_WGT_DE        = Convert.ToDecimal(excelDataObject.S_shptwei);
                            shipmentDataRequest.SVL_NR            = Convert.ToString(excelDataObject.svl);
                            shipmentDataRequest.WGT_UNT_TE        = excelDataObject.S_weiunit;
                            shipmentDataRequest.WFL_ID            = workflowID;
                            shipmentDataRequest.SF_TRA_LG_ID      = null;
                            shipmentDataRequest.QQS_TRA_LG_ID     = null;
                            shipmentDataRequest.FST_INV_LN_DES_TE = excelDataObject.S_1stinvoicelinedesc;
                            shipmentDataRequest.POD_RTN_SVC       = "0";

                            shipmentData.Add(shipmentDataRequest);
                        }
                    }
                }
                shipmentService              = new ShipmentService();
                shipmentDataResponse         = shipmentService.CreateShipments(shipmentData);
                shipmentDataResponse.Success = true;
                return(shipmentDataResponse);
            }
            catch (Exception exception)
            {
                shipmentDataResponse.OperationExceptionMsg = exception.Message;
                shipmentDataResponse.Success = true;
                AuditEventEntry.WriteEntry(new Exception(exception.Message));
            }
            return(shipmentDataResponse);
        }