diff --git a/assets/images/icon/car-icon.png b/assets/images/icon/car-icon.png new file mode 100644 index 0000000..2915ba7 Binary files /dev/null and b/assets/images/icon/car-icon.png differ diff --git a/src/common/pages/App/index.js b/src/common/pages/App/index.js index 96434d7..beff73c 100644 --- a/src/common/pages/App/index.js +++ b/src/common/pages/App/index.js @@ -398,7 +398,7 @@ export default class App extends React.Component { } className={(this.state.selectedMenu === '/app/car') ? "menuAkunItem active" : 'menuAkunItem'}>Car diff --git a/src/common/pages/App/routes.js b/src/common/pages/App/routes.js index afce183..9f991b2 100644 --- a/src/common/pages/App/routes.js +++ b/src/common/pages/App/routes.js @@ -27,7 +27,8 @@ import UploadAdminDetail from "../Items/FormItems/UploadAdmin"; import Tasks from './../Tasks/index'; import HotelComponent from '../Hotel'; import HotelSearch from './../Hotel/HotelSearch'; -// import TasksDetail from './../Tasks/TaskDetail/index'; +import CarComponent from '../Car'; +import CarSearch from './../Car/CarSearch' import CustomerComponent from "../Customers/index"; import CustomerDetail from "../CustomerDetail/index"; import WalletCostumer from '../CustomerDetail/Wallet/index'; @@ -75,6 +76,8 @@ export default class ComponentName extends React.Component { + + diff --git a/src/common/pages/Car/CarSearch.js b/src/common/pages/Car/CarSearch.js new file mode 100644 index 0000000..69ee27b --- /dev/null +++ b/src/common/pages/Car/CarSearch.js @@ -0,0 +1,274 @@ +import React from 'react'; +import {inject, observer} from 'mobx-react'; +import { + FlatButton +} from 'material-ui'; +import { Affix, Card, Slider, Select, Row, Col, Icon, Tag,Rate, Button, Checkbox ,Divider, DatePicker } from 'antd'; +import {startCase} from 'lodash'; +import LoadingDialog from "../LoadingDialog"; +import Loader from 'react-loader-advanced'; +import './style.scss'; +import {DIALOG} from "../../stores/global_ui"; +import EmptyComponent from '../EmptyComponent'; +import NavigationArrowBack from 'material-ui/svg-icons/navigation/arrow-back'; +import Search from 'material-ui/svg-icons/action/search'; + +@inject('appstate') +@observer +export default class CarSearch extends React.Component { + constructor(props) { + super(props); + this.props = props; + this.state = { + value: 1, + valueMinimal: 0, + valueMaximal: 0, + changeSearch:false, + }; + this.defaultState = Object.assign({}, this.state); + this.http = props.appstate.http; + this.authStore = props.appstate.auth; + this.globalUI = props.appstate.globalUI; + } + + componentDidMount() { + + } + + handleChangeMinimal = (valueMinimal) => { + this.setState({ valueMinimal }); + }; + + handleChangeMaximal = (valueMaximal) => { + this.setState({ valueMaximal }); + }; + + handleBlur = () => { + console.log('blur'); + } + + handleFocus = () => { + console.log('focus'); + } + + handleChangeSearch = () => { + this.setState({ + changeSearch : true + }) + } + + handleChangeSearchFalse = () => { + this.setState({ + changeSearch : false + }) + } + + + + render() { + const { valueMinimal, valueMaximal } = this.state; + + return ( + + + + + Min. Points + + + Max. Points + + + Rating Bintang + + + Fasilitas + + + Air Conditioning + Check All + Bar + Business Centre + Coffee Shop + Gym + Internet Access + Pool + Restaurant + Room Service + Wi-Fi Access + + + + + + + + + this.props.history.goBack()} + label="Back" + primary={true} + icon={} + /> + Ganti Pencarian + + {(this.state.changeSearch == true) ? ( + + + + + Where + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + Jakarta + Bali + Surabaya + + + + Rooms + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + 1 Adult, 0 Children + 2 Adult, 0 Children + More options + + + + + + Check-in + + + + Check-out + + + + + + + { + this.props.history.push(LINKS.HOTEL_SEARCH); + console.log('hotel'); + }} icon="search">Search + + + + + ) : ( + + )} + + + + + + + + + + Oasis Amir Hotel + + Senen, Jakarta + + Air Conditional + Wi-Fi Access + Restaurant + + 5,390 Poin + + Pilih + + + + + + + + + + + + + + + Hotel Aston + + Kuningan, Jakarta + + Air Conditional + Wi-Fi Access + Restaurant + Pool + + 14,230 Poin + + Pilih + + + + + + + + + + + + + + Hotel Horision + + Menteng, Jakarta + + Air Conditional + Wi-Fi Access + Restaurant + Pool + + 20,500 Poin + + Pilih + + + + + + + + + + + ) + } +} diff --git a/src/common/pages/Car/index.js b/src/common/pages/Car/index.js new file mode 100644 index 0000000..8b68ada --- /dev/null +++ b/src/common/pages/Car/index.js @@ -0,0 +1,198 @@ +import React from 'react'; +import {inject, observer} from 'mobx-react'; +import { + AutoComplete, + Avatar, + Card, + CardHeader, + Dialog, + Divider, + FlatButton, + FontIcon, + IconMenu, + MenuItem, + RaisedButton, + SelectField, + TextField +} from 'material-ui'; +import { + Row, + Col, + Select, + DatePicker, + Button, + // Card, + Slider, + // Divider, + Rate, + Checkbox, + Icon, + TimePicker, + // Avatar, + Tag} from "antd" +import moment from 'moment'; +import get from 'lodash.get'; +import Loader from 'react-loader-advanced'; +import LoadingDialog from "../LoadingDialog"; +import omit from 'lodash.omit'; +import {LINKS} from "../../routes"; + +import './style.scss'; +const format = 'HH:mm'; + +@inject('appstate') +@observer +export default class CarComponent extends React.Component { + constructor(props) { + super(props); + this.props = props; + this.state = { + }; + this.defaultState = Object.assign({}, this.state); + this.http = props.appstate.http; + this.authStore = props.appstate.auth; + this.appstate = props.appstate; + this.globalUI = props.appstate.globalUI; + } + + componentDidMount() { + + } + + componentWillUnmount() { + + console.log('COMPONENT GONE'); + } + + render() { + + const styles = { + + radioButton: { + marginBottom: 16, + }, + }; + + return ( + + + + + } + /> + + } + messageStyle={{textAlign: 'center'}} + backgroundStyle={{backgroundColor: 'rgba(255,255,255,0.5)'}}> + + + + Country + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + Indonesia + Amerika + + + + City + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + Jakarta + Bali + Surabaya + + + + Lokasi + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + Jakarta Airport + Jakarta Downtown + Monas + + + + + + Start Date + + + + Start Time + + + + Until Date + + + + End Time + , + + + + + Usia pengendara 25 sampai 70 tahun? + + + Kembali ke lokasi yang sama + + + + + + { + this.props.history.push(LINKS.CAR_SEARCH); + console.log('car'); + }} icon="search">Search + + + + + + + + + ) + } +} diff --git a/src/common/pages/Car/style.scss b/src/common/pages/Car/style.scss new file mode 100644 index 0000000..ec5e7bf --- /dev/null +++ b/src/common/pages/Car/style.scss @@ -0,0 +1,50 @@ +.wallet { + margin-top: 35px; + .container { + padding: 25px; + + .ant-card { + background: #fff; + border-radius: 0px; + font-size: 12px; + position: relative; + overflow: hidden; + transition: all .3s; + } + .ant-card-head { + height: 48px; + line-height: 48px; + background: #fff; + border-bottom: 0px solid #e9e9e9; + padding: 0 24px; + } + .ant-card:hover { + box-shadow: 4px 4px 40px rgba(0, 0, 0, .05); + border-color: transparent; + } + .ant-card-body-dashboard { + padding: 10px; + } + } + + + .label-form { + font-size: 14px; + line-height: 30px; + color: rgb(153, 153, 153); + text-shadow: rgb(255, 255, 255) 0px 1px 0px; + margin-bottom: -8px; + } + + .backgroundImage { + height: 182px; + background-image: url('/assets/images/material3.jpg'); + background-position: center; + background-size: cover; + cursor: pointer; + min-height: 75px; + position: relative; + width: 100%; + } + } + \ No newline at end of file diff --git a/src/common/pages/Hotel/HotelSearch.js b/src/common/pages/Hotel/HotelSearch.js index 69a81eb..d7c6fd5 100644 --- a/src/common/pages/Hotel/HotelSearch.js +++ b/src/common/pages/Hotel/HotelSearch.js @@ -3,7 +3,7 @@ import {inject, observer} from 'mobx-react'; import { FlatButton } from 'material-ui'; -import { Affix, Card, Slider, Select, Row, Col, Icon, Tag,Rate, Button, Checkbox ,Divider } from 'antd'; +import { Affix, Card, Slider, Select, Row, Col, Icon, Tag,Rate, Button, Checkbox ,Divider, DatePicker } from 'antd'; import {startCase} from 'lodash'; import LoadingDialog from "../LoadingDialog"; import Loader from 'react-loader-advanced'; @@ -103,7 +103,7 @@ export default class HotelSearch extends React.Component { - + {(this.state.changeSearch == true) ? ( - - ini form search - + + + + Where + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + Jakarta + Bali + Surabaya + + + + Rooms + option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} + > + 1 Adult, 0 Children + 2 Adult, 0 Children + More options + + + + + + Check-in + + + + Check-out + + + + + + + { + this.props.history.push(LINKS.HOTEL_SEARCH); + console.log('hotel'); + }} icon="search">Search + + + ) : ( )} - + diff --git a/src/common/routes.js b/src/common/routes.js index 511897b..de699c1 100644 --- a/src/common/routes.js +++ b/src/common/routes.js @@ -107,7 +107,9 @@ export const LINKS = { CUSTOM_MENU : '/app/custom_menu', PROMOTION:'/app/promotion', HOTEL:'/app/hotel', - HOTEL_SEARCH:'/app/hotel/search' + HOTEL_SEARCH:'/app/hotel/search', + CAR:'/app/car', + CAR_SEARCH:'/app/car/search' }; @inject('appstate')
Min. Points
Max. Points
Rating Bintang
Fasilitas
Where
Rooms
Check-in
Check-out
Country
City
Lokasi
Start Date
Start Time
Until Date
End Time