|
@@ -0,0 +1,145 @@
|
|
|
+const getGQL = url =>
|
|
|
+ (query, variables) =>
|
|
|
+ fetch(url, {
|
|
|
+ method: 'POST',
|
|
|
+ headers: {
|
|
|
+ "content-type": "application/json",
|
|
|
+ ...(localStorage.authToken ? {Authorization: "Bearer " + localStorage.authToken} : {})
|
|
|
+ },
|
|
|
+ body: JSON.stringify({query, variables})
|
|
|
+ }).then(res => res.json())
|
|
|
+
|
|
|
+ let gql = getGQL("http://shop-roles.asmer.fs.a-level.com.ua/graphql")
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ let reg = async(login,password) => {
|
|
|
+ let query = `mutation reg($l:String , $p:String) {
|
|
|
+ UserUpsert(user:{
|
|
|
+ login:$l ,
|
|
|
+ password:$p
|
|
|
+ }){
|
|
|
+ _id
|
|
|
+ }
|
|
|
+ }`
|
|
|
+
|
|
|
+ let qVariables = {
|
|
|
+ "l": login,
|
|
|
+ "p": password
|
|
|
+ }
|
|
|
+ let result = await gql(query,qVariables)
|
|
|
+ return result
|
|
|
+ }
|
|
|
+
|
|
|
+ reg ('v3rtex' , 'senior')
|
|
|
+
|
|
|
+ let log = async(login , password) => {
|
|
|
+ let query = ` query log($l:String , $p:String){
|
|
|
+ login(login:$l, password:$p)
|
|
|
+ }`
|
|
|
+ let qVariables = {
|
|
|
+ "l": login,
|
|
|
+ "p": password
|
|
|
+ }
|
|
|
+ let token = await gql(query,qVariables)
|
|
|
+ console.log(token)
|
|
|
+ localStorage.authToken = token.data.login
|
|
|
+ }
|
|
|
+
|
|
|
+ log('v3rtex' , 'senior')
|
|
|
+
|
|
|
+ let newOrder = async(obj) => {
|
|
|
+ let option = Object.entries(obj)
|
|
|
+ let orderGoods = []
|
|
|
+ for (let key of option) {
|
|
|
+ let iteration = {
|
|
|
+ "count": key[1],
|
|
|
+ "good":{"_id":key[0]}
|
|
|
+ }
|
|
|
+ orderGoods.push(iteration)
|
|
|
+ }
|
|
|
+ let query = `mutation newOrder($order:OrderInput) {
|
|
|
+ OrderUpsert(order:$order){
|
|
|
+ _id
|
|
|
+ }
|
|
|
+ }`
|
|
|
+
|
|
|
+ let qVariables = {
|
|
|
+ "order": {
|
|
|
+ "orderGoods": orderGoods}
|
|
|
+ }
|
|
|
+ let result = await gql(query,qVariables)
|
|
|
+ console.log(result)
|
|
|
+ return result
|
|
|
+ }
|
|
|
+
|
|
|
+ newOrder({ "5dc45d0b5df9d670df48cc4b":10})
|
|
|
+
|
|
|
+ let allOrders = async() => {
|
|
|
+ let res = await gql (`query orders {
|
|
|
+ OrderFind(query:"[{}]"){
|
|
|
+ _id total
|
|
|
+ orderGoods{
|
|
|
+ good{
|
|
|
+ name
|
|
|
+ }
|
|
|
+ price
|
|
|
+ count
|
|
|
+ total
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }`)
|
|
|
+ console.log(res)
|
|
|
+ return res
|
|
|
+ }
|
|
|
+
|
|
|
+ allOrders()
|
|
|
+
|
|
|
+ let orderById = async(id) => {
|
|
|
+ let query = `query orderID {
|
|
|
+ OrderGoodFindOne(query:"[{}]"){
|
|
|
+ _id
|
|
|
+ good{
|
|
|
+ _id
|
|
|
+ name
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }`
|
|
|
+
|
|
|
+ let qVariables = {id}
|
|
|
+
|
|
|
+ let res = await gql(query,qVariables)
|
|
|
+ console.log(res)
|
|
|
+ return res
|
|
|
+ }
|
|
|
+
|
|
|
+ orderById("611f904bc456ed5e4d9d682b")
|
|
|
+
|
|
|
+ async function goodFind() {
|
|
|
+ await gql(`query {
|
|
|
+ GoodFind(query: "[{}]"){
|
|
|
+ _id
|
|
|
+ name
|
|
|
+ price
|
|
|
+ images{
|
|
|
+ url
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }`
|
|
|
+ )}
|
|
|
+
|
|
|
+ goodFind()
|
|
|
+
|
|
|
+ async function categoryFind() {
|
|
|
+ await gql(`query {
|
|
|
+ CategoryFind(query: "[{}]"){
|
|
|
+ _id
|
|
|
+ name
|
|
|
+ goods {
|
|
|
+ _id name
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }`).then(result => console.log(result))
|
|
|
+ }
|
|
|
+
|
|
|
+ categoryFind()
|