Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
InvestCustomer
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Giang Tran
InvestCustomer
Commits
26a17b11
Commit
26a17b11
authored
May 14, 2021
by
Nguyễn Thị Thúy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
escrow UI
parent
a1b0df08
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
194 additions
and
11 deletions
+194
-11
build.gradle
android/app/build.gradle
+2
-4
EscrowCalculator.js
src/Screens/EscrowCalculator/EscrowCalculator.js
+16
-0
EscrowCalculatorView.js
src/Screens/EscrowCalculator/EscrowCalculatorView.js
+150
-0
PriceListView.js
src/Screens/Home/PriceListView.js
+2
-2
colors.js
src/assets/colors.js
+1
-0
InputMoney.js
src/components/Input/InputMoney.js
+5
-5
PickerItem.js
src/components/Picker/PickerItem.js
+0
-0
en.js
src/helper/i18/locales/en.js
+6
-0
vn.js
src/helper/i18/locales/vn.js
+6
-0
ScreenNames.js
src/routers/ScreenNames.js
+1
-0
StackNavigation.js
src/routers/StackNavigation.js
+5
-0
No files found.
android/app/build.gradle
View file @
26a17b11
...
@@ -132,7 +132,7 @@ android {
...
@@ -132,7 +132,7 @@ android {
applicationId
"com.dcv.invest"
applicationId
"com.dcv.invest"
minSdkVersion
rootProject
.
ext
.
minSdkVersion
minSdkVersion
rootProject
.
ext
.
minSdkVersion
targetSdkVersion
rootProject
.
ext
.
targetSdkVersion
targetSdkVersion
rootProject
.
ext
.
targetSdkVersion
versionCode
4
versionCode
5
versionName
"1.3"
versionName
"1.3"
vectorDrawables
.
useSupportLibrary
=
true
vectorDrawables
.
useSupportLibrary
=
true
}
}
...
@@ -167,7 +167,7 @@ android {
...
@@ -167,7 +167,7 @@ android {
// see https://facebook.github.io/react-native/docs/signed-apk-android.
// see https://facebook.github.io/react-native/docs/signed-apk-android.
signingConfig
signingConfigs
.
release
signingConfig
signingConfigs
.
release
minifyEnabled
enableProguardInReleaseBuilds
minifyEnabled
enableProguardInReleaseBuilds
debuggable
tru
e
debuggable
fals
e
proguardFiles
getDefaultProguardFile
(
"proguard-android.txt"
),
"proguard-rules.pro"
proguardFiles
getDefaultProguardFile
(
"proguard-android.txt"
),
"proguard-rules.pro"
}
}
}
}
...
@@ -242,4 +242,3 @@ task copyDownloadableDepsToLibs(type: Copy) {
...
@@ -242,4 +242,3 @@ task copyDownloadableDepsToLibs(type: Copy) {
apply
plugin:
'com.google.gms.google-services'
apply
plugin:
'com.google.gms.google-services'
apply
from:
file
(
"../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"
);
applyNativeModulesAppBuildGradle
(
project
)
apply
from:
file
(
"../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"
);
applyNativeModulesAppBuildGradle
(
project
)
\ No newline at end of file
src/Screens/EscrowCalculator/EscrowCalculator.js
0 → 100644
View file @
26a17b11
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
EscrowCalculatorView
from
'./EscrowCalculatorView'
;
const
EscrowCalculator
=
(
props
)
=>
{
const
[
dataProduct
,
setDataProduct
]
=
useState
([])
const
setProduct
=
(
item
)
=>
{
}
return
(
<
EscrowCalculatorView
dataProduct
=
{
dataProduct
}
setProduct
=
{
setProduct
}
/
>
);
};
export
default
EscrowCalculator
;
src/Screens/EscrowCalculator/EscrowCalculatorView.js
0 → 100644
View file @
26a17b11
import
React
from
'react'
;
import
{
StyleSheet
,
Text
,
TouchableOpacity
,
View
}
from
'react-native'
;
import
HeaderBack
from
'../../components/Header/HeaderBack'
;
import
{
getFontXD
,
getWidth
,
HEIGHTXD
,
WIDTHXD
}
from
'../../Config/Functions'
;
import
R
from
'../../assets/R'
;
import
I18n
from
'../../helper/i18/i18n'
;
import
PickerItem
from
'../../components/Picker/PickerItem'
;
import
TextMoney
from
'../../components/Input/InputMoney'
;
import
{
ADDMETHODPAY
}
from
'../../routers/ScreenNames'
;
import
Icon
from
'react-native-vector-icons/Entypo'
;
const
EscrowCalculatorView
=
(
props
)
=>
{
return
(
<
View
style
=
{{
flex
:
1
,
flexDirection
:
'column'
,
backgroundColor
:
'white'
}}
>
<
HeaderBack
title
=
{
'EscrowCalculator'
}
isWhite
=
{
true
}
/
>
<
View
style
=
{
styles
.
viewInput
}
>
<
Text
style
=
{
styles
.
textTitle
}
>
{
I18n
.
t
(
'Product'
)}
<
/Text
>
<
PickerItem
data
=
{
props
.
dataProduct
}
onValueChange
=
{(
value
,
item
)
=>
{
props
.
setProduct
(
item
);
}}
iconSize
=
{
WIDTHXD
(
40
)}
iconColor
=
{
R
.
colors
.
black
}
/
>
<
TextMoney
onChangeText
=
{(
val
)
=>
{
}}
title
=
{
I18n
.
t
(
'LotTransactionNumber'
)}
value
=
{
1000
}
titleStyle
=
{{
color
:
R
.
colors
.
black
,
marginTop
:
HEIGHTXD
(
20
),
fontSize
:
getFontXD
(
39
)}}
/
>
<
TextMoney
onChangeText
=
{(
val
)
=>
{
}}
title
=
{
I18n
.
t
(
'FirstEscrow'
)}
value
=
{
1000
}
titleStyle
=
{{
color
:
R
.
colors
.
black
,
fontSize
:
getFontXD
(
39
)}}
editable
=
{
false
}
inputStyle
=
{{
backgroundColor
:
R
.
colors
.
gray7
}}
/
>
<
/View
>
<
View
style
=
{{
flexDirection
:
'row'
,
justifyContent
:
'flex-end'
}}
>
<
TouchableOpacity
onPress
=
{()
=>
{
}}
style
=
{
styles
.
containerBtn
}
>
<
Icon
name
=
{
'plus'
}
size
=
{
27
}
color
=
{
R
.
colors
.
white
}
/
>
<
/TouchableOpacity
>
<
/View
>
<
View
style
=
{{
paddingHorizontal
:
WIDTHXD
(
60
)}}
>
<
TextMoney
onChangeText
=
{(
val
)
=>
{
}}
title
=
{
I18n
.
t
(
'FirstEscrow'
)}
value
=
{
1000
}
titleStyle
=
{{
color
:
R
.
colors
.
black
,
marginTop
:
HEIGHTXD
(
180
),
fontSize
:
getFontXD
(
39
),
}}
/
>
<
TextMoney
onChangeText
=
{(
val
)
=>
{
}}
editable
=
{
false
}
title
=
{
I18n
.
t
(
'FirstEscrowTotal'
)}
value
=
{
1000
}
titleStyle
=
{{
color
:
R
.
colors
.
black
,
marginTop
:
HEIGHTXD
(
20
),
fontSize
:
getFontXD
(
39
)}}
inputStyle
=
{{
backgroundColor
:
R
.
colors
.
gray7
}}
/
>
<
Text
style
=
{
styles
.
textMessage
}
>
B
ạ
n
c
ó
th
ể
giao
d
ị
ch
c
á
c
h
ợ
p
đồ
ng
k
ể
tr
ê
n
v
ớ
i
m
ứ
c
k
ý
qu
ỹ
kh
ả
dung
hi
ệ
n
t
ạ
i
<
/Text
>
<
/View
>
<
View
style
=
{{
width
:
'100%'
,
flexDirection
:
'row'
,
justifyContent
:
'center'
,
alignItems
:
'center'
,
position
:
'absolute'
,
bottom
:
HEIGHTXD
(
50
),
}}
>
<
TouchableOpacity
onPress
=
{()
=>
{
}}
style
=
{[
styles
.
btn
,
{
backgroundColor
:
R
.
colors
.
red2
,
marginRight
:
WIDTHXD
(
72
)}]}
>
<
Text
style
=
{
styles
.
txtButton
}
>
{
I18n
.
t
(
'Delete'
)}
<
/Text
>
<
/TouchableOpacity
>
<
TouchableOpacity
onPress
=
{()
=>
{
}}
style
=
{
styles
.
btn
}
>
<
Text
style
=
{
styles
.
txtButton
}
>
{
I18n
.
t
(
'Calculator'
)}
<
/Text
>
<
/TouchableOpacity
>
<
/View
>
<
/View
>
);
};
export
default
EscrowCalculatorView
;
const
styles
=
StyleSheet
.
create
({
viewInput
:
{
marginHorizontal
:
WIDTHXD
(
36
),
marginTop
:
WIDTHXD
(
69
),
marginBottom
:
WIDTHXD
(
44
),
borderWidth
:
0.3
,
borderColor
:
'#707070'
,
paddingHorizontal
:
WIDTHXD
(
24
),
paddingVertical
:
WIDTHXD
(
24
),
},
textTitle
:
{
fontSize
:
getFontXD
(
39
),
color
:
R
.
colors
.
black
,
},
textMessage
:
{
fontSize
:
getFontXD
(
39
),
color
:
R
.
colors
.
black
,
marginTop
:
HEIGHTXD
(
68
)
},
containerBtn
:
{
marginHorizontal
:
WIDTHXD
(
36
),
backgroundColor
:
R
.
colors
.
main
,
width
:
WIDTHXD
(
144
),
height
:
WIDTHXD
(
144
),
justifyContent
:
'center'
,
alignItems
:
'center'
,
shadowColor
:
'#000'
,
shadowOffset
:
{
width
:
0
,
height
:
2
,
},
shadowOpacity
:
0.25
,
shadowRadius
:
3.84
,
elevation
:
3
,
borderRadius
:
30
,
},
btn
:
{
width
:
WIDTHXD
(
428
),
height
:
HEIGHTXD
(
120
),
justifyContent
:
'center'
,
alignItems
:
'center'
,
backgroundColor
:
R
.
colors
.
main
,
borderRadius
:
5
,
marginBottom
:
HEIGHTXD
(
42
),
},
txtButton
:
{
color
:
R
.
colors
.
white
,
fontSize
:
getFontXD
(
48
),
},
});
src/Screens/Home/PriceListView.js
View file @
26a17b11
...
@@ -11,7 +11,7 @@ import {
...
@@ -11,7 +11,7 @@ import {
import
{
getFontXD
,
HEIGHTXD
,
WIDTHXD
}
from
'../../Config/Functions'
;
import
{
getFontXD
,
HEIGHTXD
,
WIDTHXD
}
from
'../../Config/Functions'
;
import
R
from
'../../assets/R'
;
import
R
from
'../../assets/R'
;
import
ItemPrice
from
'./ItemPrice'
;
import
ItemPrice
from
'./ItemPrice'
;
import
{
PRODUCTDETAIL
}
from
'../../routers/ScreenNames'
;
import
{
PRODUCTDETAIL
,
ESCROWCALCULATOR
}
from
'../../routers/ScreenNames'
;
import
{
useNavigation
}
from
'@react-navigation/native'
;
import
{
useNavigation
}
from
'@react-navigation/native'
;
const
PriceListView
=
(
props
)
=>
{
const
PriceListView
=
(
props
)
=>
{
...
@@ -74,7 +74,7 @@ const PriceListView = (props) => {
...
@@ -74,7 +74,7 @@ const PriceListView = (props) => {
<
/TouchableOpacity
>
<
/TouchableOpacity
>
<
/View>
}
<
/View>
}
renderItem
=
{({
item
})
=>
<
ItemPrice
item
=
{
item
}
renderItem
=
{({
item
})
=>
<
ItemPrice
item
=
{
item
}
onPress
=
{()
=>
navigate
.
navigate
(
PRODUCTDETAIL
,
{
onPress
=
{()
=>
navigate
.
navigate
(
ESCROWCALCULATOR
,
{
id
:
item
.
id
,
id
:
item
.
id
,
name
:
item
.
name
,
name
:
item
.
name
,
})}
/>
}
})}
/>
}
...
...
src/assets/colors.js
View file @
26a17b11
...
@@ -46,6 +46,7 @@ const colors = {
...
@@ -46,6 +46,7 @@ const colors = {
gray4
:
'#e6e6e6'
,
gray4
:
'#e6e6e6'
,
gray5
:
'rgba(226,232,235, 1)'
,
gray5
:
'rgba(226,232,235, 1)'
,
gray6
:
'#929292'
,
gray6
:
'#929292'
,
gray7
:
'#DBDBDB'
,
orange
:
'#FF9C00'
,
orange
:
'#FF9C00'
,
lightBlue
:
'#1a8cff'
,
lightBlue
:
'#1a8cff'
,
lightBlue1
:
'#008ae6'
,
lightBlue1
:
'#008ae6'
,
...
...
src/components/Input/InputMoney.js
View file @
26a17b11
...
@@ -5,16 +5,16 @@ import R from '../../assets/R';
...
@@ -5,16 +5,16 @@ import R from '../../assets/R';
import
{
toPriceVnd
}
from
'../../Config/Functions'
;
import
{
toPriceVnd
}
from
'../../Config/Functions'
;
const
TextMoney
=
(
props
)
=>
{
const
TextMoney
=
(
props
)
=>
{
const
{
title
,
onChangeText
,
maxLength
,
value
,
editable
}
=
props
;
const
{
title
,
onChangeText
,
maxLength
,
value
,
editable
,
titleStyle
,
inputStyle
}
=
props
;
return
(
return
(
<
View
style
=
{{
marginVertical
:
5
}}
>
<
View
style
=
{{
marginVertical
:
5
}}
>
<
Text
<
Text
style
=
{{
style
=
{
[
{
fontSize
:
getFontXD
(
42
),
fontSize
:
getFontXD
(
42
),
color
:
R
.
colors
.
color777
,
color
:
R
.
colors
.
color777
,
marginBottom
:
5
,
marginBottom
:
5
,
}}
>
}
,
titleStyle
&&
titleStyle
]
}
>
{
title
?
title
:
''
}
{
title
?
title
:
''
}
<
/Text
>
<
/Text
>
<
TextInput
<
TextInput
...
@@ -25,7 +25,7 @@ const TextMoney = (props) => {
...
@@ -25,7 +25,7 @@ const TextMoney = (props) => {
value
=
{
toPriceVnd
(
value
)}
value
=
{
toPriceVnd
(
value
)}
keyboardType
=
{
'number-pad'
}
keyboardType
=
{
'number-pad'
}
onChangeText
=
{(
val
)
=>
onChangeText
(
val
.
split
(
','
).
join
(
''
))}
onChangeText
=
{(
val
)
=>
onChangeText
(
val
.
split
(
','
).
join
(
''
))}
style
=
{{
style
=
{
[
{
height
:
HEIGHTXD
(
109
),
height
:
HEIGHTXD
(
109
),
color
:
'black'
,
color
:
'black'
,
borderRadius
:
7
,
borderRadius
:
7
,
...
@@ -43,7 +43,7 @@ const TextMoney = (props) => {
...
@@ -43,7 +43,7 @@ const TextMoney = (props) => {
shadowOpacity
:
0.25
,
shadowOpacity
:
0.25
,
shadowRadius
:
1.84
,
shadowRadius
:
1.84
,
elevation
:
1
,
elevation
:
1
,
}}
}
,
inputStyle
&&
inputStyle
]
}
/
>
/
>
<
/View
>
<
/View
>
);
);
...
...
src/components/Picker/PickerItem.js
View file @
26a17b11
This diff is collapsed.
Click to expand it.
src/helper/i18/locales/en.js
View file @
26a17b11
...
@@ -231,4 +231,10 @@ export default {
...
@@ -231,4 +231,10 @@ export default {
RejectVerify
:
'Reject verify'
,
RejectVerify
:
'Reject verify'
,
UploadImageFail
:
UploadImageFail
:
'The network connection is not stable, please check the connection'
,
'The network connection is not stable, please check the connection'
,
EscrowCalculator
:
'Escrow calculator'
,
Product
:
'Product'
,
LotTransactionNumber
:
'Lot transaction number'
,
FirstEscrow
:
'First escrow (VNĐ)'
,
FirstEscrowTotal
:
'First escrow total (VNĐ)'
,
Calculator
:
'Calculator'
,
};
};
src/helper/i18/locales/vn.js
View file @
26a17b11
...
@@ -233,4 +233,10 @@ export default {
...
@@ -233,4 +233,10 @@ export default {
RejectVerify
:
'Từ chối xác minh'
,
RejectVerify
:
'Từ chối xác minh'
,
UploadImageFail
:
UploadImageFail
:
'Đường truyền mạng không ổn định.Xin kiểm tra lại đường truyền!'
,
'Đường truyền mạng không ổn định.Xin kiểm tra lại đường truyền!'
,
EscrowCalculator
:
'Tính ký quỹ'
,
Product
:
'Mặt hàng'
,
LotTransactionNumber
:
'Số lot giao dịch'
,
FirstEscrow
:
'Ký quỹ ban đầu (VNĐ)'
,
FirstEscrowTotal
:
'Tổng ký quỹ ban đầu (VNĐ)'
,
Calculator
:
'Tính'
,
};
};
src/routers/ScreenNames.js
View file @
26a17b11
...
@@ -69,3 +69,4 @@ export const PRODUCTDETAIL = 'PRODUCTDETAIL';
...
@@ -69,3 +69,4 @@ export const PRODUCTDETAIL = 'PRODUCTDETAIL';
export
const
REGISTEROTP
=
'REGISTEROTP'
;
export
const
REGISTEROTP
=
'REGISTEROTP'
;
export
const
OTPWALLET
=
'OTPWALLET'
;
export
const
OTPWALLET
=
'OTPWALLET'
;
export
const
ESCROWCALCULATOR
=
'ESCROWCALCULATOR'
;
src/routers/StackNavigation.js
View file @
26a17b11
...
@@ -48,6 +48,7 @@ import DetailHistory from '../Screens/Action/History/DetailHistory';
...
@@ -48,6 +48,7 @@ import DetailHistory from '../Screens/Action/History/DetailHistory';
import
ProductDetail
from
'../Screens/Transaction/ProductDetail/ProductDetail'
;
import
ProductDetail
from
'../Screens/Transaction/ProductDetail/ProductDetail'
;
import
RegisterOTP
from
'../Screens/Authen/RegisterOTP'
;
import
RegisterOTP
from
'../Screens/Authen/RegisterOTP'
;
import
OTPWallet
from
'../Screens/Action/Wallet/OTPWallet'
;
import
OTPWallet
from
'../Screens/Action/Wallet/OTPWallet'
;
import
EscrowCalculator
from
'../Screens/EscrowCalculator/EscrowCalculator'
;
import
*
as
ScreenName
from
'./ScreenNames'
;
import
*
as
ScreenName
from
'./ScreenNames'
;
...
@@ -128,6 +129,10 @@ function MyStack(props) {
...
@@ -128,6 +129,10 @@ function MyStack(props) {
name
=
{
ScreenName
.
FORGOTPASSWORD
}
name
=
{
ScreenName
.
FORGOTPASSWORD
}
component
=
{
ForgotPassWord
}
component
=
{
ForgotPassWord
}
/
>
/
>
<
Stack
.
Screen
name
=
{
ScreenName
.
ESCROWCALCULATOR
}
component
=
{
EscrowCalculator
}
/
>
<
/Stack.Navigator
>
<
/Stack.Navigator
>
);
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment