Ejemplo n.º 1
0
        }        //Mult

        public static string Div(List <string> data)
        {
            string             responseFinal         = null;
            string             responseServer        = "";
            DivDividendDivisor objDivDividendDivisor = new DivDividendDivisor(Convert.ToString(data[0]), Convert.ToString(data[1]));

            responseServer = MakeRequest(JsonConvert.SerializeObject(objDivDividendDivisor));

            var objFinalDiv = JsonConvert.DeserializeObject <DivQuotientRemainder>(responseServer);

            if (objFinalDiv.Quotient == null && objFinalDiv.Remainder == null)
            {
                Error ErrorDiv = JsonConvert.DeserializeObject <Error>(responseServer);
                responseFinal = ErrorDiv.ErrorMessage;
            }
            else
            {
                responseFinal = "Cociente: " + objFinalDiv.Quotient + " Resto: " + objFinalDiv.Remainder;
            }
            return(responseFinal);
        }        //Div
Ejemplo n.º 2
0
        [HttpPost] //CLOSED
        public string Div(DivDividendDivisor NumbersForDiv)
        {
            try {
                string stringOperationLog = "";
                string idApp = GetIdTracking(Request.Headers["X-Evi-Tracking-Id"]);
                if (NumbersForDiv == null || NumbersForDiv.Dividend == null && NumbersForDiv.Divisor == null)
                {
                    Error objectFinalError = new Error();
                    objectFinalError.Error400();
                    logger.Trace("ERROR DIV -> ID : " + idApp + " MENSAJE : OPERADORES NULOS.");
                    return(JsonConvert.SerializeObject(objectFinalError));
                }

                double numD;
                if (!double.TryParse(NumbersForDiv.Dividend, out numD) || !double.TryParse(NumbersForDiv.Divisor, out numD))
                {
                    Error objectFinalError = new Error();
                    objectFinalError.Error400();
                    logger.Trace("ERROR DIV -> ID : " + idApp + " MENSAJE : OPERADORES INVALIDOS.");
                    return(JsonConvert.SerializeObject(objectFinalError));
                }

                if (Convert.ToDouble(NumbersForDiv.Dividend) == 0)
                {
                    Error objectFinalError = new Error();
                    objectFinalError.Error400();
                    logger.Trace("ERROR DIV -> ID : " + idApp + " MENSAJE : NO SE PUEDE DIVIDIR ENTRE 0.");
                    objectFinalError.ErrorMessage = "Cannot be divided by 0";
                    return(JsonConvert.SerializeObject(objectFinalError));
                }

                if (Convert.ToDouble(NumbersForDiv.Divisor) == 0)
                {
                    Error objectFinalError = new Error();
                    objectFinalError.Error400();
                    logger.Trace("ERROR DIV -> ID : " + idApp + " MENSAJE : NO SE PUEDE DIVIDIR ENTRE 0.");
                    objectFinalError.ErrorMessage = "Cannot be divided by 0";
                    return(JsonConvert.SerializeObject(objectFinalError));
                }

                if (NumbersForDiv.Dividend.Contains(","))
                {
                    string[] arr    = NumbersForDiv.Dividend.Split(',');
                    string   numAux = string.Join(".", arr);
                    NumbersForDiv.Dividend = numAux;
                }

                if (NumbersForDiv.Divisor.Contains(","))
                {
                    string[] arr    = NumbersForDiv.Divisor.Split(',');
                    string   numAux = string.Join(".", arr);
                    NumbersForDiv.Divisor = numAux;
                }

                double Quotient  = Convert.ToDouble(NumbersForDiv.Dividend) / Convert.ToDouble(NumbersForDiv.Divisor);
                double Remainder = Convert.ToDouble(NumbersForDiv.Dividend) % Convert.ToDouble(NumbersForDiv.Divisor);

                DivQuotientRemainder responseDiv = new DivQuotientRemainder(Convert.ToString(Quotient), Convert.ToString(Remainder));
                stringOperationLog = NumbersForDiv.Dividend + " / " + NumbersForDiv.Divisor + " = Quotient(" + Convert.ToString(Quotient) + ") & Remainder(" + Convert.ToString(Remainder) + ")";

                if (idApp != "NULL")
                {
                    string  calculation   = NumbersForDiv.Dividend + " / " + NumbersForDiv.Divisor + " = Quotient(" + responseDiv.Quotient + ") & Remainder(" + responseDiv.Remainder + ")";
                    Query   Operation     = new Query("Div ", calculation);
                    string  jsonOperation = JsonConvert.SerializeObject(Operation);
                    Journal journal       = new Journal(Request.Headers["X-Evi-Tracking-Id"]);
                    journal.SaveJournal(jsonOperation);
                    stringOperationLog = "DIV  -> ID : " + idApp + "  OPERATION :" + stringOperationLog;
                }
                else
                {
                    stringOperationLog = "DIV  -> ID : " + idApp + "  OPERATION :" + stringOperationLog;
                }
                logger.Trace(stringOperationLog);
                return(JsonConvert.SerializeObject(responseDiv));
            }
            catch (Exception ex) {
                Error objectFinalError = new Error();
                objectFinalError.Error500(ex.StackTrace);
                return(JsonConvert.SerializeObject(objectFinalError));
            }
        }          //Div