Commit 7b1339f6 authored by Wahyu Adjie Prasetyo's avatar Wahyu Adjie Prasetyo

Merge branch 'master' of ssh://repo.cs.co.id:2222/wahyu/bahanoprek

# Conflicts:
#	view/OrderDetail.js
parents 6987923f a3066646
This diff is collapsed.
...@@ -83,7 +83,7 @@ class OrderDetail extends React.Component { ...@@ -83,7 +83,7 @@ class OrderDetail extends React.Component {
Axios.post('https://excelsocrm.ravintoladev.com/crm/v2/transaction/detail', params).then(res => { Axios.post('https://excelsocrm.ravintoladev.com/crm/v2/transaction/detail', params).then(res => {
let data = res.data let data = res.data
// console.log('ini data' + JSON.stringify(data)) // console.log('ini data' + JSON.stringify(data))
// console.log("INI OUTLET "+ data.outlet) console.log("INI OUTLET "+ data.outlet)
// console.log("OUTLET-CODE" + data.outlet_code) // console.log("OUTLET-CODE" + data.outlet_code)
// console.log("TRANS-DISPLAY" + data.trans_type_display) // console.log("TRANS-DISPLAY" + data.trans_type_display)
...@@ -98,18 +98,40 @@ class OrderDetail extends React.Component { ...@@ -98,18 +98,40 @@ class OrderDetail extends React.Component {
}) })
}).catch(error => { }).catch(error => {
const { navigation } = this.props let response = error.response.data;
let response = error.response.data Alert.alert(error ,response.msg);
session(response, navigation)
Alert.alert(response.msg);
this.setState({ this.setState({
indicator: false, indicator: false,
}) })
// let response = error.response.data;
// Alert.alert(response.msg); // Alert.alert(response.msg);
}) })
} }
rating(){
let paramater = {
session_id: this.props.session_id,
transaction_id: this.props.route.params.idTrans,
rating: this.state.rating,
review: this.state.review,
lat: this.props.lat,
long: this.props.long
}
console.log("INI PARAMS"+ JSON.stringify(paramater) );
Axios.post('https://excelsocrm.ravintoladev.com/crm/v2/review/transaction', paramater).then(res => {
Alert.alert('','Terimakasih Atas masukan anda!')
this.props.navigation.navigate('Home');
}).catch(error => {
console.log ("INI error " + error)
let response = error.response.data;
Alert.alert(error,response.msg);
})
}
render() { render() {
console.log(this.state.detail_trans) console.log(this.state.detail_trans)
// console.log(this.state.detail_trans.used_reward) // console.log(this.state.detail_trans.used_reward)
...@@ -330,47 +352,23 @@ class OrderDetail extends React.Component { ...@@ -330,47 +352,23 @@ class OrderDetail extends React.Component {
{ {
this.state.trans_status == 4 ? ( this.state.trans_status == 4 ? (
null null
) : ( ) : (
<TouchableOpacity style={{ justifyContent: 'center' }} onPress={() => this.props.navigation.navigate('RatingOrder', { idTrans: item.id })}> <TouchableOpacity style={{ justifyContent: 'center' }} onPress={() => this.props.navigation.navigate('RatingOrder', { idTrans: this.state.detail_trans.id })}>
<View style={{ height: 40, borderRadius: 10, backgroundColor: '#CFB368', justifyContent: 'center', marginRight: 20, marginLeft: 20, marginTop: 50 }}> <View style={{ height: 40, borderRadius: 10, backgroundColor: '#CFB368', justifyContent: 'center', marginRight: 20, marginLeft: 20, marginTop: 50 }}>
<Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 16, textAlign: 'center', paddingHorizontal: 5 }}>Rating Order</Text> <Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 16, textAlign: 'center', paddingHorizontal: 5 }}>Rating Order</Text>
</View> </View>
</TouchableOpacity> </TouchableOpacity>
) )
} }
<View style={{ marginVertical: 20 }} /> <View style={{ marginVertical: 20 }} />
{/* <TouchableOpacity style={{ justifyContent: 'center' }} onPress={() =>this.rating()}>
<View style={{ height: 40, borderRadius: 10, backgroundColor: '#CFB368', justifyContent: 'center', marginRight: 20, marginLeft: 20, marginTop: 50 }}>
<Text style={{ fontFamily: 'Gotham-Black', color: 'white', fontSize: 16, textAlign: 'center', paddingHorizontal: 5 }}>Rating Order</Text>
</View>
{/* <View> </TouchableOpacity> */}
<Card style={{ padding: 10, margin: 10, alignContent: 'center' }}>
<Text>OUTLET : {this.state.outlet}</Text>
<Text>OUTLET CODE : {this.state.outlet_code}</Text>
<Text>OUTLET : {this.state.trans_status_display}</Text>
</Card>
<Card style={{ padding: 10, margin: 10, alignContent: 'center' }}>
{
this.state.transaction_detail.map((item, index) => {
return (
<View key={index}>
<Text>NAMA ITEM : {item.item_name}</Text>
<Text>QTY : {item.item_quantity}</Text>
<Text>PRICE : {item.item_price}</Text>
<Text>DISCOUNT : {item.item_discount}</Text>
<View style={{ borderWidth: 1, margin: 10 }}></View>
<Text>TOTAL : {item.item_subtotal}</Text>
</View>
)
})
}
</Card>
<Card style={{ padding: 10, margin: 10, alignContent: 'center' }}>
<Text>{}</Text>
</Card>
</View> */}
</ScrollView> </ScrollView>
</View> </View>
) )
...@@ -445,7 +443,9 @@ const mapStateToProps = (state) => { ...@@ -445,7 +443,9 @@ const mapStateToProps = (state) => {
return { return {
session_id: state.session_id, session_id: state.session_id,
trans_id: state.trans_id trans_id: state.trans_id,
lat: state.lat,
long: state.long,
} }
} }
......
...@@ -32,7 +32,7 @@ class Outlets extends React.Component { ...@@ -32,7 +32,7 @@ class Outlets extends React.Component {
data_outlet: [], data_outlet: [],
outlet_selected: '', outlet_selected: '',
data_name: '', data_name: '',
indicator:true indicator: true
} }
} }
...@@ -114,7 +114,7 @@ class Outlets extends React.Component { ...@@ -114,7 +114,7 @@ class Outlets extends React.Component {
this.setState({ this.setState({
dataOutlets: dataOutlets, dataOutlets: dataOutlets,
data_before_search: dataOutlets, data_before_search: dataOutlets,
}) })
this.setState({ this.setState({
...@@ -125,7 +125,7 @@ class Outlets extends React.Component { ...@@ -125,7 +125,7 @@ class Outlets extends React.Component {
let response = error.response.data; let response = error.response.data;
Alert.alert(response.msg); Alert.alert(response.msg);
this.setState({ this.setState({
indicator: false indicator: false
}) })
}) })
} }
...@@ -216,7 +216,13 @@ class Outlets extends React.Component { ...@@ -216,7 +216,13 @@ class Outlets extends React.Component {
dataOutlets: this.state.data_before_search, dataOutlets: this.state.data_before_search,
search: '' search: ''
}) })
} else { } else if (value == null) {
this.setState({
dataOutlets: this.state.data_before_search,
search: ''
})
}
else {
this.setState({ this.setState({
dataOutlets: filteredOutlets, dataOutlets: filteredOutlets,
search: value search: value
...@@ -228,8 +234,8 @@ class Outlets extends React.Component { ...@@ -228,8 +234,8 @@ class Outlets extends React.Component {
RenderItem = ({ item }) => { RenderItem = ({ item }) => {
return ( return (
<View style={{ flexDirection: 'row', flex: 1,marginRight:20,marginLeft:20,marginBottom:20}}> <View style={{ flexDirection: 'row', flex: 1, marginRight: 20, marginLeft: 20, marginBottom: 20 }}>
<View style={styles.content_list}> <View style={styles.content_list}>
<View style={styles.list_addrees}> <View style={styles.list_addrees}>
<Text style={{ fontFamily: 'Gotham-Black', color: '#ccb46c', fontSize: 18 }}>{item.name}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#ccb46c', fontSize: 18 }}>{item.name}</Text>
<Text style={{ flexWrap: 'wrap', fontFamily: 'Gotham-Light', color: '#b1b1b2' }}>{item.full_address}</Text> <Text style={{ flexWrap: 'wrap', fontFamily: 'Gotham-Light', color: '#b1b1b2' }}>{item.full_address}</Text>
...@@ -238,7 +244,7 @@ class Outlets extends React.Component { ...@@ -238,7 +244,7 @@ class Outlets extends React.Component {
</Text> </Text>
</View> </View>
<View style={{ flex: 2, flexDirection: 'row' }}> <View style={{ flex: 2, flexDirection: 'row' }}>
<View style={{margin:5}}> <View style={{ margin: 5 }}>
<TouchableOpacity onPress={() => { Linking.openURL('tel:' + item.phone) }}> <TouchableOpacity onPress={() => { Linking.openURL('tel:' + item.phone) }}>
<Icon <Icon
name='ios-call' name='ios-call'
...@@ -248,7 +254,7 @@ class Outlets extends React.Component { ...@@ -248,7 +254,7 @@ class Outlets extends React.Component {
/> />
</TouchableOpacity> </TouchableOpacity>
</View> </View>
<View style={{margin:5}}> <View style={{ margin: 5 }}>
<TouchableOpacity onPress={() => Linking.openURL('https://www.google.com/maps/dir/?api=1&destination=' + item.lat + ' ' + item.long)}> <TouchableOpacity onPress={() => Linking.openURL('https://www.google.com/maps/dir/?api=1&destination=' + item.lat + ' ' + item.long)}>
<Icon <Icon
name='ios-navigate' name='ios-navigate'
...@@ -260,7 +266,7 @@ class Outlets extends React.Component { ...@@ -260,7 +266,7 @@ class Outlets extends React.Component {
</View> </View>
</View> </View>
</View> </View>
</View> </View>
); );
} }
...@@ -274,7 +280,7 @@ class Outlets extends React.Component { ...@@ -274,7 +280,7 @@ class Outlets extends React.Component {
textStyle={styles.spinnerTextStyle} textStyle={styles.spinnerTextStyle}
/> */} /> */}
<View style={{ flex: 1 }}> <View style={{ flex: 1 }}>
<MapView style={{ flex: 1 ,marginRight:10,marginLeft:10}} <MapView style={{ flex: 1, marginRight: 10, marginLeft: 10 }}
region={{ region={{
latitude: this.state.my_lat, latitude: this.state.my_lat,
longitude: this.state.my_long, longitude: this.state.my_long,
...@@ -297,37 +303,31 @@ class Outlets extends React.Component { ...@@ -297,37 +303,31 @@ class Outlets extends React.Component {
</MapView> </MapView>
</View> </View>
<View style={{height:50,flexDirection:'row'}}> <View style={{ height: 50, flexDirection: 'row' }}>
<View style={{ flex: 1 }}></View> <View style={{ flex: 1 }}></View>
<View style={{flex:1}}> <View style={{ flex: 1 }}>
<RNPickerSelect <RNPickerSelect
placeholder={{ label: 'Select Area', value: null}} placeholder={{ label: 'All city' }}
onValueChange={(label) => this.filterData(label)} onValueChange={(label) => this.filterData(label)}
items={this.state.data_outlet} items={this.state.data_outlet}
/> />
</View>
</View>
{/* <View style={{ height:50, flex: 1, flexDirection: 'row' }}>
<View style={{flex:1}}>
</View> </View>
</View> */} </View>
<View style={styles.body}> <View style={styles.body}>
{this.state.indicator == true ? ( {this.state.dataOutlets.length > 0 ? (
<ActivityIndicator size="large" color="#c9af6d" style={{margin:20}} /> <FlatList
) : ( data={_.orderBy(this.state.dataOutlets, ['distance'], ['asc'])}
<FlatList renderItem={this.RenderItem}
data={_.orderBy(this.state.dataOutlets, ['distance'], ['asc'])} keyExtractor={item => item.id}
renderItem={this.RenderItem} windowSize={5}
keyExtractor={item => item.id} initialNumToRender={18}
windowSize={5} maxToRenderPerBatch={2}
initialNumToRender={18} onEndReachedThreshold={0.5}
maxToRenderPerBatch={2} />
onEndReachedThreshold={0.5} ) : (
/> <Text style={{ flexWrap: 'wrap', fontFamily: 'Gotham-Light', color: '#b1b1b2', textAlign:'center' }}> Tidak Ada Outlets di area anda !</Text>
)} )}
</View> </View>
</View> </View>
) )
...@@ -358,9 +358,9 @@ const styles = StyleSheet.create({ ...@@ -358,9 +358,9 @@ const styles = StyleSheet.create({
justifyContent: 'center', justifyContent: 'center',
margin: 10, margin: 10,
}, },
content_list:{ content_list: {
flex:1, flex: 1,
flexDirection:'row', flexDirection: 'row',
} }
}) })
......
...@@ -110,22 +110,22 @@ class ProfilePage extends PureComponent { ...@@ -110,22 +110,22 @@ class ProfilePage extends PureComponent {
<View style={{ flex: 3 }}> <View style={{ flex: 3 }}>
<View style={{ flex: 1, margin: 20,top:10}}> <View style={{ flex: 1, margin: 20,top:10}}>
<View style={{top:20}}> <View style={{top:20}}>
<Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center' }}>Email</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center',margin:3 }}>Email</Text>
<Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.email}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.email}</Text>
</View> </View>
<View style={{top:30}}> <View style={{top:30}}>
<Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center' }}>Phone</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center',margin:3 }}>Phone</Text>
<Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.mobile_phone}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.mobile_phone}</Text>
</View> </View>
<View style={{top:40}}> <View style={{top:40}}>
<Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center'}}>Date of Birth</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center',margin:3}}>Date of Birth</Text>
<Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.dob_day} / {this.state.dob_month} / {this.state.dob_year}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.dob_day} / {this.state.dob_month} / {this.state.dob_year}</Text>
</View> </View>
<View style={{top:50,marginBottom:50}}> <View style={{top:50,marginBottom:50}}>
<Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center' }}>Gender</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#CFB368', fontSize: 18, textAlign: 'center',margin:3 }}>Gender</Text>
<Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.gender}</Text> <Text style={{ fontFamily: 'Gotham-Black', color: '#838383', fontSize: 14, textAlign: 'center'}}>{this.state.gender}</Text>
</View> </View>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment