WIP: updates, remove graphql (many things commented out)
This commit is contained in:
parent
38ff5b8e59
commit
d464897b8b
28 changed files with 6391 additions and 5166 deletions
|
@ -1,12 +1,12 @@
|
|||
import { Injectable } from '@angular/core'
|
||||
import { Router, Resolve, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router'
|
||||
import { Router, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router'
|
||||
import { Observable, forkJoin } from 'rxjs'
|
||||
import { map } from 'rxjs/operators'
|
||||
|
||||
import { AdminBasket, AdminBasketDataService } from './data.service'
|
||||
|
||||
@Injectable()
|
||||
export class BasketResolver implements Resolve<object> {
|
||||
export class BasketResolver {
|
||||
constructor(
|
||||
private router: Router,
|
||||
private basketDataService: AdminBasketDataService,
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import { Injectable } from '@angular/core'
|
||||
|
||||
import { Observable } from 'rxjs'
|
||||
import { Observable, of as observableOf } from 'rxjs'
|
||||
import { map } from 'rxjs/operators'
|
||||
|
||||
import { Apollo, gql } from 'apollo-angular'
|
||||
// import { Apollo, gql } from 'apollo-angular'
|
||||
|
||||
import { Project } from '../admin-data.service'
|
||||
|
||||
|
@ -53,171 +53,181 @@ export class AdminBasketUploadFieldData {
|
|||
) {}
|
||||
}
|
||||
|
||||
const getAdminBasketsQuery = gql`
|
||||
query admin_baskets {
|
||||
admin_baskets {
|
||||
name
|
||||
}
|
||||
}
|
||||
`
|
||||
// const getAdminBasketsQuery = gql`
|
||||
// query admin_baskets {
|
||||
// admin_baskets {
|
||||
// name
|
||||
// }
|
||||
// }
|
||||
// `
|
||||
|
||||
const getAdminBasketUploadFieldDataQuery = gql`
|
||||
query admin_basket_upload_field_data {
|
||||
admin_basket_upload_field_data {
|
||||
store
|
||||
status
|
||||
project
|
||||
surveyor
|
||||
equipment
|
||||
}
|
||||
}
|
||||
`
|
||||
// const getAdminBasketUploadFieldDataQuery = gql`
|
||||
// query admin_basket_upload_field_data {
|
||||
// admin_basket_upload_field_data {
|
||||
// store
|
||||
// status
|
||||
// project
|
||||
// surveyor
|
||||
// equipment
|
||||
// }
|
||||
// }
|
||||
// `
|
||||
|
||||
const getAdminBasketQuery = gql`
|
||||
query admin_basket ($name: String!) {
|
||||
admin_basket (name: $name) {
|
||||
name
|
||||
files {
|
||||
id
|
||||
name
|
||||
dir
|
||||
url
|
||||
md5
|
||||
time
|
||||
comment
|
||||
status
|
||||
store
|
||||
project
|
||||
surveyor
|
||||
equipment
|
||||
}
|
||||
columns
|
||||
uploadFields
|
||||
projects
|
||||
}
|
||||
}
|
||||
`
|
||||
// const getAdminBasketQuery = gql`
|
||||
// query admin_basket ($name: String!) {
|
||||
// admin_basket (name: $name) {
|
||||
// name
|
||||
// files {
|
||||
// id
|
||||
// name
|
||||
// dir
|
||||
// url
|
||||
// md5
|
||||
// time
|
||||
// comment
|
||||
// status
|
||||
// store
|
||||
// project
|
||||
// surveyor
|
||||
// equipment
|
||||
// }
|
||||
// columns
|
||||
// uploadFields
|
||||
// projects
|
||||
// }
|
||||
// }
|
||||
// `
|
||||
|
||||
const deleteAdminBasketItemMutation = gql`
|
||||
mutation deleteBasketItem ($basket: String!, $id: Int!) {
|
||||
deleteBasketItem (basket: $basket, id: $id) {
|
||||
result
|
||||
}
|
||||
}
|
||||
`
|
||||
// const deleteAdminBasketItemMutation = gql`
|
||||
// mutation deleteBasketItem ($basket: String!, $id: Int!) {
|
||||
// deleteBasketItem (basket: $basket, id: $id) {
|
||||
// result
|
||||
// }
|
||||
// }
|
||||
// `
|
||||
|
||||
const importAdminBasketItemMutation = gql`
|
||||
mutation importBasketItem ($basket: String!, $id: Int!, $dryRun: Boolean) {
|
||||
importBasketItem (basket: $basket, id: $id, dryRun: $dryRun) {
|
||||
result {
|
||||
message
|
||||
time
|
||||
details
|
||||
}
|
||||
}
|
||||
}
|
||||
`
|
||||
// const importAdminBasketItemMutation = gql`
|
||||
// mutation importBasketItem ($basket: String!, $id: Int!, $dryRun: Boolean) {
|
||||
// importBasketItem (basket: $basket, id: $id, dryRun: $dryRun) {
|
||||
// result {
|
||||
// message
|
||||
// time
|
||||
// details
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// `
|
||||
|
||||
@Injectable()
|
||||
export class AdminBasketDataService {
|
||||
constructor(
|
||||
private apollo: Apollo,
|
||||
// private apollo: Apollo,
|
||||
) {}
|
||||
|
||||
getBaskets(): Observable<AdminBasket[]> {
|
||||
// Get the list a basket names
|
||||
return this.apollo.query({
|
||||
query: getAdminBasketsQuery,
|
||||
}).pipe(map(
|
||||
res => res['data']['admin_baskets'].map(
|
||||
(data: object) => new AdminBasket(
|
||||
data['name'],
|
||||
)
|
||||
)
|
||||
))
|
||||
console.warn('Migrate Graphql')
|
||||
return observableOf()
|
||||
// return this.apollo.query({
|
||||
// query: getAdminBasketsQuery,
|
||||
// }).pipe(map(
|
||||
// res => res['data']['admin_baskets'].map(
|
||||
// (data: object) => new AdminBasket(
|
||||
// data['name'],
|
||||
// )
|
||||
// )
|
||||
// ))
|
||||
}
|
||||
|
||||
getBasketUploadFieldData(): Observable<AdminBasketUploadFieldData> {
|
||||
// Get the list a basket names
|
||||
return this.apollo.query({
|
||||
query: getAdminBasketUploadFieldDataQuery,
|
||||
}).pipe(map(
|
||||
res => res['data']['admin_basket_upload_field_data'].map(
|
||||
(data: object) => new AdminBasketUploadFieldData(
|
||||
data['store'],
|
||||
data['status'],
|
||||
data['project'],
|
||||
data['surveyor'],
|
||||
data['equipment'],
|
||||
)
|
||||
)
|
||||
))
|
||||
console.warn('Migrate Graphql')
|
||||
return observableOf()
|
||||
// return this.apollo.query({
|
||||
// query: getAdminBasketUploadFieldDataQuery,
|
||||
// }).pipe(map(
|
||||
// res => res['data']['admin_basket_upload_field_data'].map(
|
||||
// (data: object) => new AdminBasketUploadFieldData(
|
||||
// data['store'],
|
||||
// data['status'],
|
||||
// data['project'],
|
||||
// data['surveyor'],
|
||||
// data['equipment'],
|
||||
// )
|
||||
// )
|
||||
// ))
|
||||
}
|
||||
|
||||
getBasket(name: string): Observable<AdminBasket> {
|
||||
// Get all info and content of a basket
|
||||
return this.apollo.query({
|
||||
query: getAdminBasketQuery,
|
||||
variables: {
|
||||
name: name
|
||||
}
|
||||
}).pipe(map(
|
||||
res => {
|
||||
let data = res['data']['admin_basket']
|
||||
return new AdminBasket(
|
||||
data['name'],
|
||||
data['files'].map(file => new AdminBasketFile(
|
||||
file['id'],
|
||||
file['dir'],
|
||||
file['name'],
|
||||
file['url'],
|
||||
file['md5'],
|
||||
new Date(file['time']),
|
||||
file['comment'],
|
||||
file['status'],
|
||||
file['store'],
|
||||
file['project'],
|
||||
file['surveyor'],
|
||||
file['equipment'],
|
||||
)),
|
||||
data['columns'],
|
||||
data['uploadFields'],
|
||||
// XXX: the proejct id isn't actually used in the UI,
|
||||
// but required in class definition
|
||||
data['projects'] && data['projects'].map(
|
||||
(projectName: string) => new Project(undefined, projectName)
|
||||
),
|
||||
)
|
||||
}
|
||||
))
|
||||
console.warn('Migrate Graphql')
|
||||
return observableOf()
|
||||
// return this.apollo.query({
|
||||
// query: getAdminBasketQuery,
|
||||
// variables: {
|
||||
// name: name
|
||||
// }
|
||||
// }).pipe(map(
|
||||
// res => {
|
||||
// let data = res['data']['admin_basket']
|
||||
// return new AdminBasket(
|
||||
// data['name'],
|
||||
// data['files'].map(file => new AdminBasketFile(
|
||||
// file['id'],
|
||||
// file['dir'],
|
||||
// file['name'],
|
||||
// file['url'],
|
||||
// file['md5'],
|
||||
// new Date(file['time']),
|
||||
// file['comment'],
|
||||
// file['status'],
|
||||
// file['store'],
|
||||
// file['project'],
|
||||
// file['surveyor'],
|
||||
// file['equipment'],
|
||||
// )),
|
||||
// data['columns'],
|
||||
// data['uploadFields'],
|
||||
// // XXX: the proejct id isn't actually used in the UI,
|
||||
// // but required in class definition
|
||||
// data['projects'] && data['projects'].map(
|
||||
// (projectName: string) => new Project(undefined, projectName)
|
||||
// ),
|
||||
// )
|
||||
// }
|
||||
// ))
|
||||
}
|
||||
|
||||
importItem(basket: string, id: number, dryRun: boolean=false): Observable<BasketImportResult> {
|
||||
return this.apollo.mutate({
|
||||
mutation: importAdminBasketItemMutation,
|
||||
variables: {
|
||||
basket: basket,
|
||||
id: id,
|
||||
dryRun: dryRun
|
||||
}
|
||||
}).pipe(map(
|
||||
resp => new BasketImportResult(
|
||||
resp['data']['importBasketItem']['result']['time'],
|
||||
resp['data']['importBasketItem']['result']['message'],
|
||||
JSON.parse(resp['data']['importBasketItem']['result']['details']),
|
||||
)
|
||||
))
|
||||
console.warn('Migrate Graphql')
|
||||
return observableOf()
|
||||
// return this.apollo.mutate({
|
||||
// mutation: importAdminBasketItemMutation,
|
||||
// variables: {
|
||||
// basket: basket,
|
||||
// id: id,
|
||||
// dryRun: dryRun
|
||||
// }
|
||||
// }).pipe(map(
|
||||
// resp => new BasketImportResult(
|
||||
// resp['data']['importBasketItem']['result']['time'],
|
||||
// resp['data']['importBasketItem']['result']['message'],
|
||||
// JSON.parse(resp['data']['importBasketItem']['result']['details']),
|
||||
// )
|
||||
// ))
|
||||
}
|
||||
|
||||
deleteItem(basket: string, id: number) {
|
||||
return this.apollo.mutate({
|
||||
mutation: deleteAdminBasketItemMutation,
|
||||
variables: {
|
||||
basket: basket,
|
||||
id: id,
|
||||
}
|
||||
}).pipe(map(
|
||||
resp => resp['data']['deleteBasketItem']['result']
|
||||
))
|
||||
console.warn('Migrate Graphql')
|
||||
return observableOf()
|
||||
// return this.apollo.mutate({
|
||||
// mutation: deleteAdminBasketItemMutation,
|
||||
// variables: {
|
||||
// basket: basket,
|
||||
// id: id,
|
||||
// }
|
||||
// }).pipe(map(
|
||||
// resp => resp['data']['deleteBasketItem']['result']
|
||||
// ))
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue