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
84c46eb4
Commit
84c46eb4
authored
Jun 20, 2020
by
Yu-Tung
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add GetSid api
parent
0a44e592
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
155 additions
and
23 deletions
+155
-23
MainActivity.java
...a/com/example/audiovisualrecord/ui/main/MainActivity.java
+57
-23
MainContract.java
...a/com/example/audiovisualrecord/ui/main/MainContract.java
+3
-0
MainData.java
.../java/com/example/audiovisualrecord/ui/main/MainData.java
+9
-0
MainPresenter.java
.../com/example/audiovisualrecord/ui/main/MainPresenter.java
+29
-0
ApiService.java
...a/com/example/audiovisualrecord/utils/api/ApiService.java
+4
-0
SIDDataList.java
...visualrecord/utils/api/apidata/searchsid/SIDDataList.java
+30
-0
getSID.java
...audiovisualrecord/utils/api/apidata/searchsid/getSID.java
+18
-0
strings.xml
app/src/main/res/values/strings.xml
+5
-0
No files found.
app/src/main/java/com/example/audiovisualrecord/ui/main/MainActivity.java
View file @
84c46eb4
...
...
@@ -10,7 +10,6 @@ import android.content.pm.PackageManager;
import
android.content.pm.ResolveInfo
;
import
android.graphics.Bitmap
;
import
android.graphics.BitmapFactory
;
import
android.media.MediaRecorder
;
import
android.net.Uri
;
import
android.os.Build
;
import
android.os.Bundle
;
...
...
@@ -43,17 +42,12 @@ import java.util.List;
import
java.util.Locale
;
import
java.util.concurrent.TimeUnit
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.disposables.Disposable
;
import
okhttp3.Call
;
import
okhttp3.Callback
;
import
okhttp3.MediaType
;
import
okhttp3.MultipartBody
;
import
okhttp3.OkHttpClient
;
import
okhttp3.Request
;
import
okhttp3.RequestBody
;
import
okhttp3.Response
;
import
retrofit2.http.Body
;
public
class
MainActivity
extends
BaseActivity
implements
MainContract
.
View
,
View
.
OnClickListener
{
...
...
@@ -80,6 +74,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private
List
<
String
>
filepath
=
new
ArrayList
<>();
private
List
<
String
>
filename
=
new
ArrayList
<>();
String
sidData
=
""
;
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
...
...
@@ -91,6 +86,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
mPresenter
=
new
MainPresenter
(
this
);
mMainData
=
new
MainData
();
mChooseDeviceItemData
=
new
ChooseDeviceItemData
();
mPresenter
.
onGetSid
();
}
@Override
...
...
@@ -235,6 +231,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
Log
.
e
(
"eee"
,
getPath
(
data
.
getData
()));
}
//照片的uri
// mPresenter.onGetSid();
onUploadFile
(
uriList
,
getResourceString
(
R
.
string
.
on_upload_image
));
// onUploadFile1();
}
...
...
@@ -365,6 +362,8 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
//如果能改成用retrofit加rxjava最好,已經嘗試過三天的,可能有缺什麼,不過緊急所以先求功能
private
void
onUploadFile
(
final
ArrayList
<
String
>
uriList
,
String
type
)
{
// ongetsid();
showProgressDialog
(
type
);
new
Thread
(
new
Runnable
()
{
@Override
...
...
@@ -404,45 +403,54 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
String
apiname
=
"SYNO.FileStation.Upload"
;
String
method
=
"upload"
;
String
version
=
"2"
;
String
sid
=
"
Tx2aTlIDdA5zLsxYDOYP95AnZqw1iUaEBGnDbsszo1QqaJzIe3B7AFZY5quVBataqzdMt3h-59L-AUhM9R_5hQ
"
;
String
sid
=
"
4CY9mdpmlP5eh8KGLob3h3bqm6VvygRIu8BPwMIOy3UlYGBJ3VkM7Dgtw-hLIdH3ipntHHmJDK7y72Tio9ybLk
"
;
String
path1
=
"/仁武氯乙烯廠製造一課/1_SOP導讀"
;
Boolean
a
=
true
;
Boolean
b
=
false
;
OkHttpClient
client
=
new
OkHttpClient
().
newBuilder
()
.
connectTimeout
(
3
0
,
TimeUnit
.
SECONDS
)
.
readTimeout
(
3
0
,
TimeUnit
.
SECONDS
)
.
writeTimeout
(
3
0
,
TimeUnit
.
SECONDS
)
.
connectTimeout
(
6
0
,
TimeUnit
.
SECONDS
)
.
readTimeout
(
6
0
,
TimeUnit
.
SECONDS
)
.
writeTimeout
(
6
0
,
TimeUnit
.
SECONDS
)
.
build
();
// MediaType mediaType = MediaType.parse("application/octet-stream");
MediaType
mediaType
=
MediaType
.
parse
(
"text/plain"
);
// MediaType mediaType = MediaType.parse("multiparty/form-data");
MediaType
mediaType
=
MediaType
.
parse
(
"image/jpg"
);
MultipartBody
.
Builder
buildernew
=
new
MultipartBody
.
Builder
()
.
setType
(
MultipartBody
.
FORM
)
.
addFormDataPart
(
"api"
,
apiname
)
.
addFormDataPart
(
"method"
,
method
)
.
addFormDataPart
(
"version"
,
version
)
.
addFormDataPart
(
"_sid"
,
sid
)
//
.addFormDataPart("api", apiname)
//
.addFormDataPart("method", method)
//
.addFormDataPart("version", version)
//
.addFormDataPart("_sid", sid)
.
addFormDataPart
(
"path"
,
path1
)
.
addFormDataPart
(
"create_parents"
,
""
+
b
)
.
addFormDataPart
(
"overwrite"
,
""
+
a
);
.
addFormDataPart
(
"create_parents"
,
a
.
toString
())
.
addFormDataPart
(
"overwrite"
,
a
.
toString
())
.
addFormDataPart
(
"data"
,
""
)
.
addFormDataPart
(
"success"
,
""
);
Log
.
e
(
"test_path"
,
path1
);
Log
.
e
(
"test_create_parents"
,
b
.
toString
());
Log
.
e
(
"test_overwrite"
,
a
.
toString
());
// .addFormDataPart("file", "b525a7db0c5da640_1.jpg",
// RequestBody.create(mediaType,new File("/storage/emulated/0/Watashi AHD V.2/temp_images/b525a7db0c5da640_1.jpg")
// ));
Log
.
e
(
"test"
,
""
+
buildernew
.
build
().
parts
().
get
(
0
));
//
Log.e("test",""+buildernew.build().parts().get(0));
for
(
String
path
:
uriList
)
{
File
uploadFile
=
new
File
(
path
);
// RequestBody fileBody = RequestBody.create(mediaType,uploadFile);
buildernew
.
addFormDataPart
(
"file"
,
uploadFile
.
getName
(),
RequestBody
.
create
(
MediaType
.
parse
(
"application/octet-stream"
),
path
));
Log
.
e
(
"pathname"
,
uploadFile
.
getName
());
RequestBody
.
create
(
MediaType
.
parse
(
"multiparty/form-data"
),
path
));
// RequestBody.create(MediaType.parse("application/octet-stream"), path));
Log
.
e
(
"test_filename"
,
uploadFile
.
getName
());
Log
.
e
(
"path"
,
path
);
Log
.
e
(
"file"
,
uploadFile
.
getAbsolutePath
());
Log
.
e
(
"
test_
file"
,
uploadFile
.
getAbsolutePath
());
}
RequestBody
body
=
buildernew
.
build
();
// buildernew.build();
Request
request
=
new
Request
.
Builder
()
.
url
(
"https://fpcrtpms.synology.me:5001/webapi/entry.cgi?api="
+
apiname
+
"&method="
+
method
+
"&version="
+
version
+
"&_sid="
+
sid
)
.
url
(
"https://fpcrtpms.synology.me:5001/webapi/entry.cgi?api="
+
apiname
+
"&method="
+
method
+
"&version="
+
version
+
"&_sid="
+
sid
Data
)
// .url("https://fpcrtpms.synology.me:5001/webapi/entry.cgi")
.
method
(
"POST"
,
body
)
// .header("api",apiname)
...
...
@@ -453,7 +461,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
// .post(buildernew.build())
.
build
();
Log
.
e
(
"
requrstBody"
,
request
.
toString
());
Log
.
e
(
"
test_url"
,
request
.
url
()
.
toString
());
try
{
Response
response
=
client
.
newCall
(
request
).
execute
();
Log
.
e
(
"response"
,
response
.
body
().
string
());
...
...
@@ -517,6 +525,26 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
}).
start
();
}
private
void
ongetsid
(){
new
Thread
(
new
Runnable
()
{
@Override
public
void
run
()
{
OkHttpClient
client
=
new
OkHttpClient
().
newBuilder
()
.
build
();
Request
request
=
new
Request
.
Builder
()
.
url
(
"https://webapp.fpcitc.com.tw/SOP/api/FileUpload/GetLogin"
)
.
method
(
"GET"
,
null
)
.
addHeader
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
.
build
();
try
{
Response
response
=
client
.
newCall
(
request
).
execute
();
Log
.
e
(
"response"
,
response
.
body
().
string
());
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}).
start
();
}
@Override
public
void
setCOData
(
List
<
COResponse
>
adapterData
)
{
dialogString
.
clear
();
...
...
@@ -567,6 +595,12 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
showItemDialog
(
dialogString
,
onShootTypeCategoryDialogItemClick
);
}
@Override
public
void
setSIDData
(
String
sid
)
{
sidData
=
sid
;
}
private
DialogInterface
.
OnClickListener
onCompanyDialogItemClick
=
new
DialogInterface
.
OnClickListener
()
{
@Override
public
void
onClick
(
DialogInterface
dialog
,
int
which
)
{
...
...
app/src/main/java/com/example/audiovisualrecord/ui/main/MainContract.java
View file @
84c46eb4
...
...
@@ -3,6 +3,7 @@ package com.example.audiovisualrecord.ui.main;
import
com.example.audiovisualrecord.base.BaseView
;
import
com.example.audiovisualrecord.utils.api.apidata.CORequest.COResponse
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResponse
;
import
com.example.audiovisualrecord.utils.api.searcheqkd.EQKDResponse
;
import
com.example.audiovisualrecord.utils.api.searchmntfct.MNTFCTResponse
;
...
...
@@ -17,6 +18,7 @@ public interface MainContract {
void
setDPNMData
(
List
<
PMFCTResponse
>
adapterData
);
void
setEQKDData
(
List
<
EQKDResponse
>
adapterData
);
void
setTYPEData
(
List
<
TYPEResponse
>
adapterData
);
void
setSIDData
(
String
sid
);
}
interface
Presenter
<
V
extends
MainContract
.
View
>
{
...
...
@@ -27,5 +29,6 @@ public interface MainContract {
void
onGetSHIFTData
(
String
CO
,
String
PMFCT
);
void
segVideo
(
String
path
,
String
name
);
void
onGetTYPEData
(
String
CO
,
String
PMFCT
);
void
onGetSid
();
}
}
app/src/main/java/com/example/audiovisualrecord/ui/main/MainData.java
View file @
84c46eb4
...
...
@@ -25,6 +25,7 @@ public class MainData {
private
List
<
PMFCTResponse
>
mPMFCTDataList
;
private
List
<
EQKDResponse
>
mEQKDDataList
;
private
List
<
TYPEResponse
>
mTYPEDataList
;
private
String
MSidData
;
public
List
<
COResponse
>
getmCODataList
()
{
...
...
@@ -67,6 +68,14 @@ public class MainData {
this
.
mTYPEDataList
=
mTYPEDataList
;
}
public
String
getMSidData
()
{
return
MSidData
;
}
public
void
setMSidData
(
String
MSidData
)
{
this
.
MSidData
=
MSidData
;
}
// public String getmCO() {
// return mMNTCO;
// }
...
...
app/src/main/java/com/example/audiovisualrecord/ui/main/MainPresenter.java
View file @
84c46eb4
...
...
@@ -11,6 +11,7 @@ import com.example.audiovisualrecord.utils.api.ApiService;
import
com.example.audiovisualrecord.utils.api.HttpMethods
;
import
com.example.audiovisualrecord.utils.api.apidata.CORequest.CORequest
;
import
com.example.audiovisualrecord.utils.api.apidata.CORequest.COResultList
;
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.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.searcheqkd.EQKDRequest
;
...
...
@@ -205,6 +206,34 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
}
@Override
public
void
onGetSid
()
{
// TYPERequest mTypeRequest = new TYPERequest(KEY_SEARCH_TYPE,USER_ID,CO, PMFCT);
String
url
=
view
.
getResourceString
(
R
.
string
.
api_on_getSID
);
compositeDisposable
.
add
(
api
.
getSID
(
url
)
.
subscribeOn
(
schedulerProviderImp
.
io
())
.
observeOn
(
schedulerProviderImp
.
ui
())
.
subscribeWith
(
new
DisposableObserver
<
SIDDataList
>()
{
@Override
public
void
onNext
(
SIDDataList
mSIDDataList
)
{
view
.
setSIDData
(
mSIDDataList
.
getsIdDataList
().
getSid
());
Log
.
e
(
"sss"
,
mSIDDataList
.
getSuccess
());
}
@Override
public
void
onError
(
Throwable
e
)
{
// view.showDialogCaveatMessage(view.getResourceString( R.string.add_device_error));
Log
.
e
(
"aaaa"
,
e
.
getMessage
());
}
@Override
public
void
onComplete
()
{
}
})
);
}
@Override
public
void
segVideo
(
String
path
,
String
name
)
{
File
video
=
new
File
(
path
);
int
sizeLimit
=
50
*
1024
*
1024
;
...
...
app/src/main/java/com/example/audiovisualrecord/utils/api/ApiService.java
View file @
84c46eb4
...
...
@@ -4,6 +4,7 @@ import com.example.audiovisualrecord.utils.api.apidata.CORequest.CORequest;
import
com.example.audiovisualrecord.utils.api.apidata.CORequest.COResultList
;
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.searchsid.SIDDataList
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPERequest
;
import
com.example.audiovisualrecord.utils.api.apidata.searchtype.TYPEResultList
;
import
com.example.audiovisualrecord.utils.api.searcheqkd.EQKDRequest
;
...
...
@@ -15,6 +16,7 @@ import com.example.audiovisualrecord.utils.api.searchpmfct.PMFCTResultList;
import
io.reactivex.Observable
;
import
retrofit2.http.Body
;
import
retrofit2.http.GET
;
import
retrofit2.http.POST
;
import
retrofit2.http.Url
;
...
...
@@ -31,4 +33,6 @@ public interface ApiService {
Observable
<
TYPEResultList
>
getTYPE
(
@Url
String
url
,
@Body
TYPERequest
mTypeRequest
);
@POST
Observable
<
LoginResponse
>
onLogin
(
@Url
String
url
,
@Body
LoginRequest
mLoginRequest
);
@GET
Observable
<
SIDDataList
>
getSID
(
@Url
String
url
);
}
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/searchsid/SIDDataList.java
0 → 100644
View file @
84c46eb4
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchsid
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
public
class
SIDDataList
{
@SerializedName
(
"data"
)
@Expose
private
getSID
sIdDataList
;
@SerializedName
(
"success"
)
@Expose
private
java
.
lang
.
String
success
;
public
getSID
getsIdDataList
()
{
return
sIdDataList
;
}
public
void
setsIdDataList
(
getSID
sIdDataList
)
{
this
.
sIdDataList
=
sIdDataList
;
}
public
java
.
lang
.
String
getSuccess
()
{
return
success
;
}
public
void
setSuccess
(
java
.
lang
.
String
success
)
{
this
.
success
=
success
;
}
}
app/src/main/java/com/example/audiovisualrecord/utils/api/apidata/searchsid/getSID.java
0 → 100644
View file @
84c46eb4
package
com
.
example
.
audiovisualrecord
.
utils
.
api
.
apidata
.
searchsid
;
import
com.google.gson.annotations.Expose
;
import
com.google.gson.annotations.SerializedName
;
public
class
getSID
{
@SerializedName
(
"sid"
)
@Expose
private
java
.
lang
.
String
sid
;
public
java
.
lang
.
String
getSid
()
{
return
sid
;
}
public
void
setSid
(
java
.
lang
.
String
sid
)
{
this
.
sid
=
sid
;
}
}
app/src/main/res/values/strings.xml
View file @
84c46eb4
...
...
@@ -45,6 +45,8 @@
<string
name=
"api_on_getEQNO"
>
SearchEQNO
</string>
<string
name=
"api_on_Login"
>
https://cloud.fpcetg.com.tw/FPC/API/FM/SopRecord_API/INFO/Access
</string>
<string
name=
"api_on_DisposableToken"
>
DisposableToken
</string>
<string
name=
"api_on_getSID"
>
https://webapp.fpcitc.com.tw/SOP/api/FileUpload/GetLogin
</string>
<!--addDevice部分-->
<string
name=
"get_pmfct_error_no_data"
>
廠課無資料
</string>
...
...
@@ -64,5 +66,8 @@
<string
name=
"add_device_no_data_file"
>
檔案還未選擇
</string>
<string
name=
"add_device_error"
>
查詢資料失敗,請重試或檢查網路狀態,或檢查資料是否正確
</string>
<!-- getsid-->
<string
name=
"get_sid_error_no_data"
>
sid無資料
</string>
</resources>
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