Esempio n. 1
0
        internal async Task <JsonResult> PartyList(ReturnGatePass returnGatePass)
        {
            SqlConnection cn = null;

            try
            {
                cn = Connection.GetConnection();
                SqlCommand smd = new SqlCommand("SET @jsonOutput  = (SELECT rp.party_no, rp.party_name as [name] FROM dbo.rgp_party rp FOR JSON PATH)", cn);
                smd.Parameters.Add("@jsonOutput", SqlDbType.NVarChar, -1).Direction = ParameterDirection.Output;
                await smd.ExecuteNonQueryAsync().ConfigureAwait(false);

                string json = smd.Parameters["@jsonOutput"].Value.ToString();
                smd.Dispose();
                if (json.Length > 2)
                {
                    JArray arr = JArray.Parse(json);
                    return(new JsonResult(arr));
                }
                else
                {
                    return(await SendRespose("False", "No Record Found").ConfigureAwait(true));
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Connection.CloseConnection(ref cn);
            }
        }
Esempio n. 2
0
        internal async Task <JsonResult> RGPList(ReturnGatePass returnGatePass)
        {
            SqlConnection cn = null;

            try
            {
                cn = Connection.GetConnection();
                SqlCommand smd = new SqlCommand("SET @jsonOutput = (SELECT 'True' as [condition], gph.document_no, (SELECT rp.party_name FROM dbo.rgp_party rp WHERE rp.party_no = gph.party_id) party_name," +
                                                " sm.name AS order_status, gph.created_date, gph.created_by FROM dbo.gate_pass_header gph INNER JOIN dbo.status_mst sm ON gph.order_status = sm.id " +
                                                "WHERE gph.document_type = 'Return GatePass' AND gph.from_location_id = @location_id for json path)", cn);
                smd.Parameters.AddWithValue("@location_id", returnGatePass.LocationId);
                smd.Parameters.Add("@jsonOutput", SqlDbType.NVarChar, -1).Direction = ParameterDirection.Output;
                await smd.ExecuteNonQueryAsync().ConfigureAwait(false);

                string json = smd.Parameters["@jsonOutput"].Value.ToString();
                smd.Dispose();
                if (json.Length > 2)
                {
                    JArray arr = JArray.Parse(json);
                    return(new JsonResult(arr));
                }
                else
                {
                    return(await SendRespose("False", "No Record Found").ConfigureAwait(true));
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Connection.CloseConnection(ref cn);
            }
        }
Esempio n. 3
0
        internal async Task <JArray> AddItem(ReturnGatePass returnGatePass)
        {
            SqlConnection cn = null;

            try
            {
                cn = Connection.GetConnection();
                SqlCommand smd = new SqlCommand("sale_order_add_new_item", cn)
                {
                    CommandType = CommandType.StoredProcedure
                };

                smd.Parameters.Add("@jsonOutput", SqlDbType.NVarChar, -1).Direction = ParameterDirection.Output;
                smd.Parameters.AddWithValue("@item_no", returnGatePass.ItemNo);
                // Execute the command
                await smd.ExecuteNonQueryAsync().ConfigureAwait(false);

                // Get the values
                string json = smd.Parameters["@jsonOutput"].Value.ToString();
                smd.Dispose();

                JArray arr = JArray.Parse(json);

                return(arr);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Connection.CloseConnection(ref cn);
            }
        }
Esempio n. 4
0
 public async Task <JsonResult> NewRGPNo([FromBody] ReturnGatePass returnGatePass)
 {
     try
     {
         return(await _returngatepassLogic.NewRGPNo(returnGatePass).ConfigureAwait(false));
     }
     catch (Exception ee)
     {
         return(await _returngatepassLogic.SendRespose("False", ee.Message).ConfigureAwait(false));
     }
 }
Esempio n. 5
0
        internal async Task <JsonResult> NewRGPNo(ReturnGatePass returnGatePass)
        {
            SqlConnection cn = null;

            try
            {
                cn = Connection.GetConnection();
                SqlCommand smd = new SqlCommand("SELECT CONCAT( dp.prefix , NEXT VALUE FOR dbo.seq_rgp_no) FROM dbo.document_perfix dp WHERE dp.type = 'ReturnGatePass'", cn);
                string     num = (string)await smd.ExecuteScalarAsync().ConfigureAwait(false);

                return(await SendRespose("True", num).ConfigureAwait(true));
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Connection.CloseConnection(ref cn);
            }
        }
Esempio n. 6
0
        public async Task <JsonResult> AddItem([FromBody] ReturnGatePass returnGatePass)
        {
            try
            {
                try
                {
                    if (string.IsNullOrEmpty(returnGatePass.ItemNo))
                    {
                        return(await _returngatepassLogic.SendRespose("False", "Blank Item No").ConfigureAwait(false));
                    }
                    JArray item_info = await _returngatepassLogic.AddItem(returnGatePass).ConfigureAwait(false);

                    JObject jo = item_info.Children <JObject>().FirstOrDefault(o => o["condition"] != null);
                    if (jo.Value <string>("condition") == "True")
                    {
                        decimal cost_per_unit, gst_percentage;
                        cost_per_unit  = jo.Value <decimal>("cost_per_unit");
                        gst_percentage = jo.Value <decimal>("gst_percentage");
                        jo.Add(new JProperty("quantity", returnGatePass.Quantity));
                        jo.Add(new JProperty("amount_without_tax", decimal.Round((cost_per_unit * returnGatePass.Quantity), 2)));
                        jo.Add(new JProperty("gst_amount", decimal.Round((jo.Value <decimal>("amount_without_tax") * gst_percentage) / 100, 2)));
                        jo.Add(new JProperty("amount_with_tax", decimal.Round(jo.Value <decimal>("amount_without_tax") + jo.Value <decimal>("gst_amount"), 2)));
                        JArray response = new JArray(jo);
                        return(new JsonResult(response));
                    }
                    else
                    {
                        return(new JsonResult(item_info));
                    }
                }
                catch (Exception ee)
                {
                    return(await _returngatepassLogic.SendRespose("False", ee.Message).ConfigureAwait(false));
                }
            }
            catch (Exception ee)
            {
                return(await _returngatepassLogic.SendRespose("False", ee.Message).ConfigureAwait(false));
            }
        }