mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Change api requests in publisher
This commit is contained in:
parent
e67feefee5
commit
ebc72069f9
@ -21,13 +21,14 @@
|
||||
"react-d3-graph": "^2.0.2",
|
||||
"react-dom": "^16.8.4",
|
||||
"react-highlight-words": "^0.16.0",
|
||||
"react-infinite-scroller": "^1.2.4",
|
||||
"react-router": "latest",
|
||||
"react-router-config": "^5.0.0",
|
||||
"react-router-dom": "latest",
|
||||
"react-scripts": "2.1.8",
|
||||
"react-star-ratings": "^2.3.0",
|
||||
"redux-thunk": "^2.3.0",
|
||||
"storm-react-diagrams": "^5.2.1",
|
||||
"react-star-ratings": "^2.3.0"
|
||||
"storm-react-diagrams": "^5.2.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.0.0",
|
||||
|
||||
@ -7,7 +7,12 @@
|
||||
"protocol": "https",
|
||||
"hostname": "localhost",
|
||||
"httpsPort": "9443",
|
||||
"invokerUri": "/ui-request-handler/invoke/application-mgt-publisher/v1.0",
|
||||
"invoker": {
|
||||
"uri": "/ui-request-handler/invoke",
|
||||
"publisher": "/application-mgt-publisher/v1.0",
|
||||
"store": "/application-mgt-store/v1.0",
|
||||
"admin" : ""
|
||||
},
|
||||
"loginUri": "/ui-request-handler/login",
|
||||
"platform": "publisher"
|
||||
},
|
||||
|
||||
@ -18,25 +18,27 @@ class DetailedRating extends React.Component{
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
this.getData(this.props.uuid);
|
||||
const {type,uuid} = this.props;
|
||||
this.getData(type,uuid);
|
||||
}
|
||||
|
||||
componentDidUpdate(prevProps, prevState) {
|
||||
if (prevProps.uuid !== this.props.uuid) {
|
||||
this.getData(this.props.uuid);
|
||||
const {type,uuid} = this.props;
|
||||
this.getData(type,uuid);
|
||||
}
|
||||
}
|
||||
|
||||
getData = (uuid)=>{
|
||||
const request = "method=get&content-type=application/json&payload={}&api-endpoint=/application-mgt-store/v1.0/reviews/"+uuid+"/rating";
|
||||
getData = (type, uuid)=>{
|
||||
|
||||
return axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/reviews/"+uuid+"/rating",
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.store+"/reviews/"+uuid+"/"+type+"-rating",
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
}).then(res => {
|
||||
if (res.status === 200) {
|
||||
let detailedRating = res.data.data;
|
||||
console.log(type,uuid);
|
||||
this.setState({
|
||||
detailedRating
|
||||
})
|
||||
@ -46,6 +48,8 @@ class DetailedRating extends React.Component{
|
||||
if (error.response.status === 401) {
|
||||
window.location.href = config.serverConfig.protocol + "://" + config.serverConfig.hostname + ':' + config.serverConfig.httpsPort+'/publisher/login';
|
||||
}
|
||||
|
||||
console.log(error);
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
@ -85,7 +85,7 @@ class AppDetailsDrawer extends React.Component {
|
||||
/>
|
||||
<Divider dashed={true}/>
|
||||
|
||||
<DetailedRating uuid={app.applicationReleases[0].uuid}/>
|
||||
<DetailedRating type="app" uuid={app.applicationReleases[0].uuid}/>
|
||||
</Drawer>
|
||||
</div>
|
||||
);
|
||||
|
||||
@ -113,9 +113,9 @@ class AppsTable extends React.Component {
|
||||
const data = {
|
||||
};
|
||||
|
||||
console.log(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications?"+encodedExtraParams);
|
||||
console.log(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications?"+encodedExtraParams);
|
||||
axios.post(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications?"+encodedExtraParams,
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications?"+encodedExtraParams,
|
||||
data,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
|
||||
@ -1,13 +1,20 @@
|
||||
import React from "react";
|
||||
import {Divider, Row, Col, Typography, Button} from "antd";
|
||||
import {Divider, Row, Col, Typography, Button, Drawer} from "antd";
|
||||
import StarRatings from "react-star-ratings";
|
||||
import Reviews from "./review/Reviews";
|
||||
import "../../../App.css";
|
||||
import config from "../../../../public/conf/config.json";
|
||||
import DetailedRating from "../detailed-rating/DetailedRating";
|
||||
|
||||
const {Title, Text, Paragraph} = Typography;
|
||||
|
||||
class ReleaseView extends React.Component {
|
||||
render() {
|
||||
const release = this.props.release;
|
||||
const app = this.props.app;
|
||||
const release = (app !== null) ? app.applicationReleases[0] : null;
|
||||
if(release == null){
|
||||
return null;
|
||||
}
|
||||
return (
|
||||
<div>
|
||||
<div className="release">
|
||||
@ -16,8 +23,16 @@ class ReleaseView extends React.Component {
|
||||
<img src={release.iconPath} alt="icon"/>
|
||||
</Col>
|
||||
<Col xl={10} sm={11} className="release-title">
|
||||
<Title level={2}>App Name</Title>
|
||||
<Text>{release.version}</Text><br/>
|
||||
<Title level={2}>{app.name}</Title>
|
||||
<Text>Version : {release.version}</Text><br/><br/>
|
||||
<StarRatings
|
||||
rating={release.rating}
|
||||
starRatedColor="#777"
|
||||
starDimension="20px"
|
||||
starSpacing="2px"
|
||||
numberOfStars={5}
|
||||
name='rating'
|
||||
/>
|
||||
</Col>
|
||||
<Col xl={8} md={10} sm={24} xs={24} style={{float: "right"}}>
|
||||
<div>
|
||||
@ -28,7 +43,7 @@ class ReleaseView extends React.Component {
|
||||
icon="shop"
|
||||
disabled={release.currentStatus !== "PUBLISHED"}
|
||||
onClick={() => {
|
||||
window.open("https://"+ config.serverConfig.hostname + ':' + config.serverConfig.httpsPort+"/store/apps/"+release.uuid)
|
||||
window.open("https://"+ config.serverConfig.hostname + ':' + config.serverConfig.httpsPort+"/store/"+app.deviceType+"/apps/"+release.uuid)
|
||||
}}>
|
||||
Open in store
|
||||
</Button>
|
||||
@ -50,6 +65,14 @@ class ReleaseView extends React.Component {
|
||||
<Paragraph type="secondary" ellipsis={{rows: 3, expandable: true}}>
|
||||
{release.description}
|
||||
</Paragraph>
|
||||
<Divider/>
|
||||
<Text>REVIEWS</Text>
|
||||
<Row>
|
||||
<Col lg={18}>
|
||||
<DetailedRating type="release" uuid={release.uuid}/>
|
||||
</Col>
|
||||
</Row>
|
||||
<Reviews uuid={release.uuid}/>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
.demo-infinite-container {
|
||||
overflow: auto;
|
||||
padding: 8px 24px;
|
||||
}
|
||||
.demo-loading-container {
|
||||
position: absolute;
|
||||
bottom: 40px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.demo-loading {
|
||||
position: absolute;
|
||||
bottom: -40px;
|
||||
left: 50%;
|
||||
}
|
||||
@ -0,0 +1,134 @@
|
||||
import React from "react";
|
||||
import {List, message, Avatar, Spin, Button} from 'antd';
|
||||
import "./Reviews.css";
|
||||
|
||||
import InfiniteScroll from 'react-infinite-scroller';
|
||||
import SingleReview from "./SingleReview";
|
||||
import axios from "axios";
|
||||
import config from "../../../../../public/conf/config.json";
|
||||
|
||||
const limit = 5;
|
||||
|
||||
class Reviews extends React.Component {
|
||||
state = {
|
||||
data: [],
|
||||
loading: false,
|
||||
hasMore: false,
|
||||
loadMore: false
|
||||
};
|
||||
|
||||
|
||||
componentDidMount() {
|
||||
this.fetchData(0, limit, res => {
|
||||
this.setState({
|
||||
data: res,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
fetchData = (offset, limit, callback) => {
|
||||
|
||||
const {uuid} = this.props;
|
||||
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.store+"/reviews/app/"+uuid,
|
||||
{
|
||||
headers: {'X-Platform': config.serverConfig.platform}
|
||||
}).then(res => {
|
||||
if (res.status === 200) {
|
||||
let reviews = res.data.data.data;
|
||||
callback(reviews);
|
||||
}
|
||||
|
||||
}).catch(function (error) {
|
||||
if (error.response.status === 401) {
|
||||
window.location.href = config.serverConfig.protocol + "://" + config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + '/store/login';
|
||||
} else {
|
||||
message.warning('Something went wrong');
|
||||
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
handleInfiniteOnLoad = (count) => {
|
||||
const offset = count * limit;
|
||||
let data = this.state.data;
|
||||
this.setState({
|
||||
loading: true,
|
||||
});
|
||||
if (data.length > 149) {
|
||||
this.setState({
|
||||
hasMore: false,
|
||||
loading: false,
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.fetchData(offset, limit, res => {
|
||||
if (res.length > 0) {
|
||||
data = data.concat(res);
|
||||
this.setState({
|
||||
data,
|
||||
loading: false,
|
||||
});
|
||||
} else {
|
||||
this.setState({
|
||||
hasMore: false,
|
||||
loading: false
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
enableLoading = () => {
|
||||
this.setState({
|
||||
hasMore: true,
|
||||
loadMore: true
|
||||
});
|
||||
};
|
||||
|
||||
render() {
|
||||
const review = {
|
||||
id: 2,
|
||||
content: "Btw, it was clear to me that I can cancel the 1 year subscription before the free trial week and so I did. Dont understand the negative reviews about that. It has a good collection of excercises, meditations etc. You just answer 5 questions and you get challenges assigned to you. I would have liked something even more personalized. I didnt like the interface. It is a bit messy and difficult to follow your tasks. So, I didnt want to do a full-year subscription. There could be more options.",
|
||||
rootParentI: -1,
|
||||
immediateParentId: -1,
|
||||
createdAt: "Fri, 24 May 2019 17:27:22 IST",
|
||||
modifiedAt: "Fri, 24 May 2019 17:27:22 IST",
|
||||
rating: 4,
|
||||
replies: []
|
||||
};
|
||||
// console.log(this.state.loadMore);
|
||||
// console.log(this.state.data.length);
|
||||
return (
|
||||
<div className="demo-infinite-container">
|
||||
<InfiniteScroll
|
||||
initialLoad={false}
|
||||
pageStart={0}
|
||||
loadMore={this.handleInfiniteOnLoad}
|
||||
hasMore={!this.state.loading && this.state.hasMore}
|
||||
useWindow={true}
|
||||
>
|
||||
<List
|
||||
dataSource={this.state.data}
|
||||
renderItem={item => (
|
||||
<List.Item key={item.id}>
|
||||
<SingleReview review={item}/>
|
||||
</List.Item>
|
||||
)}
|
||||
>
|
||||
{this.state.loading && this.state.hasMore && (
|
||||
<div className="demo-loading-container">
|
||||
<Spin/>
|
||||
</div>
|
||||
)}
|
||||
</List>
|
||||
</InfiniteScroll>
|
||||
{!this.state.loadMore && (this.state.data.length >= limit) && (<div style={{textAlign: "center"}}>
|
||||
<Button type="dashed" htmlType="button" onClick={this.enableLoading}>Read All Reviews</Button>
|
||||
</div>)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default Reviews;
|
||||
@ -0,0 +1,46 @@
|
||||
import React from "react";
|
||||
import {Avatar} from "antd";
|
||||
import {List,Typography} from "antd";
|
||||
import StarRatings from "react-star-ratings";
|
||||
|
||||
const {Text, Paragraph} = Typography;
|
||||
const colorList = ['#f0932b','#badc58','#6ab04c','#eb4d4b','#0abde3', '#9b59b6','#3498db','#22a6b3'];
|
||||
|
||||
class SingleReview extends React.Component {
|
||||
|
||||
render() {
|
||||
const review = this.props.review;
|
||||
const randomColor = colorList[Math.floor(Math.random() * (colorList.length))];
|
||||
const avatarLetter = review.username.charAt(0).toUpperCase();
|
||||
const content = (
|
||||
<div style={{marginTop: -5}}>
|
||||
<StarRatings
|
||||
rating={review.rating}
|
||||
starRatedColor="#777"
|
||||
starDimension = "12px"
|
||||
starSpacing = "2px"
|
||||
numberOfStars={5}
|
||||
name='rating'
|
||||
/>
|
||||
<Text style={{fontSize: 12, color: "#aaa"}} type="secondary"> {review.createdAt}</Text><br/>
|
||||
<Paragraph ellipsis={{ rows: 3, expandable: true }} style={{color: "#777"}}>{review.content}</Paragraph>
|
||||
</div>
|
||||
);
|
||||
|
||||
return (
|
||||
<div>
|
||||
<List.Item.Meta
|
||||
avatar={
|
||||
<Avatar style={{ backgroundColor: randomColor, verticalAlign: 'middle' }} size="large">
|
||||
{avatarLetter}
|
||||
</Avatar>
|
||||
}
|
||||
title={review.username}
|
||||
description={content}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default SingleReview;
|
||||
@ -21,7 +21,7 @@ class ManageCategories extends React.Component {
|
||||
|
||||
componentDidMount() {
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/categories",
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications/categories",
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
}).then(res => {
|
||||
@ -58,7 +58,7 @@ class ManageCategories extends React.Component {
|
||||
loading: true
|
||||
});
|
||||
axios.delete(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/admin/applications/categories/"+id,
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/admin/applications/categories/"+id,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
}
|
||||
@ -200,7 +200,7 @@ class ManageCategories extends React.Component {
|
||||
const data = tempElements.map(category => category.categoryName);
|
||||
|
||||
axios.post(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/admin/applications/categories",
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/admin/applications/categories",
|
||||
data,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
@ -266,7 +266,7 @@ class ManageCategories extends React.Component {
|
||||
});
|
||||
|
||||
axios.put(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/admin/applications/categories/rename?from="+currentlyEditingId+"&to="+editingValue,
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/admin/applications/categories/rename?from="+currentlyEditingId+"&to="+editingValue,
|
||||
{},
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
|
||||
@ -21,7 +21,7 @@ class ManageTags extends React.Component {
|
||||
|
||||
componentDidMount() {
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/tags",
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications/tags",
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
}).then(res => {
|
||||
@ -60,7 +60,7 @@ class ManageTags extends React.Component {
|
||||
});
|
||||
|
||||
axios.delete(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/admin/applications/tags/"+id,
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/admin/applications/tags/"+id,
|
||||
{
|
||||
headers: {'X-Platform': config.serverConfig.platform}
|
||||
}).then(res => {
|
||||
@ -200,7 +200,7 @@ class ManageTags extends React.Component {
|
||||
|
||||
const data = tempElements.map(tag => tag.tagName);
|
||||
|
||||
axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/tags",
|
||||
axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications/tags",
|
||||
data,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
@ -265,7 +265,7 @@ class ManageTags extends React.Component {
|
||||
});
|
||||
|
||||
axios.put(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/tags/rename?from="+currentlyEditingId+"&to="+editingValue,
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher+"/applications/tags/rename?from="+currentlyEditingId+"&to="+editingValue,
|
||||
{},
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
|
||||
@ -6,7 +6,7 @@ export const getApps = () => dispatch => {
|
||||
|
||||
const request = "method=post&content-type=application/json&payload={}&api-endpoint=/application-mgt-publisher/v1.0/applications";
|
||||
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri, request
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher, request
|
||||
).then(res => {
|
||||
if (res.status === 200) {
|
||||
let apps = [];
|
||||
@ -29,7 +29,7 @@ export const getRelease = (uuid) => dispatch => {
|
||||
|
||||
const request = "method=get&content-type=application/json&payload={}&api-endpoint=/application-mgt-publisher/v1.0/applications/release/" + uuid;
|
||||
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri, request
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher, request
|
||||
).then(res => {
|
||||
if (res.status === 200) {
|
||||
let release = res.data.data;
|
||||
@ -73,7 +73,7 @@ export const closeLifecycleModal = () => dispatch => {
|
||||
export const getLifecycle = () => dispatch => {
|
||||
const request = "method=get&content-type=application/json&payload={}&api-endpoint=/application-mgt-publisher/v1.0/applications/lifecycle-config";
|
||||
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri, request
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher, request
|
||||
).then(res => {
|
||||
if (res.status === 200) {
|
||||
let lifecycle = res.data.data;
|
||||
@ -97,7 +97,7 @@ export const updateLifecycleState = (uuid, nextState, reason) => dispatch => {
|
||||
const request = "method=post&content-type=application/json&payload=" + JSON.stringify(payload) + "&api-endpoint=/application-mgt-publisher/v1.0/applications/life-cycle/" + uuid;
|
||||
|
||||
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri, request
|
||||
return axios.post(config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri +config.serverConfig.invoker.publisher, request
|
||||
).then(res => {
|
||||
if (res.status === 201) {
|
||||
let release = res.data.data;
|
||||
|
||||
@ -30,7 +30,7 @@ class Release extends React.Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.routes = props.routes;
|
||||
this.state={
|
||||
this.state = {
|
||||
loading: true,
|
||||
app: null,
|
||||
uuid: null
|
||||
@ -49,17 +49,18 @@ class Release extends React.Component {
|
||||
}
|
||||
}
|
||||
|
||||
fetchData = (uuid)=>{
|
||||
fetchData = (uuid) => {
|
||||
|
||||
//send request to the invoker
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/release/"+uuid,
|
||||
config.serverConfig.protocol + "://" + config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invoker.uri + config.serverConfig.invoker.store + "/applications/" + uuid,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
headers: {'X-Platform': config.serverConfig.platform}
|
||||
}
|
||||
).then(res => {
|
||||
if (res.status === 200) {
|
||||
let app = res.data.data;
|
||||
console.log(app);
|
||||
this.setState({
|
||||
app: app,
|
||||
loading: false,
|
||||
@ -82,12 +83,11 @@ class Release extends React.Component {
|
||||
|
||||
render() {
|
||||
const {app} = this.state;
|
||||
const release = app;
|
||||
|
||||
if (release == null) {
|
||||
if (app == null) {
|
||||
return (
|
||||
<div style={{background: '#f0f2f5', padding: 24, minHeight: 780}}>
|
||||
<Title level={3}>No Releases Found</Title>
|
||||
<Title level={3}>No Apps Found</Title>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@ -95,14 +95,11 @@ class Release extends React.Component {
|
||||
//todo remove uppercase
|
||||
return (
|
||||
<div>
|
||||
<PageHeader
|
||||
breadcrumb={{routes}}
|
||||
/>
|
||||
<div className="main-container">
|
||||
<Row style={{padding: 10}}>
|
||||
<Col lg={16} md={24} style={{padding: 3}}>
|
||||
<Card>
|
||||
<ReleaseView release={release}/>
|
||||
<ReleaseView app={app}/>
|
||||
</Card>
|
||||
</Col>
|
||||
<Col lg={8} md={24} style={{padding: 3}}>
|
||||
|
||||
@ -29,16 +29,12 @@ class UserInstall extends React.Component {
|
||||
this.setState({data: [], fetching: true});
|
||||
|
||||
|
||||
const parameters = {
|
||||
method: "get",
|
||||
'content-type': "application/json",
|
||||
payload: "{}",
|
||||
'api-endpoint': "/device-mgt/v1.0/users/search?username=" + value
|
||||
};
|
||||
|
||||
const request = Object.keys(parameters).map(key => key + '=' + parameters[key]).join('&');
|
||||
console.log(request);
|
||||
axios.post(config.serverConfig.protocol + "://" + config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri, request
|
||||
//send request to the invoker
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/device-mgt/v1.0/users/search?username=" + value,
|
||||
{
|
||||
headers: { 'X-Platform': config.serverConfig.platform }
|
||||
}
|
||||
).then(res => {
|
||||
if (res.status === 200) {
|
||||
if (fetchId !== this.lastFetchId) {
|
||||
|
||||
@ -37,16 +37,6 @@ class Release extends React.Component {
|
||||
}
|
||||
|
||||
fetchData = (uuid)=>{
|
||||
const parameters = {
|
||||
method: "get",
|
||||
'content-type': "application/json",
|
||||
payload: "{}",
|
||||
'api-endpoint': "/application-mgt-store/v1.0/applications/" + uuid
|
||||
};
|
||||
|
||||
//url-encode parameters
|
||||
const request = Object.keys(parameters).map(key => key + '=' + parameters[key]).join('&');
|
||||
|
||||
//send request to the invoker
|
||||
axios.get(
|
||||
config.serverConfig.protocol + "://"+config.serverConfig.hostname + ':' + config.serverConfig.httpsPort + config.serverConfig.invokerUri+"/applications/"+uuid,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user