Commit 3602d56b authored by Dark Zane's avatar Dark Zane Committed by GitHub

Merge branch 'fallenstardust:master' into YGOMOBILE-1

parents d1a66cda c9a904f3
...@@ -1331,14 +1331,13 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte ...@@ -1331,14 +1331,13 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
}).done((deckData) -> { }).done((deckData) -> {
if (deckData != null) { if (deckData != null) {
mDeckId = deckData.getDeckId(); mDeckId = deckData.getDeckId();
deckData.getDeckYdk(); LogUtil.i(TAG,deckData.toString());
String fileFullName = deckData.getDeckName() + YDK_FILE_EX; String fileFullName = deckData.getDeckName() + YDK_FILE_EX;
File dir = new File(getActivity().getApplicationInfo().dataDir, "cache"); File dir = new File(getActivity().getApplicationInfo().dataDir, "cache");
//将卡组存到cache缓存目录中 //将卡组存到cache缓存目录中
boolean result = DeckSquareFileUtil.saveFileToPath(dir.getPath(), fileFullName, deckData.getDeckYdk(), deckData.getDeckUpdateDate()); boolean result = DeckSquareFileUtil.saveFileToPath(dir.getPath(), fileFullName, deckData.getDeckYdk(), deckData.getDeckUpdateDate());
if (result) {//存储成功,使用预加载功能 if (result) {//存储成功,使用预加载功能
LogUtil.i(TAG, "square deck detail done"); LogUtil.i(TAG, "square deck detail done");
//File file = new File(dir, fileFullName);
preLoadFile(dir.getPath() + "/" + fileFullName); preLoadFile(dir.getPath() + "/" + fileFullName);
tv_add_1.setText(R.string.like_deck_thumb); tv_add_1.setText(R.string.like_deck_thumb);
ll_click_like.setVisibility(View.VISIBLE); ll_click_like.setVisibility(View.VISIBLE);
......
...@@ -35,9 +35,6 @@ import cn.garymb.ygomobile.AppsSettings; ...@@ -35,9 +35,6 @@ import cn.garymb.ygomobile.AppsSettings;
import cn.garymb.ygomobile.Constants; import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.bean.DeckType; import cn.garymb.ygomobile.bean.DeckType;
import cn.garymb.ygomobile.bean.events.DeckFile; import cn.garymb.ygomobile.bean.events.DeckFile;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.LoginToken;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.MyOnlineDeckDetail;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.PushSingleDeckResponse;
import cn.garymb.ygomobile.lite.R; import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.lite.databinding.FragmentDeckSelectBinding; import cn.garymb.ygomobile.lite.databinding.FragmentDeckSelectBinding;
import cn.garymb.ygomobile.ui.adapters.DeckListAdapter; import cn.garymb.ygomobile.ui.adapters.DeckListAdapter;
...@@ -45,12 +42,9 @@ import cn.garymb.ygomobile.ui.adapters.SimpleListAdapter; ...@@ -45,12 +42,9 @@ import cn.garymb.ygomobile.ui.adapters.SimpleListAdapter;
import cn.garymb.ygomobile.ui.adapters.TextSelectAdapter; import cn.garymb.ygomobile.ui.adapters.TextSelectAdapter;
import cn.garymb.ygomobile.ui.mycard.mcchat.util.ImageUtil; import cn.garymb.ygomobile.ui.mycard.mcchat.util.ImageUtil;
import cn.garymb.ygomobile.ui.plus.DialogPlus; import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.plus.VUiKit;
import cn.garymb.ygomobile.utils.DeckUtil; import cn.garymb.ygomobile.utils.DeckUtil;
import cn.garymb.ygomobile.utils.FileUtils; import cn.garymb.ygomobile.utils.FileUtils;
import cn.garymb.ygomobile.utils.IOUtils; import cn.garymb.ygomobile.utils.IOUtils;
import cn.garymb.ygomobile.utils.LogUtil;
import cn.garymb.ygomobile.utils.SharedPreferenceUtil;
import cn.garymb.ygomobile.utils.YGODeckDialogUtil; import cn.garymb.ygomobile.utils.YGODeckDialogUtil;
import cn.garymb.ygomobile.utils.YGOUtil; import cn.garymb.ygomobile.utils.YGOUtil;
import cn.garymb.ygomobile.utils.recyclerview.DeckTypeTouchHelperCallback; import cn.garymb.ygomobile.utils.recyclerview.DeckTypeTouchHelperCallback;
......
...@@ -48,6 +48,7 @@ public class DeckSquareFileUtil { ...@@ -48,6 +48,7 @@ public class DeckSquareFileUtil {
item.setDeckCoverCard1(detail.getDeckCoverCard1()); item.setDeckCoverCard1(detail.getDeckCoverCard1());
item.setUpdateTimestamp(detail.getDeckUpdateDate()); item.setUpdateTimestamp(detail.getDeckUpdateDate());
item.setPublic(detail.isPublic()); item.setPublic(detail.isPublic());
item.setDelete(detail.isDelete());
myOnlineDecks.add(item); myOnlineDecks.add(item);
} }
return myOnlineDecks; return myOnlineDecks;
......
...@@ -85,13 +85,6 @@ public class DeckSquareListAdapter extends BaseQuickAdapter<OnlineDeckDetail, Ba ...@@ -85,13 +85,6 @@ public class DeckSquareListAdapter extends BaseQuickAdapter<OnlineDeckDetail, Ba
} else { } else {
imageLoader.bindImage(cardImage, -1, null, ImageLoader.Type.small); imageLoader.bindImage(cardImage, -1, null, ImageLoader.Type.small);
} }
// ImageView imageview = helper.getView(R.id.ex_card_image);
//the function cn.garymb.ygomobile.loader.ImageLoader.bindT(...)
//cn.garymb.ygomobile.loader.ImageLoader.setDefaults(...)
//is a private function,so I copied the content of it to here
/* 如果查不到版本号,则不显示图片 */
/* 如果能查到版本号,则显示图片,利用glide的signature,将版本号和url作为signature,由glide判断是否使用缓存 */
} }
} }
\ No newline at end of file
...@@ -18,10 +18,9 @@ import cn.garymb.ygomobile.ui.cards.deck_square.api_response.BasicResponse; ...@@ -18,10 +18,9 @@ import cn.garymb.ygomobile.ui.cards.deck_square.api_response.BasicResponse;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.LoginToken; import cn.garymb.ygomobile.ui.cards.deck_square.api_response.LoginToken;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.MyDeckResponse; import cn.garymb.ygomobile.ui.cards.deck_square.api_response.MyDeckResponse;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.MyOnlineDeckDetail; import cn.garymb.ygomobile.ui.cards.deck_square.api_response.MyOnlineDeckDetail;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.PushSingleDeckResponse;
import cn.garymb.ygomobile.ui.cards.deck_square.bo.MyDeckItem;
import cn.garymb.ygomobile.lite.R; import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.loader.ImageLoader; import cn.garymb.ygomobile.loader.ImageLoader;
import cn.garymb.ygomobile.ui.cards.deck_square.api_response.PushMultiResponse;
import cn.garymb.ygomobile.ui.plus.DialogPlus; import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.plus.VUiKit; import cn.garymb.ygomobile.ui.plus.VUiKit;
import cn.garymb.ygomobile.utils.LogUtil; import cn.garymb.ygomobile.utils.LogUtil;
...@@ -119,18 +118,14 @@ public class MyDeckListAdapter extends BaseQuickAdapter<MyOnlineDeckDetail, Base ...@@ -119,18 +118,14 @@ public class MyDeckListAdapter extends BaseQuickAdapter<MyOnlineDeckDetail, Base
return; return;
} }
VUiKit.defer().when(() -> { List<DeckFile> deleteList = new ArrayList<>();
PushSingleDeckResponse result = DeckSquareApiUtil.deleteDeck(item.getDeckId(), loginToken); deleteList.add(new DeckFile(item.getDeckId(), DeckType.ServerType.MY_SQUARE));
return result; try {
}).fail(e -> { DeckSquareApiUtil.deleteDecks(deleteList);
}catch (Throwable e){
LogUtil.i(TAG, "square deck detail fail" + e.getMessage()); LogUtil.i(TAG, "square deck detail fail" + e.getMessage());
}).done(data -> {
if (data.isData()) {
remove(item);
} else {
YGOUtil.showTextToast("delete fail " + data.getMessage());
} }
}); remove(item);
} }
} }
......
...@@ -232,4 +232,18 @@ public class MyOnlineDeckDetail implements Parcelable { ...@@ -232,4 +232,18 @@ public class MyOnlineDeckDetail implements Parcelable {
public void setDelete(boolean delete) { public void setDelete(boolean delete) {
isDelete = delete; isDelete = delete;
} }
public String toString(){
return "MyOnlineDeckDetail{" +
"deckName='" + deckName + '\'' +
", deckId=" + deckId +
", deckType=" + deckType +
", deckContributor=" + deckContributor +
", userId='" + userId + '\'' +
", deckCoverCard1=" + deckCoverCard1 +
", deckLike='" + deckLike + '\'' +
", isPublic='" + isPublic + '\'' +
", deckYdk='" + deckYdk + '\'' +
'}';
}
} }
\ No newline at end of file
...@@ -153,7 +153,7 @@ public class OnlineDeckDetail implements Parcelable { ...@@ -153,7 +153,7 @@ public class OnlineDeckDetail implements Parcelable {
} }
public String toString(){ public String toString(){
return "MyOnlineDeckDetail{" + return "preView_OnlineDeckDetail{" +
"deckName='" + deckName + '\'' + "deckName='" + deckName + '\'' +
", deckId=" + deckId + ", deckId=" + deckId +
", lastDate=" + lastDate + ", lastDate=" + lastDate +
......
...@@ -47,6 +47,7 @@ public class PushMultiDeck { ...@@ -47,6 +47,7 @@ public class PushMultiDeck {
private Integer deckProtector = 0; private Integer deckProtector = 0;
private long timestamp = 0; private long timestamp = 0;
private String deckYdk; private String deckYdk;
private boolean isDeleting = false;
public String getDeckId() { public String getDeckId() {
return deckId; return deckId;
...@@ -128,5 +129,9 @@ public class PushMultiDeck { ...@@ -128,5 +129,9 @@ public class PushMultiDeck {
this.deckYdk = deckYdk; this.deckYdk = deckYdk;
} }
public boolean getDeleting() {return isDeleting;}
public void setDeleting(boolean isDeleting) {this.isDeleting = isDeleting;}
} }
} }
package cn.garymb.ygomobile.ui.cards.deck_square.api_response;
public class PushSingleDeck {
private String deckContributor;
private Integer userId;
private DeckData deck;
public String getDeckContributor() {
return deckContributor;
}
public void setDeckContributor(String deckContributor) {
this.deckContributor = deckContributor;
}
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public DeckData getDeck() {
return deck;
}
public void setDeck(DeckData deck) {
this.deck = deck;
}
public static class DeckData {
private String deckId;
private String deckName;
private String deckType;
private Integer deckCoverCard1 = 0;
private Integer deckCoverCard2 = 0;
private Integer deckCoverCard3 = 0;
private Integer deckCase = 0;
private Integer deckProtector = 0;
private String deckYdk;
private boolean isDelete = false;
public String getDeckId() {
return deckId;
}
public void setDeckId(String deckId) {
this.deckId = deckId;
}
public String getDeckName() {
return deckName;
}
public void setDeckName(String deckName) {
this.deckName = deckName;
}
public String getDeckType() {
return deckType;
}
public void setDeckType(String deckType) {
this.deckType = deckType;
}
public Integer getDeckCoverCard1(Integer firstCode) {
return deckCoverCard1;
}
public void setDeckCoverCard1(Integer deckCoverCard1) {
this.deckCoverCard1 = deckCoverCard1;
}
public Integer getDeckCoverCard2() {
return deckCoverCard2;
}
public void setDeckCoverCard2(Integer deckCoverCard2) {
this.deckCoverCard2 = deckCoverCard2;
}
public Integer getDeckCoverCard3() {
return deckCoverCard3;
}
public void setDeckCoverCard3(Integer deckCoverCard3) {
this.deckCoverCard3 = deckCoverCard3;
}
public Integer getDeckCase() {
return deckCase;
}
public void setDeckCase(Integer deckCase) {
this.deckCase = deckCase;
}
public Integer getDeckProtector() {
return deckProtector;
}
public void setDeckProtector(Integer deckProtector) {
this.deckProtector = deckProtector;
}
public String getDeckYdk() {
return deckYdk;
}
public void setDeckYdk(String deckYdk) {
this.deckYdk = deckYdk;
}
public boolean isDelete() {
return isDelete;
}
public void setDelete(boolean delete) {
isDelete = delete;
}
}
}
package cn.garymb.ygomobile.ui.cards.deck_square.api_response;
//将卡组上传后,返回的响应
//对应接口http://rarnu.xyz:38383/api/mdpro3/sync/single
public class PushSingleDeckResponse {
private Integer code;
private String message;
//!!!!注意,本字段是boolean,与PushMultiDeckResponse的不同!
private boolean data;//服务器的执行结果,true代表卡组上传成功。false代表卡组上传失败
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public boolean isData() {
return data;
}
public void setData(boolean data) {
this.data = data;
}
}
...@@ -20,6 +20,8 @@ public class MyDeckItem { ...@@ -20,6 +20,8 @@ public class MyDeckItem {
private Boolean isPublic; private Boolean isPublic;
private Boolean isDelete;
public int getIdUploaded() { public int getIdUploaded() {
return idUploaded; return idUploaded;
} }
...@@ -93,6 +95,14 @@ public class MyDeckItem { ...@@ -93,6 +95,14 @@ public class MyDeckItem {
isPublic = aPublic; isPublic = aPublic;
} }
public Boolean isDelete() {
return isDelete;
}
public void setDelete(Boolean aDelete) {
isDelete = aDelete;
}
@Override @Override
public String toString() { public String toString() {
return "MyDeckItem{" + return "MyDeckItem{" +
......
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