Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
AndiovisualRecord
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
Yu_Tung
AndiovisualRecord
Commits
cac9468f
Commit
cac9468f
authored
Jun 26, 2020
by
Yu-Tung
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
上傳影片,影片分割後上傳&廠課破圖&加上傳完成或失敗的dialog&解決
parent
279c854b
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
256 additions
and
457 deletions
+256
-457
.name
.idea/.name
+2
-0
LoginActivity.java
...com/example/audiovisualrecord/ui/login/LoginActivity.java
+5
-16
LoginContract.java
...com/example/audiovisualrecord/ui/login/LoginContract.java
+1
-0
LoginPresenter.java
...om/example/audiovisualrecord/ui/login/LoginPresenter.java
+1
-6
MainActivity.java
...a/com/example/audiovisualrecord/ui/main/MainActivity.java
+86
-69
MainContract.java
...a/com/example/audiovisualrecord/ui/main/MainContract.java
+8
-9
MainData.java
.../java/com/example/audiovisualrecord/ui/main/MainData.java
+21
-111
MainPresenter.java
.../com/example/audiovisualrecord/ui/main/MainPresenter.java
+41
-155
ApiService.java
...a/com/example/audiovisualrecord/utils/api/ApiService.java
+11
-12
CORequest.java
...diovisualrecord/utils/api/apidata/searchco/CORequest.java
+1
-1
COResponse.java
...iovisualrecord/utils/api/apidata/searchco/COResponse.java
+1
-1
COResultList.java
...visualrecord/utils/api/apidata/searchco/COResultList.java
+1
-1
TYPEResultList.java
...alrecord/utils/api/apidata/searchtype/TYPEResultList.java
+0
-1
DPRequest.java
...ample/audiovisualrecord/utils/api/searchdp/DPRequest.java
+3
-3
DPResponse.java
...mple/audiovisualrecord/utils/api/searchdp/DPResponse.java
+2
-2
DPResultList.java
...le/audiovisualrecord/utils/api/searchdp/DPResultList.java
+7
-7
PZRequest.java
...ample/audiovisualrecord/utils/api/searchpz/PZRequest.java
+3
-3
PZResponse.java
...mple/audiovisualrecord/utils/api/searchpz/PZResponse.java
+2
-2
PZResultList.java
...le/audiovisualrecord/utils/api/searchpz/PZResultList.java
+5
-5
SHIFTRequest.java
...audiovisualrecord/utils/api/searchshift/SHIFTRequest.java
+3
-3
SHIFTResponse.java
...udiovisualrecord/utils/api/searchshift/SHIFTResponse.java
+2
-2
SHIFTResultList.java
...iovisualrecord/utils/api/searchshift/SHIFTResultList.java
+7
-7
activity_main.xml
app/src/main/res/layout/activity_main.xml
+43
-41
No files found.
.idea/.name
0 → 100644
View file @
cac9468f
AudiovisualRecord
\ No newline at end of file
app/src/main/java/com/example/audiovisualrecord/ui/login/LoginActivity.java
View file @
cac9468f
...
@@ -64,22 +64,6 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
...
@@ -64,22 +64,6 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
switch
(
v
.
getId
())
{
switch
(
v
.
getId
())
{
case
R
.
id
.
btn_login
:
case
R
.
id
.
btn_login
:
btnLogin
.
setEnabled
(
false
);
btnLogin
.
setEnabled
(
false
);
// showProgressDialog("登入中");
// new Thread(){
// public void run(){
// try{
// sleep(5000);
// presenter.onLogin("", "");
// dismissProgressDialog();
// }
// catch(Exception e){
// e.printStackTrace();
// }
// finally{
// dismissProgressDialog();
// }
// }
// }.start();
presenter
.
onLogin
(
""
,
""
);
presenter
.
onLogin
(
""
,
""
);
break
;
break
;
...
@@ -106,4 +90,9 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
...
@@ -106,4 +90,9 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
intent
.
putExtras
(
bag
);
intent
.
putExtras
(
bag
);
startActivity
(
intent
);
startActivity
(
intent
);
}
}
@Override
public
void
setButtonEnable
(
Boolean
boo
)
{
btnLogin
.
setEnabled
(
boo
);
}
}
}
app/src/main/java/com/example/audiovisualrecord/ui/login/LoginContract.java
View file @
cac9468f
...
@@ -6,6 +6,7 @@ import com.example.audiovisualrecord.base.BaseView;
...
@@ -6,6 +6,7 @@ import com.example.audiovisualrecord.base.BaseView;
public
interface
LoginContract
{
public
interface
LoginContract
{
interface
View
extends
BaseView
{
interface
View
extends
BaseView
{
void
onCompleteLogin
(
String
token
);
void
onCompleteLogin
(
String
token
);
void
setButtonEnable
(
Boolean
boo
);
}
}
interface
Presenter
<
V
extends
View
>
extends
BaseAttacher
<
V
>
{
interface
Presenter
<
V
extends
View
>
extends
BaseAttacher
<
V
>
{
...
...
app/src/main/java/com/example/audiovisualrecord/ui/login/LoginPresenter.java
View file @
cac9468f
...
@@ -27,7 +27,6 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
...
@@ -27,7 +27,6 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
public
LoginPresenter
(
V
view
)
{
public
LoginPresenter
(
V
view
)
{
this
.
view
=
view
;
this
.
view
=
view
;
api
=
HttpMethods
.
getInstance
().
getApi
();
api
=
HttpMethods
.
getInstance
().
getApi
();
// loginPreferences = new LoginPreferences(context);
compositeDisposable
=
new
CompositeDisposable
();
compositeDisposable
=
new
CompositeDisposable
();
}
}
...
@@ -41,11 +40,8 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
...
@@ -41,11 +40,8 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
.
subscribeWith
(
new
DisposableObserver
<
LoginResponse
>()
{
.
subscribeWith
(
new
DisposableObserver
<
LoginResponse
>()
{
@Override
@Override
public
void
onNext
(
LoginResponse
loginResponse
)
{
public
void
onNext
(
LoginResponse
loginResponse
)
{
Log
.
e
(
"next"
,
loginResponse
.
getmMsg
());
if
(
"True"
.
equals
(
loginResponse
.
getmResult
()))
{
if
(
"True"
.
equals
(
loginResponse
.
getmResult
()))
{
// loginPreferences.setToken(loginResponse.getmToken());
view
.
onCompleteLogin
(
loginResponse
.
getmMsg
());
view
.
onCompleteLogin
(
loginResponse
.
getmMsg
());
}
else
{
}
else
{
view
.
showDialogCaveatMessage
(
"登入失敗"
);
view
.
showDialogCaveatMessage
(
"登入失敗"
);
...
@@ -60,12 +56,11 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
...
@@ -60,12 +56,11 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
view
.
showDialogCaveatMessage
(
"請檢查網路狀態"
);
view
.
showDialogCaveatMessage
(
"請檢查網路狀態"
);
}
}
view
.
showDialogCaveatMessage
(
"登入失敗"
);
view
.
showDialogCaveatMessage
(
"登入失敗"
);
view
.
setButtonEnable
(
true
);
}
}
@Override
@Override
public
void
onComplete
()
{
public
void
onComplete
()
{
Log
.
e
(
"com"
,
"asdasd"
);
}
}
})
})
);
);
...
...
app/src/main/java/com/example/audiovisualrecord/ui/main/MainActivity.java
View file @
cac9468f
...
@@ -25,13 +25,16 @@ import com.example.audiovisualrecord.MagicFileChooser;
...
@@ -25,13 +25,16 @@ import com.example.audiovisualrecord.MagicFileChooser;
import
com.example.audiovisualrecord.R
;
import
com.example.audiovisualrecord.R
;
import
com.example.audiovisualrecord.base.BaseActivity
;
import
com.example.audiovisualrecord.base.BaseActivity
;
import
com.example.audiovisualrecord.ui.chooseitem.ChooseDeviceItemData
;
import
com.example.audiovisualrecord.ui.chooseitem.ChooseDeviceItemData
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
Response
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
Response
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
Response
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
Response
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
java.io.File
;
import
java.io.File
;
import
java.io.FileOutputStream
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.io.IOException
;
...
@@ -73,7 +76,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -73,7 +76,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
String
token
,
imageFilePath
;
String
token
,
imageFilePath
;
int
countFile
=
0
;
int
countFile
=
0
;
TextView
tvCompany
,
tvFactory
,
tvClass
,
tvUnit
,
tvShootType
;
private
TextView
tvCompany
,
tvFactory
,
tvClass
,
tvUnit
,
tvShootType
;
private
TextView
textCompany
,
textFactory
,
textClass
,
textUnit
,
textShootType
;
private
MainPresenter
mPresenter
;
private
MainPresenter
mPresenter
;
private
MainData
mMainData
;
private
MainData
mMainData
;
private
ChooseDeviceItemData
mChooseDeviceItemData
;
private
ChooseDeviceItemData
mChooseDeviceItemData
;
...
@@ -117,6 +121,12 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -117,6 +121,12 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
tvUnit
.
setOnClickListener
(
this
);
tvUnit
.
setOnClickListener
(
this
);
tvClass
.
setOnClickListener
(
this
);
tvClass
.
setOnClickListener
(
this
);
tvShootType
.
setOnClickListener
(
this
);
tvShootType
.
setOnClickListener
(
this
);
textCompany
=
findViewById
(
R
.
id
.
text_company
);
textUnit
=
findViewById
(
R
.
id
.
text_unit
);
textShootType
=
findViewById
(
R
.
id
.
text_shoottype
);
textFactory
=
findViewById
(
R
.
id
.
text_factory
);
textClass
=
findViewById
(
R
.
id
.
text_class
);
}
}
private
void
pickImageFromGallery
()
{
private
void
pickImageFromGallery
()
{
...
@@ -236,17 +246,13 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -236,17 +246,13 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
if
(
data
.
getClipData
()
!=
null
)
{
if
(
data
.
getClipData
()
!=
null
)
{
for
(
int
i
=
0
;
i
<
data
.
getClipData
().
getItemCount
();
i
++)
{
for
(
int
i
=
0
;
i
<
data
.
getClipData
().
getItemCount
();
i
++)
{
uriList
.
add
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
()));
uriList
.
add
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
()));
Log
.
e
(
"gggg"
,
""
+
uriList
.
get
(
i
));
//
Log.e("gggg", "" + uriList.get(i));
}
}
}
else
if
(
Build
.
VERSION
.
SDK_INT
>=
16
&&
data
.
getClipData
()
==
null
)
{
}
else
if
(
Build
.
VERSION
.
SDK_INT
>=
16
&&
data
.
getClipData
()
==
null
)
{
uriList
.
add
(
getPath
(
data
.
getData
()));
uriList
.
add
(
getPath
(
data
.
getData
()));
Log
.
e
(
"eee"
,
getPath
(
data
.
getData
()));
}
}
//照片的uri
//照片的uri
mPresenter
.
onGetSid
(
uriList
,
getResourceString
(
R
.
string
.
on_upload_image
));
mPresenter
.
onGetSid
(
uriList
,
getResourceString
(
R
.
string
.
on_upload_image
));
// onUploadFile(uriList, getResourceString(R.string.on_upload_image));
// onUploadFile1();
}
}
if
(
requestCode
==
PICK_VIDEO_FROM_GALLERY_REQUEST_CODE
&&
resultCode
==
RESULT_OK
)
{
if
(
requestCode
==
PICK_VIDEO_FROM_GALLERY_REQUEST_CODE
&&
resultCode
==
RESULT_OK
)
{
...
@@ -259,12 +265,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -259,12 +265,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
for
(
int
i
=
0
;
i
<
count
;
i
++)
{
for
(
int
i
=
0
;
i
<
count
;
i
++)
{
uriList
.
add
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
()));
uriList
.
add
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
()));
filename
.
add
(
FileUtil
.
fileName
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
())));
filename
.
add
(
FileUtil
.
fileName
(
getPath
(
data
.
getClipData
().
getItemAt
(
i
).
getUri
())));
Log
.
e
(
"gggg"
,
""
+
uriList
.
get
(
i
));
// Log.e("gggg", "" + uriList.get(i));
Log
.
e
(
"dddd"
,
""
+
filename
.
get
(
i
));
// Log.e("dddd", "" + filename.get(i));
// mPresenter.segVideo(uriList.get(i), filename.get(i));
// onUploadFile(uriList, getResourceString(R.string.on_upload_vedio));
}
}
Log
.
e
(
"aaa"
,
count
+
""
);
Log
.
e
(
"aaa"
,
count
+
""
);
...
@@ -274,21 +276,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -274,21 +276,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
String
path
=
FileUtil
.
getFileAbsolutePath
(
this
,
data
.
getData
());
String
path
=
FileUtil
.
getFileAbsolutePath
(
this
,
data
.
getData
());
String
name
=
FileUtil
.
fileName
(
path
);
String
name
=
FileUtil
.
fileName
(
path
);
uriList
.
add
(
path
);
uriList
.
add
(
path
);
// onUploadFile(uriList, getResourceString(R.string.on_upload_vedio));
mPresenter
.
segVideo
(
path
,
getResourceString
(
R
.
string
.
on_upload_vedio
));
ArrayList
segVideoList
=
new
ArrayList
();
segVideoList
=
mPresenter
.
segVideo
(
path
,
name
);
for
(
int
i
=
0
;
i
<
segVideoList
.
size
();
i
++)
Log
.
e
(
"aaa"
,
segVideoList
.
get
(
i
).
toString
());
mPresenter
.
onGetSid
(
segVideoList
,
getResourceString
(
R
.
string
.
on_upload_vedio
));
Log
.
e
(
"path"
,
path
);
// TODO here====================
// TODO here====================
// onUploadFile(compressList, getResourceString(R.string.on_upload_vedio));
// onUploadFile(uriList, getResourceString(R.string.on_upload_vedio));
//影片的uri
//影片的uri
}
}
...
@@ -296,10 +285,9 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -296,10 +285,9 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
}
}
if
(
requestCode
==
PICK_FILE_REQUEST_CODE
&&
resultCode
==
RESULT_OK
)
{
if
(
requestCode
==
PICK_FILE_REQUEST_CODE
&&
resultCode
==
RESULT_OK
)
{
Uri
selectedFile
=
data
.
getData
();
Uri
selectedFile
=
data
.
getData
();
Log
.
e
(
"ggggg"
,
""
+
selectedFile
);
String
filePath
=
MagicFileChooser
.
getAbsolutePathFromUri
(
this
,
selectedFile
);
String
filePath
=
MagicFileChooser
.
getAbsolutePathFromUri
(
this
,
selectedFile
);
Log
.
e
(
"filePath"
,
filePath
+
""
);
//
Log.e("filePath", filePath + "");
// Log.e("ggggg", "" + selectedFile);
checkFileTypeAndOpen
(
filePath
,
selectedFile
);
checkFileTypeAndOpen
(
filePath
,
selectedFile
);
}
}
}
}
...
@@ -425,31 +413,31 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -425,31 +413,31 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
}
}
@Override
@Override
public
void
setPZData
(
List
<
MNTFCT
Response
>
adapterData
)
{
public
void
setPZData
(
List
<
PZ
Response
>
adapterData
)
{
dialogString
.
clear
();
dialogString
.
clear
();
mMainData
.
setm
MNTFCT
DataList
(
adapterData
);
mMainData
.
setm
PZ
DataList
(
adapterData
);
for
(
MNTFCTResponse
mMNTFCT
Response
:
adapterData
)
{
for
(
PZResponse
mPZ
Response
:
adapterData
)
{
dialogString
.
add
(
m
MNTFCT
Response
.
getmPZNM
());
dialogString
.
add
(
m
PZ
Response
.
getmPZNM
());
}
}
showItemDialog
(
dialogString
,
onFavtoryAreaDialogItemClick
);
showItemDialog
(
dialogString
,
onFavtoryAreaDialogItemClick
);
}
}
@Override
@Override
public
void
setDPNMData
(
List
<
PMFCT
Response
>
adapterData
)
{
public
void
setDPNMData
(
List
<
DP
Response
>
adapterData
)
{
dialogString
.
clear
();
dialogString
.
clear
();
mMainData
.
setm
PMFCT
DataList
(
adapterData
);
mMainData
.
setm
DP
DataList
(
adapterData
);
for
(
PMFCTResponse
mPMFCT
Response
:
adapterData
)
{
for
(
DPResponse
mDP
Response
:
adapterData
)
{
dialogString
.
add
(
m
PMFCT
Response
.
getmDPNM
());
dialogString
.
add
(
m
DP
Response
.
getmDPNM
());
}
}
showItemDialog
(
dialogString
,
onFactoryClassDialogItemClick
);
showItemDialog
(
dialogString
,
onFactoryClassDialogItemClick
);
}
}
@Override
@Override
public
void
setEQKDData
(
List
<
EQKD
Response
>
adapterData
)
{
public
void
setEQKDData
(
List
<
SHIFT
Response
>
adapterData
)
{
dialogString
.
clear
();
dialogString
.
clear
();
mMainData
.
setm
EQKD
DataList
(
adapterData
);
mMainData
.
setm
SHIFT
DataList
(
adapterData
);
for
(
EQKDResponse
mEQKD
Response
:
adapterData
)
{
for
(
SHIFTResponse
mSHIFT
Response
:
adapterData
)
{
dialogString
.
add
(
m
EQKD
Response
.
getmShift
());
dialogString
.
add
(
m
SHIFT
Response
.
getmShift
());
}
}
showItemDialog
(
dialogString
,
onClassUnitDialogItemClick
);
showItemDialog
(
dialogString
,
onClassUnitDialogItemClick
);
}
}
...
@@ -464,10 +452,17 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -464,10 +452,17 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
showItemDialog
(
dialogString
,
onShootTypeCategoryDialogItemClick
);
showItemDialog
(
dialogString
,
onShootTypeCategoryDialogItemClick
);
}
}
//如果能改成用retrofit加rxjava最好,已經嘗試過三天的,可能有缺什麼,不過緊急所以先求功能
@Override
protected
void
onPause
()
{
super
.
onPause
();
dismissProgressDialog
();
}
//如果能改成用retrofit加rxjava最好,已經嘗試過,可能有缺什麼,不過緊急所以先求功能
@Override
@Override
public
void
onUploadFile
(
final
ArrayList
<
String
>
uriList
,
String
type
,
final
String
sid
)
{
public
void
onUploadFile
(
final
ArrayList
<
String
>
uriList
,
String
type
,
final
String
sid
)
{
uploadPath
=
mPresenter
.
onJudgmentPath
(
pathCompany
,
pathFactoryArea
,
pathFactoryClass
,
pathClass
,
pathShootType
);
uploadPath
=
mPresenter
.
onJudgmentPath
(
pathCompany
,
pathFactoryArea
,
pathFactoryClass
,
pathClass
,
pathShootType
);
dismissProgressDialog
();
showProgressDialog
(
type
);
showProgressDialog
(
type
);
new
Thread
(
new
Runnable
()
{
new
Thread
(
new
Runnable
()
{
@Override
@Override
...
@@ -498,18 +493,40 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -498,18 +493,40 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
.
method
(
"POST"
,
body
)
.
method
(
"POST"
,
body
)
.
build
();
.
build
();
Log
.
e
(
"test_url"
,
request
.
url
().
toString
());
try
{
try
{
Response
response
=
client
.
newCall
(
request
).
execute
();
Response
response
=
client
.
newCall
(
request
).
execute
();
Log
.
e
(
"response"
,
response
.
body
().
string
());
final
String
responsemessage
=
response
.
message
();
dismissProgressDialog
();
final
String
responsebody
=
response
.
body
().
string
();
JSONObject
json
=
null
;
try
{
json
=
new
JSONObject
(
responsebody
);
}
catch
(
JSONException
e
)
{
e
.
printStackTrace
();
}
Log
.
e
(
"response"
,
responsebody
);
// dismissProgressDialog();
if
(
json
.
get
(
"success"
).
equals
(
"true"
))
MainActivity
.
this
.
runOnUiThread
(
new
Runnable
()
{
@Override
public
void
run
()
{
dismissProgressDialog
();
showDialogMessage
(
"上傳完成"
);
}
});
// Log.e("isSuccess",json.get("IsSuccess").toString());
// Log.e("isSuccess",json.get("IsSuccess").toString());
mPresenter
.
onLogoutSid
(
sidData
);
mPresenter
.
onLogoutSid
(
sidData
);
//登出sid
}
catch
(
IOException
e
)
{
}
catch
(
final
IOException
|
JSONException
e
)
{
e
.
printStackTrace
();
MainActivity
.
this
.
runOnUiThread
(
new
Runnable
()
{
dismissProgressDialog
();
@Override
// showDialogCaveatMessage("上傳失敗");
public
void
run
()
{
Log
.
e
(
"error"
,
""
+
e
.
getMessage
());
dismissProgressDialog
();
e
.
printStackTrace
();
showDialogMessage
(
"上傳失敗"
);
Log
.
e
(
"error"
,
""
+
e
.
getMessage
());
}
});
}
}
}
}
}).
start
();
}).
start
();
...
@@ -518,7 +535,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -518,7 +535,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private
DialogInterface
.
OnClickListener
onCompanyDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
private
DialogInterface
.
OnClickListener
onCompanyDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
t
v
Company
.
setText
(
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
());
t
ext
Company
.
setText
(
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
());
pathCompany
=
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
();
pathCompany
=
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
();
mChooseDeviceItemData
.
setCompany
(
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
());
mChooseDeviceItemData
.
setCompany
(
mMainData
.
getmCODataList
().
get
(
which
).
getcONM
());
mChooseDeviceItemData
.
setCompanyId
(
mMainData
.
getmCODataList
().
get
(
which
).
getcO
());
mChooseDeviceItemData
.
setCompanyId
(
mMainData
.
getmCODataList
().
get
(
which
).
getcO
());
...
@@ -529,21 +546,21 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -529,21 +546,21 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private
DialogInterface
.
OnClickListener
onFavtoryAreaDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
private
DialogInterface
.
OnClickListener
onFavtoryAreaDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
t
vFactory
.
setText
(
mMainData
.
getmMNTFCT
DataList
().
get
(
which
).
getmPZNM
());
t
extFactory
.
setText
(
mMainData
.
getmPZ
DataList
().
get
(
which
).
getmPZNM
());
pathFactoryArea
=
mMainData
.
getm
MNTFCT
DataList
().
get
(
which
).
getmPZNM
();
pathFactoryArea
=
mMainData
.
getm
PZ
DataList
().
get
(
which
).
getmPZNM
();
mChooseDeviceItemData
.
setFactoryAreaName
(
mMainData
.
getm
MNTFCT
DataList
().
get
(
which
).
getmPZNM
());
mChooseDeviceItemData
.
setFactoryAreaName
(
mMainData
.
getm
PZ
DataList
().
get
(
which
).
getmPZNM
());
mChooseDeviceItemData
.
setFactoryAreaId
(
mMainData
.
getm
MNTFCT
DataList
().
get
(
which
).
getmPZ
());
mChooseDeviceItemData
.
setFactoryAreaId
(
mMainData
.
getm
PZ
DataList
().
get
(
which
).
getmPZ
());
}
}
};
};
private
DialogInterface
.
OnClickListener
onFactoryClassDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
private
DialogInterface
.
OnClickListener
onFactoryClassDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
t
vUnit
.
setText
(
mMainData
.
getmPMFCT
DataList
().
get
(
which
).
getmDPNM
());
t
extUnit
.
setText
(
mMainData
.
getmDP
DataList
().
get
(
which
).
getmDPNM
());
pathFactoryClass
=
mMainData
.
getm
PMFCT
DataList
().
get
(
which
).
getmDPNM
();
pathFactoryClass
=
mMainData
.
getm
DP
DataList
().
get
(
which
).
getmDPNM
();
mChooseDeviceItemData
.
setFactoryClassCode
(
mMainData
.
getm
PMFCT
DataList
().
get
(
which
).
getmDP
());
mChooseDeviceItemData
.
setFactoryClassCode
(
mMainData
.
getm
DP
DataList
().
get
(
which
).
getmDP
());
mChooseDeviceItemData
.
setFactoryClass
(
mMainData
.
getm
PMFCT
DataList
().
get
(
which
).
getmDPNM
());
mChooseDeviceItemData
.
setFactoryClass
(
mMainData
.
getm
DP
DataList
().
get
(
which
).
getmDPNM
());
mChooseDeviceItemData
.
setProductionPlantId
(
mMainData
.
getm
PMFCT
DataList
().
get
(
which
).
getmPMFCT
());
mChooseDeviceItemData
.
setProductionPlantId
(
mMainData
.
getm
DP
DataList
().
get
(
which
).
getmPMFCT
());
}
}
};
};
...
@@ -551,16 +568,16 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
...
@@ -551,16 +568,16 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private
DialogInterface
.
OnClickListener
onClassUnitDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
private
DialogInterface
.
OnClickListener
onClassUnitDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
t
vClass
.
setText
(
mMainData
.
getmEQKD
DataList
().
get
(
which
).
getmShift
());
t
extClass
.
setText
(
mMainData
.
getmSHIFT
DataList
().
get
(
which
).
getmShift
());
pathClass
=
mMainData
.
getm
EQKD
DataList
().
get
(
which
).
getmShift
();
pathClass
=
mMainData
.
getm
SHIFT
DataList
().
get
(
which
).
getmShift
();
mChooseDeviceItemData
.
setDeviceCategory
(
mMainData
.
getm
EQKD
DataList
().
get
(
which
).
getmShift
());
mChooseDeviceItemData
.
setDeviceCategory
(
mMainData
.
getm
SHIFT
DataList
().
get
(
which
).
getmShift
());
}
}
};
};
private
DialogInterface
.
OnClickListener
onShootTypeCategoryDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
private
DialogInterface
.
OnClickListener
onShootTypeCategoryDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
t
v
ShootType
.
setText
(
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
());
t
ext
ShootType
.
setText
(
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
());
pathShootType
=
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
();
pathShootType
=
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
();
mChooseDeviceItemData
.
setShootType
(
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
());
mChooseDeviceItemData
.
setShootType
(
mMainData
.
getmTYPEDataList
().
get
(
which
).
getmType
());
}
}
...
...
app/src/main/java/com/example/audiovisualrecord/ui/main/MainContract.java
View file @
cac9468f
...
@@ -2,12 +2,12 @@ package com.example.audiovisualrecord.ui.main;
...
@@ -2,12 +2,12 @@ package com.example.audiovisualrecord.ui.main;
import
com.example.audiovisualrecord.base.BaseView
;
import
com.example.audiovisualrecord.base.BaseView
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
Response
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
Response
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
Response
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
Response
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -15,20 +15,19 @@ import java.util.List;
...
@@ -15,20 +15,19 @@ import java.util.List;
public
interface
MainContract
{
public
interface
MainContract
{
interface
View
extends
BaseView
{
interface
View
extends
BaseView
{
void
setCOData
(
List
<
COResponse
>
adapterData
);
void
setCOData
(
List
<
COResponse
>
adapterData
);
void
setPZData
(
List
<
MNTFCT
Response
>
adapterData
);
void
setPZData
(
List
<
PZ
Response
>
adapterData
);
void
setDPNMData
(
List
<
PMFCT
Response
>
adapterData
);
void
setDPNMData
(
List
<
DP
Response
>
adapterData
);
void
setEQKDData
(
List
<
EQKD
Response
>
adapterData
);
void
setEQKDData
(
List
<
SHIFT
Response
>
adapterData
);
void
setTYPEData
(
List
<
TYPEResponse
>
adapterData
);
void
setTYPEData
(
List
<
TYPEResponse
>
adapterData
);
void
onUploadFile
(
ArrayList
<
String
>
uriList
,
String
type
,
String
sid
);
void
onUploadFile
(
ArrayList
<
String
>
uriList
,
String
type
,
String
sid
);
}
}
interface
Presenter
<
V
extends
MainContract
.
View
>
{
interface
Presenter
<
V
extends
MainContract
.
View
>
{
// void onGetDisposableToken(String DeviceId);
void
onGetComData
();
void
onGetComData
();
void
onGetPZData
();
void
onGetPZData
();
void
onGetDPData
(
String
CO
,
String
PZ
);
void
onGetDPData
(
String
CO
,
String
PZ
);
void
onGetSHIFTData
(
String
CO
,
String
PMFCT
);
void
onGetSHIFTData
(
String
CO
,
String
PMFCT
);
ArrayList
<
String
>
segVideo
(
String
path
,
String
name
);
void
segVideo
(
String
path
,
String
name
);
void
onGetTYPEData
(
String
CO
,
String
PMFCT
);
void
onGetTYPEData
(
String
CO
,
String
PMFCT
);
void
onGetSid
(
ArrayList
<
String
>
uriList
,
String
type
);
void
onGetSid
(
ArrayList
<
String
>
uriList
,
String
type
);
void
onLogoutSid
(
String
sid
);
void
onLogoutSid
(
String
sid
);
...
...
app/src/main/java/com/example/audiovisualrecord/ui/main/MainData.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
ui
.
main
;
package
com
.
example
.
audiovisualrecord
.
ui
.
main
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
Response
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
Response
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
Response
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
Response
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
Response
;
import
java.util.List
;
import
java.util.List
;
public
class
MainData
{
public
class
MainData
{
// private String mMNTCO="";//保養公司代碼
private
List
<
COResponse
>
mCODataList
;
//公司代碼
// private String mMNTFCT="";//保養廠代碼
private
List
<
PZResponse
>
mPZDataList
;
//廠區代碼
// private String mCO="";//公司代碼
private
List
<
DPResponse
>
mDPDataList
;
//廠課代碼
// private String mPMFCT="";//生產廠代碼
private
List
<
SHIFTResponse
>
mSHIFTDataList
;
//班別代碼
// private String mPMFCTNM="";//生產廠代碼
private
List
<
TYPEResponse
>
mTYPEDataList
;
//錄影類型
// private String mEQKD="";//設備類別代碼
// private String mEQKDNM="";//設備類別名稱
// private String mEQNO="";//設備編號
// private String mEQNM="";//設備名稱
// private String mNTCO="";//保養公司代碼
private
List
<
COResponse
>
mCODataList
;
private
List
<
MNTFCTResponse
>
mMNTFCTDataList
;
private
List
<
PMFCTResponse
>
mPMFCTDataList
;
private
List
<
EQKDResponse
>
mEQKDDataList
;
private
List
<
TYPEResponse
>
mTYPEDataList
;
private
String
MSidData
;
private
String
MSidData
;
...
@@ -32,32 +21,32 @@ public class MainData {
...
@@ -32,32 +21,32 @@ public class MainData {
return
mCODataList
;
return
mCODataList
;
}
}
public
List
<
MNTFCTResponse
>
getmMNTFCT
DataList
()
{
public
List
<
PZResponse
>
getmPZ
DataList
()
{
return
m
MNTFCT
DataList
;
return
m
PZ
DataList
;
}
}
public
void
setm
MNTFCTDataList
(
List
<
MNTFCTResponse
>
mMNTFCT
DataList
)
{
public
void
setm
PZDataList
(
List
<
PZResponse
>
mPZ
DataList
)
{
this
.
m
MNTFCTDataList
=
mMNTFCT
DataList
;
this
.
m
PZDataList
=
mPZ
DataList
;
}
}
public
void
setmCODataList
(
List
<
COResponse
>
mCODataList
)
{
public
void
setmCODataList
(
List
<
COResponse
>
mCODataList
)
{
this
.
mCODataList
=
mCODataList
;
this
.
mCODataList
=
mCODataList
;
}
}
public
List
<
PMFCTResponse
>
getmPMFCT
DataList
()
{
public
List
<
DPResponse
>
getmDP
DataList
()
{
return
m
PMFCT
DataList
;
return
m
DP
DataList
;
}
}
public
void
setm
PMFCTDataList
(
List
<
PMFCTResponse
>
mPMFCT
DataList
)
{
public
void
setm
DPDataList
(
List
<
DPResponse
>
mDP
DataList
)
{
this
.
m
PMFCTDataList
=
mPMFCT
DataList
;
this
.
m
DPDataList
=
mDP
DataList
;
}
}
public
List
<
EQKDResponse
>
getmEQKD
DataList
()
{
public
List
<
SHIFTResponse
>
getmSHIFT
DataList
()
{
return
m
EQKD
DataList
;
return
m
SHIFT
DataList
;
}
}
public
void
setm
EQKDDataList
(
List
<
EQKDResponse
>
mEQKD
DataList
)
{
public
void
setm
SHIFTDataList
(
List
<
SHIFTResponse
>
mSHIFT
DataList
)
{
this
.
m
EQKDDataList
=
mEQKD
DataList
;
this
.
m
SHIFTDataList
=
mSHIFT
DataList
;
}
}
public
List
<
TYPEResponse
>
getmTYPEDataList
()
{
public
List
<
TYPEResponse
>
getmTYPEDataList
()
{
...
@@ -76,83 +65,4 @@ public class MainData {
...
@@ -76,83 +65,4 @@ public class MainData {
this
.
MSidData
=
MSidData
;
this
.
MSidData
=
MSidData
;
}
}
// public String getmCO() {
// return mMNTCO;
// }
//
// public void setmCO(String mMNTCO) {
// this.mMNTCO = mMNTCO;
// }
//
// public String getmPZ() {
// return mMNTFCT;
// }
//
// public void setmPZ(String mMNTFCT) {
// this.mMNTFCT = mMNTFCT;
// }
//
// public String getmCO() {
// return mCO;
// }
//
// public void setmCO(String mCO) {
// this.mCO = mCO;
// }
//
// public String getmPMFCT() {
// return mPMFCT;
// }
//
// public void setmPMFCT(String mPMFCT) {
// this.mPMFCT = mPMFCT;
// }
//
// public String getmDPNM() {
// return mPMFCTNM;
// }
//
// public void setmDPNM(String mPMFCTNM) {
// this.mPMFCTNM = mPMFCTNM;
// }
//
// public String getmEQKD() {
// return mEQKD;
// }
//
// public void setmEQKD(String mEQKD) {
// this.mEQKD = mEQKD;
// }
//
// public String getmEQKDNM() {
// return mEQKDNM;
// }
//
// public void setmEQKDNM(String mEQKDNM) {
// this.mEQKDNM = mEQKDNM;
// }
//
// public String getmEQNO() {
// return mEQNO;
// }
//
// public void setmEQNO(String mEQNO) {
// this.mEQNO = mEQNO;
// }
//
// public String getmEQNM() {
// return mEQNM;
// }
//
// public void setmEQNM(String mEQNM) {
// this.mEQNM = mEQNM;
// }
//
// public String getmPZ() {
// return mNTCO;
// }
//
// public void setmPZ(String mNTCO) {
// this.mNTCO = mNTCO;
// }
}
}
app/src/main/java/com/example/audiovisualrecord/ui/main/MainPresenter.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
ui
.
main
;
package
com
.
example
.
audiovisualrecord
.
ui
.
main
;
import
android.os.Environment
;
import
android.os.Environment
;
import
android.text.LoginFilter
;
import
android.util.Log
;
import
android.util.Log
;
import
com.arthenica.mobileffmpeg.Config
;
import
com.arthenica.mobileffmpeg.Config
;
...
@@ -11,23 +10,22 @@ import com.example.audiovisualrecord.R;
...
@@ -11,23 +10,22 @@ import com.example.audiovisualrecord.R;
import
com.example.audiovisualrecord.utils.api.ApiService
;
import
com.example.audiovisualrecord.utils.api.ApiService
;
import
com.example.audiovisualrecord.utils.api.HttpMethods
;
import
com.example.audiovisualrecord.utils.api.HttpMethods
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.CORequest
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.CORequest
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.COResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.COResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.logoutsid.LogoutSidResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.logoutsid.LogoutSidResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchsid.SIDDataList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchsid.SIDDataList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPERequest
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPERequest
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
Request
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
Request
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
Request
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
Request
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
Request
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
Request
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
ResultList
;
import
com.example.audiovisualrecord.utils.rxjava.SchedulerProviderImp
;
import
com.example.audiovisualrecord.utils.rxjava.SchedulerProviderImp
;
import
java.io.File
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.disposables.CompositeDisposable
;
import
io.reactivex.observers.DisposableObserver
;
import
io.reactivex.observers.DisposableObserver
;
...
@@ -45,11 +43,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -45,11 +43,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
private
String
KEY_SEARCH_TYPE
=
"145ce81d-7bae-4848-a38a-e0e738385681"
;
private
String
KEY_SEARCH_TYPE
=
"145ce81d-7bae-4848-a38a-e0e738385681"
;
private
String
USER_ID
=
"N000158385"
;
private
String
USER_ID
=
"N000158385"
;
// private String pathCompany = "";
// private String pathFactoryArea = "";
// private String pathFactoryClass = "";
// private String pathClass = "";
// private String pathShootType = "";
private
V
view
;
private
V
view
;
private
String
LOGIN_AUTHORIZED_ID
=
"acd9be92-46bf-4185-8721-5b60c67f0742"
;
private
String
LOGIN_AUTHORIZED_ID
=
"acd9be92-46bf-4185-8721-5b60c67f0742"
;
private
ApiService
api
;
private
ApiService
api
;
...
@@ -94,15 +87,15 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -94,15 +87,15 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override
@Override
public
void
onGetPZData
()
{
public
void
onGetPZData
()
{
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getMNTFCT
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getMNTFCT
);
MNTFCTRequest
mMNTFCTRequest
=
new
MNTFCT
Request
(
KEY_SEARCH_PZ
,
USER_ID
);
PZRequest
mPZRequest
=
new
PZ
Request
(
KEY_SEARCH_PZ
,
USER_ID
);
compositeDisposable
.
add
(
api
.
getPZ
(
url
,
m
MNTFCT
Request
)
compositeDisposable
.
add
(
api
.
getPZ
(
url
,
m
PZ
Request
)
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
subscribeWith
(
new
DisposableObserver
<
MNTFCT
ResultList
>()
{
.
subscribeWith
(
new
DisposableObserver
<
PZ
ResultList
>()
{
@Override
@Override
public
void
onNext
(
MNTFCTResultList
mMNTFCT
ResultList
)
{
public
void
onNext
(
PZResultList
mPZ
ResultList
)
{
view
.
setPZData
(
m
MNTFCT
ResultList
.
getmNTFCTResponse
());
view
.
setPZData
(
m
PZ
ResultList
.
getmNTFCTResponse
());
}
}
@Override
@Override
...
@@ -121,19 +114,19 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -121,19 +114,19 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override
@Override
public
void
onGetDPData
(
String
CO
,
String
PZ
)
{
public
void
onGetDPData
(
String
CO
,
String
PZ
)
{
final
PMFCTRequest
mPMFCTRequest
=
new
PMFCT
Request
(
KEY_SEARCH_DP
,
USER_ID
,
CO
,
PZ
);
final
DPRequest
mDPRequest
=
new
DP
Request
(
KEY_SEARCH_DP
,
USER_ID
,
CO
,
PZ
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getDP
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getDP
);
compositeDisposable
.
add
(
api
.
getDP
(
url
,
m
PMFCT
Request
)
compositeDisposable
.
add
(
api
.
getDP
(
url
,
m
DP
Request
)
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
subscribeWith
(
new
DisposableObserver
<
PMFCT
ResultList
>()
{
.
subscribeWith
(
new
DisposableObserver
<
DP
ResultList
>()
{
@Override
@Override
public
void
onNext
(
PMFCTResultList
mPMFCT
ResultList
)
{
public
void
onNext
(
DPResultList
mDP
ResultList
)
{
if
(
m
PMFCTResultList
.
getmPMFCT
ResponseList
().
size
()
<
1
)
{
if
(
m
DPResultList
.
getmDP
ResponseList
().
size
()
<
1
)
{
view
.
showDialogCaveatMessage
(
view
.
getResourceString
(
R
.
string
.
get_pmfct_error_no_data
));
view
.
showDialogCaveatMessage
(
view
.
getResourceString
(
R
.
string
.
get_pmfct_error_no_data
));
}
else
{
}
else
{
view
.
setDPNMData
(
m
PMFCTResultList
.
getmPMFCT
ResponseList
());
view
.
setDPNMData
(
m
DPResultList
.
getmDP
ResponseList
());
}
}
}
}
...
@@ -154,19 +147,19 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -154,19 +147,19 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override
@Override
public
void
onGetSHIFTData
(
String
CO
,
String
PMFCT
)
{
public
void
onGetSHIFTData
(
String
CO
,
String
PMFCT
)
{
EQKDRequest
mEQKDRequest
=
new
EQKD
Request
(
KEY_SEARCH_SHIFT
,
USER_ID
,
CO
,
PMFCT
);
SHIFTRequest
mSHIFTRequest
=
new
SHIFT
Request
(
KEY_SEARCH_SHIFT
,
USER_ID
,
CO
,
PMFCT
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getSHIFT
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getSHIFT
);
compositeDisposable
.
add
(
api
.
get
EQKD
(
url
,
mEQKD
Request
)
compositeDisposable
.
add
(
api
.
get
SHIFT
(
url
,
mSHIFT
Request
)
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
subscribeWith
(
new
DisposableObserver
<
EQKD
ResultList
>()
{
.
subscribeWith
(
new
DisposableObserver
<
SHIFT
ResultList
>()
{
@Override
@Override
public
void
onNext
(
EQKDResultList
mEQKD
ResultList
)
{
public
void
onNext
(
SHIFTResultList
mSHIFT
ResultList
)
{
if
(
m
EQKDResultList
.
getmEQKD
ResponseList
().
size
()
<
1
)
{
if
(
m
SHIFTResultList
.
getmSHIFT
ResponseList
().
size
()
<
1
)
{
view
.
showDialogCaveatMessage
(
view
.
getResourceString
(
R
.
string
.
get_shift_error_no_data
));
view
.
showDialogCaveatMessage
(
view
.
getResourceString
(
R
.
string
.
get_shift_error_no_data
));
}
else
{
}
else
{
view
.
setEQKDData
(
m
EQKDResultList
.
getmEQKD
ResponseList
());
view
.
setEQKDData
(
m
SHIFTResultList
.
getmSHIFT
ResponseList
());
}
}
}
}
...
@@ -216,7 +209,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -216,7 +209,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override
@Override
public
void
onGetSid
(
final
ArrayList
<
String
>
uriList
,
final
String
type
)
{
public
void
onGetSid
(
final
ArrayList
<
String
>
uriList
,
final
String
type
)
{
// TYPERequest mTypeRequest = new TYPERequest(KEY_SEARCH_TYPE,USER_ID,CO, PMFCT);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getSID
);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getSID
);
compositeDisposable
.
add
(
api
.
getSID
(
url
)
compositeDisposable
.
add
(
api
.
getSID
(
url
)
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
subscribeOn
(
schedulerProviderImp
.
io
())
...
@@ -224,21 +216,18 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -224,21 +216,18 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
.
subscribeWith
(
new
DisposableObserver
<
SIDDataList
>()
{
.
subscribeWith
(
new
DisposableObserver
<
SIDDataList
>()
{
@Override
@Override
public
void
onNext
(
SIDDataList
mSIDDataList
)
{
public
void
onNext
(
SIDDataList
mSIDDataList
)
{
view
.
onUploadFile
(
uriList
,
type
,
mSIDDataList
.
getsIdDataList
().
getSid
());
view
.
onUploadFile
(
uriList
,
type
,
mSIDDataList
.
getsIdDataList
().
getSid
());
Log
.
e
(
"sss"
,
mSIDDataList
.
getSuccess
());
//
Log.e("sss", mSIDDataList.getSuccess());
}
}
@Override
@Override
public
void
onError
(
Throwable
e
)
{
public
void
onError
(
Throwable
e
)
{
view
.
showDialogCaveatMessage
(
"請重試或檢查網路狀態"
);
view
.
showDialogCaveatMessage
(
"請重試或檢查網路狀態"
);
Log
.
e
(
"error"
,
e
.
getMessage
());
Log
.
e
(
"error"
,
e
.
getMessage
());
}
}
@Override
@Override
public
void
onComplete
()
{
public
void
onComplete
()
{
}
}
})
})
);
);
...
@@ -265,123 +254,24 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -265,123 +254,24 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override
@Override
public
void
onComplete
()
{
public
void
onComplete
()
{
}
}
}));
}));
}
}
@Override
@Override
public
ArrayList
<
String
>
segVideo
(
final
String
path
,
final
String
name
)
{
public
void
segVideo
(
final
String
path
,
final
String
name
)
{
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
view
.
showProgressDialog
(
"影片分割中"
);
final
ArrayList
<
String
>
segVideoList
=
new
ArrayList
<>();
final
ArrayList
<
String
>
segVideoList
=
new
ArrayList
<>();
// Runnable runnable = new Runnable() {
// @Override
// public void run() {
// File video = new File(path);
// int sizeLimit = 50 * 1024 * 1024;
// Log.e("size", video.length() + "");
//// Log.e("path2", );
// int duration = (int) (FFprobe.getMediaInformation(path).getDuration() / 1000); //影片秒數
// int startTime = 0;
// int segTime = 30; //分割秒數
// int loop = 0;
// if (duration % segTime != 0) {
// loop = duration / segTime + 1;
// } else {
// loop = duration / segTime;
// }
// if (video.length() > sizeLimit) {
// for (int i = 0; i < loop; i++) {
//
// int rc = FFmpeg.execute("-ss " + startTime + " -i " + path + " -t " + segTime + " " + Environment.getExternalStorageDirectory().toString() + "/seg_" + i +"_"+ name);
// segVideoList.add(Environment.getExternalStorageDirectory().toString() + "/seg_" + i +"_"+ name);
//
//
// if (rc == RETURN_CODE_SUCCESS) {
// Log.i(Config.TAG, "Command execution completed successfully.");
// } else if (rc == RETURN_CODE_CANCEL) {
// Log.i(Config.TAG, "Command execution cancelled by user.");
// } else {
//
// Log.i(Config.TAG, String.format("Command execution failed with rc=%d and the output below.", rc));
// Config.printLastCommandOutput(Log.INFO);
// }
// startTime += segTime;
// }
// view.dismissProgressDialog();
//
// } else {
// //沒超過
// segVideoList.add(path);
// view.dismissProgressDialog();
// }
// }
//
// };
// Thread thread = new Thread(runnable);
// view.showProgressDialog("影片分割中");
// thread.start();
// try {
// thread.join();
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
// Thread a = new Thread(new Runnable(){
// @Override
// public void run() {
// File video = new File(path);
// int sizeLimit = 50 * 1024 * 1024;
// Log.e("size", video.length() + "");
//// Log.e("path2", );
// int duration = (int) (FFprobe.getMediaInformation(path).getDuration() / 1000); //影片秒數
// int startTime = 0;
// int segTime = 30; //分割秒數
// int loop = 0;
// if (duration % segTime != 0) {
// loop = duration / segTime + 1;
// } else {
// loop = duration / segTime;
// }
// if (video.length() > sizeLimit) {
// for (int i = 0; i < loop; i++) {
//
// int rc = FFmpeg.execute("-ss " + startTime + " -i " + path + " -t " + segTime + " " + Environment.getExternalStorageDirectory().toString() + "/seg_" + i +"_"+ name);
// segVideoList.add(Environment.getExternalStorageDirectory().toString() + "/seg_" + i +"_"+ name);
//
//
// if (rc == RETURN_CODE_SUCCESS) {
// Log.i(Config.TAG, "Command execution completed successfully.");
// } else if (rc == RETURN_CODE_CANCEL) {
// Log.i(Config.TAG, "Command execution cancelled by user.");
// } else {
//
// Log.i(Config.TAG, String.format("Command execution failed with rc=%d and the output below.", rc));
// Config.printLastCommandOutput(Log.INFO);
// }
// startTime += segTime;
// }
// view.dismissProgressDialog();
//
// } else {
// //沒超過
// segVideoList.add(path);
// view.dismissProgressDialog();
// }
// }
// }, "Thread-a");
// a.run();
// a.start();
//
// try {
// a.join();
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
new
Thread
(
new
Runnable
()
{
new
Thread
(
new
Runnable
()
{
@Override
@Override
...
@@ -389,7 +279,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -389,7 +279,6 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
File
video
=
new
File
(
path
);
File
video
=
new
File
(
path
);
int
sizeLimit
=
50
*
1024
*
1024
;
int
sizeLimit
=
50
*
1024
*
1024
;
Log
.
e
(
"size"
,
video
.
length
()
+
""
);
Log
.
e
(
"size"
,
video
.
length
()
+
""
);
// Log.e("path2", );
int
duration
=
(
int
)
(
FFprobe
.
getMediaInformation
(
path
).
getDuration
()
/
1000
);
//影片秒數
int
duration
=
(
int
)
(
FFprobe
.
getMediaInformation
(
path
).
getDuration
()
/
1000
);
//影片秒數
int
startTime
=
0
;
int
startTime
=
0
;
int
segTime
=
30
;
//分割秒數
int
segTime
=
30
;
//分割秒數
...
@@ -402,8 +291,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -402,8 +291,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
if
(
video
.
length
()
>
sizeLimit
)
{
if
(
video
.
length
()
>
sizeLimit
)
{
for
(
int
i
=
0
;
i
<
loop
;
i
++)
{
for
(
int
i
=
0
;
i
<
loop
;
i
++)
{
int
rc
=
FFmpeg
.
execute
(
"-ss "
+
startTime
+
" -i "
+
path
+
" -t "
+
segTime
+
" "
+
Environment
.
getExternalStorageDirectory
().
toString
()
+
"/seg_"
+
i
+
"_"
+
name
);
int
rc
=
FFmpeg
.
execute
(
"-ss "
+
startTime
+
" -i "
+
path
+
" -t "
+
segTime
+
" "
+
Environment
.
getExternalStorageDirectory
().
toString
()
+
"/seg_"
+
i
+
"_"
+
video
.
getName
().
replace
(
".mp4"
,
""
)
+
".mp4"
);
segVideoList
.
add
(
Environment
.
getExternalStorageDirectory
().
toString
()
+
"/seg_"
+
i
+
"_"
+
name
);
segVideoList
.
add
(
Environment
.
getExternalStorageDirectory
().
toString
()
+
"/seg_"
+
i
+
"_"
+
video
.
getName
());
if
(
rc
==
RETURN_CODE_SUCCESS
)
{
if
(
rc
==
RETURN_CODE_SUCCESS
)
{
Log
.
i
(
Config
.
TAG
,
"Command execution completed successfully."
);
Log
.
i
(
Config
.
TAG
,
"Command execution completed successfully."
);
...
@@ -416,20 +306,16 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
...
@@ -416,20 +306,16 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
}
}
startTime
+=
segTime
;
startTime
+=
segTime
;
}
}
view
.
dismissProgressDialog
();
view
.
dismissProgressDialog
();
onGetSid
(
segVideoList
,
"video"
);
}
else
{
}
else
{
//沒超過
//沒超過
segVideoList
.
add
(
path
);
segVideoList
.
add
(
path
);
view
.
dismissProgressDialog
();
view
.
dismissProgressDialog
();
onGetSid
(
segVideoList
,
"video"
);
}
}
}
}
}).
start
();
}).
start
();
Log
.
e
(
"asd"
,
segVideoList
.
size
()+
""
);
return
segVideoList
;
}
}
@Override
@Override
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/ApiService.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.CORequest
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.CORequest
;
import
com.example.audiovisualrecord.utils.api.apidata.
CORequest
.COResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.
searchco
.COResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.login.LoginRequest
;
import
com.example.audiovisualrecord.utils.api.apidata.login.LoginRequest
;
import
com.example.audiovisualrecord.utils.api.apidata.login.LoginResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.login.LoginResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.logoutsid.LogoutSidResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.logoutsid.LogoutSidResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchsid.SIDDataList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchsid.SIDDataList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPERequest
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPERequest
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
Request
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
Request
;
import
com.example.audiovisualrecord.utils.api.search
eqkd.EQKD
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
shift.SHIFT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
Request
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
Request
;
import
com.example.audiovisualrecord.utils.api.search
mntfct.MNTFCT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
pz.PZ
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
Request
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
Request
;
import
com.example.audiovisualrecord.utils.api.search
pmfct.PMFCT
ResultList
;
import
com.example.audiovisualrecord.utils.api.search
dp.DP
ResultList
;
import
io.reactivex.Observable
;
import
io.reactivex.Observable
;
import
retrofit2.http.Body
;
import
retrofit2.http.Body
;
import
retrofit2.http.GET
;
import
retrofit2.http.GET
;
import
retrofit2.http.POST
;
import
retrofit2.http.POST
;
import
retrofit2.http.Query
;
import
retrofit2.http.Url
;
import
retrofit2.http.Url
;
public
interface
ApiService
{
public
interface
ApiService
{
@POST
@POST
Observable
<
COResultList
>
getCO
(
@Url
String
url
,
@Body
CORequest
mCORequest
);
Observable
<
COResultList
>
getCO
(
@Url
String
url
,
@Body
CORequest
mCORequest
);
@POST
@POST
Observable
<
MNTFCTResultList
>
getPZ
(
@Url
String
url
,
@Body
MNTFCTRequest
mMNTFCT
Request
);
Observable
<
PZResultList
>
getPZ
(
@Url
String
url
,
@Body
PZRequest
mPZ
Request
);
@POST
@POST
Observable
<
PMFCTResultList
>
getDP
(
@Url
String
url
,
@Body
PMFCTRequest
mPMFCT
Request
);
Observable
<
DPResultList
>
getDP
(
@Url
String
url
,
@Body
DPRequest
mDP
Request
);
@POST
@POST
Observable
<
EQKDResultList
>
getEQKD
(
@Url
String
url
,
@Body
EQKDRequest
mEQKD
Request
);
Observable
<
SHIFTResultList
>
getSHIFT
(
@Url
String
url
,
@Body
SHIFTRequest
mSHIFT
Request
);
@POST
@POST
Observable
<
TYPEResultList
>
getTYPE
(
@Url
String
url
,
@Body
TYPERequest
mTypeRequest
);
Observable
<
TYPEResultList
>
getTYPE
(
@Url
String
url
,
@Body
TYPERequest
mTypeRequest
);
@POST
@POST
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
CORequest
/CORequest.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
searchco
/CORequest.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
CORequest
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchco
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
CORequest
/COResponse.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
searchco
/COResponse.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
CORequest
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchco
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
CORequest
/COResultList.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/
searchco
/COResultList.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
CORequest
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchco
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/searchtype/TYPEResultList.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchtype
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchtype
;
import
com.example.audiovisualrecord.utils.api.searcheqkd.EQKDResponse
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pmfct/PMFCT
Request.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
dp/DP
Request.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pmfct
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
dp
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
PMFCT
Request
{
public
class
DP
Request
{
@SerializedName
(
"AuthorizedId"
)
@SerializedName
(
"AuthorizedId"
)
@Expose
@Expose
private
String
authorizedId
;
private
String
authorizedId
;
...
@@ -16,7 +16,7 @@ public class PMFCTRequest {
...
@@ -16,7 +16,7 @@ public class PMFCTRequest {
@SerializedName
(
"PZ"
)
@SerializedName
(
"PZ"
)
@Expose
@Expose
private
String
mPZ
;
private
String
mPZ
;
public
PMFCT
Request
(
String
authorizedId
,
String
idNo
,
String
mCO
,
String
mPZ
)
{
public
DP
Request
(
String
authorizedId
,
String
idNo
,
String
mCO
,
String
mPZ
)
{
this
.
authorizedId
=
authorizedId
;
this
.
authorizedId
=
authorizedId
;
this
.
idNo
=
idNo
;
this
.
idNo
=
idNo
;
this
.
mCO
=
mCO
;
this
.
mCO
=
mCO
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pmfct/PMFCT
Response.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
dp/DP
Response.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pmfct
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
dp
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
PMFCT
Response
{
public
class
DP
Response
{
@SerializedName
(
"CO"
)
@SerializedName
(
"CO"
)
@Expose
@Expose
private
String
mCO
;
private
String
mCO
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
eqkd/EQKD
ResultList.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
dp/DP
ResultList.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
eqkd
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
dp
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
import
java.util.List
;
import
java.util.List
;
public
class
EQKD
ResultList
{
public
class
DP
ResultList
{
@SerializedName
(
"ResultList"
)
@SerializedName
(
"ResultList"
)
@Expose
@Expose
private
List
<
EQKDResponse
>
mEQKD
ResponseList
;
private
List
<
DPResponse
>
mDP
ResponseList
;
public
List
<
EQKDResponse
>
getmEQKD
ResponseList
()
{
public
List
<
DPResponse
>
getmDP
ResponseList
()
{
return
m
EQKD
ResponseList
;
return
m
DP
ResponseList
;
}
}
public
void
setm
EQKDResponseList
(
List
<
EQKDResponse
>
mEQKD
ResponseList
)
{
public
void
setm
DPResponseList
(
List
<
DPResponse
>
mDP
ResponseList
)
{
this
.
m
EQKDResponseList
=
mEQKD
ResponseList
;
this
.
m
DPResponseList
=
mDP
ResponseList
;
}
}
}
}
app/src/main/java/com/example/audiovisualrecord/utils/api/search
mntfct/MNTFCT
Request.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pz/PZ
Request.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
mntfct
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pz
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
MNTFCT
Request
{
public
class
PZ
Request
{
@SerializedName
(
"AuthorizedId"
)
@SerializedName
(
"AuthorizedId"
)
@Expose
@Expose
private
String
authorizedId
;
private
String
authorizedId
;
@SerializedName
(
"IdNo"
)
@SerializedName
(
"IdNo"
)
@Expose
@Expose
private
String
idNo
;
private
String
idNo
;
public
MNTFCT
Request
(
String
authorizedId
,
String
idNo
)
{
public
PZ
Request
(
String
authorizedId
,
String
idNo
)
{
this
.
authorizedId
=
authorizedId
;
this
.
authorizedId
=
authorizedId
;
this
.
idNo
=
idNo
;
this
.
idNo
=
idNo
;
}
}
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
mntfct/MNTFCT
Response.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pz/PZ
Response.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
mntfct
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pz
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
MNTFCT
Response
{
public
class
PZ
Response
{
@SerializedName
(
"PZ"
)
@SerializedName
(
"PZ"
)
@Expose
@Expose
private
String
mPZ
;
private
String
mPZ
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
mntfct/MNTFCT
ResultList.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pz/PZ
ResultList.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
mntfct
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pz
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
import
java.util.List
;
import
java.util.List
;
public
class
MNTFCT
ResultList
{
public
class
PZ
ResultList
{
@SerializedName
(
"ResultList"
)
@SerializedName
(
"ResultList"
)
@Expose
@Expose
private
List
<
MNTFCT
Response
>
mNTFCTResponse
;
private
List
<
PZ
Response
>
mNTFCTResponse
;
public
List
<
MNTFCT
Response
>
getmNTFCTResponse
()
{
public
List
<
PZ
Response
>
getmNTFCTResponse
()
{
return
mNTFCTResponse
;
return
mNTFCTResponse
;
}
}
public
void
setmNTFCTResponse
(
List
<
MNTFCT
Response
>
mNTFCTResponse
)
{
public
void
setmNTFCTResponse
(
List
<
PZ
Response
>
mNTFCTResponse
)
{
this
.
mNTFCTResponse
=
mNTFCTResponse
;
this
.
mNTFCTResponse
=
mNTFCTResponse
;
}
}
}
}
app/src/main/java/com/example/audiovisualrecord/utils/api/search
eqkd/EQKD
Request.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
shift/SHIFT
Request.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
eqkd
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
shift
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
EQKD
Request
{
public
class
SHIFT
Request
{
@SerializedName
(
"AuthorizedId"
)
@SerializedName
(
"AuthorizedId"
)
@Expose
@Expose
private
String
authorizedId
;
private
String
authorizedId
;
...
@@ -16,7 +16,7 @@ public class EQKDRequest {
...
@@ -16,7 +16,7 @@ public class EQKDRequest {
@SerializedName
(
"PMFCT"
)
@SerializedName
(
"PMFCT"
)
@Expose
@Expose
private
String
mPMFCT
;
private
String
mPMFCT
;
public
EQKD
Request
(
String
authorizedId
,
String
idNo
,
String
mCO
,
String
mPMFCT
)
{
public
SHIFT
Request
(
String
authorizedId
,
String
idNo
,
String
mCO
,
String
mPMFCT
)
{
this
.
authorizedId
=
authorizedId
;
this
.
authorizedId
=
authorizedId
;
this
.
idNo
=
idNo
;
this
.
idNo
=
idNo
;
this
.
mCO
=
mCO
;
this
.
mCO
=
mCO
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
eqkd/EQKD
Response.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
shift/SHIFT
Response.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
eqkd
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
shift
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
public
class
EQKD
Response
{
public
class
SHIFT
Response
{
@SerializedName
(
"Shift"
)
@SerializedName
(
"Shift"
)
@Expose
@Expose
private
String
mShift
;
private
String
mShift
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/search
pmfct/PMFC
TResultList.java
→
app/src/main/java/com/example/audiovisualrecord/utils/api/search
shift/SHIF
TResultList.java
View file @
cac9468f
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
pmfc
t
;
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
search
shif
t
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
import
com.google.gson.annotations.SerializedName
;
import
java.util.List
;
import
java.util.List
;
public
class
PMFC
TResultList
{
public
class
SHIF
TResultList
{
@SerializedName
(
"ResultList"
)
@SerializedName
(
"ResultList"
)
@Expose
@Expose
private
List
<
PMFCTResponse
>
mPMFC
TResponseList
;
private
List
<
SHIFTResponse
>
mSHIF
TResponseList
;
public
List
<
PMFCTResponse
>
getmPMFC
TResponseList
()
{
public
List
<
SHIFTResponse
>
getmSHIF
TResponseList
()
{
return
m
PMFC
TResponseList
;
return
m
SHIF
TResponseList
;
}
}
public
void
setm
PMFCTResponseList
(
List
<
PMFCTResponse
>
mPMFC
TResponseList
)
{
public
void
setm
SHIFTResponseList
(
List
<
SHIFTResponse
>
mSHIF
TResponseList
)
{
this
.
m
PMFCTResponseList
=
mPMFC
TResponseList
;
this
.
m
SHIFTResponseList
=
mSHIF
TResponseList
;
}
}
}
}
app/src/main/res/layout/activity_main.xml
View file @
cac9468f
...
@@ -6,6 +6,7 @@
...
@@ -6,6 +6,7 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/background"
android:background=
"@drawable/background"
android:id=
"@+id/mConstrainLayout"
>
>
<androidx.constraintlayout.widget.Guideline
<androidx.constraintlayout.widget.Guideline
...
@@ -100,115 +101,116 @@
...
@@ -100,115 +101,116 @@
app:layout_constraintGuide_percent=
"0.95"
/>
app:layout_constraintGuide_percent=
"0.95"
/>
<!-- 選擇區域 -->
<!-- 選擇區域 -->
<
Button
<
TextView
android:id=
"@+id/tv_company"
android:id=
"@+id/tv_company"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:background=
"@drawable/p2_conpany"
android:background=
"@drawable/p2_conpany"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintWidth_percent=
"0.84"
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_12"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
/>
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_12"
app:layout_constraintWidth_percent=
"0.84"
/>
<TextView
<TextView
android:id=
"@+id/text_company"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintWidth_percent=
"0.45"
android:gravity=
"center"
app:layout_constraintHeight_percent=
"0.05"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
app:layout_constraintTop_toTopOf=
"@+id/tv_company"
app:layout_constraintBottom_toBottomOf=
"@id/tv_company"
app:layout_constraintBottom_toBottomOf=
"@id/tv_company"
app:layout_constraintHeight_percent=
"0.05"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
/>
app:layout_constraintTop_toTopOf=
"@id/tv_company"
app:layout_constraintWidth_percent=
"0.45"
/>
<
Button
<
TextView
android:id=
"@+id/tv_factory"
android:id=
"@+id/tv_factory"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:background=
"@drawable/p2_factory"
android:background=
"@drawable/p2_factory"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintWidth_percent=
"0.84"
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_20"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
/>
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_20"
app:layout_constraintWidth_percent=
"0.84"
/>
<TextView
<TextView
android:id=
"@+id/text_factory"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintWidth_percent=
"0.45"
android:gravity=
"center"
app:layout_constraintHeight_percent=
"0.05"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
app:layout_constraintTop_toTopOf=
"@+id/tv_factory"
app:layout_constraintBottom_toBottomOf=
"@id/tv_factory"
app:layout_constraintBottom_toBottomOf=
"@id/tv_factory"
app:layout_constraintHeight_percent=
"0.05"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
/>
app:layout_constraintTop_toTopOf=
"@+id/tv_factory"
app:layout_constraintWidth_percent=
"0.45"
/>
<
Button
<
TextView
android:id=
"@+id/tv_unit"
android:id=
"@+id/tv_unit"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:background=
"@drawable/p2_unit"
android:background=
"@drawable/p2_unit"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintWidth_percent=
"0.84"
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_28"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
/>
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_28"
app:layout_constraintWidth_percent=
"0.84"
/>
<TextView
<TextView
android:id=
"@+id/text_unit"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintWidth_percent=
"0.35"
android:gravity=
"center"
app:layout_constraintHeight_percent=
"0.05"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
app:layout_constraintTop_toTopOf=
"@+id/tv_unit"
app:layout_constraintBottom_toBottomOf=
"@id/tv_unit"
app:layout_constraintBottom_toBottomOf=
"@id/tv_unit"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_45"
app:layout_constraintHeight_percent=
"0.05"
/>
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
app:layout_constraintTop_toTopOf=
"@+id/tv_unit"
app:layout_constraintWidth_percent=
"0.46"
/>
<
Button
<
TextView
android:id=
"@+id/tv_class"
android:id=
"@+id/tv_class"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:background=
"@drawable/p2_class"
android:background=
"@drawable/p2_class"
android:gravity=
"center_horizontal"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintWidth_percent=
"0.84"
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_36"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
/>
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_36"
app:layout_constraintWidth_percent=
"0.84"
/>
<TextView
<TextView
android:id=
"@+id/text_class"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintWidth_percent=
"0.45"
android:gravity=
"center"
app:layout_constraintHeight_percent=
"0.05"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
app:layout_constraintTop_toTopOf=
"@+id/tv_class"
app:layout_constraintBottom_toBottomOf=
"@id/tv_class"
app:layout_constraintBottom_toBottomOf=
"@id/tv_class"
app:layout_constraintHeight_percent=
"0.05"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
/>
app:layout_constraintTop_toTopOf=
"@+id/tv_class"
app:layout_constraintWidth_percent=
"0.45"
/>
<
Button
<
TextView
android:id=
"@+id/tv_shoottype"
android:id=
"@+id/tv_shoottype"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:background=
"@drawable/p2_shoottype"
android:background=
"@drawable/p2_shoottype"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintHeight_percent=
"0.07"
app:layout_constraintWidth_percent=
"0.84"
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_44"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_10"
/>
app:layout_constraintTop_toBottomOf=
"@+id/guide_line_horizontal_44"
app:layout_constraintWidth_percent=
"0.84"
/>
<TextView
<TextView
android:id=
"@+id/text_shoottype"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintWidth_percent=
"0.45"
android:gravity=
"center"
app:layout_constraintHeight_percent=
"0.05"
android:textColor=
"@color/black"
android:textColor=
"@color/black"
app:layout_constraintTop_toTopOf=
"@+id/tv_shoottype"
app:layout_constraintBottom_toBottomOf=
"@id/tv_shoottype"
app:layout_constraintBottom_toBottomOf=
"@id/tv_shoottype"
app:layout_constraintHeight_percent=
"0.05"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
app:layout_constraintStart_toEndOf=
"@id/guide_line_vertical_40"
/>
app:layout_constraintTop_toTopOf=
"@+id/tv_shoottype"
app:layout_constraintWidth_percent=
"0.45"
/>
<!-- 建立現場資料 -->
<!-- 建立現場資料 -->
<View
<View
...
...
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