Commit 1bf78a2e by Yu-Tung

上傳api測試

parent a25be043
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
......@@ -10,6 +10,7 @@ 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;
......@@ -39,6 +40,7 @@ import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.concurrent.TimeUnit;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
......@@ -46,9 +48,10 @@ 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 {
public class MainActivity extends BaseActivity implements MainContract.View, View.OnClickListener {
private static final int REQUEST_CAPTURE_IMAGE = 100;
......@@ -57,13 +60,13 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
private static final int PICK_VIDEO_FROM_GALLERY_REQUEST_CODE = 400;
private static final int PICK_FILE_REQUEST_CODE = 500;
private Button btnCapturePicture, btnRecordVideo, btnGetImageFromGallery, btnGetVideoFromGallery, btnDeviceEdit, btnCentralCloud, btnChoseDevice,btnBasicInformation;
private Button btnCapturePicture, btnRecordVideo, btnGetImageFromGallery, btnGetVideoFromGallery, btnDeviceEdit, btnCentralCloud, btnChoseDevice, btnBasicInformation;
private File photoFile;
// Bundle bag;
String token,imageFilePath;
// Bundle bag;
String token, imageFilePath;
int countFile = 0;
TextView tvCompany,tvFactory,tvClass,tvUnit,tvShootType;
TextView tvCompany, tvFactory, tvClass, tvUnit, tvShootType;
private MainPresenter mPresenter;
private MainData mMainData;
private ChooseDeviceItemData mChooseDeviceItemData;
......@@ -73,7 +76,6 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
private List<String> filename = new ArrayList<>();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......@@ -161,7 +163,7 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
PackageManager packageManager = this.getPackageManager();
List<ResolveInfo> listCam = packageManager.queryIntentActivities(takeVideoIntent, 0);
takeVideoIntent.setPackage(listCam.get(0).activityInfo.packageName);
takeVideoIntent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, 10996480L);
// takeVideoIntent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, 10996480L); //限制影片大小
if (takeVideoIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE);
}
......@@ -218,18 +220,18 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
if (requestCode == PICK_IMAGE_FROM_GALLERY_REQUEST_CODE && resultCode == RESULT_OK) {
ArrayList<String> uriList = new ArrayList<String>();
if (data.getClipData() != null){
if (data.getClipData() != null) {
for (int i = 0; i < data.getClipData().getItemCount(); i++) {
uriList.add(getPath(data.getClipData().getItemAt(i).getUri()));
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()));
Log.e("eee",getPath(data.getData()));
Log.e("eee", getPath(data.getData()));
}
//照片的uri
// onUploadFile(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) {
......@@ -243,16 +245,17 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
uriList.add(getPath(data.getClipData().getItemAt(i).getUri()));
filename.add(FileUtil.fileName(getPath(data.getClipData().getItemAt(i).getUri())));
Log.e("gggg", "" + uriList.get(i));
Log.e("dddd",""+filename.get(i));
mPresenter.segVideo(uriList.get(i),filename.get(i));
Log.e("dddd", "" + filename.get(i));
mPresenter.segVideo(uriList.get(i), filename.get(i));
}
Log.e("aaa",count+"");
Log.e("aaa", count + "");
} else if (Build.VERSION.SDK_INT >= 16 && data.getClipData() == null) {
uriList.clear();
String path = FileUtil.getFileAbsolutePath(this, data.getData());
String name =FileUtil.fileName(path);
mPresenter.segVideo(path,name);
String name = FileUtil.fileName(path);
mPresenter.segVideo(path, name);
Log.e("path", path);
// TODO here====================
// onUploadFile(compressList, getResourceString(R.string.on_upload_vedio));
......@@ -295,13 +298,14 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
@Override
public void onClick(View v) {
switch (v.getId()){
switch (v.getId()) {
case R.id.btnCaptureImage:
openCameraIntent();
break;
case R.id.btnGetImageFromGallery:
pickImageFromGallery();
// onUploadFile1();
break;
case R.id.btnGetVideoFromGallery:
......@@ -321,33 +325,33 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
break;
case R.id.tv_unit:
if (mChooseDeviceItemData.getFactoryAreaId().equals("")){
if (mChooseDeviceItemData.getFactoryAreaId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_maintenance_plant_error));
}
if(mChooseDeviceItemData.getCompanyId().equals("")){
if (mChooseDeviceItemData.getCompanyId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_company_error));
}
mPresenter.onGetDPData(mChooseDeviceItemData.getCompanyId(),mChooseDeviceItemData.getFactoryAreaId());
mPresenter.onGetDPData(mChooseDeviceItemData.getCompanyId(), mChooseDeviceItemData.getFactoryAreaId());
break;
case R.id.tv_class:
if (mChooseDeviceItemData.getCompanyId().equals("")){
if (mChooseDeviceItemData.getCompanyId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_company_error));
}
if (mChooseDeviceItemData.getProductionPlantId().equals("")){
if (mChooseDeviceItemData.getProductionPlantId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_production_plant_error));
}
mPresenter.onGetSHIFTData(mChooseDeviceItemData.getCompanyId(),mChooseDeviceItemData.getProductionPlantId());
mPresenter.onGetSHIFTData(mChooseDeviceItemData.getCompanyId(), mChooseDeviceItemData.getProductionPlantId());
break;
case R.id.tv_shoottype:
if (mChooseDeviceItemData.getCompanyId().equals("")){
if (mChooseDeviceItemData.getCompanyId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_company_error));
}
if (mChooseDeviceItemData.getProductionPlantId().equals("")){
if (mChooseDeviceItemData.getProductionPlantId().equals("")) {
showDialogCaveatMessage(getResourceString(R.string.add_device_no_production_plant_error));
}
mPresenter.onGetTYPEData(mChooseDeviceItemData.getCompanyId(),mChooseDeviceItemData.getProductionPlantId()
mPresenter.onGetTYPEData(mChooseDeviceItemData.getCompanyId(), mChooseDeviceItemData.getProductionPlantId()
);
break;
......@@ -360,37 +364,80 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
new Thread(new Runnable() {
@Override
public void run() {
// OkHttpClient client = new OkHttpClient().newBuilder()
// .build();
// MediaType mediaType = MediaType.parse("text/plain");
// MultipartBody.Builder buildernew = new MultipartBody.Builder()
// .setType(MultipartBody.FORM)
// .addFormDataPart("AuthorizedId", "1179cf63-9f4c-4060-a0f3-201f108b20c1")
// .addFormDataPart("CO", "1")
// .addFormDataPart("CONM", "台塑")
// .addFormDataPart("PMFCT", "A3")
// .addFormDataPart("PMFCTNM", "麥寮AN廠")
// .addFormDataPart("EQKD", "PU")
// .addFormDataPart("EQKDNM", "泵浦")
// .addFormDataPart("EQNO", "P-166")
// .addFormDataPart("EQNM", "工業用水泵浦")
// .addFormDataPart("RecordDate", "2020/04/06")
// .addFormDataPart("RecordSubject", "測試")
// .addFormDataPart("UploadEMP", "1")
// .addFormDataPart("UploadNM", "新人")
// .addFormDataPart("UploadDATETM", "");
// for (String path : uriList) {
// File uploadFile = new File(path);
// buildernew.addFormDataPart("", uploadFile.getName(),
// RequestBody.create(MediaType.parse("application/octet-stream"),
// uploadFile));
// }
// RequestBody body = buildernew.build();
//
// Request request = new Request.Builder()
// .url("https://cloud.fpcetg.com.tw/FPC/API/MTN/API_MTN/MTN/Upload")
// .method("POST", body)
// .build();
String apiname = "SYNO.FileStation.Upload";
String method = "upload";
String version = "2";
String sid = "lRlPHRE7r9hm---3DSmlBx_r4gTaMuYkASLtpKHKp0c3M1jgiWwzGtQqj5d6OXoggCk1dIvHz7tUvhCgWnIJkY";
String path1 = "/仁武氯乙烯廠製造一課/1_SOP導讀";
Boolean a = true;
Boolean b = false;
OkHttpClient client = new OkHttpClient().newBuilder()
.connectTimeout(30, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.build();
MediaType mediaType = MediaType.parse("text/plain");
MediaType mediaType = MediaType.parse("application/octet-stream");
MultipartBody.Builder buildernew = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("AuthorizedId", "1179cf63-9f4c-4060-a0f3-201f108b20c1")
.addFormDataPart("CO", "1")
.addFormDataPart("CONM", "台塑")
.addFormDataPart("PMFCT", "A3")
.addFormDataPart("PMFCTNM", "麥寮AN廠")
.addFormDataPart("EQKD", "PU")
.addFormDataPart("EQKDNM", "泵浦")
.addFormDataPart("EQNO", "P-166")
.addFormDataPart("EQNM", "工業用水泵浦")
.addFormDataPart("RecordDate", "2020/04/06")
.addFormDataPart("RecordSubject", "測試")
.addFormDataPart("UploadEMP", "1")
.addFormDataPart("UploadNM", "新人")
.addFormDataPart("UploadDATETM", "");
for (String path : uriList) {
File uploadFile = new File(path);
buildernew.addFormDataPart("", uploadFile.getName(),
RequestBody.create(MediaType.parse("application/octet-stream"),
uploadFile));
}
.addFormDataPart("path",""+path1)
.addFormDataPart("create_parents", ""+b)
.addFormDataPart("overwrite", ""+a)
.addFormDataPart("file", "b525a7db0c5da640_1.jpg",
RequestBody.create(mediaType,new File("/storage/emulated/0/Watashi AHD V.2/temp_images/b525a7db0c5da640_1.jpg")
));
// .addFormDataPart("file","seg_1VID_20200604_155612.mp4.mp4",
// RequestBody.create(MediaType.parse("application/octet-stream"),
// "/storage/emulated/0/seg_1VID_20200604_155612.mp4.mp4"));
// for (String path : uriList) {
// File uploadFile = new File(path);
// buildernew.addFormDataPart("file", uploadFile.getName(),
// RequestBody.create(mediaType,uploadFile));
// Log.e("path", uploadFile.getName());
// }
RequestBody body = buildernew.build();
Request request = new Request.Builder()
.url("https://cloud.fpcetg.com.tw/FPC/API/MTN/API_MTN/MTN/Upload")
.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")
.method("POST", body)
.build();
try {
Response response = client.newCall(request).execute();
Log.e("response", response.body().string());
......@@ -399,7 +446,40 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
} catch (IOException e) {
e.printStackTrace();
dismissProgressDialog();
showDialogCaveatMessage("上傳失敗");
// showDialogCaveatMessage("上傳失敗");
Log.e("error", "" + e.getMessage());
}
}
}).start();
}
private void onUploadFile1() {
new Thread(new Runnable() {
@Override
public void run() {
OkHttpClient client = new OkHttpClient().newBuilder()
.connectTimeout(15, TimeUnit.SECONDS)
.readTimeout(15, TimeUnit.SECONDS)
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("path", "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DA")
.addFormDataPart("create_parents", "flase")
.addFormDataPart("overwrite", "true")
.addFormDataPart("file", "IMG_20200528_144512.jpg",
RequestBody.create(MediaType.parse("application/octet-stream"),
new File("/storage/emulated/0/DCIM/Camera/IMG_20200528_144512.jpg")))
.build();
Request request = new Request.Builder()
.url("https://fpcrtpms.synology.me:5001/webapi/entry.cgi?api=SYNO.FileStation.Upload&method=upload&version=2")
.method("POST", body)
.build();
try {
Response response = client.newCall(request).execute();
Log.e("response", response.body().string());
} catch (IOException e) {
e.printStackTrace();
Log.e("error", "" + e.getMessage());
}
}
......@@ -410,50 +490,50 @@ public class MainActivity extends BaseActivity implements MainContract.View,View
public void setCOData(List<COResponse> adapterData) {
dialogString.clear();
mMainData.setmCODataList(adapterData);
for (COResponse mCoResponse: adapterData){
for (COResponse mCoResponse : adapterData) {
dialogString.add(mCoResponse.getcONM());
}
showItemDialog(dialogString,onCompanyDialogItemClick);
showItemDialog(dialogString, onCompanyDialogItemClick);
}
@Override
public void setPZData(List<MNTFCTResponse> adapterData) {
dialogString.clear();
mMainData.setmMNTFCTDataList(adapterData);
for(MNTFCTResponse mMNTFCTResponse: adapterData){
for (MNTFCTResponse mMNTFCTResponse : adapterData) {
dialogString.add(mMNTFCTResponse.getmPZNM());
}
showItemDialog(dialogString,onMaintenanceDialogItemClick);
showItemDialog(dialogString, onMaintenanceDialogItemClick);
}
@Override
public void setDPNMData(List<PMFCTResponse> adapterData) {
dialogString.clear();
mMainData.setmPMFCTDataList(adapterData);
for(PMFCTResponse mPMFCTResponse: adapterData){
for (PMFCTResponse mPMFCTResponse : adapterData) {
dialogString.add(mPMFCTResponse.getmDPNM());
}
showItemDialog(dialogString,onProductionDialogItemClick);
showItemDialog(dialogString, onProductionDialogItemClick);
}
@Override
public void setEQKDData(List<EQKDResponse> adapterData) {
dialogString.clear();
mMainData.setmEQKDDataList(adapterData);
for(EQKDResponse mEQKDResponse: adapterData){
for (EQKDResponse mEQKDResponse : adapterData) {
dialogString.add(mEQKDResponse.getmShift());
}
showItemDialog(dialogString,onDeviceCategoryDialogItemClick);
showItemDialog(dialogString, onDeviceCategoryDialogItemClick);
}
@Override
public void setTYPEData(List<TYPEResponse> adapterData) {
dialogString.clear();
mMainData.setmTYPEDataList(adapterData);
for(TYPEResponse mTYPEResponse: adapterData){
for (TYPEResponse mTYPEResponse : adapterData) {
dialogString.add(mTYPEResponse.getmType());
}
showItemDialog(dialogString,onShootTypeCategoryDialogItemClick);
showItemDialog(dialogString, onShootTypeCategoryDialogItemClick);
}
private DialogInterface.OnClickListener onCompanyDialogItemClick = new DialogInterface.OnClickListener() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment