Commit 9c57ac87 authored by Deni Rinaldi's avatar Deni Rinaldi

menuPenerimaan #2

parent 88b6ca29
......@@ -107,8 +107,7 @@ class History extends Component {
>
<Rect x="0" y="30" rx="5" ry="1" width="1000" height="100" />
</SvgAnimatedLinearGradient>
)
}
)}
</View>
)
})}
......
......@@ -30,6 +30,8 @@ class HomePageScreen extends Component {
if (item == 'Penerimaan') {
if (this.state.selectedWarehouse != "") {
this.props.navigation.navigate('Penerimaan', { data: this.state.selectedWarehouse })
} else {
alert('Select Warehouse First!')
}
} else if (item == 'Appraisal') {
this.props.navigation.navigate('Appraisal')
......
import React, { Component } from 'react'
import { Text, View, ScrollView, TouchableOpacity } from 'react-native'
import { Container, Fab, Icon } from 'native-base'
import Next from 'react-native-vector-icons/MaterialIcons'
import SvgAnimatedLinearGradient from 'react-native-svg-animated-linear-gradient'
import Svg, { Circle, Rect } from 'react-native-svg'
import api from '../../../service/api'
export default class Penerimaan extends Component {
......@@ -13,6 +14,7 @@ export default class Penerimaan extends Component {
{ noKontrak: 'K-2001920', namaWerehouse: 'Branch-1', petugas: 'Dadang', tglTerima: '03-03-2020' },
{ noKontrak: 'K-2001921', namaWerehouse: 'Branch-2', petugas: 'Dudung', tglTerima: '03-03-2020' },
],
loading: true,
listClar: []
}
}
......@@ -30,7 +32,11 @@ export default class Penerimaan extends Component {
response.data.data.map((item, index) => {
listClar.push(item)
})
this.setState({ listClar })
this.setState({ listClar }, () => {
setTimeout(() => {
this.setState({ loading: false })
}, 500);
})
})
}
......@@ -42,7 +48,8 @@ export default class Penerimaan extends Component {
{this.state.listClar.map((item, index) => {
return (
<View key={index} style={{ paddingHorizontal: 7 }}>
<TouchableOpacity style={{ marginTop: 10, borderRadius: 20 }} onPress={() => this.props.navigation.navigate('MenuPenerimaan', {data: item})}>
{!this.state.loading && (
<TouchableOpacity style={{ marginTop: 10, borderRadius: 20 }} onPress={() => this.props.navigation.navigate('MenuPenerimaan', { data: item })}>
<View style={{ height: 60, backgroundColor: '#e4b300', justifyContent: 'space-between', paddingHorizontal: 20, flexDirection: 'row', borderTopRightRadius: 10, borderTopLeftRadius: 10 }}>
<View style={{ justifyContent: 'center' }}>
<Text style={{ color: 'white', fontSize: 16, fontWeight: '700' }}>{item.contract_number}</Text>
......@@ -61,8 +68,21 @@ export default class Penerimaan extends Component {
<Text style={{ color: 'black', fontSize: 14, textAlign: 'center' }}>{item.collector}</Text>
</View>
</View>
</TouchableOpacity>
)}
{this.state.loading && (
<SvgAnimatedLinearGradient
height={140}
borderRadius={200}
marginTop={-10}
width={'100%'}
duration={800}
primaryColor="#fff3c9"
secondaryColor="#e4b300"
>
<Rect x="0" y="30" rx="5" ry="1" width="1000" height="120" />
</SvgAnimatedLinearGradient>
)}
</View>
)
})}
......@@ -74,7 +94,7 @@ export default class Penerimaan extends Component {
containerStyle={{}}
style={{ backgroundColor: '#e4b300' }}
position="bottomRight"
onPress={() => this.props.navigation.navigate('MenuPenerimaan')}
onPress={() => this.props.navigation.navigate('MenuPenerimaan', { data: "" })}
>
<Icon name="add" />
</Fab>
......
......@@ -13,13 +13,13 @@ export default class sampleMenuPenerimaan extends Component {
constructor(props) {
super(props)
this.state = {
data: this.props.navigation.state.params.data,
data: this.props.navigation.state.params.data || "",
dateUpdate: M(new Date()).format('DD-MMM-YYYY'),
datePenerimaan: M(new Date()).format('DD-MMM-YYYY'),
checked: 'first',
progress: false,
kodeWerehouse: '#daridepan',
namaWerehouse: '#daridepan',
warehouse_name: '',
kodeRemote: '',
namaRemote: '',
tanggalPenerimaan: '',
......@@ -30,7 +30,7 @@ export default class sampleMenuPenerimaan extends Component {
}
componentDidMount() {
// alert(JSON.stringify(this.state.data))
// alert(JSON.stringify(this.props))
}
handlePenerimaanDate(date) {
......@@ -84,11 +84,11 @@ export default class sampleMenuPenerimaan extends Component {
<View style={{ height: 30, justifyContent: 'center' }}>
<Text style={{ fontSize: 13 }}>Kode Cabang</Text>
</View>
<View style={styles.viewInputDisable}>
<View style={this.state.data == "" ? styles.viewInputEnable : styles.viewInputDisable}>
<TextInput
style={styles.textInput}
value={String(data.branch_id)}
editable={false}
value={this.state.data == "" ? null : String(data.branch_id)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......@@ -97,11 +97,11 @@ export default class sampleMenuPenerimaan extends Component {
<View style={{ height: 30, justifyContent: 'center' }}>
<Text style={{ fontSize: 13 }}>Nama Cabang</Text>
</View>
<View style={styles.viewInputDisable}>
<View style={this.state.data == "" ? styles.viewInputEnable : styles.viewInputDisable}>
<TextInput
style={styles.textInput}
value={data.warehouse_code}
editable={false}
value={this.state.data == "" ? null : String(data.warehouse_code)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......@@ -110,11 +110,11 @@ export default class sampleMenuPenerimaan extends Component {
<View style={{ height: 30, justifyContent: 'center' }}>
<Text style={{ fontSize: 13 }}>No Kontrak Payung</Text>
</View>
<View style={styles.viewInputDisable}>
<View style={this.state.data == "" ? styles.viewInputEnable : styles.viewInputDisable}>
<TextInput
style={styles.textInput}
value={data.contract_number}
editable={false}
value={this.state.data == "" ? null : String(data.contract_number)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......@@ -126,8 +126,8 @@ export default class sampleMenuPenerimaan extends Component {
<View style={styles.viewInputDisable}>
<TextInput
style={styles.textInput}
value={data.sub_contract_number}
editable={false}
value={this.state.data == "" ? null : String(data.sub_contract_number)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......@@ -139,8 +139,8 @@ export default class sampleMenuPenerimaan extends Component {
<View style={styles.viewInputDisable}>
<TextInput
style={styles.textInput}
value={data.nasabah_name}
editable={false}
value={this.state.data == "" ? null : String(data.nasabah_name)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......@@ -151,10 +151,10 @@ export default class sampleMenuPenerimaan extends Component {
</View>
<View style={styles.viewInputEnable}>
<TextInput
onChangeText={(e) => this.setState({ kodeWerehouse: e })}
onChangeText={(e) => this.setState({ warehouse_name: e })}
style={styles.textInput}
value={data.warehouse_name}
editable
value={this.state.data == "" ? null : String(data.warehouse_name)}
editable={this.state.data == "" ? true : false}
/>
</View>
</View>
......
......@@ -11,7 +11,7 @@ export default class sampleMenuPenerimaan2 extends Component {
constructor(props) {
super(props)
this.state = {
data: this.props.navigation.state.params.data,
data: this.props.navigation.state.params.data || "",
date: new Date(),
checked: 'first',
object: null,
......@@ -104,7 +104,7 @@ export default class sampleMenuPenerimaan2 extends Component {
<View style={{ borderColor: 'rgba(237, 57, 99, .5)', borderWidth: .8, justifyContent: 'center', borderRadius: 5, width: '60%' }}>
<TextInput
style={{ paddingHorizontal: 10, paddingVertical: 0, color: '#999999' }}
value={`${data.brand} - ${data.model}`}
value={this.state.data == "" ? "" : `${data.brand} - ${data.model}`}
/>
</View>
<View style={{ width: '40%', flexDirection: 'row', justifyContent: 'space-between', paddingHorizontal: 5 }}>
......@@ -303,7 +303,7 @@ export default class sampleMenuPenerimaan2 extends Component {
progress={!this.state.progress}
onPress={next => {
setTimeout(() => {
this.props.navigation.navigate('MenuPenerimaan3')
this.props.navigation.navigate('MenuPenerimaan3', {data: this.state.data})
next()
}, 300);
}}
......
......@@ -15,6 +15,7 @@ export default class sampleMenuPenerimaan3 extends Component {
constructor(props) {
super(props)
this.state = {
data: this.props.navigation.state.params.data || "",
date: new Date(),
checked: 'first',
progress: false,
......@@ -25,6 +26,10 @@ export default class sampleMenuPenerimaan3 extends Component {
}
}
componentDidMount() {
// alert(JSON.stringify(this.state.data))
}
async requestCameraPermission(type) {
try {
const granted = await PermissionsAndroid.request(
......@@ -59,7 +64,12 @@ export default class sampleMenuPenerimaan3 extends Component {
RNFetchBlob.fs.readFile(res.uri, 'base64')
.then((data) => {
if (type == 'rangka') {
this.setState({ imageRangka: res.uri }, () => alert(this.state.imageRangka))
this.setState({
data: {
...this.state.data,
chassis_number_photo: res.uri
}
})
} else {
let mesinArray = []
mesinArray.push({
......@@ -80,9 +90,8 @@ export default class sampleMenuPenerimaan3 extends Component {
}
}
render() {
let { data } = this.state
return (
<Container style={{ flex: 1, paddingHorizontal: 20, paddingBottom: 20 }}>
......@@ -142,13 +151,13 @@ export default class sampleMenuPenerimaan3 extends Component {
width: '100%', height: '100%', borderColor: 'rgba(237, 57, 99, .5)', borderStyle: 'dotted', borderWidth: 2, borderRadius: 5
}}
>
{this.state.imageRangka == '' ?
{data.chassis_number_photo == '' ?
<View style={{ width: '100%', height: '100%', justifyContent: 'center', alignContent: 'center' }}>
<Text style={{ color: 'rgba(237, 57, 99, .5)', textAlign: 'center', fontSize: 40 }}>+</Text>
</View> :
<Image
style={{ width: '100%', height: '100%', resizeMode: 'contain' }}
source={{ uri: this.state.imageRangka }}
style={{ width: '100%', height: '100%', resizeMode: 'cover' }}
source={{ uri: data.chassis_number_photo }}
/>
}
</View>
......@@ -165,13 +174,13 @@ export default class sampleMenuPenerimaan3 extends Component {
width: '100%', height: '100%', borderColor: 'rgba(237, 57, 99, .5)', borderStyle: 'dotted', borderWidth: 2, borderRadius: 5
}}
>
{this.state.imageMesin == '' ?
{data.engine_number_photo == '' ?
<View style={{ width: '100%', height: '100%', justifyContent: 'center', alignContent: 'center' }}>
<Text style={{ color: 'rgba(237, 57, 99, .5)', textAlign: 'center', fontSize: 40 }}>+</Text>
</View> :
<Image
style={{ width: '100%', height: '100%', resizeMode: 'stretch' }}
source={{ uri: this.state.imageMesin }}
source={{ uri: data.engine_number_photo }}
/>
}
</View>
......
const Constant = {
BASE_URL : 'http://103.44.149.207:8080/projectmanagement_dev/public/mobile/',
BASE_URL : 'http:/103.44.149.215:8080/projectmanagement_dev/public/mobile/',
//USER
TOKEN: 'TOKEN',
......
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