Files
bodyshop-uploader/BodyshopUploader/Utils/Queries/JobsQueries.cs
2020-02-12 15:55:40 -08:00

51 lines
1.3 KiB
C#

using GraphQL.Common.Request;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BodyshopUploader.Utils.Queries
{
class JobsQueries
{
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
public static async Task<bool> GetJobUuidByClmNo(string ClmNo)
{
if (string.IsNullOrEmpty(ClmNo))
return false;
var r = new GraphQLRequest
{
Query = @"query QUERY_JOB_BY_CLM_NO($clm_no: String!) {
jobs(where: {clm_no: {_eq: $clm_no}}) {
id
}
}",
Variables = new
{
clm_no = ClmNo
}
};
try
{
var d = await Utils.GraphQL.ExecuteQuery(r);
return d.jobs?.Count > 0;
}
catch (ArgumentOutOfRangeException Ex)
{
logger.Trace(Ex, "No jobs returned in GQL query.");
return false;
}
catch (Exception Ex)
{
logger.Error(Ex, "Querying for jobs by clm_no failed.");
return false;
}
}
}
}