Commit 6789352e by Yu-Tung

6/28修改問題

parent cac9468f
...@@ -64,8 +64,12 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V ...@@ -64,8 +64,12 @@ 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);
presenter.onLogin("", ""); if (onCheckUserisEmpty()) {
showProgressDialog("登入中");
presenter.onLogin(editAccount.getText().toString(), editPassword.getText().toString());
} else {
btnLogin.setEnabled(true);
}
break; break;
} }
} }
......
...@@ -33,7 +33,8 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra ...@@ -33,7 +33,8 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
@Override @Override
public void onLogin(String account, String password) { public void onLogin(String account, String password) {
String url = view.getResourceString(R.string.api_on_Login); String url = view.getResourceString(R.string.api_on_Login);
LoginRequest mLoginRequest = new LoginRequest(LOGIN_AUTHORIZED_ID, "N000158385", "781122222"); // LoginRequest mLoginRequest = new LoginRequest(LOGIN_AUTHORIZED_ID, "N000158385", "781122222");
LoginRequest mLoginRequest = new LoginRequest(LOGIN_AUTHORIZED_ID, account, password);
compositeDisposable.add(api.onLogin(url, mLoginRequest) compositeDisposable.add(api.onLogin(url, mLoginRequest)
.subscribeOn(schedulerProviderImp.io()) .subscribeOn(schedulerProviderImp.io())
.observeOn(schedulerProviderImp.ui()) .observeOn(schedulerProviderImp.ui())
......
...@@ -72,7 +72,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -72,7 +72,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private String pathShootType = ""; private String pathShootType = "";
private String uploadPath = ""; private String uploadPath = "";
// Bundle bag; Bundle bag;
String token, imageFilePath; String token, imageFilePath;
int countFile = 0; int countFile = 0;
...@@ -92,13 +92,27 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -92,13 +92,27 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
protected void onCreate(@Nullable Bundle savedInstanceState) { protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);
// bag = getIntent().getExtras(); dismissProgressDialog();
// token = bag.getString("token"); bag = getIntent().getExtras();
token = bag.getString("token");
init(); init();
mPresenter = new MainPresenter(this); mPresenter = new MainPresenter(this, token);
mMainData = new MainData(); mMainData = new MainData();
mChooseDeviceItemData = new ChooseDeviceItemData(); mChooseDeviceItemData = new ChooseDeviceItemData();
// mPresenter.onGetSid();
createSegVideoFolder();
}
private void createSegVideoFolder() {
File folder = new File(Environment.getExternalStorageDirectory() +
File.separator +"Seg_Video");
boolean success = true;
if (!folder.exists()) {
success = folder.mkdirs();
}else {
Log.e("wer","folder exists");
}
} }
@Override @Override
...@@ -201,10 +215,12 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -201,10 +215,12 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
storageDir /* directory */ storageDir /* directory */
); );
imageFilePath = image.getAbsolutePath(); imageFilePath = image.getAbsolutePath();
return image; return image;
} }
private void settingSystemCamera(Intent intent) { private void settingSystemCamera(Intent intent) {
PackageManager packageManager = MainActivity.this.getPackageManager(); PackageManager packageManager = MainActivity.this.getPackageManager();
List<ResolveInfo> listCam = packageManager.queryIntentActivities(intent, 0); List<ResolveInfo> listCam = packageManager.queryIntentActivities(intent, 0);
...@@ -228,7 +244,10 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -228,7 +244,10 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
MediaStore.Images.Media.insertImage(getContentResolver(), myBitmap, imgFile.getName(), "description"); MediaStore.Images.Media.insertImage(getContentResolver(), myBitmap, imgFile.getName(), "description");
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(new File(Environment.getExternalStorageDirectory().getPath())))); sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(new File(Environment.getExternalStorageDirectory().getPath()))));
// Intent it = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
// Uri uri = Uri.fromFile(imgFile);
// it.setData(uri);
// this.sendBroadcast(it);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
...@@ -482,8 +501,9 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -482,8 +501,9 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
for (String path : uriList) { for (String path : uriList) {
File uploadFile = new File(path); File uploadFile = new File(path);
Log.e("file5555555", uploadFile.length()/1024/1024 + "mb");
buildernew.addFormDataPart("file", uploadFile.getName(), buildernew.addFormDataPart("file", uploadFile.getName(),
RequestBody.create(MediaType.parse("multiparty/form-data"), path)); RequestBody.create(MediaType.parse("application/octet-stream"), path));
} }
RequestBody body = buildernew.build(); RequestBody body = buildernew.build();
...@@ -506,15 +526,25 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -506,15 +526,25 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
Log.e("response", responsebody); Log.e("response", responsebody);
// dismissProgressDialog(); // dismissProgressDialog();
if (json.get("success").equals("true")) if (json.get("success").equals("true")){
MainActivity.this.runOnUiThread(new Runnable() { MainActivity.this.runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
dismissProgressDialog(); dismissProgressDialog();
showDialogMessage("上傳完成"); showDialogMessage("上傳完成");
}
});
}else{
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); //登出sid mPresenter.onLogoutSid(sidData); //登出sid
} catch (final IOException | JSONException e) { } catch (final IOException | JSONException e) {
......
...@@ -10,6 +10,7 @@ import com.example.audiovisualrecord.R; ...@@ -10,6 +10,7 @@ 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.logoutsid.LogoutSidRequest;
import com.example.audiovisualrecord.utils.api.apidata.searchco.CORequest; import com.example.audiovisualrecord.utils.api.apidata.searchco.CORequest;
import com.example.audiovisualrecord.utils.api.apidata.searchco.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;
...@@ -41,7 +42,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -41,7 +42,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
private String KEY_SEARCH_DP = "1c76477f-1fb0-49fb-a5bd-e75311bbe691"; private String KEY_SEARCH_DP = "1c76477f-1fb0-49fb-a5bd-e75311bbe691";
private String KEY_SEARCH_SHIFT = "3e161e49-30d5-44ce-bbc4-3bcff49f7c37"; private String KEY_SEARCH_SHIFT = "3e161e49-30d5-44ce-bbc4-3bcff49f7c37";
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 = "";
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";
...@@ -49,8 +50,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -49,8 +50,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
SchedulerProviderImp schedulerProviderImp = new SchedulerProviderImp(); SchedulerProviderImp schedulerProviderImp = new SchedulerProviderImp();
private CompositeDisposable compositeDisposable; private CompositeDisposable compositeDisposable;
public MainPresenter(V view) { public MainPresenter(V view, String userId) {
this.view = view; this.view = view;
USER_ID = userId;
api = HttpMethods.getInstance().getApi(); api = HttpMethods.getInstance().getApi();
compositeDisposable = new CompositeDisposable(); compositeDisposable = new CompositeDisposable();
...@@ -216,7 +218,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -216,7 +218,7 @@ 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());
} }
...@@ -235,8 +237,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -235,8 +237,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override @Override
public void onLogoutSid(String sid) { public void onLogoutSid(String sid) {
String url = "https://webapp.fpcitc.com.tw/SOP/api/FileUpload/PostLogout?sid=" + sid; String url = "https://webapp.fpcitc.com.tw/SOP/api/FileUpload/PostLogout";
compositeDisposable.add(api.onLogoutSid(url) LogoutSidRequest mLogoutSidRequest = new LogoutSidRequest(sid);
compositeDisposable.add(api.onLogoutSid(url, mLogoutSidRequest)
.subscribeOn(schedulerProviderImp.io()) .subscribeOn(schedulerProviderImp.io())
.observeOn(schedulerProviderImp.ui()) .observeOn(schedulerProviderImp.ui())
.subscribeWith(new DisposableObserver<LogoutSidResponse>() { .subscribeWith(new DisposableObserver<LogoutSidResponse>() {
...@@ -276,6 +279,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -276,6 +279,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
new Thread(new Runnable() { new Thread(new Runnable() {
@Override @Override
public void run() { public void run() {
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() + "");
...@@ -283,16 +287,20 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -283,16 +287,20 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
int startTime = 0; int startTime = 0;
int segTime = 30; //分割秒數 int segTime = 30; //分割秒數
int loop = 0; int loop = 0;
if (duration % segTime != 0) { if (duration % segTime != 0) {
loop = duration / segTime + 1; loop = duration / segTime + 1;
} else { } else {
loop = duration / segTime; loop = duration / segTime;
} }
if (video.length() > sizeLimit) { if (video.length() > sizeLimit) {
if (duration < 30) {
segTime = segTime / 2;
}
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 +"_"+ video.getName().replace(".mp4", "") +".mp4"); int rc = FFmpeg.execute("-ss " + startTime + " -i " + path + " -t " + segTime + " " + Environment.getExternalStorageDirectory().toString() + "/Seg_Video" + "/seg_" + i + "_" + video.getName().replace(".mp4", "") + ".mp4");
segVideoList.add(Environment.getExternalStorageDirectory().toString() + "/seg_" + i +"_"+ video.getName()); segVideoList.add(Environment.getExternalStorageDirectory().toString() + "/seg_" + i + "_" + video.getName());
if (rc == RETURN_CODE_SUCCESS) { if (rc == RETURN_CODE_SUCCESS) {
...@@ -307,12 +315,12 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -307,12 +315,12 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
startTime += segTime; startTime += segTime;
} }
view.dismissProgressDialog(); view.dismissProgressDialog();
onGetSid(segVideoList, "video"); onGetSid(segVideoList, name);
} else { } else {
//沒超過 //沒超過
segVideoList.add(path); segVideoList.add(path);
view.dismissProgressDialog(); view.dismissProgressDialog();
onGetSid(segVideoList, "video"); onGetSid(segVideoList, name);
} }
} }
}).start(); }).start();
...@@ -333,6 +341,18 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -333,6 +341,18 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DC"; path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DC";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DD".equals(pathClass)) { } else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DD".equals(pathClass)) {
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DD"; path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DD";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "SOP導讀".equals(pathShootType)) {
path = "/仁武氯乙烯廠製造二課/1_SOP導讀";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "SOP審視會議".equals(pathShootType)) {
path = "/仁武氯乙烯廠製造二課/2_SOP審視修訂";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DA".equals(pathClass)) {
path = "/仁武氯乙烯廠製造二課/3_SOP落實度查核/DA";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DB".equals(pathClass)) {
path = "/仁武氯乙烯廠製造二課/3_SOP落實度查核/DB";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DC".equals(pathClass)) {
path = "/仁武氯乙烯廠製造二課/3_SOP落實度查核/DC";
} else if ("仁武氯乙烯廠製造二課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DD".equals(pathClass)) {
path = "/仁武氯乙烯廠製造二課/3_SOP落實度查核/DD";
} }
return path; return path;
} }
......
package com.example.audiovisualrecord.utils.api; package com.example.audiovisualrecord.utils.api;
import com.example.audiovisualrecord.utils.api.apidata.logoutsid.LogoutSidRequest;
import com.example.audiovisualrecord.utils.api.apidata.searchco.CORequest; import com.example.audiovisualrecord.utils.api.apidata.searchco.CORequest;
import com.example.audiovisualrecord.utils.api.apidata.searchco.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;
...@@ -37,5 +38,6 @@ public interface ApiService { ...@@ -37,5 +38,6 @@ public interface ApiService {
@GET @GET
Observable<SIDDataList> getSID(@Url String url); Observable<SIDDataList> getSID(@Url String url);
@POST @POST
Observable<LogoutSidResponse> onLogoutSid(@Url String url); Observable<LogoutSidResponse> onLogoutSid(@Url String url , @Body LogoutSidRequest mLogoutSidRequest);
} }
package com.example.audiovisualrecord.utils.api.apidata.logoutsid;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class LogoutSidRequest {
@SerializedName("sid")
@Expose
private String sid;
public LogoutSidRequest(String sid) {
this.sid = sid;
}
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
}
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