Commit b66d516c by 郑鹏

更改翻译

parent a7798ca2
apply plugin: 'com.android.application'
/*apply plugin: 'com.android.library'
apply plugin: 'maven'*/
//apply plugin: 'com.android.application'
apply plugin: 'com.android.library'
apply plugin: 'maven'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
......@@ -15,8 +15,9 @@ android {
compileSdkVersion build_versions.compile_sdk
defaultConfig {
multiDexEnabled true
applicationId "com.mhq.smartorder"
/*multiDexEnabled true
applicationId "com.mhq.smartorder"*/
minSdkVersion build_versions.min_sdk
targetSdkVersion build_versions.target_sdk
versionCode 1
......@@ -51,6 +52,7 @@ android {
timeOutInMs=5*1000
installOptions '-r','-s'
}
*/
signingConfigs {
......@@ -125,7 +127,7 @@ android {
}
//DomainObjectCollection集合
applicationVariants.all { variant ->
/* applicationVariants.all { variant ->
variant.outputs.each { output ->
if (output.outputFile != null && output.outputFile.name.endsWith('.apk')
&& 'release'.equals(variant.buildType.name)) {
......@@ -140,7 +142,7 @@ android {
// output.outputFile=apkFile
}
}
}
}*/
}
def buildTime() {
......@@ -167,7 +169,7 @@ def getAppVersionCode() {
}
return stout.toString().split("\n").size()
}
/*ext {
ext {
GITHUB_REPO_PATH = "../../androidlibrary"
PUBLISH_GROUP_ID = 'com.mhq.smartorder'
PUBLISH_ARTIFACT_ID = 'smartorder'
......@@ -184,7 +186,7 @@ uploadArchives {
pom.version = project.PUBLISH_VERSION // 版本号
}
}
}*/
}
dependencies {
......@@ -264,4 +266,4 @@ dependencies {
api files('libs/core-3.3.3.jar')
}
apply plugin: 'com.google.gms.google-services'
//apply plugin: 'com.google.gms.google-services'
......@@ -337,10 +337,44 @@
android:name="com.luck.picture.lib.PictureVideoPlayActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="sensor" />
<activity android:name="com.luck.picture.lib.PictureExternalPreviewActivity" />
<activity android:name="com.yalantis.ucrop.UCropActivity" />
<activity android:name="com.yalantis.ucrop.PictureMultiCuttingActivity" />
<activity android:name="com.luck.picture.lib.PicturePlayAudioActivity" />
<activity android:name="com.luck.picture.lib.PictureExternalPreviewActivity"
android:screenOrientation="portrait" />
<activity android:name="com.yalantis.ucrop.UCropActivity"
android:screenOrientation="portrait" />
<activity android:name="com.yalantis.ucrop.PictureMultiCuttingActivity"
android:screenOrientation="portrait" />
<activity android:name="com.luck.picture.lib.PicturePlayAudioActivity"
android:screenOrientation="portrait" />
<activity android:name="cn.dankal.user.login.LockStateActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.wx.IsBindPhoneActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.wx.RegisterWXEmailActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.register.ProtocolActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.modify.EmailUpdatePasswordActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.modify.ModifyPasswordActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.modify.ModifyEmailActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.modify.ModifyPhoneActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.register.RegisterInputInfoActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.register.RegisterEmailActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.register.RegisterActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.forget.ForgetPasswordHomeActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.login.FindEmailTowActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.login.FindEmailActivity"
android:screenOrientation="portrait"/>
<activity android:name="cn.dankal.user.forget.ForgetPasswordActivity"
android:screenOrientation="portrait"/>
</application>
</manifest>
\ No newline at end of file
......@@ -29,8 +29,8 @@ public class DKUserManager {
/**
* 最初mUserInfo各属性内容为空,
* 如登录后可更新当前的UserInfo和本地的缓存
* 최초 mUserInfor 각 속성 내용 이 비 어 있 음,
* 로그 인 후 현재 UserInfor 와 로 컬 캐 시 를 업데이트 할 수 있 습 니 다.
*/
public static void saveUserInfo(UserResponseBody userResponseBody) {
UserInfoBean userInfo = userResponseBody.getUserInfo();
......@@ -54,9 +54,9 @@ public class DKUserManager {
}
}
/**
* 如果从本地缓存中获取对象为空则实例化一个空对象
* 判断是否登录全程通过user_id是不是为0来判断而不是通过
* mUserInfo是否等于null,防止UserManager.getUserInfo出现空指针
* 로 컬 캐 시 에서 대상 이 비어 있 으 면 빈 대상 을 예화 합 니 다.
* 전체 과정 에 로그 인 할 지 여 부 를 판단 하 는 user아 이 디 가 0 인지 아 닌 지 판단 하기
* mUserInfor 가 null 인지, 방지UserManager. getuserInfor빈 포인터 출현
*/
private static void readUserInfo() {
userInfo = (UserInfoBean) PreferenceUtil.getBeanValue(mSpUserInfo, UserInfoBean.class);
......@@ -73,7 +73,7 @@ public class DKUserManager {
}
}
/**
* 清空缓存时调用
* 캐 시 비우 기 호출
*/
public static void resetUserInfo() {
SharedPreferences.Editor editor = mSpUserInfo.edit();
......@@ -89,7 +89,7 @@ public class DKUserManager {
}
/**
* 判断已经登录
* 판단 이미 로그 인
*/
public static boolean isLogined() {
return !TextUtils.isEmpty(getUserToken().getToken());
......
......@@ -42,7 +42,7 @@ import cn.dankal.client.BuildConfig;
*/
public class DankalApplication extends Application {
//是否是开发环境
//개발 환경 인지 아 닌 지
public static final boolean isDev = false;
private static DankalApplication context;
......@@ -57,11 +57,11 @@ public class DankalApplication extends Application {
initARouter();
initStetho();
initLoadSir();
//适配方案
//적합 한 방안.
DensityAdaptationUtils.setDensity(context, 375);
AppUtils.init(context);
//数据库初始化扫码
//데이터베이스 초기 화 스 캔
LitePal.initialize(this);
//bugly
......@@ -76,37 +76,37 @@ public class DankalApplication extends Application {
MultiLanguage.init(new LanguageLocalListener() {
@Override
public Locale getSetLanguageLocale(Context context) {
//返回自己本地保存选择的语言设置
//선택 한 언어 설정 을 로 컬 로 되 돌려 줍 니 다.
return LocalManageUtil.getSetLanguageLocale(context);
}
});
MultiLanguage.setApplicationLanguage(this);
// [可选]设置是否打开debug输出,上线时请关闭,Logcat标签为"MtaSDK"
// [선택 가능] debug 출력 여 부 를 설정 합 니 다. 로그 인 할 때 닫 으 십시오. Logcat 레이 블 은 "MTasDK" 입 니 다.
StatConfig.setDebugEnable(isDev);
// 基础统计API
// 기초 통계 API
StatService.registerActivityLifecycleCallbacks(this);
String appkey = "AIAF8SC17A3L";
// 初始化并启动MTA
// MTA 초기 화 및 시작
try {
StatService.startStatService(this, appkey,
com.tencent.stat.common.StatConstants.VERSION);
} catch (Exception e) {
}
//处理按钮防多次点击,默认1s,https://www.jianshu.com/p/7f3e5c8b8643
//처리 버튼 여러 번 클릭 방지, 기본 1s,https://www.jianshu.com/p/7f3e5c8b8643
ViewDoubleHelper.init(this);
}
/**
* 初始化阿里路由
* 아 리 경로 초기 화
*/
private void initARouter() {
if (BuildConfig.DEBUG) {
// 打印日志
// 일 지 를 인쇄 하 다.
ARouter.openLog();
// 开启调试模式(如果在InstantRun模式下运行,必须开启调试模式!线上版本需要关闭,否则有安全风险)
// 디 버 깅 모드 (InstantRun 모드 에서 실행 할 경우 디 버 깅 모드 를 실행 해 야 합 니 다!온라인 버 전 은 닫 아야 합 니 다. 그렇지 않 으 면 안전 위험 이 있 습 니 다.)
ARouter.openDebug();
}
ARouter.init(this);
......@@ -126,7 +126,7 @@ public class DankalApplication extends Application {
}
/**
* facebook出品辅助开发工具
* 페 이 스 북 제작 보조 개발 도구
*/
private void initStetho() {
Stetho.initializeWithDefaults(this);
......@@ -157,10 +157,10 @@ public class DankalApplication extends Application {
}
public static IWXAPI getIWXAPI() {
//通过WXAPIFactory工厂,获取IWXAPI的实例
//WXAPIFactory 공장 을 통 해 IWXAPI 의 인 스 턴 스 를 획득 합 니 다.
api = WXAPIFactory.createWXAPI(context, WxConstants.WX_APP_ID, true);
//将应用的appId注册到微信
//애플 리 케 이 션 의 appid 를 위 챗 에 등록 합 니 다.
api.registerApp(WxConstants.WX_APP_ID);
return api;
}
......@@ -168,16 +168,16 @@ public class DankalApplication extends Application {
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
//用户在系统设置页面切换语言时保存系统选择语言(为了选择随系统语言时使用,如果不保存,切换语言后就拿不到了)
//사용자 가 시스템 설정 페이지 전환 언어 를 설정 할 때 시스템 선택 언어 를 저장 합 니 다 (시스템 언어 를 선택 할 때 사용 합 니 다. 저장 하지 않 으 면 언어 전환 후 사용 할 수 없습니다)
LocalManageUtil.saveSystemCurrentLanguage(getApplicationContext(), newConfig);
MultiLanguage.onConfigurationChanged(getApplicationContext());
}
/**
* 判断App当前是否处于暗黑模式状态
* App 가 현재 암흑 모드 상태 에 있 는 지 판단
*
* @param context 上下文
* @return 返回
* @param context 문맥
* @return
*/
public static boolean isDarkMode() {
int nightMode = AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM;
......
......@@ -28,23 +28,23 @@ public class DkAppGlideModule extends AppGlideModule {
@Override
public void applyOptions(Context context, GlideBuilder glideBuilder) {
/* 定义SD卡缓存大小和位置 */
/* SD 카드 캐 시 크기 와 위 치 를 정의 합 니 다. */
int diskSize = 1024 * 1024 * 100;
// ExternalCacheDiskCacheFactory
// /sdcard/Android/data/<application package>/cache
glideBuilder.setDiskCache(new ExternalPreferredCacheDiskCacheFactory(context, "glide", diskSize));
/* 定义图片格式 */
/* 그림 형식 을 정의 하 다 */
glideBuilder.setDefaultRequestOptions(new RequestOptions()
.format(DecodeFormat.PREFER_RGB_565));
}
/**
* 注册源 Model 对应的 ModelLoader
* 가입 소스 Model 에 대응 하 는 ModelLoader
*/
@Override
public void registerComponents(Context context, Glide glide, Registry registry) {
// 注册全局唯一OkHttp客户端(HttpClient初始化的情况)
// 전역 에서 유일 하 게 OkHTTP 클 라 이언 트 등록 (HTpClient 초기 화 된 경우)
OkHttpUrlLoader.Factory factory_glideurl;
try {
factory_glideurl = new OkHttpUrlLoader.Factory(BaseApi.getOkhttpInstance());
......@@ -53,15 +53,12 @@ public class DkAppGlideModule extends AppGlideModule {
}
registry.replace(GlideUrl.class, InputStream.class, factory_glideurl);
// // 注册视频获取缩略图的扩展
// // 비디오 를 등록 해서 미리 보기 그림 의 확장 을 가 져 옵 니 다.
// VideoModelLoader.Factory factory_videourl = new VideoModelLoader.Factory();
// registry.replace(VideoUrl.class, InputStream.class, factory_videourl);
}
/**
* 清单解析是否开启 <br>
* 要注意避免重复添加 <br>
*/
@Override
public boolean isManifestParsingEnabled() {
return false;
......
......@@ -22,7 +22,7 @@ import retrofit2.http.Query;
public interface AddressService {
/**
* 地址列表
* 주소 목록
*
* @return
*/
......@@ -30,7 +30,7 @@ public interface AddressService {
Observable<AddressEntity> getAddressList();
/**
* 地址详情信息
* 상세주소정보
*
* @return
*/
......@@ -38,7 +38,7 @@ public interface AddressService {
Observable<AddressEntity.DataBean> getAddressInfo(@Path("uuid") String uuid);
/**
* 获取详细地址列表
* 주소상세 리스트 획득
*
* @return
*/
......@@ -46,7 +46,7 @@ public interface AddressService {
Observable<AddressListEntity> getSearchList(@Query("q") String search, @Query("id") String id);
/**
* 修改地址状态(默认地址-删除)
* 주소 상태 수정 (기본 주소 - 삭제)
*
* @return
*/
......@@ -54,7 +54,7 @@ public interface AddressService {
Observable<ResponseBody> updateAddressState(@Query("uuid") String uuid, @Query("type") int type);
/**
* 修改地址(添加地址)
* 주소 수정 (주소 등록)
*
* @return
*/
......@@ -62,14 +62,14 @@ public interface AddressService {
Observable<AddressEntity> updateAddress(@Body Map<String, Object> map);
/**
* 添加地址
* 주소 등록
* @return
*/
@POST("app/address/add")
Observable<AddressEntity> addAddress(@Body Map<String, Object> map);
/**
* 获取快递秘钥
* 택배 키 획득
* @return
*/
@GET("app/common/logistics_token")
......
......@@ -19,7 +19,7 @@ import retrofit2.http.Query;
public interface HomeService {
/**
* 首页-用户附近的餐馆列表
* 홈-사용자 주변매장 리스트
*
* @return
*/
......@@ -27,7 +27,7 @@ public interface HomeService {
Observable<BottomAroundEntity> aroundList(@Body Map<String, Object> map);
/**
* 首页-用户附近的餐馆列表
* 홈-사용자 주변매장 리스트
*
* @return
*/
......@@ -35,7 +35,7 @@ public interface HomeService {
Observable<TopHomeInfoEntity> getHomeListInfo(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 首页-获取搜索热搜 餐馆/商城/商品
* 홈-인기검색어 획득 매장/쇼핑몰/상품
*
* @return
*/
......@@ -44,7 +44,7 @@ public interface HomeService {
/**
* 列表-首页 推荐餐馆 / 搜索餐馆
* 리스트-홈 추천매장/매장검색
* @return
*/
@POST("app/hotelHome/get/recommend_list")
......
......@@ -33,7 +33,7 @@ import retrofit2.http.QueryMap;
*/
public interface MallService {
/**
* 购物车-购物车列表
* 장바구니-장바구니리스트
*
* @return
*/
......@@ -41,7 +41,7 @@ public interface MallService {
Observable<ShopCarEntity> getCartList(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 购物车-添加
* 장바구니-상품선택
*
* @return
*/
......@@ -49,7 +49,7 @@ public interface MallService {
Observable<AddCarResultEntity> addCart(@Body Map<String, Object> map);
/**
* 操作-操作购物车 减少商品和删除
* 조작-장바구니 조작 상품감소 및 삭제
*
* @return
*/
......@@ -57,7 +57,7 @@ public interface MallService {
Observable<ResponseBody> operateCart(@Body Map<String, Object> map);
/**
* 详情-指定商城的详情及商品分类
* 상세-지정한 쇼핑몰의 상세정보 및 상품 카테고리
*
* @return
*/
......@@ -65,7 +65,7 @@ public interface MallService {
Observable<MerchantHomeEntity> getStoreDetail(@Path("storeUuid") String storeUuid);
/**
* 详情-获取指定商品详情
* 상세-지정한 상품의 상세정보 획득
*
* @return
*/
......@@ -73,7 +73,7 @@ public interface MallService {
Observable<ShopDetailEntity> getGoodsDetail(@Query("storeUuid") String storeUuid, @Query("goodsUuid") String goodsUuid);
/**
* 详情-指定商城的商品的 规格详情
* 상세-지정한 쇼핑몰의 상품의 옵션상세
*
* @return
*/
......@@ -81,7 +81,7 @@ public interface MallService {
Observable<List<MallSpecsDetailEntity>> getGoodsSpecs(@Query("storeUuid") String storeUuid, @Query("goodsUuid") String goodsUuid);
/**
* 列表-指定商城商品分类的 商品列表
* 리스트-지정한 쇼핑몰 상품카테고리의 상품리스트
*
* @return
*/
......@@ -89,7 +89,7 @@ public interface MallService {
Observable<MerchantShopEntity> goodsList(@Body Map<String, Object> map);
/**
* 列表-订单商品的 评论列表
* 리스트-주문상품의 평가리스트
*
* @return
*/
......@@ -97,7 +97,7 @@ public interface MallService {
Observable<CommentContentEntity> goodsRecommendList(@Body Map<String, Object> map);
/**
* 评论详情
*평가상세
*
* @return
*/
......@@ -105,7 +105,7 @@ public interface MallService {
Observable<List<EvaluateEntity>> evaluateDetails(@Path("uuid") String uuid);
/**
* 列表-当前首页分类的指定商品
* 리스트-현재 홈 카테고리의 지정한 상품
*
* @return
*/
......@@ -113,7 +113,7 @@ public interface MallService {
Observable<ShopEntity> homeGoodsList(@Body Map<String, Object> map);
/**
* 列表-获取商城首页上半部分信息
* 리스트-쇼핑몰 홈의 상위 부분 정보 획득
*
* @return
*/
......@@ -121,7 +121,7 @@ public interface MallService {
Observable<MallTopDataEntity> getHomeTopList(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 操作-用户结算
* 조작-사용자구매하기
*
* @return
*/
......@@ -129,7 +129,7 @@ public interface MallService {
Observable<SettleEntity> userSettle(@Body Map<String, Object> map);
/**
* 操作-用户支付
* 조작-사용자결제
*
* @return
*/
......@@ -137,7 +137,7 @@ public interface MallService {
Observable<PayParameterEntity> userPayment(@Body Map<String, Object> map);
/**
* 商城订单留言列表
* 쇼핑몰주문 댓글기록 리스트
*
* @return
*/
......@@ -145,7 +145,7 @@ public interface MallService {
Observable<LeaveNotesListEntity> leaveNotesList(@QueryMap Map<String, Object> map);
/**
* 用户商家留言
*사용자 가맹점 댓글
*
* @return
*/
......@@ -153,7 +153,7 @@ public interface MallService {
Observable<ResponseBody> leaveNotes(@Body Map<String, Object> map);
/**
* 商城订单留言-用户/商家 留言内部回复
* 쇼핑몰주문댓글-사용자/가맹점 댓글 내부 회신
*
* @return
*/
......@@ -162,7 +162,7 @@ public interface MallService {
/**
* 立即支付 -- 待支付订单
* 결제하기-결제대기 주문
*
* @return
*/
......@@ -170,7 +170,7 @@ public interface MallService {
Observable<PayParameterEntity> nowPayment(@Body Map<String, Object> map);
/**
* 用戶完成订单
* 사용 완료된 주문
*
* @return
*/
......@@ -178,13 +178,13 @@ public interface MallService {
Observable<ResponseBody> finishOrder(@Body Map<String, Object> map);
/**
* 列表,商城列表
* 리스트-쇼핑몰 리스트
*/
@GET("app/store/get/store_list")
Observable<StoreEntity> getStoreList(@QueryMap Map<String, Object> map);
/**
* 支付- 推荐商品
* 결제-추천상품
*
* @return
*/
......
......@@ -29,7 +29,7 @@ import retrofit2.http.Query;
*/
public interface RestaurantService {
/**
* 详情-获取指定餐馆详细信息
* 상세-지정한 매장의 상세정보 획득
*
* @return
*/
......@@ -37,7 +37,7 @@ public interface RestaurantService {
Observable<RestaurantDetailEntity> getRestaurantDetail(@Path("hotelUuid") String hotelUuid);
/**
* 详情-获取指定商品详情
* 상세-지정한 상품의 상세정보 획득
*
* @return
*/
......@@ -45,7 +45,7 @@ public interface RestaurantService {
Observable<HotelGoodsDetailEntity> getHotelGoodsDetail(@Query("hotelUuid") String hotelUuid, @Query("goodsUuid") String goodsUuid);
/**
* 详情-获取指定商品的规格详情
*상세-지정한 상품의 옵션상세 획득
*
* @return
*/
......@@ -53,7 +53,7 @@ public interface RestaurantService {
Observable<RestaurantSpecEntity> getGoodsSpecDetail(@Query("hotelUuid") String hotelUuid, @Query("goodsUuid") String goodsUuid);
/**
* 列表-指定餐馆的类别商品列表
* 리스트-지정한 매장의 카테고리 상품리스트
*
* @return
*/
......@@ -61,7 +61,7 @@ public interface RestaurantService {
Observable<ShopTypeContentEntity> goodsTypeList(@Body Map<String, Object> map);
/**
* 列表-指定餐馆的桌形分类列表
* 리스트-지정한 매장의 테이블유형 리스트
*
* @return
*/
......@@ -69,7 +69,7 @@ public interface RestaurantService {
Observable<QueueEntity> getTablesList(@Path("hotelUuid") String hotelUuid);
/**
* 列表-用户的优惠券列表
* 리스트-사용자의 쿠폰리스트
*
* @return
*/
......@@ -77,7 +77,7 @@ public interface RestaurantService {
Observable<CouponEntity> getCouponList(@Query("hotelUuid") String hotelUuid, @Query("type") String type, @Query("useType") String useType);
/**
* 列表-用户所有可用的 预约排队列表
* 리스트-사용자가 사용가능한 전체 예약대기 리스트
*
* @return
*/
......@@ -85,7 +85,7 @@ public interface RestaurantService {
Observable<ShopCarEntity> getQueueList();
/**
* 餐馆是否在营业时间内
* 매장 영업중 여부
*
* @return
*/
......@@ -93,7 +93,7 @@ public interface RestaurantService {
Observable<BusinessTimeEntity> isBusiness(@Path("hotelUuid") String hotelUuid);
/**
* 用户是否在指定餐馆预约排队
* 사용자가 지정한 매장에서 예약대기 여부
*
* @return
*/
......@@ -101,7 +101,7 @@ public interface RestaurantService {
Observable<IsOrderStoreEntity> isUserQueue(@Path("hotelUuid") String hotelUuid);
/**
* 提交排队
* 대기 제출
*
* @return
*/
......@@ -109,7 +109,7 @@ public interface RestaurantService {
Observable<CommitQueueEntity> submitHotelQueue(@Query("hotelUuid") String hotelUuid, @Query("tablesTypeUuid") String tablesTypeUuid);
/**
* 取消排队
* 대기 취소
*
* @return
*/
......@@ -117,7 +117,7 @@ public interface RestaurantService {
Observable<ResponseBody> cancelQueue(@Path("hotelQueueUuid") String hotelQueueUuid);
/**
* 用户点击 去支付
* 사용자 클릭하여 결제하기
*
* @return
*/
......@@ -125,7 +125,7 @@ public interface RestaurantService {
Observable<PayParameterEntity> userPay(@Body Map<String, Object> map);
/**
* 用户点击 去结算
* 사용자 클릭하여 구매하기
*
* @return
*/
......@@ -134,7 +134,7 @@ public interface RestaurantService {
/**
* 检查餐桌状态
* 테이블상태 조회
*
* @return
*/
......@@ -143,7 +143,7 @@ public interface RestaurantService {
/**
* 获取餐馆评论列表
* 매장 평가리스트 획득
*
* @return
*/
......
......@@ -67,7 +67,7 @@ import retrofit2.http.QueryMap;
public interface UserService {
/**
* 用户信息
* 사용자정보
*
* @return
*/
......@@ -75,7 +75,7 @@ public interface UserService {
Observable<UserInfoEntity> userInfo();
/**
* 列表-用户邮票列表
* 리스트-사용자 스탬프리스트
*
* @return
*/
......@@ -83,7 +83,7 @@ public interface UserService {
Observable<StampListEntity> stampList(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 列表-用户优惠券列表
* 리스트-사용자 쿠폰리스트
*
* @return
*/
......@@ -91,7 +91,7 @@ public interface UserService {
Observable<CouponListEntity> userCouponList(@Query("type") String type, @Query("useType") String useType);
/**
* 列表-用户优惠券列表
* 리스트-사용자 쿠폰리스트
*
* @return
*/
......@@ -99,73 +99,73 @@ public interface UserService {
Observable<CouponListEntity> userCouponList(@Query("type") String type, @Query("useType") String useType, @Query("payment") String payment);
/**
* 列表-用户所有可用的 预约排队列表
* 리스트-사용자 사용가능한 전체 예약대기 리스트
*/
@GET("app/center/get/user_queue_list/{type}")
Observable<QueueEntity> userQueueList(@Path("type") int type);
/**
* 修改-修改用户密码
* 비밀번호 변경. - 비밀번호 변경.
*/
@POST("app/center/update_password")
Observable<ResponseBody> updatePassword(@Body Map<String, Object> map);
/**
* 修改-修改用户信息
* 수정-사용자정보 수정
*/
@POST("app/center/update_user_info")
Observable<ResponseBody> updateUserInfo(@Body Map<String, Object> map);
/**
* 忘记密码-邮箱登录
* 비밀번호 찾기-메일로그인
*/
@GET("app/account/email_login/{email}")
Observable<UserInfoBean> emailLogin(@Path("email") String email);
/**
* 找回邮箱
* 메일찾기
*/
@GET("app/account/get/email/{phone}")
Observable<FindEmailEntity> findEmail(@Path("phone") String phone);
/**
* 账号是否处于休眠状态
* 계정이 휴면상태 여부
*/
@POST("app/account/is_sleep")
Observable<ResponseBody> isSleep(@Body Map<String, Object> map);
/**
* 账号密码登录
* 계정 비밀번호 로그인
*/
@POST("app/account/login")
Observable<UserInfoBean> accountLogin(@Body Map<String, Object> map);
/**
* 验证手机or邮箱是否存在(200存在)
* 휴대폰번호 or 메일 존재여부 검증(200존재)
*/
@GET("app/account/phoneOrEmail/is_register/{phone}/{type}")
Observable<IsRegisterPhoneOrEmailEntity> isRegister(@Path("phone") String phone, @Path("type") int type);
/**
* 注册,用户注册
* 등록, 사용자등록
*/
@POST("app/account/register")
Observable<UserRegisterSuccessEntity> register(@Body Map<String, Object> map);
/**
* 解除账号休眠状态
* 계정휴면상태 해제
*/
@PUT("app/account/relieve_sleep/{uuid}")
Observable<ResponseBody> relieveSleep(@Path("uuid") String path);
/**
* 忘记密码
* 비밀번호 찾기
*/
@POST("app/account/reset_password")
Observable<ResponseBody> resetPassword(@Body Map<String, Object> map);
/**
* 列表-用户收藏列表
* 리스트-사용자 즐겨찾기 리스트
*/
@GET("app/center/get/user_collect_list")
Observable<CollectShopEntity> userCollectList(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
......@@ -174,7 +174,7 @@ public interface UserService {
//--------------------------------------分界线--------------------------------------------------
/**
* 修改头像
* 프로필 이미지 수정
*
* @return
*/
......@@ -184,238 +184,238 @@ public interface UserService {
/**
* 餐馆订单列表
* 매장주문 리스트
*/
@GET("app/center/get/order_hotel_list")
Observable<FoodOrderEntity> orderHotelList(@Query("orderStatus") String orderStatus, @Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 详情餐品订单详情
* 상세 메뉴 주문 상세
*/
@GET("app/center/get/order_hotel/detail/{uuid}")
Observable<OrderHotelDetail> orderHotelDetail(@Path("uuid") String uuid);
/**
* 添加-用户收藏
* 등록-사용자 즐겨찾기
*/
@POST("app/center/add/user_collect")
Observable<ResponseBody> addUserCollect(@Body Map<String, Object> map);
/**
* 删除-用户收藏
* 삭제 - 사용자 모음 집
*/
@POST("app/center/delete/user_collect")
Observable<ResponseBody> deleteUserCollect(@Body Map<String, Object> map);
/**
* 反馈-用户填写反馈
* 제안-사용자 입력한 제안
*/
@POST("app/center/add/user_feedback")
Observable<ResponseBody> userFeedBack(@Body Map<String, Object> map);
/**
* 注销账号
* 계정탈퇴
*/
@DELETE("app/center/delete/user_account")
Observable<ResponseBody> deleteUserAccount();
/**
* 列表-订单取消理由
* 리스트-주문취소이유
*/
@GET("app/center/get/refund_reason_list")
Observable<RefundReasonListEntity> refundReasonList(@Query("type") int type);
/**
* 详情-用户排队详情
* 상세-사용자 대기상세
*/
@GET("app/center/get/user_queue_detail/{uuid}")
Observable<QueueDetailsEntity> userQueueDetail(@Path("uuid") String uuid);
/**
* 评论-用户订单评论
* 평가-사용자 주문평가
*/
@POST("app/center/order/user_comment")
Observable<ResponseBody> userComment(@Body List<EvaluationCommitEntity> jsonObject);
/**
* 餐馆售后-用户申请售后
* 매장AS-사용자 AS신청
*/
@POST("app/center/order_hotel/after_sale/submit")
Observable<ResponseBody> submitAfterSale(@Body Map<String, Object> map);
/**
* 餐馆订单售后-用户撤销售后(取消申诉)
* 매장AS-사용자 AS신청
*/
@GET("app/center/order_hotel/after_sale/repeal")
Observable<ResponseBody> submitRepeal(@QueryMap Map<String, Object> map);
/**
* 列表-商城订单列表
* 리스트-쇼핑몰 주문리스트
*/
@GET("app/center/get/order_store_list")
Observable<MallOrderListEntity> orderStoreList(@Query("orderStatus") String orderStatus, @Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 列表-商城订单详情
* 리스트-쇼핑몰 주문상세
*/
@GET("app/center/get/order_store/detail/{uuid}")
Observable<MallOrderDetailEntity> orderStoreDetail(@Path("uuid") String uuid);
/**
* 发送手机验证码
* 휴대폰 인증번호 획득
*/
@GET("app/common/send/phone")
Observable<CodeEntity> sendPhone(@Query("phone") String phone, @Query("nativeCode") String nativeCode);
/**
* 校验验证码
* 인증번호 검증
*/
@POST("app/common/sms_code")
Observable<ResponseBody> smsCode(@Body Map<String, Object> map);
/**
* 发送HTML邮件
* HTML메일 보내기
*/
@GET("app/common/send/mail/html")
Observable<CodeEntity> getSimpleEmail(@Query("to") String to);
/**
* 商城订单-用户取消商城订单
* 쇼핑몰주문-사용자가 쇼핑몰주문 취소
*/
@POST("app/center/order_store/cancel")
Observable<ResponseBody> orderStoreCancel(@Body Map<String, Object> map);
/**
* 商城订单售后-用户申请售后
* 쇼핑몰AS주문-사용자가 AS신청
*/
@POST("app/center/order_store/after_sale/submit")
Observable<AfterCommitEntity> orderStoreAfterSale(@Body Map<String, Object> map);
/**
* 修改售后
* AS수정
*/
@PUT("app/center/get/store/after")
Observable<AfterCommitEntity> updateAfterSale(@Body Map<String, Object> map);
/**
* 商城订单售后-用户撤销售后
* 쇼핑몰AS주문-사용자가 AS취소
*/
@GET("app/center/order_store/after_sale/repeal")
Observable<ResponseBody> orderAfterSaleRepeal(@Query("afterSaleUuid") String afterSaleUuid, @Query("orderUuid") String orderUuid);
/**
* 获取COS临时秘钥
* COS임시 키 획득
*/
@GET("app/common/get/cos_token")
Observable<UserCosTokenEntity> getCosToken();
/**
* 列表-疑难问题列表
* 리스트-Difficult Problems리스트
*/
@GET("app/center/get/common_problem_list")
Observable<ProblemListEntity> commonProblemList(@QueryMap Map<String, Object> map);
/**
* 详情-关于我们详情
* 상세-about us
*/
@GET("app/center/get/about_details")
Observable<AboutDetailsEntity> aboutDetails();
/**
* 添加或更新FcmToken(用户/商家端通用)
* FcmToken등록 혹은 업데이트(사용자단/가맹점단 공통사용)
*/
@POST("app/common/save/fcm_token")
Observable<ResponseBody> fcmToken(@Body Map<String, Object> map);
/**
* 列表-系统消息列表
* 리스트-시스템 알림 리스트
*/
@GET("app/center/get/system_message_list")
Observable<SystemMessageEntity> systemMessageList(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 商城订单-用户完成订单
* 쇼핑몰주문-사용자가 완료된 주문
*/
@GET("app/center/order_store/finish/{uuid}")
Observable<ResponseBody> finishMallOrder(@Path("uuid") String uuid);
/**
* 获取售后列表
* AS리스트획득
*/
@POST("app/center/get/store/after")
Observable<AfterEntity> storeAfter(@Body Map<String, Object> map);
/**
* 获取售后详情
* AS상세획득
*/
@POST("app/center/get/store_info")
Observable<AfterInfoEntity> storeInfo(@Body Map<String, Object> map);
/**
* 修改密码-用于邮箱验证登录后修改
* 비밀번호 수정-메일 검증 후 수정하는데 사용
*/
@POST("app/account/email/forget_reset_password")
Observable<ResponseBody> resetEmailPassword(@Body Map<String, Object> map);
/**
* 列表-商城订单协商历史
* 리스트-쇼핑몰 주문 댓글기록
*/
@GET("app/center/get/order_history_list/{uuid}")
Observable<ConsultHistoryEntity> orderHistory(@Path("uuid") String uuid);
/**
* 列表-获取物流详细信息
* 리스트-운송정보 획득
*/
@GET("api/v1/trackingInfo")
Observable<ExpressEntity> orderExpress(@QueryMap Map<String, Object> map);
/**
* 获取协议
* 약관획득
*/
@GET("cms/merchant/clause/{type}")
Observable<ClauseEntity> getClause(@Path("type") int type);
/**
* 系统消息列表修改已读
* 시스템 알림 리스트 보기
*/
@PUT("app/center/get/system_message_list")
Observable<ResponseBody> updateState(@Query("uuid") String uuid);
/**
* app授权登录
* 앱 수권 로그인
*/
@FormUrlEncoded
@POST("app/account/app_register")
Observable<UserInfoBean> appRegister(@Field("jsCode") String jsCode);
/**
* app查看是否绑定手机号
* 앱에서 휴대폰번호 바인딩 여부 조회
*/
@GET("app/account/is_binding")
Observable<IsBindPhoneEntity> isBindPhone();
/**
* 验证手机or邮箱是否绑定第三方账号(200存在)
* 휴대폰번호 or 메일이 제3자계정 바인딩 여부 검증(200존재)
*/
@GET("app/account/phoneOrEmail/is_binding_third")
Observable<IsRegisterPhoneOrEmailEntity> isBindingThird(@Query("phone") String phone, @Query("type") int type, @Query("thirdType") int thirdType);
/**
* 微信登录信息注册
* 위챗 로그인정보 등록
*/
@POST("app/account/mini_register_user")
Observable<UserInfoBean> wxRegisterUser(@Body Map<String, Object> map);
/**
* 判断是否可以申请售后
* AS신청가능여부 판단
*/
@GET("app/center/order_hotel/after_sale/{uuid}")
Observable<String> afterSale(@Path("uuid") String uuid);
/**
*绑定第三方账号
*제3자계정 바인딩
*/
@POST("app/account/binding")
Observable<UserInfoBean> accountBinding(@Body Map<String, Object> map);
......
......@@ -162,12 +162,12 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
protected abstract int getLayoutId();
/**
* 初始化组件
* 초기화 컴퍼넌트
*/
protected abstract void initComponents();
/**
* 添加标题栏
* 타이틀 영역 추가
*/
public void addTitleBar(ITitleBar iTitleBar) {
if (iTitleBar == null) return;
......
......@@ -14,7 +14,7 @@ import cn.dankal.basiclib.widget.loadsir.core.LoadSir;
/**
* description: 具备 加载状态界面 的Activity基类
* description: 로 딩 상태 인터페이스 가 있 는 Activity 기본 클래스
*
* @author Dankal Android Developer
* @since 2018/1/30
......
......@@ -4,7 +4,7 @@ package cn.dankal.basiclib.base.callback;
* Created by fred
* Date: 2017/11/29.
* Time: 15:46
* classDescription: 用于异步回调
* classDescription: 비동기 반전 에 사용
*/
public interface DKCallBack {
......
package cn.dankal.basiclib.base.callback;
/**
* 具备判断条件的回调
* 판단 조건 을 갖 춘 반향
*/
public interface DKCallBackBoolean {
int YES=1;
......
package cn.dankal.basiclib.base.callback;
/**
* 具备判断条件的回调
* 판단 조건 을 갖 춘 반향
*/
public interface DKCallBackBooleanObject<T> {
int YES=1;
......
......@@ -85,8 +85,8 @@ public abstract class BaseFragment extends Fragment implements BaseView {
}
/**
* 一般用于加载网络请求
* 此方法不是抽象方法,通过覆盖实现,可调用多次
* 로 딩 네트워크 요청 에 사용
* 이 방법 은 추상 적 인 방법 이 아니 라 커버 를 통 해 실 현 된 것 으로 여러 차례 호출 될 수 있다
*/
public void obtainData() {
}
......@@ -279,7 +279,7 @@ public abstract class BaseFragment extends Fragment implements BaseView {
}
/**
* 跳转到权限设置页面
* 권한 설정 페이지 로 가기
*/
public void toSelfSetting() {
Intent mIntent = new Intent();
......
......@@ -18,15 +18,15 @@ import android.view.ViewGroup;
public abstract class BaseLazyLoadFragment extends BaseStateFragment {
/**
* 当前Fragment是否可见
* 현재 Fragment 보 이 는 지 여부
*/
protected boolean isVisible = false;
/**
* 是否与View建立起映射关系
* View 와 맵 관 계 를 맺 을 지 여부
*/
protected boolean isInitView = false;
/**
* 是否是第一次加载数据
* 데 이 터 를 처음 불 러 오 는 지 여부
*/
protected boolean isFirstLoad = true;
......@@ -46,7 +46,7 @@ public abstract class BaseLazyLoadFragment extends BaseStateFragment {
}
//当fragment结合viewpager使用的时候 这个方法会调用
//fragment 가 view pager 와 결합 하여 사용 할 때 이 방법 은 호출 됩 니 다.
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
if (isVisibleToUser) {
......@@ -65,8 +65,8 @@ public abstract class BaseLazyLoadFragment extends BaseStateFragment {
}
}
//当fragment没有结合viewpager使用的时候 isVisible永远为false
// viewPager.setOffscreenPageLimit();设为Viewpager数量
//fragment 가 view pager 와 결합 하지 않 았 을 때 isVisible 은 영원히 false 이다.
// viewPager.setOffscreenPageLimit();Viewpager 수량 으로 설정
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
......@@ -75,7 +75,7 @@ public abstract class BaseLazyLoadFragment extends BaseStateFragment {
}
/**
* 手动判断是否需要更新数据
* 데 이 터 를 업데이트 할 필요 가 있 는 지 수 동 으로 판단 합 니 다.
*/
protected void checkLoad() {
if (isVisible && isInitView) {
......
......@@ -22,7 +22,7 @@ import cn.dankal.basiclib.widget.swipetoloadlayout.SwipeToLoadLayout;
/**
* 列表类型通用的Fragment
* 목록 형식 공통 Fragment
*
* @author fred
*/
......
......@@ -71,7 +71,7 @@ public abstract class LazyLoadBaseFragment extends BaseFragment {
/**
* 统一处理 显示隐藏
* 일괄 처리 표시 숨 기기
*
* @param visible
*/
......
......@@ -8,7 +8,7 @@ import android.support.v4.app.FragmentStatePagerAdapter;
import java.util.List;
/**
* description: 通用Fragment Adapter
* description: 유 니 버 설 Fragment Adapter
*
* @author vane
* @since 2018/3/12
......
......@@ -14,7 +14,7 @@ import cn.dankal.client.R;
public abstract class ItemViewsAdapter<T, V extends View> {
private Pools.Pool<V> mCachePool;
private List<T> mItemData = new ArrayList<>();
// 不能简单的用mParentView的子views,因为可能mParentView有一些装饰子view,不应该归adapter管理
// mParentView 의 하위 views 를 쉽게 사용 할 수 없습니다. mParentView 에 장식 용 서브 view 가 있 을 수 있 으 므 로 adapter 에 의 해 관리 되 어 서 는 안 됩 니 다.
private List<V> mViews = new ArrayList<>();
private ViewGroup mParentView;
......
......@@ -90,7 +90,7 @@ import cn.dankal.basiclib.util.ViewHelper;
* @date 2016-01-27
*/
public class TabSegment extends HorizontalScrollView {
// mode: 自适应宽度+滚动 / 均分
// mode: 자가 적응 너비 + 스크롤 / 평균
public static final int MODE_SCROLLABLE = 0;
public static final int MODE_FIXED = 1;
// icon position
......@@ -98,7 +98,7 @@ public class TabSegment extends HorizontalScrollView {
public static final int ICON_POSITION_TOP = 1;
public static final int ICON_POSITION_RIGHT = 2;
public static final int ICON_POSITION_BOTTOM = 3;
// status: 用于记录tab的改变状态
// status: tab 의 변경 상 태 를 기록 할 때 사용 합 니 다.
private static final int STATUS_NORMAL = 0;
private static final int STATUS_PROGRESS = 1;
private static final int STATUS_SELECTED = 2;
......@@ -111,27 +111,27 @@ public class TabSegment extends HorizontalScrollView {
private int mPendingSelectedIndex = Integer.MIN_VALUE;
private Container mContentLayout;
/**
* item的默认字体大小
* 아 이 템 의 기본 글꼴 크기
*/
private int mTabTextSize;
/**
* 是否有Indicator
* 혹시 Indicator 가 있 나 요?
*/
private boolean mHasIndicator = true;
/**
* Indicator高度
* Indicator 높이
*/
private int mIndicatorHeight;
/**
* indicator在顶部
* indicator 가 맨 위 에 있어 요.
*/
private boolean mIndicatorTop = false;
/**
* indicator采用drawable
* indicator 는 drawable 을 사용 합 니 다.
*/
private Drawable mIndicatorDrawable;
/**
* indicator宽度跟随内容宽度
* indicator폭 추적 내용 폭
*/
private boolean mIsIndicatorWidthFollowContent = true;
/**
......@@ -146,7 +146,7 @@ public class TabSegment extends HorizontalScrollView {
private int mIndicatorSelectedColor;
/**
* item icon的默认位置
* item icon의 기본 위치
*/
@IconPosition
private int mDefaultTabIconPosition;
......@@ -156,7 +156,7 @@ public class TabSegment extends HorizontalScrollView {
@Mode
private int mMode = MODE_FIXED;
/**
* ScrollMode下item的间隙
* ScrollMode 하 이 아 이 템 사이
*/
private int mItemSpaceInScrollMode;
/**
......@@ -172,7 +172,7 @@ public class TabSegment extends HorizontalScrollView {
int index = (int) v.getTag();
/*
Editby:Vane
调用者自行判断点击后是否继续进行切换(icon状态,Fragment)
호출 자 는 클릭 후 계속 전환 할 지 여 부 를 스스로 판단 합 니 다 (icon 상태, Fragment)
*/
boolean isContinueClick = true;
if (mOnTabClickListener != null) {
......@@ -191,7 +191,7 @@ public class TabSegment extends HorizontalScrollView {
}
};
/**
* 与ViewPager的协同工作
* ViewPager 와 의 협동 작업
*/
private ViewPager mViewPager;
private PagerAdapter mPagerAdapter;
......@@ -328,8 +328,8 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 清空已经存在的 Tab。
* 一般先调用本方法清空已加上的 Tab, 然后重新 {@link #addTab(Tab)} 添加新的 Tab, 然后通过 {@link #notifyDataChanged()} 通知变动
* 이미 존재 하 는 Tab 를 삭제 합 니 다.
* 일반적으로 이 방법 을 사용 하여 추 가 된 Tab 를 제거 한 다음, @ link # addTab (Tab)} 에 새로운 Tab 를 추가 한 후, @ link # notify DataChanged ()} 을 통 해 변경 사항 을 알 립 니 다.
*/
public void reset() {
mContentLayout.getTabAdapter().clear();
......@@ -354,7 +354,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置 indicator 为自定义的 Drawable(默认跟随 Tab 的 selectedColor)
* indicator 를 사용자 정의 Drawable 로 설정 합 니 다 (기본 값 으로 Tab 를 따 르 는 selectedColor)
*/
public void setIndicatorDrawable(Drawable indicatorDrawable) {
mIndicatorDrawable = indicatorDrawable;
......@@ -365,7 +365,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置indicator颜色
* indicator 색상 설정
* @param indicatorColor
*/
public void setIndicatorColor(@ColorInt int indicatorColor) {
......@@ -374,25 +374,25 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置 indicator的宽度是否随内容宽度变化
* indicator 의 폭 을 설정 합 니 다. 내용 에 따라 폭 이 달라 질 지 여부 입 니 다.
*/
public void setIndicatorWidthAdjustContent(boolean indicatorWidthFollowContent) {
mIsIndicatorWidthFollowContent = indicatorWidthFollowContent;
}
/**
* 设置 indicator 的位置
* indicator 의 위 치 를 설정 합 니 다.
*
* @param isIndicatorTop true 时表示 indicator 位置在 Tab 的上方, false 时表示在下方
* @param isIndicatorTop true 는 indicator 의 위 치 를 Tab 위 에 표시 하고 false 는 아래 에 표시 합 니 다.
*/
public void setIndicatorPosition(boolean isIndicatorTop) {
mIndicatorTop = isIndicatorTop;
}
/**
* 设置是否需要显示 indicator
* indicator 를 표시 할 지 설정 합 니 다.
*
* @param hasIndicator 是否需要显示 indicator
* @param hasIndicator indicator 를 표시 할 지 여부
*/
public void setHasIndicator(boolean hasIndicator) {
if (mHasIndicator != hasIndicator) {
......@@ -435,9 +435,9 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* @param viewPager 需要关联的 ViewPager。
* @param useAdapterTitle 自动根据ViewPager的adapter.getTitle取值。
* @param autoRefresh adapter有更改时,刷新TabSegment。
* @param viewPager 관련 ViewPager 가 필요 합 니 다.
* @param useAdapterTitle View Pager 의adapter. gettitle수치.
* @param autoRefresh adapter 가 변경 되 었 을 때 Tabsegment 을 새로 고침 합 니 다.
*/
public void setupWithViewPager(@Nullable final ViewPager viewPager, boolean useAdapterTitle, boolean autoRefresh) {
if (mViewPager != null) {
......@@ -516,14 +516,14 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置 Tab 正常状态下的颜色
* Tab 정상 상태의 색 을 설정 합 니 다.
*/
public void setDefaultNormalColor(@ColorInt int defaultNormalColor) {
mDefaultNormalColor = defaultNormalColor;
}
/**
* 设置 Tab 选中状态下的颜色
* Tab 가 선택 한 상태 에서 색상 을 설정 합 니 다.
*/
public void setDefaultSelectedColor(@ColorInt int defaultSelectedColor) {
mDefaultSelectedColor = defaultSelectedColor;
......@@ -556,7 +556,7 @@ public class TabSegment extends HorizontalScrollView {
if (drawable == null) {
return;
}
// 这里要拿textView已经set并mutate的drawable
// 여 기 는 textView 이미 set 와 mutate 의 drawable 을 가 져 오 겠 습 니 다.
DrawableHelper.setDrawableTintColor(drawable, color);
setDrawable(textView, model.getNormalIcon(), getTabIconPosition(model));
}
......@@ -566,7 +566,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 只有点击 tab 才会自己产生动画变化,其它需要使用 updateIndicatorPosition 做驱动
* tab 를 클릭 해 야 애니메이션 변화 가 생 길 수 있 습 니 다. 다른 것 은 upddateindicator Position 으로 구동 해 야 합 니 다.
*/
private void selectTab(final int index, boolean preventAnim) {
if (mContentLayout.getTabAdapter().getSize() == 0 || mContentLayout.getTabAdapter().getSize() <= index) {
......@@ -584,7 +584,7 @@ public class TabSegment extends HorizontalScrollView {
TabAdapter tabAdapter = getAdapter();
final List<TabItemView> listViews = tabAdapter.getViews();
// 第一次设置
// 첫 번 째 설정
if (mSelectedIndex == Integer.MIN_VALUE) {
tabAdapter.setup();
Tab model = tabAdapter.getItem(index);
......@@ -733,10 +733,10 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 改变 Tab 的文案
* Tab 의 문안 을 고치다
*
* @param index Tab index
* @param text 新文案
* @param index Tab 의. index
* @param text 새로운 문안
*/
public void updateTabText(int index, String text) {
Tab model = getAdapter().getItem(index);
......@@ -748,10 +748,10 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 整个 Tab 替换
* 전체 Tab 교체
*
* @param index 需要被替换的 Tab 的 index
* @param model 新的 Tab
* @param index 교체 가 필요 한 Tab 의 index 입 니 다.
* @param model 새로운 Tab
*/
public void replaceTab(int index, Tab model) {
try {
......@@ -871,19 +871,19 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 根据 index 获取对应下标的 {@link Tab} 对象
* index 에 따라 아래 표 시 된 {@ link Tab} 대상 가 져 오기
*
* @return index 下标对应的 {@link Tab} 对象
* @return index 아래 에 대응 하 는 {@ link Tab} 대상 을 표시 합 니 다.
*/
public Tab getTab(int index) {
return getAdapter().getItem(index);
}
/**
* 根据 index 在对应的 Tab 上显示未读数或红点
* index 에 따 르 면 해당 되 는 Tab 에 미 눈금 이나 빨 간 점 을 표시 합 니 다.
*
* @param index 要显示未读数或红点的 Tab 的下标
* @param count 不为0时红点会显示该数字作为未读数,为0时只会显示一个小红点
* @param index 숫자 나 빨 간 점 을 표시 하지 않 은 Tab 의 아래 표 시 를 표시 해 야 합 니 다.
* @param count 0 시 에 붉 은 점 이 아니면 이 숫자 를 읽 지 않 은 숫자 로 표시 하고 0 시 에 작은 붉 은 점 만 표시 합 니 다.
*/
public void showSignCountView(Context context, int index, int count) {
Tab tab = getAdapter().getItem(index);
......@@ -892,7 +892,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 根据 index 在对应的 Tab 上隐藏红点
* index 에 따라 대응 하 는 Tab 에 붉 은 점 을 숨 깁 니 다.
*/
public void hideSignCountView(int index) {
Tab tab = getAdapter().getItem(index);
......@@ -900,7 +900,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 获取当前的红点数值,如果没有红点则返回 0
* 현재 빨 간 점 수 치 를 가 져 오고 빨 간 점 이 없 으 면 0 을 되 돌려 줍 니 다.
*/
public int getSignCount(int index) {
Tab tab = getAdapter().getItem(index);
......@@ -919,40 +919,41 @@ public class TabSegment extends HorizontalScrollView {
public interface OnTabClickListener {
/**
* 当某个 Tab 被点击时会触发
* 어떤 Tab 가 클릭 되 었 을 때 발동 합 니 다.
*
* @param index 被点击的 Tab 下标
* Editby Vane:点击返回false则不做响应
* @param index 클릭 당 한 Tab 이하
* Editby Vane:클릭 하여 false 로 돌아 가면 응답 하지 않 습 니 다.
*/
boolean onTabClick(int index);
}
public interface OnTabSelectedListener {
/**
* 当某个 Tab 被选中时会触发
* 어떤 Tab 가 걸 렸 을 때 발동 합 니 다.
*
* @param index 被选中的 Tab 下标
* @param index 선 택 된 Tab 이하
*/
void onTabSelected(int index);
/**
* 当某个 Tab 被取消选中时会触发
* 어떤 Tab 가 선택 이 취소 되면 발동 합 니 다.
*
* @param index 선 택 된 Tab 이하 표 시 를 취소 합 니 다.
*
* @param index 被取消选中的 Tab 下标
*/
void onTabUnselected(int index);
/**
* 当某个 Tab 处于被选中状态下再次被点击时会触发
* 어떤 Tab 가 선 택 된 상태 에서 다시 클릭 하면
*
* @param index 被再次点击的 Tab 下标
* @param index 다시 클릭 한 Tab 내리 기
*/
void onTabReselected(int index);
/**
* 当某个 Tab 被双击时会触发
* 어떤 Tab 가 더 블 클릭 을 받 으 면 발동 합 니 다.
*
* @param index 被双击的 Tab 下标
* @param index 더 블 클릭 당 한 Tab 가 낙찰 되 었 습 니 다.
*/
void onDoubleTap(int index);
}
......@@ -1040,7 +1041,7 @@ public class TabSegment extends HorizontalScrollView {
private int mSignCountMarginRight = 0;
private int mSignCountMarginTop = 0;
/**
* 是否动态更改icon颜色,如果为true, selectedIcon将失效
* icon 색상 을 동적 으로 변경 할 지 여부 입 니 다. true 일 경우 selected Icon 은 유효 하지 않 습 니 다.
*/
private boolean dynamicChangeIconColor = true;
......@@ -1053,18 +1054,7 @@ public class TabSegment extends HorizontalScrollView {
this(normalIcon, selectedIcon, text, dynamicChangeIconColor, true);
}
/**
* 如果你的 icon 显示大小和实际大小不吻合:
* 1. 设置icon 的 bounds
* 2. 使用此构造器
* 3. 最后一个参数(setIntrinsicSize)设置为false
*
* @param normalIcon 未选中态 icon
* @param selectedIcon 选中态 icon
* @param text 文字
* @param dynamicChangeIconColor 是否动态改变 icon 颜色
* @param setIntrinsicSize 是否设置 icon 的大小为 intrinsic width 和 intrinsic height。
*/
public Tab(Drawable normalIcon, Drawable selectedIcon, CharSequence text, boolean dynamicChangeIconColor, boolean setIntrinsicSize) {
this.normalIcon = normalIcon;
if (this.normalIcon != null && setIntrinsicSize) {
......@@ -1079,9 +1069,9 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置红点中数字显示的最大位数,默认值为 2,超过这个位数以 99+ 这种形式显示。如:110 -> 99+,98 -> 98
* 빨간색 점 에서 숫자 가 나타 나 는 최대 자릿수 를 설정 하고 기본 값 은 2 이 며 이 자릿수 를 넘 으 면 99 + 라 는 형식 으로 표 시 됩 니 다.예: 110 - > 99 +, 98 - > 98
*
* @param digit 数字显示的最大位数
* @param digit 숫자 표시 의 최대 자릿수
*/
public void setmSignCountDigits(int digit) {
mSignCountDigits = digit;
......@@ -1175,10 +1165,10 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 设置红点的位置, 注意红点的默认位置是在内容的右侧并顶对齐
* 빨간색 점 의 위 치 를 설정 하고 빨간색 점 의 기본 위 치 는 내용 의 오른쪽 에 정렬 하 는 것 입 니 다.
*
* @param marginRight 在红点默认位置的基础上添加的 marginRight
* @param marginTop 在红点默认位置的基础上添加的 marginTop
* @param marginRight 레 드 포인트 기본 위치 에 추 가 된 거 예요. marginRight
* @param marginTop 레 드 포인트 기본 위치 에 추 가 된 거 예요. marginTop
*/
public void setSignCountMargin(int marginRight, int marginTop) {
mSignCountMarginRight = marginRight;
......@@ -1198,29 +1188,29 @@ public class TabSegment extends HorizontalScrollView {
mSignCountTextView.setLayoutParams(signCountLp);
addCustomView(mSignCountTextView);
}
// 确保在先 setMargin 后 create 的情况下 margin 会生效
//미리 setMargin 후 create 를 확보 한 상태 에서 margin 이 유효 합 니 다.
setSignCountMargin(mSignCountMarginRight, mSignCountMarginTop);
return mSignCountTextView;
}
/**
* 显示 Tab 上的未读数或红点
* 显示 Tab 위의 눈금 이나 빨 간 점
*
* @param count 不为0时红点会显示该数字作为未读数,为0时只会显示一个小红点
* @param count 0 시 에 붉 은 점 이 아니면 이 숫자 를 읽 지 않 은 숫자 로 표시 하고 0 시 에 작은 붉 은 점 만 표시 합 니 다.
*/
public void showSignCountView(Context context, int count) {
ensureSignCountView(context);
mSignCountTextView.setVisibility(View.VISIBLE);
RelativeLayout.LayoutParams signCountLp = (RelativeLayout.LayoutParams) mSignCountTextView.getLayoutParams();
if (count != 0) {
// 显示未读数
// 미 눈금 보이 기
signCountLp.height = ResHelper.getAttrDimen(mSignCountTextView.getContext(), R.attr.tab_sign_count_view_minSize_with_text);
mSignCountTextView.setLayoutParams(signCountLp);
mSignCountTextView.setMinHeight(ResHelper.getAttrDimen(mSignCountTextView.getContext(), R.attr.tab_sign_count_view_minSize_with_text));
mSignCountTextView.setMinWidth(ResHelper.getAttrDimen(mSignCountTextView.getContext(), R.attr.tab_sign_count_view_minSize_with_text));
mSignCountTextView.setText(getNumberDigitsFormattingValue(count));
} else {
// 显示红点
// 붉 은 점 보이 기
signCountLp.height = ResHelper.getAttrDimen(mSignCountTextView.getContext(), R.attr.tab_sign_count_view_minSize);
mSignCountTextView.setLayoutParams(signCountLp);
mSignCountTextView.setMinHeight(ResHelper.getAttrDimen(mSignCountTextView.getContext(), R.attr.tab_sign_count_view_minSize));
......@@ -1230,7 +1220,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 隐藏 Tab 上的未读数或红点
* Tab 의 미 눈금 이나 빨 간 점 을 숨 깁 니 다.
*/
public void hideSignCountView() {
if (mSignCountTextView != null) {
......@@ -1239,7 +1229,7 @@ public class TabSegment extends HorizontalScrollView {
}
/**
* 获取该 Tab 的未读数
* 이 Tab 의 미 눈금 가 져 오기
*/
public int getSignCount() {
if (mSignCountTextView != null && !LangHelper.isNullOrEmpty(mSignCountTextView.getText())) {
......@@ -1286,7 +1276,7 @@ public class TabSegment extends HorizontalScrollView {
if (mCustomViews != null && mCustomViews.size() > 0) {
view.setTag(R.id.view_can_not_cache_tag, true);
for (View v : mCustomViews) {
// 防止先 setCustomViews 然后再 updateTabText 时会重复添加 customView 导致 crash
// icon 색상 을 동적 으로 변경 할 지 여부 입 니 다. true 일 경우 selected Icon 은 유효 하지 않 습 니 다.
if (v.getParent() == null) {
view.addView(v);
}
......
......@@ -54,11 +54,11 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
}
/**
* 上次点击返回键的时间
* 저번 에 리 턴 누 른 시간.
*/
private var lastBackPressed: Long = 0
/**
* 两次点击的间隔时间
* 두 번 의 클릭 간격
*/
private val QUIT_INTERVAL = 2000
......@@ -76,7 +76,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
override fun getLayoutId(): Int {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
//透明状态栏
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)
}
return R.layout.activity_main
......@@ -123,7 +123,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.let {
// 默认切换的时候,会有一个过渡动画,设为false后,取消动画,直接显示
// 기본 값 으로 전환 할 때 하나의 과도 애니메이션 이 있 는데 false 로 설정 한 후에 애니메이션 을 취소 하고 바로 표시 합 니 다.
container.setCurrentItem(tab.position, false)
container.currentItem = tab.position
}
......@@ -149,14 +149,14 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
}
})
/** 拦截tablayout点击事件 */
/** tablayot 클릭 이벤트 차단 */
val tabOnClickListener = View.OnTouchListener { view, event ->
/* val pos = view.tag as Int
if (pos == ITEM_MINE && event.action == MotionEvent.ACTION_DOWN && !DankalApplication.isLogin()) {
ARouter.getInstance().build(LoginProtocol.LOGIN).navigation()
return@OnTouchListener true
}*/
false // 不拦截
false // 막 지 않다
}
for (i in 0 until tabs.tabCount) {
val view = getTabView(tabs, i) ?: continue
......@@ -169,7 +169,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
}
//初始化地图获取经纬度
//지 도 를 초기 화하 여 경 위 를 얻다.
private fun initializeMap() {
var location: Location? = mMap?.getMyLocation()
try {
......@@ -183,7 +183,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
}
/** 反射获取tabview */
/** tabview 반사 획득 */
private fun getTabView(tabLayout: TabLayout, index: Int): View? {
val tab = tabLayout.getTabAt(index) ?: return null
var tabView: View? = null
......@@ -246,15 +246,15 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
.putExtra(MerchantDetailsActivity.TABLE_UUID, qrCodeEntity.tableUuid)
.putExtra(MerchantDetailsActivity.TABLE_NUMBER, qrCodeEntity.tableNumber.toString()))
}
"1"//不存在
"1"//존재 하지 않 음
-> {
startActivity(Intent(this@MainActivity, ScanResultActivity::class.java))
}
"2"//被使用
"2"//사용되다
-> {
showDialogStateTow(getString(R.string.the_table_number_is_in_use))
}
"3"//已隐藏
"3"//숨겨 진
-> {
startActivity(Intent(this@MainActivity, ScanResultActivity::class.java))
}
......@@ -274,7 +274,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
mRxPermissions?.let {
it.request(Permission.ACCESS_COARSE_LOCATION, Permission.ACCESS_FINE_LOCATION).subscribe({
if (it) {
//权限被允许
//권한 이 허용 되다
initLocation()
} else {
val builder = CommonDialog.Builder(this)
......@@ -325,7 +325,7 @@ class MainActivity : BaseActivity(), OnMapReadyCallback {
val token = task.result?.token
Log.i("FirebaseInstanceId", token)
//上传到服务器
//서버 에 업로드 하 다
var map = HashMap<String, Any?>()
map["fcm_token"] = token
map["type"] = 0
......
......@@ -54,7 +54,7 @@ public class HomeAdapter extends BaseMultiItemQuickAdapter<HomeEntity, BaseViewH
private BottomItemAdapter bottomItemAdapter;
private List<String> stringList;//轮播图地址
private List<String> stringList;//라운드 맵 주소
private FragmentAdapter fragmentAdapter;
......
......@@ -20,7 +20,7 @@ import cn.dankal.client.R;
public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
private Context context;
//该list存放的是最终弹出列表的数据
//이 list 는 최종 팝 업 목록 의 데 이 터 를 저장 합 니 다.
private List<String> list = new ArrayList<>();
private List<String> mSearchDataBaseList;
......@@ -32,11 +32,6 @@ public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
@Override
public Filter getFilter() {
Filter filter = new Filter() {
/**
* 在后台线程执行,定义过滤算法
* @param constraint :就是你在输入框输入的字符串
* @return 符合条件的数据结果,会在下面的publishResults方法中将数据传给list
*/
@Override
protected FilterResults performFiltering(CharSequence constraint) {
......@@ -48,17 +43,17 @@ public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
results.count = mSearchDataBaseList.size();
} else {
//这个newList是实际搜索出的结果集合,实际上是将该newList的数据赋给了list
//이 new List 는 실제 검색 결과 집합 으로 실제로 이 new List 의 데 이 터 를 list 에 부 여 했 습 니 다.
List<String> newList = new ArrayList<>();
for (String s : mSearchDataBaseList) {
//包含就添加到newList中
//포함 하면 new List 에 추가 합 니 다.
if (s.contains(constraint.toString().trim()
)) {
newList.add(s);
}
}
//将newList传给results
//new List 를 resuls 에 게 전달 합 니 다.
results.values = newList;
results.count = newList.size();
newList = null;
......@@ -68,32 +63,30 @@ public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
}
/**
* 本方法在UI线程执行,用于更新自动完成列表
* 이 방법 은 UI 스 레 드 에서 실 행 됩 니 다. 자동 완성 목록 을 업데이트 하 는 데 사 용 됩 니 다.
* @param constraint
* @param results
*/
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
if (results != null && results.count > 0) {//有符合过滤规则的数据
if (results != null && results.count > 0) {//필터 링 규칙 에 맞 는 데이터 가 있 습 니 다.
list.clear();
list.addAll((List<String>) results.values);
notifyDataSetChanged();
} else {//没有符合过滤规则的数据
} else {//필터 규칙 에 맞 는 데이터 가 없습니다.
notifyDataSetInvalidated();
}
}
/**
* 将符合条件的数据转换为你想要的方式,一般无需实现
* 控制用户点击提示时要填充至输入框的文本内容。
* 조건 에 맞 는 데 이 터 를 원 하 는 방식 으로 바 꾸 면 일반적으로 실현 할 필요 가 없다.
* 사용자 가 힌트 를 클릭 할 때 입력 상자 에 채 울 텍스트 내용 을 제어 합 니 다.
*/
@Override
public CharSequence convertResultToString(Object resultValue) {
return super.convertResultToString(resultValue);
//假如这里写 return "啊哈哈";
//那么,无论你点击哪个条目,出现在输入框的永远是"啊哈哈"这几个字。
}
};
......@@ -106,7 +99,7 @@ public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
}
/**
* 这里必须返回list.get(position),否则点击条目后输入框显示的是position,而非该position的数据
* 이곳 은 반드시 돌아 가 야 한다.list. get(position) 그렇지 않 으 면 항목 을 클릭 한 후 입력 창 에 position 이 아 닌 position 데이터 가 표 시 됩 니 다.
*
* @param position
* @return
......@@ -135,9 +128,6 @@ public class MyAutoCompleteTvAdapter extends BaseAdapter implements Filterable {
holder = (TvViewHolder) convertView.getTag();
}
//注意这里不要为convertView添加点击事件,默认是点击后:①下拉窗收起;
//②点击的条目数据会显示在搜索框中;③光标定位到字符串末位。
//如果自己添加点击事件,就要首先实现上面的①、②、③。
holder.tv.setText(list.get(position));
return convertView;
}
......
......@@ -166,7 +166,7 @@ public class CarShopAdapter extends BaseQuickAdapter<ShopCarEntity.DataBean, Bas
}
/**
* 回调,用来通知界面刷新购物车底部的值
* 리 턴, 인터페이스 에 쇼핑 카 트 아래쪽 의 값 을 리 셋 하 는 것 을 통지 합 니 다.
*/
public interface SelectShowListen {
public void onShowListen();
......
......@@ -18,7 +18,7 @@ import cn.dankal.client.util.UIUtile;
*/
public class OrderResultAdapter extends BaseQuickAdapter<CommitHotelEntity.PaySettleGoodsListBean, BaseViewHolder> {
private int isStamp;//0不是邮票兑换商品
private int isStamp;//0. 우표 교환 상품 이 아 닙 니 다.
public OrderResultAdapter(int layoutResId, @Nullable List<CommitHotelEntity.PaySettleGoodsListBean> data, int isStamp) {
super(layoutResId, data);
......
......@@ -35,9 +35,9 @@ public class ShopBottomListAdapter extends BaseQuickAdapter<FoodEntity, BaseView
helper.setText(R.id.tv_item_shop_name, item.getFoodName());
helper.setText(R.id.tv_show_spec, item.getSpecShow());
if (item.getIsStamp() == 0) {//不是邮票兑换商品
if (item.getIsStamp() == 0) {//우표 교환 상품 아니에요.
helper.setText(R.id.tv_item_shop_price, UIUtile.stringToPrice(item.getFoodPrice()));
} else {//普通商品
} else {//일반 상품
helper.setText(R.id.tv_item_shop_price, UIUtile.stringToStamp(item.getStampPrice()));
}
helper.setText(R.id.tv_item_count, String.valueOf(item.getNumber()));
......@@ -63,19 +63,19 @@ public class ShopBottomListAdapter extends BaseQuickAdapter<FoodEntity, BaseView
private void updateShopNumber(BaseViewHolder helper, FoodEntity item, int number) {
//找到购物车商品
//카 트 상품 을 찾다
List<FoodEntity> entities = LitePal.where("storeUUid=? and goods_uuid=? and second_main_specs_uuid=? and specShow=?", item.getStoreUUid(),
item.getGoods_uuid(), item.getSecond_main_specs_uuid(), item.getSpecShow()).order("id desc").find(FoodEntity.class);
if (entities != null && entities.size() > 0) {
if (entities.size() == 1) {
FoodEntity foodEntity = entities.get(0);
if (number == 0) {//删除
if (number == 0) {//삭제 하 다.
foodEntity.delete();
data.remove(helper.getAdapterPosition());
} else {
foodEntity.setNumber(number);
foodEntity.save();
//替换指定元素
//지정 한 요소 교체
Collections.replaceAll(data, data.get(helper.getAdapterPosition()), foodEntity);
}
if (data.size() == 0) {
......
......@@ -33,7 +33,7 @@ public class ShopSpecListAdapter extends BaseQuickAdapter<RestaurantSpecEntity.G
super(layoutResId, data);
this.context = context;
//循环遍历初始化选中
//반복 해서 초기 화 선택
for (int i = 0; i < data.size(); i++) {
RestaurantSpecEntity.GoodsMainSpecsListBean goodsMainSpecsListBean = data.get(i);//获得当前辅规格
List<RestaurantSpecEntity.GoodsMainSpecsListBean.SecondSpecsVolistBean> specsList = goodsMainSpecsListBean.getSecond_specs_volist();//获得辅规格所有规格选项
......
......@@ -41,7 +41,7 @@ public class AfterListAdapter extends BaseQuickAdapter<AfterEntity.DataBean, Bas
tvOriginalPrice.setText(UIUtile.stringToPrice(item.getOriginal_price()));
switch (item.getRefund_status()) {
case 0://待审核
case 0://심 사 를 기다리다
if (item.getOrder_status() == 6) {
helper.setText(R.id.tv_state, mContext.getString(R.string.only_refund) + " " + mContext.getString(R.string.refund_pending));
} else if (item.getOrder_status() == 7) {
......@@ -50,7 +50,7 @@ public class AfterListAdapter extends BaseQuickAdapter<AfterEntity.DataBean, Bas
helper.setText(R.id.tv_state, mContext.getString(R.string.refund_pending));
}
break;
case 1://审核通过
case 1://심사 에 통과 하 다
if (item.getOrder_status() == 8) {
//helper.setText(R.id.tv_state, R.string.successful_refund_only);
helper.setText(R.id.tv_state, mContext.getString(R.string.only_refund) + " " + mContext.getString(R.string.successful_refund_tow));
......@@ -61,10 +61,10 @@ public class AfterListAdapter extends BaseQuickAdapter<AfterEntity.DataBean, Bas
helper.setText(R.id.tv_state, R.string.successful_refund_tow);
}
break;
case 2://审核拒绝,只有4
case 2://심사 거절, 오직4
helper.setText(R.id.tv_state, mContext.getString(R.string.refusal_of_refund));
break;
case 3://撤销退款
case 3://환불 을 취소 하 다
helper.setText(R.id.tv_state, mContext.getString(R.string.refund_closure));
break;
default:
......
......@@ -38,19 +38,19 @@ public class EvaluationListAdapter extends BaseQuickAdapter<MallOrderDetailEntit
private Context context;
public int mPosition;//记录当前单击的位置
public int mPosition;//현재 클릭 한 위 치 를 기록 합 니 다.
private Map<String, List<LocalMedia>> selectMap = new HashMap<>();
public Map<String, List<String>> uploadImage = new HashMap<>();//上传到腾讯云的图片
public Map<String, List<String>> uploadImage = new HashMap<>();//텐 센트 클 라 우 드 에 올 린 사진 입 니 다.
private List<EvaluationCommitEntity> resultData;//评论需要返回的数据
private List<EvaluationCommitEntity> resultData;//댓 글 반환 할 데이터
private List<EditText> editTextList;
private List<GradeStarView> gradeStarViewList;
private List<MallOrderDetailEntity.OrdersGoodsListBean> data;//当前每个item的数据
private List<MallOrderDetailEntity.OrdersGoodsListBean> data;//현재 모든 아 이 템 의 데이터
public EvaluationListAdapter(Context context, int layoutResId, @Nullable List<MallOrderDetailEntity.OrdersGoodsListBean> data) {
super(layoutResId, data);
......@@ -116,34 +116,32 @@ public class EvaluationListAdapter extends BaseQuickAdapter<MallOrderDetailEntit
selectMap.put(String.valueOf(mPosition), mediaList);
}
// 进入相册 以下是例子:不需要的api可以不写
PictureSelector.create((Activity) context)
.openGallery(PictureMimeType.ofImage())// 全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()、音频.ofAudio()
.theme(R.style.picture_default_style)// 主题样式设置 具体参考 values/styles 用法:R.style.picture.white.style
.maxSelectNum(6)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.imageSpanCount(4)// 每行显示个数
.selectionMode(PictureConfig.MULTIPLE)// 多选 or 单选
.previewImage(true)// 是否可预览图片
.isCamera(true)// 是否显示拍照按钮
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
.enableCrop(false)// 是否裁剪
.compress(true)// 是否压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.selectionMedia(mediaList)// 是否传入已选图片
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(PictureConfig.CHOOSE_REQUEST);//结果回调onActivityResult code
.openGallery(PictureMimeType.ofImage())
.theme(R.style.picture_default_style)
.maxSelectNum(6)
.imageSpanCount(4)
.selectionMode(PictureConfig.MULTIPLE)
.previewImage(true)
.isCamera(true)
.isZoomAnim(true)
.enableCrop(false)
.compress(true)
.synOrAsy(true)
.glideOverride(160, 160)
.freeStyleCropEnabled(true)
.selectionMedia(mediaList)
.minimumCompressSize(100)
.forResult(PictureConfig.CHOOSE_REQUEST);
}
public void setList(int mPosition, List<LocalMedia> selectList) {
List<String> listImage = new ArrayList<>();//需要上传到腾讯云的图片列表
List<String> listImage = new ArrayList<>();
for (int j = 0; j < selectList.size(); j++) {
LocalMedia media = selectList.get(j);
String path = "";
if (media.isCompressed() || media.isCut() && media.isCompressed()) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
path = media.getCompressPath();
}
......@@ -183,7 +181,6 @@ public class EvaluationListAdapter extends BaseQuickAdapter<MallOrderDetailEntit
LocalMedia media = localMedias.get(i);
String path = "";
if (media.isCompressed() || media.isCut() && media.isCompressed()) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
path = media.getCompressPath();
}
String avatar = getFormatKey(path);
......
......@@ -28,7 +28,7 @@ public class FoodDetailsAdapter extends BaseQuickAdapter<OrderHotelDetail.Orders
helper.setText(R.id.tv_item_shop_name, item.getGoods_name());
helper.setText(R.id.tv_item_shop_desc, item.getGoods_specs());
if (payType == 2) {//邮票支付
if (payType == 2) {//우표 지불
helper.setText(R.id.tv_item_shop_price, UIUtile.stringToStamp(item.getUnit_price()));
} else {
helper.setText(R.id.tv_item_shop_price, UIUtile.stringToPrice(item.getUnit_price()));
......
......@@ -26,7 +26,7 @@ public class FoodOrderListAdapter extends BaseQuickAdapter<FoodOrderEntity.DataB
helper.setText(R.id.tv_order_food_time, mContext.getString(R.string.order_time) + item.getCreate_time());
helper.setText(R.id.tv_order_food_count, mContext.getString(R.string.common) + item.getGoods_number() + mContext.getString(R.string.goods));
if (item.getPay_type() == 2) {//邮票支付
if (item.getPay_type() == 2) {//우표 지불
helper.setText(R.id.tv_order_food_price, UIUtile.stringToStamp(item.getReal_pay_price()));
} else {
helper.setText(R.id.tv_order_food_price, UIUtile.stringToPrice(item.getReal_pay_price()));
......@@ -35,25 +35,25 @@ public class FoodOrderListAdapter extends BaseQuickAdapter<FoodOrderEntity.DataB
PicUtil.setHeadPhoto(helper.getView(R.id.iv_image_head), item.getImg_list());
String status = "";
switch (item.getOrder_status()) {
case "0"://待支付
case "0":
status = mContext.getString(R.string.to_be_paid);
break;
case "1"://已支付
case "1":
status = mContext.getString(R.string.paymented);
break;
case "2"://退款申请中
case "2":
status = mContext.getString(R.string.application_for_refund);
break;
case "3"://待收货
case "3":
status = mContext.getString(R.string.to_be_received);
break;
case "4"://已完成
case "4":
status = mContext.getString(R.string.completed);
break;
case "5"://"已取消"
case "5":
status = mContext.getString(R.string.cancelled);
break;
case "6"://仅退款
case "6":
status = mContext.getString(R.string.only_refund);
break;
case "7":
......
......@@ -51,9 +51,9 @@ public class MallOrderDetailsAdapter extends BaseQuickAdapter<MallOrderDetailEnt
helper.addOnClickListener(R.id.tv_apply_after_sale);
TextView tvSale = helper.getView(R.id.tv_apply_after_sale);
if (order_status == 4 && item.getIs_after_sale() == 0) {//显示售后按钮
if (order_status == 4 && item.getIs_after_sale() == 0) {//A / S 버튼 보이 기
tvSale.setVisibility(View.VISIBLE);
} else {//不显示
} else {//표시 하지 않 음
tvSale.setVisibility(View.GONE);
}
}
......
......@@ -52,29 +52,29 @@ public class MallOrderListAdapter extends BaseQuickAdapter<MallOrderListEntity.D
String status = "";
switch (item.getOrder_status()) {
case 0://待支付
case 0:
status = mContext.getString(R.string.to_be_paid);
tvCancel.setVisibility(View.VISIBLE);
tvPay.setVisibility(View.VISIBLE);
break;
case 1://已支付
case 1:
status = mContext.getString(R.string.to_be_delivered);
tvCancel.setVisibility(View.VISIBLE);
break;
case 2://退款申请中
case 2:
status = mContext.getString(R.string.application_for_refund);
break;
case 3://待收货
case 3:
status = mContext.getString(R.string.to_be_received);
tvSure.setVisibility(View.VISIBLE);
break;
case 4://已完成
case 4:
status = mContext.getString(R.string.completed);
break;
case 5://"已取消"
case 5:
status = mContext.getString(R.string.cancelled);
break;
case 6://仅退款
case 6:
status = mContext.getString(R.string.only_refund);
break;
case 7:
......@@ -94,8 +94,8 @@ public class MallOrderListAdapter extends BaseQuickAdapter<MallOrderListEntity.D
break;
}
if (item.getOrder_status() == 4) {//交易已完成
if (item.getIs_comment() == 0) {//未评价显示评价按钮
if (item.getOrder_status() == 4) {//거래 가 완료 되 었 습 니 다.
if (item.getIs_comment() == 0) {//평가 없 음 평가 버튼
tvEvaluate.setVisibility(View.VISIBLE);
}
}
......@@ -111,25 +111,25 @@ public class MallOrderListAdapter extends BaseQuickAdapter<MallOrderListEntity.D
MallOrderItemListAdapter adapter = new MallOrderItemListAdapter(R.layout.item_mall_order_layout, item.getOrders_goods_list());
adapter.setOnItemClickListener((adapter1, view, position) -> {
switch (item.getOrder_status()) {
case 0://待支付
case 0:
context.startActivity(new Intent(context, MallOrderDetailsPayActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 1://已支付
case 1:
context.startActivity(new Intent(context, MallOrderDetailsActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 2://退款申请中
case 2:
context.startActivity(new Intent(context, MallOrderDetailsCancelActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 3://待收货
case 3:
context.startActivity(new Intent(context, MallOrderDetailsActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 4://已完成
case 4:
context.startActivity(new Intent(context, MallOrderDetailsCompleteActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 5://"已取消"
case 5:
context.startActivity(new Intent(context, MallOrderDetailsCancelActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 6://仅退款
case 6:
context.startActivity(new Intent(context, MallOrderDetailsCancelActivity.class).putExtra(ConstantsRestaurantType.UUID, item.getUuid()));
break;
case 7:
......
......@@ -19,7 +19,7 @@ import cn.dankal.client.util.UIUtile;
*/
public class MyCollectAdapter extends BaseQuickAdapter<CollectShopEntity.DataBean, BaseViewHolder> {
public boolean isAllSelect = false;//是否全选
public boolean isAllSelect = false;
public SparseBooleanArray sparseBooleanArray = new SparseBooleanArray();
public MyCollectAdapter(int layoutResId, @Nullable List<CollectShopEntity.DataBean> data) {
......
......@@ -19,7 +19,7 @@ import cn.dankal.client.R;
*/
public class MyCouponAdapter extends BaseQuickAdapter<CouponListEntity.DataBean, BaseViewHolder> {
private int type = 0;//0,选择优惠券,1,列表进入
private int type = 0;//0, 쿠폰 선택, 1, 리스트 입장
public MyCouponAdapter(int layoutResId, @Nullable List<CouponListEntity.DataBean> data, int type) {
super(layoutResId, data);
......
......@@ -41,7 +41,7 @@ public class GridImageAdapter extends
private int selectMax = 9;
private Context context;
/**
* 点击添加图片跳转
* 클릭 하여 이미지 전송 추가
*/
private onAddPicClickListener mOnAddPicClickListener;
......@@ -97,9 +97,7 @@ public class GridImageAdapter extends
}
}
/**
* 创建ViewHolder
*/
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View view = mInflater.inflate(R.layout.gv_filter_image,
......@@ -114,11 +112,11 @@ public class GridImageAdapter extends
}
/**
* 设置值
* 설정 값
*/
@Override
public void onBindViewHolder(final ViewHolder viewHolder, final int position) {
//少于8张,显示继续添加的图标
//8 장 미 만, 추가 아이콘 보이 기
if (getItemViewType(position) == TYPE_CAMERA) {
if (DankalApplication.isDarkMode()){
viewHolder.mImg.setImageResource(R.mipmap.ic_evaluation_increase);
......@@ -140,8 +138,7 @@ public class GridImageAdapter extends
@Override
public void onClick(View view) {
int index = viewHolder.getAdapterPosition();
// 这里有时会返回-1造成数据下标越界,具体可参考getAdapterPosition()源码,
// 通过源码分析应该是bindViewHolder()暂未绘制完成导致,知道原因的也可联系我~感谢
//여 기 는 가끔 - 1 로 데이터 가 아래로 넘 어 갈 수 있 습 니 다. 구체 적 으로 getAdapterPosition () 소스 코드 를 참고 하 십시오.
if (index != RecyclerView.NO_POSITION) {
list.remove(index);
notifyItemRemoved(index);
......@@ -153,26 +150,23 @@ public class GridImageAdapter extends
int mimeType = media.getMimeType();
String path = "";
if (media.isCut() && !media.isCompressed()) {
// 裁剪过
path = media.getCutPath();
} else if (media.isCompressed() || (media.isCut() && media.isCompressed())) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
path = media.getCompressPath();
} else {
// 原图
path = media.getPath();
}
// 图片
if (media.isCompressed()) {
Log.i("compress image result:", new File(media.getCompressPath()).length() / 1024 + "k");
Log.i("压缩地址::", media.getCompressPath());
}
Log.i("原图地址::", media.getPath());
int pictureType = PictureMimeType.isPictureType(media.getPictureType());
if (media.isCut()) {
Log.i("裁剪地址::", media.getCutPath());
}
long duration = media.getDuration();
viewHolder.tv_duration.setVisibility(pictureType == PictureConfig.TYPE_VIDEO
? View.VISIBLE : View.GONE);
......@@ -197,7 +191,7 @@ public class GridImageAdapter extends
.apply(options)
.into(viewHolder.mImg);
}
//itemView 的点击事件
if (mItemClickListener != null) {
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
......
......@@ -38,10 +38,10 @@ public class GridImageEvaluationAdapter extends
private List<LocalMedia> list = new ArrayList<>();
private int selectMax = 9;
private Context context;
private int mPoint = 0;//指示器用来标识,当前是哪一个商品
private int mPoint = 0;//표시 기 는 현재 어떤 상품 인지 표시 하 는 데 쓰 인 다.
/**
* 点击添加图片跳转
* 클릭 하여 이미지 전송 추가
*/
private onAddPicClickListener mOnAddPicClickListener;
......@@ -98,9 +98,7 @@ public class GridImageEvaluationAdapter extends
}
}
/**
* 创建ViewHolder
*/
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View view = mInflater.inflate(R.layout.gv_filter_image,
......@@ -115,11 +113,10 @@ public class GridImageEvaluationAdapter extends
}
/**
* 设置值
* 설정 값
*/
@Override
public void onBindViewHolder(final ViewHolder viewHolder, final int position) {
//少于8张,显示继续添加的图标
if (getItemViewType(position) == TYPE_CAMERA) {
viewHolder.mImg.setImageResource(R.mipmap.pic_mall_order_comment);
viewHolder.mImg.setOnClickListener(new View.OnClickListener() {
......@@ -137,8 +134,6 @@ public class GridImageEvaluationAdapter extends
@Override
public void onClick(View view) {
int index = viewHolder.getAdapterPosition();
// 这里有时会返回-1造成数据下标越界,具体可参考getAdapterPosition()源码,
// 通过源码分析应该是bindViewHolder()暂未绘制完成导致,知道原因的也可联系我~感谢
if (index != RecyclerView.NO_POSITION) {
list.remove(index);
notifyItemRemoved(index);
......@@ -150,25 +145,25 @@ public class GridImageEvaluationAdapter extends
int mimeType = media.getMimeType();
String path = "";
if (media.isCut() && !media.isCompressed()) {
// 裁剪过
path = media.getCutPath();
} else if (media.isCompressed() || (media.isCut() && media.isCompressed())) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
path = media.getCompressPath();
} else {
// 原图
path = media.getPath();
}
// 图片
if (media.isCompressed()) {
Log.i("compress image result:", new File(media.getCompressPath()).length() / 1024 + "k");
Log.i("压缩地址::", media.getCompressPath());
}
Log.i("原图地址::", media.getPath());
int pictureType = PictureMimeType.isPictureType(media.getPictureType());
if (media.isCut()) {
Log.i("裁剪地址::", media.getCutPath());
}
long duration = media.getDuration();
viewHolder.tv_duration.setVisibility(pictureType == PictureConfig.TYPE_VIDEO
......@@ -194,7 +189,7 @@ public class GridImageEvaluationAdapter extends
.apply(options)
.into(viewHolder.mImg);
}
//itemView 的点击事件
if (mItemClickListener != null) {
viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
......
......@@ -24,7 +24,7 @@ public class MallTypeTitleAdapter extends BaseQuickAdapter<MerchantHomeEntity.St
public MallTypeTitleAdapter(Context context, int layoutResId, @Nullable List<MerchantHomeEntity.StoreTypeListBean> data) {
super(layoutResId, data);
this.context = context;
sparseBooleanArray.put(0, true);//初始化选中第一个
sparseBooleanArray.put(0, true);//첫 번 째 선택 초기 화
}
@Override
......
......@@ -25,7 +25,7 @@ public class ShopTypeTitleAdapter extends BaseQuickAdapter<RestaurantDetailEntit
public ShopTypeTitleAdapter(Context context, int layoutResId, @Nullable List<RestaurantDetailEntity.GoodsTypeListBean> data) {
super(layoutResId, data);
this.context = context;
sparseBooleanArray.put(0, true);//初始化选中第一个
sparseBooleanArray.put(0, true);//첫 번 째 선택 초기 화
}
@Override
......
......@@ -5,22 +5,22 @@ package cn.dankal.client.constants;
*/
public class ConstantsHomeType {
/**
* 主页头部模块
* 홈 페이지 헤드 모듈
*/
public static final int HOME_HEAD = 0;
/**
* 主页菜单模块
* 홈 페이지 메뉴 모듈
*/
public static final int HOME_MENU = 1;
/**
* 扫一扫
* 일소 하 다.
*/
public static final int SCAN = 306;
/**
* 扫码内容
* 스 캔 내용
*/
public static final String CODED_CONTENT = "codedContent";
......
......@@ -33,21 +33,21 @@ class CarFragment : BaseFragment(), View.OnClickListener {
private val shopCarList = mutableListOf<ShopCarEntity.DataBean>()
private var adapter: CarShopAdapter? = null
private val selectShopList = mutableListOf<CartGoodsListEntity.SettleCartGoodsListBeanX>()//当前选中的商品列表
private val deleteList = mutableListOf<String>()//当前选中需要删除的商品
private val deleteList = mutableListOf<String>()//현재 선택 한 삭제 할 상품
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_car_sure -> {
selectShopList.clear()
var listData = adapter?.data
if (listData != null && listData.size > 0) {
for (i in 0 until listData.size) {//遍历所有店铺
var storeData = listData[i]//拿到店铺数据
var settleCartGoodsListBean = CartGoodsListEntity.SettleCartGoodsListBeanX()//配置需要提交结算的参数
for (i in 0 until listData.size) {//모든 점포 를 누비다
var storeData = listData[i]//모든 점포 를 누비다
var settleCartGoodsListBean = CartGoodsListEntity.SettleCartGoodsListBeanX()//결제 할 인 자 를 설정 합 니 다.
var goodsList = mutableListOf<CartGoodsListEntity.SettleCartGoodsListBeanX.SettleCartGoodsListBean>()
for (j in 0 until storeData.store_cart_goods_list.size) {//遍历所有商品
for (j in 0 until storeData.store_cart_goods_list.size) {//모든 상품 을 편력 하 다
var shopData = storeData.store_cart_goods_list[j]//拿到商品数据
if (shopData.isShopSelect) {//当前商品是否选中
if (shopData.isShopSelect) {//현재 상품 선택 여부
settleCartGoodsListBean.store_uuid = shopData.store_uuid
var shopInfo = CartGoodsListEntity.SettleCartGoodsListBeanX.SettleCartGoodsListBean()
shopInfo.uuid = shopData.uuid
......@@ -83,16 +83,16 @@ class CarFragment : BaseFragment(), View.OnClickListener {
ToastUtils.showShort(getString(R.string.no_items_yet_no_billing_yet))
}
}
R.id.tv_car_delete -> {//删除
R.id.tv_car_delete -> {//삭제 하 다.
deleteList.clear()
var listData = adapter?.data
if (listData != null && listData.size > 0) {
for (i in 0 until listData.size) {//遍历所有店铺
var storeData = listData[i]//拿到店铺数据
for (i in 0 until listData.size) {//모든 점포 를 누비다
var storeData = listData[i]//점포 데이터 를 입수 하 다
for (j in 0 until storeData.store_cart_goods_list.size) {//遍历所有商品
for (j in 0 until storeData.store_cart_goods_list.size) {//모든 상품 을 편력 하 다
var shopData = storeData.store_cart_goods_list[j]//拿到商品数据
if (shopData.isShopSelect) {//当前商品是否选中
if (shopData.isShopSelect) {//현재 상품 선택 여부
deleteList.add(shopData.uuid)
}
}
......
......@@ -18,7 +18,7 @@ import io.reactivex.disposables.Disposable
import kotlinx.android.synthetic.main.activity_food_all_evaluate.*
/**
* 餐馆全部评价
* 식당 평가
*/
class FoodAllEvaluateActivity : BaseActivity(), OnRefreshLoadMoreListener, View.OnClickListener {
private val mParams = HashMap<String, Any?>()
......
......@@ -62,9 +62,9 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
private var dataList: MutableList<Fragment>? = null
private var titles: MutableList<String>? = null
private var stringList = mutableListOf<String>()//轮播图地址
private var stringList = mutableListOf<String>()//라운드 맵 주소
private var fragmentAdapter: FragmentAdapter? = null
private var bannerListBean: MutableList<TopHomeInfoEntity.BannerListBean>? = null//轮播图内容
private var bannerListBean: MutableList<TopHomeInfoEntity.BannerListBean>? = null//윤 파 도 내용
private var lm: LocationManager? = null
......@@ -84,8 +84,8 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
override fun initComponents() {
EventBus.getDefault().register(this)
//初始化轮播图控件
//初始化TabLayout和ViewPage
//윤 전도 컨트롤 초기 화
//TabLayot 와 ViewPage 를 초기 화 합 니 다.
dataList = ArrayList()
titles = ArrayList()
......@@ -104,7 +104,7 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
getStateBar()
}
//获取状态栏高度
//획득 상태 표시 줄 높이
private fun getStateBar() {
var result = 0
var resourceId = this.resources.getIdentifier("status_bar_height", "dimen", "android")
......@@ -119,10 +119,10 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
var podiatrist = locationManager?.getProviders(true)
if (podiatrist.contains(LocationManager.NETWORK_PROVIDER)) {
tv_location_tip.text = ""
return LocationManager.NETWORK_PROVIDER//网络定位
return LocationManager.NETWORK_PROVIDER//네트워크 위치 확인
} else if (podiatrist.contains(LocationManager.GPS_PROVIDER)) {
tv_location_tip.text = ""
return LocationManager.GPS_PROVIDER//GPS定位
return LocationManager.GPS_PROVIDER//GPS 포 지 셔 닝
} else {
tv_location_tip.text = getString(R.string.unopened_positioning)
ToastUtils.showShort(getString(R.string.please_turn_on_positioning))
......@@ -134,11 +134,11 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
private fun beginLocation(): Location? {
//获得位置服务
//위치 획득 서비스
lm = getSystemService(Context.LOCATION_SERVICE) as LocationManager
lm?.let {
var provider = judgeProvider(it)
//有位置提供器的情况
//위치 제공 기 가 있 는 경우
if (provider != null) {
if (ActivityCompat.checkSelfPermission(DankalApplication.getContext(), Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED
......@@ -153,7 +153,7 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
}
//请求头部数据
//헤드 데이터 요청
private fun requestTopInfoList() {
HomeServiceFactory.getHomeListInfo(1, 20).subscribe(object : AbstractDialogSubscriber<TopHomeInfoEntity>(this) {
override fun onSubscribe(d: Disposable) {
......@@ -191,7 +191,7 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
})
}
//设置顶部数据
//상단 데이터 설정
private fun addTopData(topHomeInfoEntity: TopHomeInfoEntity) {
bannerListBean = topHomeInfoEntity.banner_list
stringList?.clear()
......@@ -261,15 +261,15 @@ class HomeActivity : BaseActivity(), View.OnClickListener {
.putExtra(MerchantDetailsActivity.TABLE_UUID, qrCodeEntity.tableUuid)
.putExtra(MerchantDetailsActivity.TABLE_NUMBER, qrCodeEntity.tableNumber.toString()))
}
"1"//不存在
"1"//존재 하지 않 음
-> {
startActivity(Intent(this@HomeActivity, ScanResultActivity::class.java))
}
"2"//被使用
"2"//사용되다
-> {
showDialogStateTow(getString(R.string.the_table_number_is_in_use))
}
"3"//已隐藏
"3"//숨겨 진
-> {
startActivity(Intent(this@HomeActivity, ScanResultActivity::class.java))
}
......
......@@ -53,9 +53,9 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
private var titles: MutableList<String>? = null
private var mDkBanner: DkBannerTow<String>? = null
private var stringList = mutableListOf<String>()//轮播图地址
private var stringList = mutableListOf<String>()//라운드 맵 주소
private var fragmentAdapter: FragmentAdapter? = null
private var bannerListBean: MutableList<TopHomeInfoEntity.BannerListBean>? = null//轮播图内容
private var bannerListBean: MutableList<TopHomeInfoEntity.BannerListBean>? = null//윤 파 도 내용
private var lm: LocationManager? = null
......@@ -79,10 +79,10 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
override fun initComponents() {
EventBus.getDefault().register(this)
//初始化轮播图控件
//윤 전도 컨트롤 초기 화
mDkBanner = activity?.findViewById(R.id.banner)
//初始化TabLayout和ViewPage
//TabLayot 와 ViewPage 를 초기 화 합 니 다.
dataList = ArrayList()
titles = ArrayList()
......@@ -101,7 +101,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
getStateBar()
}
//获取状态栏高度
//획득 상태 표시 줄 높이
private fun getStateBar() {
var result = 0
var resourceId = this.resources.getIdentifier("status_bar_height", "dimen", "android")
......@@ -115,7 +115,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
private fun initLocation() {
var location = beginLocation()
location?.let {
//定位成功获取经纬度
//포 지 셔 닝 성공 획득 경위
SPUtils.put(ConstantsHomeType.LATITUDE, location.latitude.toString())
SPUtils.put(ConstantsHomeType.LONGITUDE, location.longitude.toString())
}
......@@ -125,10 +125,10 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
var podiatrist = locationManager?.getProviders(true)
if (podiatrist.contains(LocationManager.NETWORK_PROVIDER)) {
tv_location_tip.text = ""
return LocationManager.NETWORK_PROVIDER//网络定位
return LocationManager.NETWORK_PROVIDER//네트워크 위치 확인
} else if (podiatrist.contains(LocationManager.GPS_PROVIDER)) {
tv_location_tip.text = ""
return LocationManager.GPS_PROVIDER//GPS定位
return LocationManager.GPS_PROVIDER//GPS 포 지 셔 닝
} else {
tv_location_tip.text = getString(R.string.unopened_positioning)
ToastUtils.showShort(getString(R.string.please_turn_on_positioning))
......@@ -140,11 +140,11 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
private fun beginLocation(): Location? {
//获得位置服务
//위치 획득 서비스
lm = activity?.getSystemService(Context.LOCATION_SERVICE) as LocationManager
lm?.let {
var provider = judgeProvider(it)
//有位置提供器的情况
//위치 제공 기 가 있 는 경우
if (provider != null) {
if (ActivityCompat.checkSelfPermission(DankalApplication.getContext(), Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED
......@@ -159,7 +159,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
}
//请求头部数据
//헤드 데이터 요청
private fun requestTopInfoList() {
HomeServiceFactory.getHomeListInfo(1, 20).subscribe(object : AbstractDialogSubscriber<TopHomeInfoEntity>(this) {
override fun onSubscribe(d: Disposable) {
......@@ -189,7 +189,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
iv_home_sweep.setOnClickListener(this)
iv_home_location.setOnClickListener(this)
//设置轮播图
//윤 파 도 를 설정 하 다.
mDkBanner?.setIndicatorPoint(R.drawable.oval_indicator, R.drawable.oval_indicator_unselect,
DisplayHelper.dp2px(AppUtils.getApp(), 10), DisplayHelper.dp2px(AppUtils.getApp(), 10))
......@@ -204,18 +204,18 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
bannerListBean?.let {
if (it.size > 0) {
val bean = it.get(postion)
if (bean.banner_type == "0") {//商品或者餐厅
if (bean.type == "0") {//餐厅
if (bean.banner_type == "0") {//상품 이나 레스토랑.
if (bean.type == "0") {//식당.
startActivity(Intent(activity, DishesDetailsTowActivity::class.java)
.putExtra(Constant.HOTEL_UUID, bean.hotel_store_uuid)
.putExtra(Constant.SHOP_UUID, bean.goods_uuid))
} else {//商城
} else {//상점.
val intent = Intent(activity, ShopDetailActivity::class.java)
intent.putExtra(ConstantsShopType.STORE_UUID, bean.hotel_store_uuid)
intent.putExtra(ConstantsShopType.GOODS_UUID, bean.goods_uuid)
startActivity(intent)
}
} else {//富文本
} else {//부 텍스트
startActivity(Intent(activity, WebViewContentActivity::class.java).putExtra("url", bean.content))
}
}
......@@ -227,7 +227,7 @@ class HomeFragment : BaseFragment(), View.OnClickListener {
fun getInstance(): HomeFragment = HomeFragment()
}
//设置顶部数据
//상단 데이터 설정
private fun addTopData(topHomeInfoEntity: TopHomeInfoEntity) {
bannerListBean = topHomeInfoEntity.banner_list
stringList?.clear()
......
......@@ -72,10 +72,10 @@ public class MenuItemFragment extends BaseFragment {
private BottomItemAdapter bottomItemAdapter;
private List<BottomAroundEntity.DataBean> dataBeans = new ArrayList<>();
private String uuid;//餐品类别uuid
private String uuid;//메뉴 유형 uid
private String business_status = "";//营业状态 0:未营业;1:营业中 "",全部,
private String queue_status = "";//排队状态 0:无需排队;1:排队中 "",全部,
private String business_status = "";//영업 상태 0: 미 영업, 1: 영업 중 ", 전부,
private String queue_status = "";//대기 상태 0: 줄 을 설 필요 가 없 음; 1: 줄 서 는 중 ", 전부,
private int GPS_REQUEST_CODE = 10;
......@@ -130,7 +130,7 @@ public class MenuItemFragment extends BaseFragment {
}
//开始请求数据
//시작 요청 데이터
private void requestAllList() {
if (flowLayoutOne != null) {
......@@ -179,7 +179,7 @@ public class MenuItemFragment extends BaseFragment {
maps.put("queue_status", queue_status);
maps.put("search", "");
//请求推荐商家
//추천 업 체 요청
HomeServiceFactory.recommendList(maps).subscribe(new AbstractDialogSubscriber<RestaurantEntity>(this) {
@Override
public void onSubscribe(Disposable d) {
......@@ -202,7 +202,7 @@ public class MenuItemFragment extends BaseFragment {
if (!checkGPSIsOpen()) {
View view = UIUtile.getView(R.layout.adapter_layout_location_data, rlRoundList);
TextView tvOpenGPS = view.findViewById(R.id.tv_open_location);
tvOpenGPS.setOnClickListener(v -> {//跳转到gps设置页面
tvOpenGPS.setOnClickListener(v -> {//gps 설정 페이지 로 가기
toSelfSetting();
});
if (bottomItemAdapter != null) {
......@@ -217,7 +217,7 @@ public class MenuItemFragment extends BaseFragment {
bottomItemAdapter.setEmptyView(UIUtile.getView(R.layout.adapter_layout_empty_data_one, rlRoundList));
return;
}
//请求附近商家信息
//근처 상가 에 정보 요청
HomeServiceFactory.aroundList(maps).subscribe(new AbstractDialogSubscriber<BottomAroundEntity>(this) {
@Override
public void onSubscribe(Disposable d) {
......@@ -297,13 +297,13 @@ public class MenuItemFragment extends BaseFragment {
tvLocation.setText(getString(R.string.unopened_positioning));
}
//状态码
//상태 코드
List<Integer> stateCode = new ArrayList<>();
stateCode.add(2);
stateCode.add(1);
stateCode.add(0);
//-----------------营业状态-------------
//-----------------영업 상태-------------
List<String> listOne = new ArrayList<>();
listOne.add(getString(R.string.all));
listOne.add(getString(R.string.in_business));
......@@ -320,7 +320,7 @@ public class MenuItemFragment extends BaseFragment {
flowLayoutOne.setAdapter(adapterOne);
if ("0".equals(business_status)) {//未营业
if ("0".equals(business_status)) {//미 영업
adapterOne.setSelectedList(2);
} else if ("1".equals(business_status)) {
adapterOne.setSelectedList(1);
......@@ -328,7 +328,7 @@ public class MenuItemFragment extends BaseFragment {
adapterOne.setSelectedList(0);
}
//-----------------排队状态-------------
//-----------------대기 상태-------------
List<String> listTow = new ArrayList<>();
listTow.add(getString(R.string.all));
listTow.add(getString(R.string.in_the_ine));
......@@ -343,7 +343,7 @@ public class MenuItemFragment extends BaseFragment {
};
flowLayoutTow.setAdapter(adapterTow);
if ("0".equals(queue_status)) {//无需排队
if ("0".equals(queue_status)) {//줄 을 설 필요 가 없다
adapterTow.setSelectedList(2);
} else if ("1".equals(queue_status)) {
adapterTow.setSelectedList(1);
......@@ -378,13 +378,13 @@ public class MenuItemFragment extends BaseFragment {
});
btnComplete.setOnClickListener(v -> {
//手动调用刷新
//수 동 호출 리 셋
requestAllList();
popupWindow.dismiss();
});
}
//获取状态栏高度
//획득 상태 표시 줄 높이
private void getStateBar(TextView textView) {
int result = 0;
int resourceId = getActivity().getResources().getIdentifier("status_bar_height", "dimen", "android");
......@@ -397,7 +397,7 @@ public class MenuItemFragment extends BaseFragment {
/**
* 判断GPS是否打开
* GPS 오픈 여 부 를 판단
*
* @return
*/
......@@ -409,7 +409,7 @@ public class MenuItemFragment extends BaseFragment {
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == GPS_REQUEST_CODE) {
//做需要做的事情,比如再次检测是否打开GPS了 或者定位
//필요 한 일 을 하 는 것, 예 를 들 어 GPS 를 켰 는 지, 위치 추적 을 했 는 지 재 확인 하 는 것.
requestAllList();
}
}
......
......@@ -68,7 +68,7 @@ public class SearchShopActivity extends BaseActivity implements OnRefreshLoadMor
private List<String> listTow = new ArrayList<>();
List<HotSearchListEntity.DataBean> listHot = new ArrayList<>();//餐馆热搜
List<HotSearchListEntity.DataBean> listHot = new ArrayList<>();//식당 검색
private ShopArrayAdapter shopArrayAdapter;
......
......@@ -63,7 +63,7 @@ class DetailsInfoFragment : BaseFragment(), View.OnClickListener, CallDialog.OnC
iv_location.setOnClickListener(this)
tv_merchant_address.setOnClickListener(this)
//设置数据
//데이터 설정
param1?.apply {
tv_merchant_address.text = address
phone = waiter_phone
......
......@@ -89,7 +89,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
ImageView ivMenuPicture;
TextView tvBottomShopCount;//商品数据标识
TextView tvBottomShopCount;//상품 데이터 표식
Button btnDetailsQueue;
......@@ -97,11 +97,11 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
TextView tvShopTip;
TextView tvBottomShopTipText;//底部提示文字
TextView tvBottomShopTipText;//아래쪽 프롬프트 문자
TextView tvBottomShopButton;//选好了按钮
TextView tvBottomShopButton;//버튼 을 골 랐 어 요.
private int userStampNumber = 0;//用户在当前店铺拥有的邮票数
private int userStampNumber = 0;//사용자 가 현재 점포 에서 가지 고 있 는 우표 수
private ShopTypeTitleAdapter shopTypeTitleAdapter;
private ShopTypeContentAdapter adapterContent;
......@@ -114,40 +114,40 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
private List<ShopTypeContentEntity.DataBean> shopTypeContentEntities;
private List<FoodEntity> listItemEntities;//当前店铺购物车列表信息
private List<FoodEntity> listItemEntities;//현재 점포 카 트 리스트 정보
private String storeUUId;//店铺uuid
private String storeUUId;//가게 uid
private View mCarView;//购物车View
private View mCarView;//카 트 View
private ShopBottomListAdapter carAdapter;
private RecyclerView rvCar;
private String tableUUID = "";//桌号ID
private String tableUUID = "";//테이블 ID
private String tableName = "";//餐桌名字
private String tableName = "";//테이블 ID
String mainSpecId = "";//主规格ID
String mainSpecId = "";//주 규격 ID
private TextView tvShowShopInfo;//购物车所选信息
private TextView tvShowShopInfo;//카 트 선정 정보
private TextView tvCount;//购物车商品数量
private TextView tvCount;//카 트 수량
private int type = 0;//排队状态,0,预约排队,1,排队中,2,排队已过期
private int type = 0;//대기 상태, 0, 예약 대기 행렬, 1, 대기 중, 2, 대기 시간 이 지 났 습 니 다
private CommitQueueEntity commitQueueEntity;//排队信息
private CommitQueueEntity commitQueueEntity;//대기 정보
private ShopSpecListAdapter shopSpecListAdapter;//辅规格适配器
private ShopSpecListAdapter shopSpecListAdapter;//보조 규격 어댑터
private String specPrice = "";//当前弹出商品的规格
private String specMainName = "";//主规格名字
private String specPrice = "";//보조 규격 어댑터
private String specMainName = "";//주 규격 이름
private int showState = -1;//底部显示状态
private int showState = -1;//아래쪽 디 스 플레이 상태
private TextView tvSettlement;//弹出的购物车界面按钮
private TextView tvSettlement;//팝 업 카 트 인터페이스 버튼
private FoodEntity mFoodEntity;//保存当前选中的规格
private FoodEntity mFoodEntity;//현재 선 택 된 규격 저장
private boolean isUserCoupon = true;
......@@ -155,11 +155,11 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
private int page = 1;
private String mGoodsTypeUUID = "";//当前所选商品类别
private String mGoodsTypeUUID = "";//현재 선택 한 상품 유형
private int isTypeStamp = 0;//类别是否为邮票
private int isTypeStamp = 0;//카 테 고리 가 우표 인지 여부
private boolean isAgain = false;//是否是再来一单
private boolean isAgain = false;//한 장 더 할 까요?
@Override
protected int getLayoutId() {
......@@ -171,7 +171,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
protected void initComponents() {
initView();
EventBus.getDefault().register(this);
//配置商品内容初始化
//상품 내용 초기 화 설정
shopTypeContentEntities = new ArrayList<>();
linearLayoutManagerContent = new LinearLayoutManager(getActivity());
rvDetailsContent.setLayoutManager(linearLayoutManagerContent);
......@@ -191,7 +191,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
showDialog("", getString(R.string.insufficient_stamps), null, false, false);
return;
}
//请求规格
//요청 규격
requestSpecsDetails(dataBean);
}else if (view.getId()==R.id.ll_shop_bg){
Intent intent = new Intent(getActivity(), DishesDetailsActivity.class);
......@@ -217,7 +217,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
});
rvDetailsContent.setAdapter(adapterContent);
//配置商品类别
//상품 유형 설정
Bundle bundle = getArguments();
if (bundle != null) {
storeUUId = bundle.getString(MerchantDetailsActivity.HOTELUUID, "");
......@@ -232,16 +232,16 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
if (goodsTypeListBeans != null && goodsTypeListBeans.size() > 0) {
RestaurantDetailEntity.GoodsTypeListBean goodsTypeListBean = goodsTypeListBeans.get(0);
//调用接口初始化第一个类别的商品列表
//인터페이스 호출 첫 번 째 품목 의 상품 목록 초기 화
mGoodsTypeUUID = goodsTypeListBean.getUuid();
if (adapterContent != null) {//传递is_stamp
if (adapterContent != null) {//전달 isstamp
isTypeStamp = goodsTypeListBean.getIs_stamp();
adapterContent.setIsStamp(isTypeStamp);
}
getShopContentList(mGoodsTypeUUID, true);
//设置商品类型
//상품 유형 설정
linearLayoutManagerTitle = new LinearLayoutManager(getActivity());
rvDetailsTitle.setLayoutManager(linearLayoutManagerTitle);
shopTypeTitleAdapter = new ShopTypeTitleAdapter(getActivity(), R.layout.item_shop_type_title, goodsTypeListBeans);
......@@ -269,7 +269,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
rvDetailsTitle.setAdapter(shopTypeTitleAdapter);
}
//初始化底部状态
//상품 유형 설정
setBottomState(showState);
}
......@@ -297,7 +297,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 请求加载商品内容
* 상품 내용 로 딩 요청
*
* @param goods_type_uuid
*/
......@@ -361,7 +361,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 初始化购物车
* 카 트 초기 화
*/
private void initCar() {
mCarView = LayoutInflater.from(getActivity()).inflate(R.layout.dialog_bottom_list, null, false);
......@@ -406,7 +406,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
/**
* 去支付
* 지불 하 다
*/
private void toPay() {
if (listItemEntities != null && listItemEntities.size() > 0) {
......@@ -415,7 +415,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
return;
}
//遍历商品查看是否是相同商品
//상품 을 넘 나 들 며 같은 상품 인지 확인 하 다
int shopType = listItemEntities.get(0).getIsStamp();
for (int i = 0; i < listItemEntities.size(); i++) {
FoodEntity foodEntity = listItemEntities.get(i);
......@@ -441,7 +441,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 请求规格
* 요청 규격
*/
private void requestSpecsDetails(ShopTypeContentEntity.DataBean dataBean) {
RestaurantServiceFactory.getGoodsSpecDetail(dataBean.getHotel_uuid(), dataBean.getUuid()).subscribe(new AbstractDialogSubscriber<RestaurantSpecEntity>(this) {
......@@ -494,7 +494,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
public void setBottomState(int state) {
showState = state;
switch (state) {
case 0://显示商家还未营业提示
case 0://업 체 가 아직 영업 알림 을 하지 않 았 음 을 표시 하 다.
if (tvShopTip != null)
tvShopTip.setVisibility(View.VISIBLE);
if (btnDetailsQueue != null)
......@@ -509,7 +509,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
adapterContent.setShowState(showState);
}
break;
case 1://显示排队按钮
case 1://대기 버튼 보이 기
/*if (btnDetailsQueue != null)
btnDetailsQueue.setVisibility(View.VISIBLE);*/
if (tvShopTip != null)
......@@ -521,7 +521,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
type = 0;
break;
case 2://显示添加商品底部
case 2://상품 의 하단 부 를 보 여 줍 니 다.
llShopBottom.setVisibility(View.VISIBLE);
ivMenuPicture.setVisibility(View.VISIBLE);
......@@ -547,7 +547,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 用户是否在当前餐馆预约
* 사용자 가 현재 식당 에서 예약 합 니까?
*/
private void requestIsMerchantOrder() {
RestaurantServiceFactory.isUserQueue(storeUUId).subscribe(new AbstractDialogSubscriber<IsOrderStoreEntity>(this) {
......@@ -560,7 +560,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
public void onNext(IsOrderStoreEntity entity) {
if (entity != null) {
if (entity.getIs_user_queue() == 1) {//预约了
if (entity.getIs_user_queue() == 1) {//예 약 했 습 니 다.
List<IsOrderStoreEntity.HotelQueueListBean> beans = entity.getHotel_queue_list();
if (beans != null && beans.size() > 0) {
IsOrderStoreEntity.HotelQueueListBean hotelQueueListBean = beans.get(0);
......@@ -569,9 +569,9 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
if (!TextUtils.isEmpty(tableUUID)) {
return;
}
if (beans.get(0).getIs_over_number() == 0) {//未过号
//是否已经叫号
if (beans.get(0).getIs_call() == 1) {//已叫号
if (beans.get(0).getIs_over_number() == 0) {//미 통과 번호
//이미 번 호 를 불 렀 는 지 여부
if (beans.get(0).getIs_call() == 1) {//이미 번 호 를 불 렀 다.
setBottomState(2);
} else {
if (btnDetailsQueue != null) {
......@@ -580,7 +580,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
type = 1;
}
}
} else if (beans.get(0).getIs_over_number() == 2) {//已过号
} else if (beans.get(0).getIs_over_number() == 2) {//이미 지나 간 번호
if (btnDetailsQueue != null) {
btnDetailsQueue.setText(R.string.passed_number);
btnDetailsQueue.setVisibility(View.VISIBLE);
......@@ -592,7 +592,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
startActivity(intentOne);
}, true);
}
} else if (beans.get(0).getIs_over_number() == 1) {//排队成功
} else if (beans.get(0).getIs_over_number() == 1) {//줄 서기 성공
setBottomState(2);
}
}
......@@ -612,7 +612,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 显示规格详情
* 규격 상세 정보 보기
*
* @param dataBean
* @param entity
......@@ -645,7 +645,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
mFoodEntity.setNumber(mFoodEntity.getNumber() - 1);
tvItemCount.setText(String.valueOf(mFoodEntity.getNumber()));
mFoodEntity.save();
} else {//删除
} else {//삭제 하 다.
mFoodEntity.delete();
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount);
}
......@@ -682,11 +682,11 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
}
//刷新购物车状态
//카 트 리 셋 상태
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount);
});
//获取所有规格
//모든 규격 가 져 오기
List<RestaurantSpecEntity.GoodsMainSpecsListBean> goodsMainSpecsListBeans = entity.getGoods_main_specs_list();
if (goodsMainSpecsListBeans.size() > 0) {
......@@ -705,12 +705,12 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
};
//设置默认选择第一个
//기본 설정 첫 번 째 선택
tagAdapter.setSelectedList(0);
if (list != null && list.size() > 0) {
//使用第一个规格的价格
if (dataBean.getIsStamp() == 0) {//不是邮票兑换商品
//첫 번 째 규격 의 가격 을 사용 하 다
if (dataBean.getIsStamp() == 0) {//우표 교환 상품 아니에요.
price.setText(UIUtile.stringToPrice(list.get(0).getGoods_price()));
specPrice = list.get(0).getGoods_price();
} else {
......@@ -735,20 +735,20 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
specMainName = list.get(position).getSpecs_name();
mainSpecId = list.get(position).getUuid();
if (dataBean.getIsStamp() == 0) {
specPrice = list.get(position).getGoods_price();//设置当前规格价格
specPrice = list.get(position).getGoods_price();//현재 규격 가격 설정
price.setText(UIUtile.stringToPrice(list.get(position).getGoods_price()));
} else {//邮票兑换
specPrice = String.valueOf(list.get(position).getStamp_number());//设置当前规格价格
} else {//우표 교환
specPrice = String.valueOf(list.get(position).getStamp_number());//현재 규격 가격 설정
price.setText(UIUtile.stringToStamp(list.get(position).getStamp_number()));
}
} else {
mainSpecId = "";
specMainName = "";
if (dataBean.getIsStamp() == 0) {
specPrice = "0";//设置当前规格价格
specPrice = "0";//현재 규격 가격 설정
price.setText(UIUtile.stringToPrice("0"));
} else {//邮票兑换
specPrice = "0";//设置当前规格价格
specPrice = "0";//현재 규격 가격 설정
price.setText(UIUtile.stringToStamp("0"));
}
}
......@@ -786,20 +786,20 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
//tvVipShopInfoLabel.setText("已选:" + mCount + "件");
});
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount);
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
}
/**
* 更新规格布局状态
* 규격 레이아웃 상태 업데이트
*
* @param entity
* @param tvShopAdd
* @param llCount
*/
private void updateLayoutState(TextView tvItemCount, TextView specNameShow, RestaurantSpecEntity entity, Button tvShopAdd, LinearLayout llCount) {
List<String> secondSpecsOne = new ArrayList<>();//辅规格UUID
List<String> secondSpecsOne = new ArrayList<>();//부 규격 UID
if (shopSpecListAdapter != null) {
Map<Integer, String> map = shopSpecListAdapter.getSelectSpec();
for (Integer key : map.keySet()) {
......@@ -807,7 +807,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
}
List<String> secondSpecsName = new ArrayList<>();//辅规格名字
List<String> secondSpecsName = new ArrayList<>();//부 규격 이름
if (shopSpecListAdapter != null) {
Map<Integer, String> map = shopSpecListAdapter.getSelectSpecName();
for (Integer key : map.keySet()) {
......@@ -815,8 +815,8 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
}
//配置规格显示
if (TextUtils.isEmpty(specMainName)) {//没有选主规格
//사양 표시
if (TextUtils.isEmpty(specMainName)) {//주 사양 이 없습니다.
String showSpec = "";
for (int i = 0; i < secondSpecsName.size(); i++) {
if (i == secondSpecsName.size() - 1) {
......@@ -826,10 +826,10 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
}
specNameShow.setText(showSpec);
} else {//选了主规格
} else {//주 사양 을 골 랐 습 니 다.
if (secondSpecsName == null || secondSpecsName.size() == 0) {//没有辅规格
specNameShow.setText(specMainName);
} else {//有辅规格
} else {//보조 규격 이 있다.
String showSpec = specMainName + ",";
for (int i = 0; i < secondSpecsName.size(); i++) {
if (i == secondSpecsName.size() - 1) {
......@@ -855,7 +855,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 显示底部购物车
* 아래쪽 카 트 보이 기
*/
public void showBottomListDialog() {
popupWindow = new PopupWindow(mCarView, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT, true);
......@@ -872,7 +872,7 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
/**
* 查找当前店铺的购物车商品
* 현재 점포 의 카 트 상품 찾기
*/
private void findCarShop() {
if (listItemEntities == null) {
......@@ -901,14 +901,14 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
}
tvBottomShopTipText.setText(R.string.you_have_not_added_any_items_yet);
} else {
double shopPrice = 0.00;//商品总价格
int total = 0;//邮票总数量
double shopPrice = 0.00;//상품 총 가격
int total = 0;//우표 총 수량
for (int i = 0; i < listItemEntities.size(); i++) {
FoodEntity foodEntity = listItemEntities.get(i);
if (foodEntity.getIsStamp() == 0) {//商品
if (foodEntity.getIsStamp() == 0) {//상품.
shopPrice += UIUtile.stringToDouble(foodEntity.getFoodPrice()) * foodEntity.getNumber();
} else {//邮票
} else {//우표
total += foodEntity.getStampPrice() * foodEntity.getNumber();
}
}
......@@ -925,8 +925,8 @@ public class DetailsShopFragment extends BaseFragment implements OnRefreshLoadMo
tvShowShopInfo.setText(total + getString(R.string.zhang));
}
//判断该用户在此商家的邮票数量够不够
if (total > userStampNumber) {//邮票数不够
//이 상점 의 우표 수량 이 충분 한 지 판단 하 다
if (total > userStampNumber) {//우표 가 모자라다
enabledButton();
} else {
tvBottomShopButton.setBackgroundColor(getResources().getColor(R.color.btn_bg));
......
......@@ -59,29 +59,29 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
private var goodsUuid = ""
private var isUserCoupon = true
private var mainSpecId = ""//主规格ID
private var specPrice = ""//当前弹出商品的规格
private var shopSpecListAdapter: ShopSpecListAdapter? = null//辅规格适配器
private var mainSpecId = ""//주 규격 ID
private var specPrice = ""//현재 팝 업 상품 규격
private var shopSpecListAdapter: ShopSpecListAdapter? = null//보조 규격 어댑터
private var hotelGoodsDetailEntity: HotelGoodsDetailEntity? = null
private var carAdapter: ShopBottomListAdapter? = null
private var rvCar: RecyclerView? = null
private var tvCount: TextView? = null//购物车商品数量
private var tvShowShopInfo: TextView? = null//购物车所选信息
private var view: View? = null//购物车View
private var tvCount: TextView? = null//카 트 수량
private var tvShowShopInfo: TextView? = null//카 트 선정 정보
private var view: View? = null//카 트 View
private var tableUUID = ""//桌号ID
private var tableUUID = ""//테이블 ID
private var type = -1
private var commitQueueEntity: CommitQueueEntity? = null//排队信息
private var mFoodEntity: FoodEntity? = null//当前选中的菜单
private var specMainName = ""//主规格名字
private var commitQueueEntity: CommitQueueEntity? = null//대기 정보
private var mFoodEntity: FoodEntity? = null//현재 선 택 된 메뉴
private var specMainName = ""//주 규격 이름
private var dataBean: ShopTypeContentEntity.DataBean? = null
private var tvSettlement: TextView? = null//弹出的购物车界面按钮
private var queueUuid = ""//排队uuid
private var tvSettlement: TextView? = null//팝 업 카 트 인터페이스 버튼
private var queueUuid = ""//줄 서기 uid
private var tableName = ""//桌子号码
private var userStampNumber = 0//用户在当前店铺拥有的邮票数
private var currentStampNumber = 0//当前商品的邮票数
private var tableName = ""//테이블 번호
private var userStampNumber = 0//사용자 가 현재 점포 에서 가지 고 있 는 우표 수
private var currentStampNumber = 0//현재 상품 의 우표 수
private var isStamp = 0
......@@ -106,13 +106,13 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
R.id.btn_details_queue -> {
when (type) {
0//预约排队
0//예약 정렬
-> {
val intentOne = Intent(this@DishesDetailsActivity, QueueActivity::class.java)
intentOne.putExtra(ConstantsRestaurantType.UUID, hotelUuid)
startActivity(intentOne)
}
1, 2//排队中,排队过期
1, 2//대기 중, 대기 시간 만 료
-> if (commitQueueEntity != null) {
startPageQueueResult()
}
......@@ -173,20 +173,20 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
//初始状态
//초기 상태
private fun setBottomState(state: Int, type: Int) {
tv_shop_tip.visibility = View.GONE
btn_details_queue.visibility = View.GONE
cl_shop_layout.visibility = View.GONE
when (state) {
0//显示商家还未营业提示
0//업 체 가 아직 영업 알림 을 하지 않 았 음 을 표시 하 다.
-> {
tv_shop_tip.visibility = View.VISIBLE
tv_select_spec.isEnabled = false
tv_select_spec.background = resources.getDrawable(R.drawable.bg_select_type_unavailable)
}
1//显示排队按钮
1//대기 버튼 보이 기
-> {
btn_details_queue.visibility = View.VISIBLE
when (type) {
......@@ -195,7 +195,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
2 -> btn_details_queue.setText(R.string.passed_number)
}
}
2//显示添加商品底部
2//상품 의 하단 부 를 보 여 줍 니 다.
-> {
cl_shop_layout.visibility = View.VISIBLE
}
......@@ -203,7 +203,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求当前商品详情
* 현재 상품 상세 요청
*/
private fun requestData() {
RestaurantServiceFactory.getHotelGoodsDetail(hotelUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<HotelGoodsDetailEntity>(this) {
......@@ -240,7 +240,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求规格
* 요청 규격
*/
private fun requestSpecsDetails() {
RestaurantServiceFactory.getGoodsSpecDetail(hotelUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<RestaurantSpecEntity>(this) {
......@@ -291,7 +291,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
if (count > 1) {
mFoodEntity?.number = count - 1
mFoodEntity?.save()
} else {//删除
} else {//삭제 하 다.
mFoodEntity?.delete()
}
}
......@@ -304,14 +304,14 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
tvShopName.text = hotelGoodsDetailEntity?.goods_name
tvShopAdd.setOnClickListener {//加入菜单
tvShopAdd.setOnClickListener {//메뉴 추가
v ->
if (TextUtils.isEmpty(mainSpecId)) {
ToastUtils.showShort(getString(R.string.please_select_the_main_specification))
return@setOnClickListener
}
val secondSpecs = mutableListOf<String>()//辅规格
val secondSpecs = mutableListOf<String>()//보조 규격
if (shopSpecListAdapter != null) {
val map = shopSpecListAdapter?.selectSpec
map?.forEach {
......@@ -328,18 +328,18 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
findCarShop()
}
}
//刷新购物车状态
//카 트 리 셋 상태
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount)
}
//获取所有规格
//모든 규격 가 져 오기
val goodsMainSpecsListBeans = entity.goods_main_specs_list
if (goodsMainSpecsListBeans.size > 0) {
val mainSpecs = goodsMainSpecsListBeans[0]//拿到主规格
val mainSpecs = goodsMainSpecsListBeans[0]//주 사양 을 받다
mainName.text = mainSpecs.specs_name
val list = mainSpecs.second_specs_volist//拿到主规格规格列表
val list = mainSpecs.second_specs_volist//주 사양 사양 리스트 가 져 오기
val tagAdapter = object : TagAdapter<RestaurantSpecEntity.GoodsMainSpecsListBean.SecondSpecsVolistBean?>(list) {
override fun getView(flowLayout: FlowLayout, i: Int, o: RestaurantSpecEntity.GoodsMainSpecsListBean.SecondSpecsVolistBean?): View {
......@@ -350,12 +350,12 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
//设置默认选择第一个
//기본 설정 첫 번 째 선택
tagAdapter.setSelectedList(0)
if (list != null && list.size > 0) {
//使用第一个规格的价格
if (dataBean?.getIsStamp() == 0) {//不是邮票兑换商品
//첫 번 째 규격 의 가격 을 사용 하 다
if (dataBean?.getIsStamp() == 0) {//우표 교환 상품 아니에요.
price.text = UIUtile.stringToPrice(list[0].goods_price)
specPrice = list[0].goods_price
} else {
......@@ -380,20 +380,20 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
specMainName = list[position].specs_name
mainSpecId = list[position].uuid
if (dataBean?.getIsStamp() == 0) {
specPrice = list[position].goods_price//设置当前规格价格
specPrice = list[position].goods_price//현재 규격 가격 설정
price.text = UIUtile.stringToPrice(list[position].goods_price)
} else {//邮票兑换
specPrice = list[position].stamp_number.toString()//设置当前规格价格
} else {//우표 교환
specPrice = list[position].stamp_number.toString()//현재 규격 가격 설정
price.text = UIUtile.stringToStamp(list[position].stamp_number)
}
} else {
mainSpecId = ""
specMainName = ""
if (dataBean?.getIsStamp() == 0) {
specPrice = "0"//设置当前规格价格
specPrice = "0"//현재 규격 가격 설정
price.text = UIUtile.stringToPrice("0")
} else {//邮票兑换
specPrice = "0"//设置当前规格价格
} else {//우표 교환
specPrice = "0"//현재 규격 가격 설정
price.text = UIUtile.stringToStamp("0")
}
}
......@@ -420,7 +420,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
popupWindow?.let {
it.setBackgroundDrawable(ColorDrawable(0x00000000))
it.animationStyle = R.style.take_pop_window_anim
it.showAtLocation(this!!.getWindow().getDecorView(), Gravity.CENTER, 0, 0)//设置位置
it.showAtLocation(this!!.getWindow().getDecorView(), Gravity.CENTER, 0, 0)//위치 설정
setBackgroundAlpha(0.5f)
it.update()
......@@ -430,13 +430,13 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount)
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
}
/**
* type,0加1减
* type,0 더하기 1 빼 기
*/
private fun addAndReduce(tvItemCount: TextView, type: Int) {
val count = mFoodEntity?.number
......@@ -447,7 +447,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
if (count > 1) {
mFoodEntity?.number = count - 1
mFoodEntity?.save()
} else {//删除
} else {//삭제 하 다.
mFoodEntity?.delete()
}
}
......@@ -459,14 +459,14 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 更新规格布局状态
* 규격 레이아웃 상태 업데이트
*
* @param entity
* @param tvShopAdd
* @param llCount
*/
private fun updateLayoutState(tvItemCount: TextView, specNameShow: TextView, entity: RestaurantSpecEntity, tvShopAdd: Button, llCount: LinearLayout) {
val secondSpecsOne = mutableListOf<String>()//辅规格UUID
val secondSpecsOne = mutableListOf<String>()//부 규격 UID
if (shopSpecListAdapter != null) {
val map = shopSpecListAdapter?.getSelectSpec()
map?.forEach {
......@@ -474,7 +474,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
val secondSpecsName = ArrayList<String>()//辅规格名字
val secondSpecsName = ArrayList<String>()//부 규격 이름
if (shopSpecListAdapter != null) {
val map = shopSpecListAdapter?.getSelectSpecName()
map?.forEach {
......@@ -482,8 +482,8 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
//配置规格显示
if (TextUtils.isEmpty(specMainName)) {//没有选主规格
//사양 표시
if (TextUtils.isEmpty(specMainName)) {//주 사양 이 없습니다.
var showSpec = ""
for (i in secondSpecsName.indices) {
if (i == secondSpecsName.size - 1) {
......@@ -493,10 +493,10 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
specNameShow.text = showSpec
} else {//选了主规格
if (secondSpecsName == null || secondSpecsName.size == 0) {//没有辅规格
} else {//주 사양 을 골 랐 습 니 다.
if (secondSpecsName == null || secondSpecsName.size == 0) {//보조 사양 없 음
specNameShow.setText(specMainName)
} else {//有辅规格
} else {//보조 규격 이 있다.
var showSpec = specMainName + ","
for (i in secondSpecsName.indices) {
if (i == secondSpecsName.size - 1) {
......@@ -522,7 +522,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 初始化购物车
* 카 트 초기 화
*/
private fun initCar() {
view = LayoutInflater.from(this).inflate(R.layout.dialog_bottom_list, null, false)
......@@ -566,7 +566,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 查找当前店铺的购物车商品
* 현재 점포 의 카 트 상품 찾기
*/
private fun findCarShop() {
if (listItemEntities == null) {
......@@ -595,14 +595,14 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
it?.text = getString(R.string.you_have_not_added_any_items_yet)
}
} else {
var shopPrice = 0.00//商品总价格
var total = 0//邮票总数量
var shopPrice = 0.00//상품 총 가격
var total = 0//우표 총 수량
for (i in listItemEntities?.indices!!) {
val foodEntity = listItemEntities?.get(i)
if (foodEntity?.isStamp == 0) {//商品
if (foodEntity?.isStamp == 0) {//상품.
shopPrice += UIUtile.stringToDouble(foodEntity?.getFoodPrice()) * foodEntity.number
} else {//邮票
} else {//우표
total += foodEntity?.stampPrice!! * foodEntity.number
}
}
......@@ -625,7 +625,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
}
if (total > userStampNumber) {//邮票数量不够
if (total > userStampNumber) {//우표 수량 이 부족 하 다
enabledButton()
} else {
tv_bottom_shop_button.setBackgroundColor(resources.getColor(R.color.btn_bg))
......@@ -676,7 +676,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
}
/**
* 去支付
* 지불 하 다
*/
private fun toPay() {
if (listItemEntities != null && listItemEntities?.size!! > 0) {
......@@ -685,7 +685,7 @@ class DishesDetailsActivity : BaseActivity(), View.OnClickListener {
return
}
//遍历商品查看是否是相同商品
//상품 을 넘 나 들 며 같은 상품 인지 확인 하 다
val shopType = listItemEntities?.get(0)!!.isStamp
for (i in listItemEntities?.indices!!) {
val foodEntity = listItemEntities?.get(i)
......
......@@ -54,7 +54,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
override fun resultIsMerchantOrder(isOrderStoreEntity: IsOrderStoreEntity?) {
isOrderStoreEntity?.let {
if (isOrderStoreEntity.is_user_queue == 1) {//预约了
if (isOrderStoreEntity.is_user_queue == 1) {//예 약 했 습 니 다.
val beans = isOrderStoreEntity.hotel_queue_list
if (beans != null && beans.size > 0) {
val hotelQueueListBean = beans[0]
......@@ -63,14 +63,14 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
if (!TextUtils.isEmpty(tableUUID)) {
return
}
if (beans[0].is_over_number == 0) {//未过号
//是否已经叫号
if (beans[0].is_call == 1) {//已叫号
if (beans[0].is_over_number == 0) {//미 통과 번호
//이미 번 호 를 불 렀 는 지 여부
if (beans[0].is_call == 1) {//이미 번 호 를 불 렀 다.
showState = 2
} else {
type = 1
}
} else if (beans[0].is_over_number == 2) {//已过号
} else if (beans[0].is_over_number == 2) {//이미 지나 간 번호
type = 2
showDialog(getString(R.string.your_queue_has_been_numbered_please_requeue)
, getString(R.string.come_back)
......@@ -79,7 +79,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
intentOne.putExtra(ConstantsRestaurantType.UUID, hotelUuid)
startActivity(intentOne)
}, true)
} else if (beans[0].is_over_number == 1) {//排队成功
} else if (beans[0].is_over_number == 1) {//줄 서기 성공
showState = 2
}
}
......@@ -101,34 +101,34 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
var mDkBanner: DkBanner<String>? = null
var popupWindow: PopupWindow? = null
private var listItemEntities: MutableList<FoodEntity>? = null//当前店铺购物车列表信息
private var listItemEntities: MutableList<FoodEntity>? = null//현재 점포 카 트 리스트 정보
private var hotelUuid = ""
private var goodsUuid = ""
private var isUserCoupon = true
private var mainSpecId = ""//主规格ID
private var specPrice = ""//当前弹出商品的规格
private var shopSpecListAdapter: ShopSpecListAdapter? = null//辅规格适配器
private var mainSpecId = ""//주 규격 ID
private var specPrice = ""//현재 팝 업 상품 규격
private var shopSpecListAdapter: ShopSpecListAdapter? = null//보조 규격 어댑터
private var hotelGoodsDetailEntity: HotelGoodsDetailEntity? = null
private var carAdapter: ShopBottomListAdapter? = null
private var rvCar: RecyclerView? = null
private var tvCount: TextView? = null//购物车商品数量
private var tvShowShopInfo: TextView? = null//购物车所选信息
private var view: View? = null//购物车View
private var tableUUID = ""//桌号ID
private var tvCount: TextView? = null//카 트 수량
private var tvShowShopInfo: TextView? = null//카 트 선정 정보
private var view: View? = null//카 트 View
private var tableUUID = ""//테이블 ID
private var type = 0
private var commitQueueEntity: CommitQueueEntity? = null//排队信息,需要传递给排队界面
private var commitQueueEntity: CommitQueueEntity? = null//대기 정보, 대기 화면 에 전달
private var mFoodEntity: FoodEntity? = null
private var specMainName = ""//主规格名字
private var tvSettlement: TextView? = null//弹出的购物车界面按钮
private var queueUuid = ""//排队uuid
private var tableName = ""//桌子号码
private var userStampNumber = 0//用户在当前店铺拥有的邮票数
private var isStamp = 0//是否为邮票
private var specMainName = ""//주 규격 이름
private var tvSettlement: TextView? = null//팝 업 카 트 인터페이스 버튼
private var queueUuid = ""//줄 서기 uid
private var tableName = ""//테이블 번호
private var userStampNumber = 0//사용자 가 현재 점포 에서 가지 고 있 는 우표 수
private var isStamp = 0//우표 인지 아 닌 지
private var dishesPresenter: DishesPresenter? = null
private var currentStampNumber = 0//当前商品的邮票数
private var currentStampNumber = 0//현재 상품 의 우표 수
override fun onClick(v: View?) {
if (ButtonUtil.isFastDoubleTowBiClick()) {
......@@ -151,13 +151,13 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
R.id.btn_details_queue -> {
when (type) {
0//预约排队
0//예약 정렬
-> {
val intentOne = Intent(this@DishesDetailsTowActivity, QueueActivity::class.java)
intentOne.putExtra(ConstantsRestaurantType.UUID, hotelUuid)
startActivity(intentOne)
}
1, 2//排队中,排队过期
1, 2//대기 중, 대기 시간 만 료
-> if (commitQueueEntity != null) {
startPageQueueResult()
}
......@@ -205,25 +205,25 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 获取指定餐馆详细信息
* 지정 한 식당 의 상세 한 정 보 를 얻다.
*/
private var showState = -1//底部显示状态
private var showState = -1//아래쪽 디 스 플레이 상태
/**
* type,排队的状态
* type: type:, 줄 서 는 상태
*/
private fun setBottomState(state: Int, type: Int) {
tv_shop_tip.visibility = View.GONE
btn_details_queue.visibility = View.GONE
cl_shop_layout.visibility = View.GONE
when (state) {
0//显示商家还未营业提示
0//업 체 가 아직 영업 알림 을 하지 않 았 음 을 표시 하 다.
-> {
tv_shop_tip.visibility = View.VISIBLE
tv_select_spec.isEnabled = false
tv_select_spec.background = resources.getDrawable(R.drawable.bg_select_type_unavailable)
}
1//显示排队按钮
1//대기 버튼 보이 기
-> {
btn_details_queue.visibility = View.VISIBLE
when (type) {
......@@ -232,7 +232,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
2 -> btn_details_queue.setText(R.string.passed_number)
}
}
2//显示添加商品底部
2//상품 의 하단 부 를 보 여 줍 니 다.
-> {
cl_shop_layout.visibility = View.VISIBLE
}
......@@ -240,15 +240,15 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 请求当前商品详情
* 현재 상품 상세 요청
*/
private fun requestData() {
RestaurantServiceFactory.getHotelGoodsDetail(hotelUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<HotelGoodsDetailEntity>(this) {
override fun onNext(t: HotelGoodsDetailEntity) {
hotelGoodsDetailEntity = t
t.apply {
//拿到店铺信息
if (hotel_detail_vo.is_call == 0) {//是否开启排队,0没开启
//가게 정 보 를 입수 하 다
if (hotel_detail_vo.is_call == 0) {//열 림 여부, 0 오픈 하지 않 음
showState = 2
} else {
showState = 1
......@@ -296,7 +296,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 请求规格
* 요청 규격
*/
private fun requestSpecsDetails() {
RestaurantServiceFactory.getGoodsSpecDetail(hotelUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<RestaurantSpecEntity>(this) {
......@@ -330,7 +330,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
if (count > 1) {
mFoodEntity?.number = count - 1
mFoodEntity?.save()
} else {//删除
} else {//삭제 하 다.
mFoodEntity?.delete()
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount)
}
......@@ -364,18 +364,18 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
} else {
addShopData(tvSpecShow, entity, secondSpecs)
}
//刷新购物车状态
//카 트 리 셋 상태
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount)
}
//获取所有规格
//모든 규격 가 져 오기
val goodsMainSpecsListBeans = entity.goods_main_specs_list
if (goodsMainSpecsListBeans.size > 0) {
val mainSpecs = goodsMainSpecsListBeans[0]//拿到主规格
val mainSpecs = goodsMainSpecsListBeans[0]//주 사양 을 받다
mainName.text = mainSpecs.specs_name
val list = mainSpecs.second_specs_volist//拿到主规格规格列表
val list = mainSpecs.second_specs_volist//주 사양 사양 리스트 가 져 오기
val tagAdapter = object : TagAdapter<RestaurantSpecEntity.GoodsMainSpecsListBean.SecondSpecsVolistBean?>(list) {
override fun getView(flowLayout: FlowLayout, i: Int, o: RestaurantSpecEntity.GoodsMainSpecsListBean.SecondSpecsVolistBean?): View {
......@@ -386,12 +386,12 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
//设置默认选择第一个
//기본 설정 첫 번 째 선택
tagAdapter.setSelectedList(0)
if (list != null && list.size > 0) {
//使用第一个规格的价格
if (isStamp == 0) {//不是邮票兑换商品
//첫 번 째 규격 의 가격 을 사용 하 다
if (isStamp == 0) {//우표 교환 상품 아니에요.
price.text = UIUtile.stringToPrice(list[0].goods_price)
specPrice = list[0].goods_price
} else {
......@@ -416,20 +416,20 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
specMainName = list[position].specs_name
mainSpecId = list[position].uuid
if (isStamp == 0) {
specPrice = list[position].goods_price//设置当前规格价格
specPrice = list[position].goods_price//현재 규격 가격 설정
price.text = UIUtile.stringToPrice(list[position].goods_price)
} else {//邮票兑换
specPrice = list[position].stamp_number.toString()//设置当前规格价格
} else {//우표 교환
specPrice = list[position].stamp_number.toString()//현재 규격 가격 설정
price.text = UIUtile.stringToStamp(list[position].stamp_number)
}
} else {
mainSpecId = ""
specMainName = ""
if (isStamp == 0) {
specPrice = "0"//设置当前规格价格
specPrice = "0"//현재 규격 가격 설정
price.text = UIUtile.stringToPrice("0")
} else {//邮票兑换
specPrice = "0"//设置当前规格价格
} else {//우표 교환
specPrice = "0"//현재 규격 가격 설정
price.text = UIUtile.stringToStamp("0")
}
}
......@@ -465,13 +465,13 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
updateLayoutState(tvItemCount, tvSpecShow, entity, tvShopAdd, llCount)
//---------------------------------初始化判断当前商品是否存在购物车--------------------------------------------
//---------------------------------초기 화 판단 현재 상품 카 트 존재 여부--------------------------------------------
}
/**
* type,0加1减
* type,0 더하기 1 빼 기
*/
private fun addAndReduce(tvItemCount: TextView, type: Int) {
val count = mFoodEntity?.number
......@@ -482,7 +482,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
if (count > 1) {
mFoodEntity?.number = count - 1
mFoodEntity?.save()
} else {//删除
} else {//삭제 하 다.
mFoodEntity?.delete()
}
}
......@@ -493,14 +493,14 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 更新规格布局状态
* 규격 레이아웃 상태 업데이트
*
* @param entity
* @param tvShopAdd
* @param llCount
*/
private fun updateLayoutState(tvItemCount: TextView, specNameShow: TextView, entity: RestaurantSpecEntity, tvShopAdd: Button, llCount: LinearLayout) {
val secondSpecsOne = mutableListOf<String>()//辅规格UUID
val secondSpecsOne = mutableListOf<String>()//부 규격 UID
if (shopSpecListAdapter != null) {
val map = shopSpecListAdapter?.getSelectSpec()
map?.forEach {
......@@ -508,7 +508,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
val secondSpecsName = ArrayList<String>()//辅规格名字
val secondSpecsName = ArrayList<String>()//부 규격 이름
if (shopSpecListAdapter != null) {
val map = shopSpecListAdapter?.getSelectSpecName()
map?.forEach {
......@@ -516,8 +516,8 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
//配置规格显示
if (TextUtils.isEmpty(specMainName)) {//没有选主规格
//사양 표시
if (TextUtils.isEmpty(specMainName)) {//주 사양 이 없습니다.
var showSpec = ""
for (i in secondSpecsName.indices) {
if (i == secondSpecsName.size - 1) {
......@@ -527,10 +527,10 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
specNameShow.text = showSpec
} else {//选了主规格
if (secondSpecsName == null || secondSpecsName.size == 0) {//没有辅规格
} else {//주 사양 을 골 랐 습 니 다.
if (secondSpecsName == null || secondSpecsName.size == 0) {//보조 사양 없 음
specNameShow.text = specMainName
} else {//有辅规格
} else {//보조 규격 이 있다.
var showSpec = specMainName + ","
for (i in secondSpecsName.indices) {
if (i == secondSpecsName.size - 1) {
......@@ -590,7 +590,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 初始化购物车
* 카 트 초기 화
*/
private fun initCar() {
view = LayoutInflater.from(this).inflate(R.layout.dialog_bottom_list, null, false)
......@@ -608,7 +608,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
tvSettlement?.setOnClickListener { v -> toPay() }
tvCleanCars.setOnClickListener {// 清空购物车
tvCleanCars.setOnClickListener {// 카 트 를 비우 다
v ->
showDialog("", getString(R.string.do_you_want_to_empty_your_shopping_cart), { type ->
LitePal.deleteAll(FoodEntity::class.java, "storeUUid =?", hotelUuid)
......@@ -632,7 +632,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 查找当前店铺的购物车商品
* 현재 점포 의 카 트 상품 찾기
*/
private fun findCarShop() {
if (listItemEntities == null) {
......@@ -661,14 +661,14 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
it?.text = getString(R.string.you_have_not_added_any_items_yet)
}
} else {
var shopPrice = 0.00//商品总价格
var total = 0//邮票总数量
var shopPrice = 0.00//상품 총 가격
var total = 0//우표 총 수량
for (i in listItemEntities?.indices!!) {
val foodEntity = listItemEntities?.get(i)
if (foodEntity?.isStamp == 0) {//商品
if (foodEntity?.isStamp == 0) {//상품.
shopPrice += UIUtile.stringToDouble(foodEntity?.getFoodPrice()) * foodEntity.number
} else {//邮票
} else {//우표
total += foodEntity?.stampPrice!! * foodEntity.number
}
}
......@@ -691,7 +691,7 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
}
if (total > userStampNumber) {//邮票数量不够
if (total > userStampNumber) {//우표 수량 이 부족 하 다
enableButton()
} else {
tv_bottom_shop_button.setBackgroundColor(resources.getColor(R.color.btn_bg))
......@@ -743,18 +743,18 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
}
/**
* 去支付
* 지불 하 다
*/
private fun toPay() {
if (listItemEntities != null && listItemEntities?.size!! > 0) {
if (TextUtils.isEmpty(tableUUID)) {
showDialog("", getString(R.string.please_scan_the_qr_code_on_the_table)) {
//调用扫码
//호출 스 캔 코드
requestPermission(Permission.CAMERA) { startActivityForResult(Intent(this@DishesDetailsTowActivity, CaptureActivity::class.java), ConstantsHomeType.SCAN) }
}
return
}
//遍历商品查看是否是相同商品
//상품 을 넘 나 들 며 같은 상품 인지 확인 하 다
val shopType = listItemEntities?.get(0)!!.isStamp
for (i in listItemEntities?.indices!!) {
val foodEntity = listItemEntities?.get(i)
......@@ -805,17 +805,17 @@ class DishesDetailsTowActivity : BaseActivity(), View.OnClickListener, DishesVie
finish()
}
}
"1"//不存在
"1"//존재 하지 않 음
-> {
tableUUID = ""
startActivity(Intent(this@DishesDetailsTowActivity, ScanResultActivity::class.java))
}
"2"//被使用
"2"//사용되다
-> {
tableUUID = ""
showDialogStateTow(getString(R.string.the_table_number_is_in_use))
}
"3"//已隐藏
"3"//숨겨 진
-> {
tableUUID = ""
startActivity(Intent(this@DishesDetailsTowActivity, ScanResultActivity::class.java))
......
......@@ -52,7 +52,7 @@ import cn.dankal.client.ui.home.ScanResultActivity;
import io.reactivex.disposables.Disposable;
/**
* 商家详情
* 상가 의 상세 한 상황.
*/
public class MerchantDetailsActivity extends BaseActivity {
......@@ -69,7 +69,7 @@ public class MerchantDetailsActivity extends BaseActivity {
MarqueeView marqueeView;
TextView tvTabNumber;//桌号
TextView tvTabNumber;//테이블 번호
TextView tvStampTag;
......@@ -79,9 +79,9 @@ public class MerchantDetailsActivity extends BaseActivity {
TextView tvGrade;
private int userStampNumber = 0;//用户在当前店铺拥有的邮票数
private int userStampNumber = 0;//사용자 가 현재 점포 에서 가지 고 있 는 우표 수
private boolean isUserCoupon = true;//是否能使用优惠券
private boolean isUserCoupon = true;//쿠폰 사용 여부
private List<Fragment> dataList;
......@@ -89,32 +89,31 @@ public class MerchantDetailsActivity extends BaseActivity {
public static final String USER_COUPON = "userCoupon";
public static final String TABLE_UUID = "tableUuid";
public static final String TABLE_NUMBER = "tableNumber";
public static final String SHOW_STATE = "showState";//显示状态
public static final String QUEUE_UUID = "queue_uuid";//排队uuid
public static final String USER_STAMP_COUNT = "user_stamp_count";//排队uuid
public static final String SHOW_STATE = "showState";//상태 표시
public static final String QUEUE_UUID = "queue_uuid";//줄 서기 uid
public static final String USER_STAMP_COUNT = "user_stamp_count";
private int showState = -1;//显示状态
private int showState = -1;//상태 표시
private DetailsShopFragment detailsShopFragmentOne;
public String storeUUId;//店铺UUId
public String storeUUId;//가게 UId
private String tableUUID;//桌号ID
private String tableUUID;//테이블 ID
private String tableName;//桌号名字
private String tableName;//테이블 이름
private FragmentAdapter fragmentAdapter;
private boolean isRequest = false;
private boolean isAgain = false;//是否是再来一单
private boolean isAgain = false;//한 장 더 할 까요?
private double mStarLevel;
@Override
protected int getLayoutId() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
//透明状态栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
return R.layout.activity_merchant_details;
......@@ -163,13 +162,13 @@ public class MerchantDetailsActivity extends BaseActivity {
case "0":
requestStoreDetail();
break;
case "1"://不存在
case "3"://已隐藏
case "1"://존재 하지 않 음
case "3"://숨겨 진
tvTabNumber.setVisibility(View.GONE);
tableUUID = null;
startActivity(new Intent(MerchantDetailsActivity.this, ScanResultActivity.class));
break;
case "2"://被使用
case "2"://사용되다
tvTabNumber.setVisibility(View.GONE);
tableUUID = null;
showDialogStateTow(getString(R.string.the_table_number_is_in_use));
......@@ -251,7 +250,7 @@ public class MerchantDetailsActivity extends BaseActivity {
}
/**
* 餐馆是否在营业时间内
* 식당 은 영업시간 내 에 있 습 니까?
*/
private void requestIsBusinessTime() {
RestaurantServiceFactory.isBusiness(storeUUId).subscribe(new AbstractDialogSubscriber<BusinessTimeEntity>(this) {
......@@ -273,7 +272,7 @@ public class MerchantDetailsActivity extends BaseActivity {
}
/**
* 获取指定餐馆详细信息
* 지정 한 식당 의 상세 한 정 보 를 얻다.
*/
private void requestStoreDetail() {
RestaurantServiceFactory.getRestaurantDetail(storeUUId).subscribe(new AbstractDialogSubscriber<RestaurantDetailEntity>(this) {
......@@ -288,7 +287,7 @@ public class MerchantDetailsActivity extends BaseActivity {
detailsShopFragmentOne = null;
}
detailsShopFragmentOne = new DetailsShopFragment();
if (entity.getIs_call() == 0) {//是否开启排队,0没开启
if (entity.getIs_call() == 0) {//열 림 여부, 0 오픈 하지 않 음
showState = 2;
} else {
showState = 1;
......@@ -302,28 +301,28 @@ public class MerchantDetailsActivity extends BaseActivity {
userStampNumber = entity.getUser_stamp_number();
tvRestaurantStamp.setText(getString(R.string.number_of_stamps_currently_in_possession) + entity.getUser_stamp_number() + getString(R.string.zhang));
if (entity.getIs_use_coupons() == 0) {//可以使用优惠券
if (entity.getIs_use_coupons() == 0) {//쿠폰 사용 가능
tvRestaurantCoupons.setVisibility(View.GONE);
isUserCoupon = true;
} else {//不能使用优惠券
} else {//쿠폰 못 써 요.
tvRestaurantCoupons.setVisibility(View.VISIBLE);
isUserCoupon = false;
}
if (entity.getStamp_is_open() == 0) {//不开启邮票赠送
if (entity.getStamp_is_open() == 0) {//우표 오픈 하지 않 음 증정
tvStampTag.setText(R.string.stamp_closure);
tvStampTag.setBackground(getResources().getDrawable(R.drawable.bg_store_stamp_tag_tow));
tvRestaurantStamp.setTextColor(getResources().getColor(R.color.btn_bg));
Drawable drawable = getResources().getDrawable(R.mipmap.ic_ticket);
// 这一步必须要做,否则不会显示.
// 이 단 계 는 반드시 해 야 한다. 그렇지 않 으 면 표시 되 지 않 을 것 이다..
drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());
tvRestaurantStamp.setCompoundDrawables(drawable, null, null, null);
} else {//开启
} else {//열다.
tvStampTag.setText(R.string.stamp_opening);
tvStampTag.setBackground(getResources().getDrawable(R.drawable.bg_store_stamp_tag));
tvRestaurantStamp.setTextColor(getResources().getColor(R.color.font_three));
Drawable drawable = getResources().getDrawable(R.mipmap.ic_home_mall_stamp);
// 这一步必须要做,否则不会显示.
// 이 단 계 는 반드시 해 야 한다. 그렇지 않 으 면 표시 되 지 않 을 것 이다.
drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());
tvRestaurantStamp.setCompoundDrawables(drawable, null, null, null);
}
......@@ -342,7 +341,7 @@ public class MerchantDetailsActivity extends BaseActivity {
bundle.putBoolean("isAgain", isAgain);
bundle.putSerializable(DetailsShopFragment.TYPEDATA, (Serializable) entity.getGoods_type_list());
//fragmen是否激活判断
//fragmen 활성화 판단
try {
detailsShopFragmentOne.setArguments(bundle);
} catch (Exception e) {
......@@ -387,7 +386,7 @@ public class MerchantDetailsActivity extends BaseActivity {
}
/**
* 一条消息时不会滚动
* 한 가지 메시지 가 구 르 지 않 습 니 다.
*/
if (messages.size() == 1) {
messages.add(messages.get(0));
......
......@@ -70,7 +70,7 @@ public class MerchantMallFragment extends BaseFragment implements OnRefreshLoadM
@Override
protected void initComponents() {
initView();
//配置商品内容
//상품 내용 설정
listData = new ArrayList<>();
linearLayoutManagerContent = new LinearLayoutManager(getActivity());
rvDetailsContent.setLayoutManager(linearLayoutManagerContent);
......@@ -94,7 +94,7 @@ public class MerchantMallFragment extends BaseFragment implements OnRefreshLoadM
});
//配置商品类别
//상품 유형 설정
Bundle bundle = getArguments();
if (bundle != null) {
storeUuid = bundle.getString(ConstantsShopType.STORE_UUID);
......@@ -116,8 +116,8 @@ public class MerchantMallFragment extends BaseFragment implements OnRefreshLoadM
goodsTypeListBeans = merchantHomeEntity.getStore_type_list();
if (goodsTypeListBeans != null && goodsTypeListBeans.size() > 0) {
mGoodsTypeUUID = goodsTypeListBeans.get(0).getUuid();
requestContentData(mGoodsTypeUUID, true);//初始化内容数据
//设置商品类型
requestContentData(mGoodsTypeUUID, true);//내용 데이터 초기 화
//상품 유형 설정
linearLayoutManagerTitle = new LinearLayoutManager(getActivity());
rvDetailsTitle.setLayoutManager(linearLayoutManagerTitle);
shopTypeTitleAdapter = new MallTypeTitleAdapter(getActivity(), R.layout.item_shop_type_title, goodsTypeListBeans);
......
......@@ -40,14 +40,14 @@ import org.litepal.LitePal
class OrderResultActivity : BaseActivity(), View.OnClickListener {
private var orderId: String? = ""
private var stampNumber: Int = 0//赠送的邮票数
private var stampNumber: Int = 0//증정 한 우표 수
private var tableUUID: String? = ""
private var storeUUID: String? = ""
private var listItemEntities: MutableList<FoodEntity>? = null//当前店铺购物车列表信息
private var settleDatas = mutableListOf<SettleDataEntity>()//要提交的参数列表
private var couponId = ""//优惠券ID
private var remark = ""//备注信息
private var listItemEntities: MutableList<FoodEntity>? = null//현재 점포 카 트 리스트 정보
private var settleDatas = mutableListOf<SettleDataEntity>()//제출 할 인자 목록
private var couponId = ""//쿠폰 ID
private var remark = ""//정 보 를 비고 하 다.
private var map = HashMap<String, Any?>()
private var selectTableDialog: SelectTableDialog? = null
......@@ -55,17 +55,17 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
private var foodEntity: CommitHotelEntity? = null
private var isStamp = 0//不是邮票兑换商品
private var isStamp = 0//우표 교환 상품 아니에요.
private var isUserCoupon = true//当前商家是否可以使用优惠券
private var isUserCoupon = true//현재 상점 에서 쿠폰 을 사용 할 수 있 습 니까?
private var payment = ""//支付金额
private var payment = ""//지불 금액
private var queueUuid = ""
override fun onClick(v: View?) {
when (v?.id) {
R.id.ll_coupon -> {//跳转到优惠券
R.id.ll_coupon -> {//쿠폰 으로 가기
var intent = Intent(this@OrderResultActivity, SelectCouponActivity::class.java)
intent.putExtra("useType", "0")
intent.putExtra("payment", payment)
......@@ -73,9 +73,9 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
}
R.id.ll_remark -> showBottomListDialog()
R.id.btn_order -> {
//用户是否选择了优惠券
//사용자 가 쿠폰 을 선택 하 였 는 지 여부
if (!isUserCoupon) {
if (!TextUtils.isEmpty(couponId)) {//用户选择了优惠券
if (!TextUtils.isEmpty(couponId)) {//이용 자 는 쿠폰 을 선택 하 였 다.
ToastUtils.showShort(getString(R.string.the_merchant_does_not_support_the_use_of_coupons))
return
}
......@@ -84,15 +84,15 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
map["queue_uuid"] = queueUuid
}
map["remark"] = remark
if (isStamp == 0) {//普通商品支付
if (isStamp == 0) {//일반 상품 결제
callPayment()
} else {//邮票支付
} else {//우표 지불
map["pay_way"] = "2"
stampPayment()
}
}
R.id.btn_cancel -> finish()
R.id.tv_replace_table -> {//更换桌号
R.id.tv_replace_table -> {//테이블 번 호 를 바꾸다.
queueEntity?.let {
startActivityForResult(Intent(this@OrderResultActivity, CaptureActivity::class.java), ConstantsHomeType.SCAN)
}
......@@ -114,8 +114,7 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
startActivity(intent)
}*/
//测试代码
//删除本地购物车商品
val entities = LitePal.where("storeUUid=? ", storeUUID).find(FoodEntity::class.java)
entities?.let {
for (j in 0 until entities.size) {
......@@ -192,23 +191,23 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
}
}
if (isStamp == 0) {//金钱支付
if (isStamp == 0) {//금전 지불
btn_order.text = getString(R.string.Immediate_payment)
} else {//邮票兑换
} else {//우표 교환
btn_order.text = getString(R.string.redeem_now)
tv_coupon_name.hint = getString(R.string.coupons_are_not_available)
tv_coupon_name.isEnabled = false
ll_coupon.isEnabled = false
}
//调用去结算
//호출 결제
requestUserSettle()
//调用桌号数据
//테이블 번호 데이터 호출
requestTable()
}
//请求餐桌类型数据
//테이블 타 입 데이터 요청
private fun requestTable() {
RestaurantServiceFactory.getTablesList(storeUUID).subscribe(object : AbstractDialogSubscriber<QueueEntity>(this) {
override fun onSubscribe(d: Disposable) {
......@@ -329,8 +328,8 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
when (requestCode) {
3 -> {//选择优惠券返回
//拿到优惠券ID
3 -> {//쿠폰 을 선택 하고 돌아 가기
//쿠폰 ID 받 기
if (data != null) {
var couponId = data.getStringExtra("couponUUID")
var couponName = data.getStringExtra("couponName")
......@@ -340,7 +339,7 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
tv_coupon_name.text = getString(R.string.please_select_coupon)
}
if (!TextUtils.isEmpty(couponId)) {
//刷新支付信息
//지불 정 보 를 갱신 하 다.
this.couponId = couponId
} else {
this.couponId = ""
......@@ -367,17 +366,17 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
tv_table_number.text = getString(R.string.table_number) + ":" + qrCodeEntity.tableNumber
tableUUID = qrCodeEntity.tableUuid
}
"1"//不存在
"1"//존재 하지 않 음
-> {
tableUUID = null
startActivity(Intent(this@OrderResultActivity, ScanResultActivity::class.java))
}
"2"//被使用
"2"//사용되다
-> {
tableUUID = null
showDialogStateTow(getString(R.string.the_table_number_is_in_use))
}
"3"//已隐藏
"3"//숨겨 진
-> {
tableUUID = null
startActivity(Intent(this@OrderResultActivity, ScanResultActivity::class.java))
......@@ -398,7 +397,7 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
EventBus.getDefault().unregister(this)
}
//刷新桌号信息
//테이블 번호 정보 새로 고침
@org.greenrobot.eventbus.Subscribe(threadMode = ThreadMode.MAIN)
public fun onMessageEvent(event: TableDateEntity) {
tv_table_number.text = event.name
......@@ -406,14 +405,14 @@ class OrderResultActivity : BaseActivity(), View.OnClickListener {
}
/**
* 微信支付回调
* 위 챗 결 제 를 반송 하 다.
*/
@org.greenrobot.eventbus.Subscribe(threadMode = ThreadMode.MAIN)
public fun updatePlayStatus(entity: PlayStatusEntity?) {
if (entity != null) {
if (entity.type == 0) {//支付失败
if (entity.type == 0) {//지불 실패
ToastUtils.showShort(getString(R.string.failure_to_pay))
} else {//支付成功
} else {//지불 성공
ToastUtils.showShort(getString(R.string.successful_payment))
val intent = Intent(this@OrderResultActivity, ResultPageActivity::class.java)
var bundle = Bundle()
......
......@@ -25,7 +25,7 @@ import cn.dankal.client.R;
import io.reactivex.disposables.Disposable;
/**
* 推荐商家
* 추천 업 체
*/
public class RecommendMerchantActivity extends BaseListActivity<RestaurantEntity.DataBean> {
......@@ -44,7 +44,7 @@ public class RecommendMerchantActivity extends BaseListActivity<RestaurantEntity
if (!checkGPSIsOpen()) {
View view = UIUtile.getView(R.layout.adapter_layout_location_data, rvList);
TextView tvOpenGPS = view.findViewById(R.id.tv_open_location);
tvOpenGPS.setOnClickListener(v -> {//跳转到gps设置页面
tvOpenGPS.setOnClickListener(v -> {//gps 설정 페이지 로 가기
toSelfSetting();
});
if (adapter != null) {
......@@ -131,7 +131,7 @@ public class RecommendMerchantActivity extends BaseListActivity<RestaurantEntity
}
/**
* 判断是否有定位权限
* 위치 결정 권한 이 있 는 지 여 부 를 판단 하 다.
*
* @return
*/
......
......@@ -15,22 +15,22 @@ import kotlinx.android.synthetic.main.activity_result_page.*
/**
* 普通商品结果页
* 일반 상품 결과 페이지
*/
class ResultPageActivity : BaseActivity(), View.OnClickListener {
private var orderId: String? = ""
private var stampNumber: Int = 0//赠送的邮票数
private var stampNumber: Int = 0//증정 한 우표 수
private var foodEntity: CommitHotelEntity? = null
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_see_order -> {//查看订单
R.id.btn_see_order -> {//주문 서 를 확인 하 다.
startActivity(Intent(this@ResultPageActivity, OrderDetailsActivity::class.java).putExtra(ConstantsRestaurantType.UUID, orderId))
}
R.id.btn_order -> {//继续点餐
R.id.btn_order -> {//계속 주문 할 게 요.
finish()
}
R.id.btn_evaluate->{
......@@ -63,9 +63,9 @@ class ResultPageActivity : BaseActivity(), View.OnClickListener {
rv_order_result.layoutManager = LinearLayoutManager(this@ResultPageActivity)
rv_order_result.adapter = adapter
if (it.pay_settle_goods_list != null && it.pay_settle_goods_list.size > 0) {
if (it.pay_settle_goods_list[0].is_stamp == 0) {//普通商品
if (it.pay_settle_goods_list[0].is_stamp == 0) {//일반 상품
tv_shop_total_price.text = UIUtile.stringToPrice(it.payment)
} else {//邮票商品
} else {//우표 상품
tv_shop_total_price.text = UIUtile.stringToStamp(it.payment)
}
}
......
......@@ -15,25 +15,25 @@ import kotlinx.android.synthetic.main.activity_result_page_tow.*
/**
* 邮票的结果页
* 우표 의 결과 페이지
*/
class ResultPageTowActivity : BaseActivity(),View.OnClickListener {
private var orderId: String? = ""
private var stampNumber: Int = 0//赠送的邮票数
private var stampNumber: Int = 0//증정 한 우표 수
private var foodEntity: CommitHotelEntity? = null
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_see_order -> {//查看订单
R.id.btn_see_order -> {//주문 서 를 확인 하 다.
startActivity(Intent(this@ResultPageTowActivity, OrderDetailsActivity::class.java).putExtra(ConstantsRestaurantType.UUID, orderId))
}
R.id.btn_evaluate -> {//评价
R.id.btn_evaluate -> {//평가 하 다.
startActivity(Intent(this@ResultPageTowActivity, FoodEvaluationActivity::class.java).putExtra("order_id", orderId))
finish()
}
R.id.btn_order -> {//继续点餐
R.id.btn_order -> {//계속 주문 할 게 요.
finish()
}
}
......@@ -61,9 +61,9 @@ class ResultPageTowActivity : BaseActivity(),View.OnClickListener {
var adapter = OrderResultAdapter(R.layout.item_order_child, it.pay_settle_goods_list,1)
rv_order_result.layoutManager = LinearLayoutManager(this@ResultPageTowActivity)
rv_order_result.adapter = adapter
if (it.pay_settle_goods_list[0].is_stamp == 0) {//普通商品
if (it.pay_settle_goods_list[0].is_stamp == 0) {//일반 상품
tv_shop_total_price.text = UIUtile.stringToPrice(it.payment)
} else {//邮票商品
} else {//우표 상품
tv_shop_total_price.text = UIUtile.stringToStamp(it.payment)
}
}
......
......@@ -42,7 +42,7 @@ class SelectCouponFragment : BaseFragment() {
}
adapter.setOnItemClickListener { adapter, view, position ->
val couponVoBean = t.data[position].coupon_vo
//拿到优惠券ID,返回
//쿠폰 ID 받 고 돌아 가기
var couponID = t.data[position].uuid
var couponName = couponVoBean.name
var intent = Intent()
......
......@@ -11,14 +11,14 @@ class SelectPayActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.ll_a_pay -> {//支付宝
R.id.ll_a_pay -> {//알 리 페 이
ToastUtils.showShort(getString(R.string.not_supported_yet))
/* var intent = Intent()
intent.putExtra("pay", 1)
setResult(1, intent)
finish()*/
}
R.id.ll_w_pay -> {//微信
R.id.ll_w_pay -> {//위 챗 편지
var intent = Intent()
intent.putExtra("pay", 0)
setResult(1, intent)
......
......@@ -24,14 +24,14 @@ class SelectPayFoodActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.ll_a_pay -> {//支付宝
R.id.ll_a_pay -> {//알 리 페 이
ToastUtils.showShort(getString(R.string.not_supported_yet))
/* var intent = Intent()
intent.putExtra("pay", 1)
setResult(1, intent)
finish()*/
}
R.id.ll_w_pay -> {//微信
R.id.ll_w_pay -> {//WeChat
payEntity?.let {
payShop(it)
}
......@@ -57,7 +57,7 @@ class SelectPayFoodActivity : BaseActivity(), View.OnClickListener {
}
private fun payShop(payEntity: PayParameterEntity) {
//删除本地购物车商品
//로 컬 카 트 상품 삭제
val entities = LitePal.where("storeUUid=? ", storeUUID).find(FoodEntity::class.java)
entities?.let {
for (j in 0 until entities.size) {
......@@ -70,12 +70,12 @@ class SelectPayFoodActivity : BaseActivity(), View.OnClickListener {
val api = DankalApplication.getIWXAPI()
val request = PayReq()
request.appId = WxConstants.WX_APP_ID//appid
request.partnerId = payEntity.partner_id//商户号
request.prepayId = payEntity.prepay_id//预支付交易会话ID
request.packageValue = payEntity.package_str//扩展字段
request.nonceStr = payEntity.nonce_str//随机字符串
request.partnerId = payEntity.partner_id//상점 번호
request.prepayId = payEntity.prepay_id//선불 거래 세 션 ID
request.packageValue = payEntity.package_str//확장 필드
request.nonceStr = payEntity.nonce_str//임 의 문자열
request.timeStamp = payEntity.time_stamp
request.sign = payEntity.sign//签名
request.sign = payEntity.sign//서명 하 다.
api.sendReq(request)
finish()
}
......
......@@ -16,9 +16,9 @@ class TableSelectActivity : Activity() {
private var queueEntity: QueueEntity? = null
private var tableShop: String? = null//桌形名字
private var tableNumber: String? = null//桌号名字
private var tableNumberId: String? = null//桌号ID
private var tableShop: String? = null//테이블 이름
private var tableNumber: String? = null//테이블 이름
private var tableNumberId: String? = null//테이블 ID
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
......@@ -34,18 +34,18 @@ class TableSelectActivity : Activity() {
}
//设置默认桌形和桌号
//기본 테이블 과 테이블 번 호 를 설정 합 니 다.
queueEntity?.let {
var tableShopList = queueEntity?.data
tableShopList?.let {
if (it.size > 0) {
//拿到桌形
//책상 에 갖다
tableShop = it[0].tables_name
tv_select_table.text = tableShop
var tableNumberList = it[0].tables_list
if (tableNumberList != null && tableNumberList.size > 0) {
//拿到桌号
//테이블 번호 를 받다
tableNumber = tableNumberList[0].table_number
tv_count.text = tableNumber
}
......@@ -55,7 +55,7 @@ class TableSelectActivity : Activity() {
iv_close.setOnClickListener { finish() }
//选择桌形
//책상 모양 을 선택 하 다
tv_select_table.setOnClickListener {
var options1Items = mutableListOf<TableDateEntity>()
var tableShopList = queueEntity?.data
......@@ -70,7 +70,7 @@ class TableSelectActivity : Activity() {
showPickerView(options1Items, getString(R.string.table_shape))
}
//选择桌号
//테이블 번 호 를 선택 하 다.
cl_select_personal.setOnClickListener {
var options1Items = mutableListOf<TableDateEntity>()
var tableShopList = queueEntity?.data
......@@ -95,7 +95,7 @@ class TableSelectActivity : Activity() {
}
btn_ok_select.setOnClickListener {
//更新桌号
//테이블 번호 업데이트
var tableDateEntity = TableDateEntity()
tableDateEntity.name = tableNumber
tableDateEntity.uuid = tableNumberId
......@@ -106,8 +106,8 @@ class TableSelectActivity : Activity() {
private fun showPickerView(options1Items: List<TableDateEntity>, title: String) {// 弹出选择器
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
if (title == getString(R.string.table_shape)) {//桌形
//3 개의 등급 으로 돌아 가 는 선 택 된 위치 입 니 다.
if (title == getString(R.string.table_shape)) {//탁자 의 형태
tableShop = options1Items[options1].pickerViewText
} else {
tableNumber = options1Items[options1].pickerViewText
......@@ -117,14 +117,14 @@ class TableSelectActivity : Activity() {
.setTitleText(title)
.setDividerColor(Color.WHITE)
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK)
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTitleBgColor(Color.WHITE)
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(options1Items)//三级选择器
pvOptions.setPicker(options1Items)
pvOptions.show()
}
}
......@@ -46,7 +46,7 @@ public class DishesPresenter implements BasePresenter<DishesView> {
}
/**
* 用户是否在当前餐馆预约
* 사용자 가 현재 식당 에서 예약 합 니까?
*/
public void requestIsMerchantOrder(String hotelUUID) {
RestaurantServiceFactory.isUserQueue(hotelUUID).subscribe(new AbstractDialogSubscriber<IsOrderStoreEntity>(dishesView) {
......
......@@ -64,12 +64,12 @@ public class GoogleMapsActivity extends BaseActivity implements OnMapReadyCallba
private LocationTracker locationTrackObj;
private final int ANIMATION_TYPE_RIPPLE = 0;
private GoogleMap.InfoWindowAdapter windowAdapter;
private List<BottomAroundEntity.DataBean> dataBeans;//附近所有商家信息
private List<BottomAroundEntity.DataBean> dataBeans;//근처 모든 상가 정보
private SupportMapFragment mapFragment;
private RelativeLayout relativeLayout;
private static final int LOCATION_PERMISSION_REQUEST_CODE = 1;
private Drawable drawable;//当前需要显示的infoWindow网络图
private Drawable drawable;//현재 표시 할 InforWindow 네트워크 맵
@Override
protected int getLayoutId() {
......@@ -131,7 +131,7 @@ public class GoogleMapsActivity extends BaseActivity implements OnMapReadyCallba
View infoWindow = null;
/**
* 初始化地图
* 지도 초기 화
*
* @param mMap
*/
......@@ -215,7 +215,7 @@ public class GoogleMapsActivity extends BaseActivity implements OnMapReadyCallba
}
//开始请求数据,绘制 MarkerOptions();
//데 이 터 를 요청 하여 그립 니 다. MarkerOptions();
private void requestAllList() {
Map<String, Object> maps = new HashMap<>();
......@@ -229,7 +229,7 @@ public class GoogleMapsActivity extends BaseActivity implements OnMapReadyCallba
maps.put("queue_status", "");
maps.put("search", "");
//请求附近商家信息
//근처 상가 에 정보 요청
HomeServiceFactory.aroundList(maps).subscribe(new AbstractDialogSubscriber<BottomAroundEntity>(this) {
@Override
......@@ -253,7 +253,7 @@ public class GoogleMapsActivity extends BaseActivity implements OnMapReadyCallba
}
/**
* 自定义infowinfow窗口
* 사용자 정의 Inforwinfow 창
*/
public void render(Marker marker, View view) {
int index = Integer.parseInt(marker.getSnippet());
......
......@@ -53,7 +53,7 @@ public class GoogleMapsMallActivity extends BaseActivity implements OnMapReadyCa
private LocationTracker locationTrackObj;
private final int ANIMATION_TYPE_RIPPLE = 0;
private GoogleMap.InfoWindowAdapter windowAdapter;
private List<BottomAroundEntity.DataBean> dataBeans;//附近所有商家信息
private List<BottomAroundEntity.DataBean> dataBeans;//근처 모든 상가 정보
private SupportMapFragment mapFragment;
private RelativeLayout relativeLayout;
private static final int LOCATION_PERMISSION_REQUEST_CODE = 1;
......@@ -120,7 +120,7 @@ public class GoogleMapsMallActivity extends BaseActivity implements OnMapReadyCa
/**
* 初始化地图
* 지도 초기 화
*
* @param mMap
*/
......@@ -187,7 +187,7 @@ public class GoogleMapsMallActivity extends BaseActivity implements OnMapReadyCa
}
/**
* 自定义infowinfow窗口
* 사용자 정의 Inforwinfow 창
*/
public void render(Marker marker, View view) {
ImageView ivStore = view.findViewById(R.id.iv_store_name);
......@@ -461,7 +461,7 @@ public class GoogleMapsMallActivity extends BaseActivity implements OnMapReadyCa
/**
* 申请权限
* 신청 권한
*/
private void setUpMap() {
if (ActivityCompat.checkSelfPermission(this,
......
......@@ -60,7 +60,7 @@ public class GoogleMapsMerchantActivity extends BaseActivity implements OnMapRea
private static final int LOCATION_PERMISSION_REQUEST_CODE = 1;
private RestaurantDetailEntity entity;
private Drawable drawable;//当前需要显示的infoWindow网络图
private Drawable drawable;//현재 표시 할 InforWindow 네트워크 맵
private String distance = "0m";
......@@ -125,7 +125,7 @@ public class GoogleMapsMerchantActivity extends BaseActivity implements OnMapRea
/**
* 初始化地图
* 지도 초기 화
*
* @param mMap
*/
......@@ -219,7 +219,7 @@ public class GoogleMapsMerchantActivity extends BaseActivity implements OnMapRea
}
/**
* 自定义infowinfow窗口
* 사용자 정의 Inforwinfow 창
*/
public void render(Marker marker, View view) {
ImageView ivStore = view.findViewById(R.id.iv_store_name);
......@@ -504,7 +504,7 @@ public class GoogleMapsMerchantActivity extends BaseActivity implements OnMapRea
/**
* 申请权限
* 신청 권한
*/
private void setUpMap() {
if (ActivityCompat.checkSelfPermission(this,
......
......@@ -26,14 +26,14 @@ class CouponTypeFragment : BaseFragment() {
var fragmentOne = MyCouponFragment()
fragmentOne.arguments = Bundle().apply {
putString(ARG_PARAM1, "0")
putString(ARG_PARAM2, "0")//餐馆
putString(ARG_PARAM2, "0")//식당.
}
dataList.add(fragmentOne)
var fragmentTow = UnCouponFragment()
fragmentTow.arguments = Bundle().apply {
putString(ARG_PARAM1, "1")
putString(ARG_PARAM2, "0")//餐馆
putString(ARG_PARAM2, "0")//식당.
}
dataList.add(fragmentTow)
......
......@@ -40,13 +40,13 @@ class FeedbackActivity : BaseActivity(), GridImageAdapter.onAddPicClickListener,
for (media in selectList) {
var path = ""
path = if (media.isCut && !media.isCompressed) {
// 裁剪过
media.cutPath
} else if (media.isCompressed || media.isCut && media.isCompressed) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
media.compressPath
} else {
// 原图
media.path
}
if (path == "") {
......@@ -78,27 +78,25 @@ class FeedbackActivity : BaseActivity(), GridImageAdapter.onAddPicClickListener,
private var themeId = R.style.picture_default_style
override fun onAddPicClick() {
// 进入相册 以下是例子:不需要的api可以不写
PictureSelector.create(this@FeedbackActivity)
.openGallery(PictureMimeType.ofImage())// 全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()、音频.ofAudio()
.theme(themeId)// 主题样式设置 具体参考 values/styles 用法:R.style.picture.white.style
.maxSelectNum(3)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.imageSpanCount(4)// 每行显示个数
.selectionMode(PictureConfig.MULTIPLE)// 多选 or 单选
.previewImage(true)// 是否可预览图片
.isCamera(true)// 是否显示拍照按钮
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
//.imageFormat(PictureMimeType.PNG)// 拍照保存图片格式后缀,默认jpeg
//.setOutputCameraPath("/CustomPath")// 自定义拍照保存路径
.enableCrop(false)// 是否裁剪
.compress(true)// 是否压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.selectionMedia(selectList)// 是否传入已选图片
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(PictureConfig.CHOOSE_REQUEST)//结果回调onActivityResult code
.openGallery(PictureMimeType.ofImage())
.theme(themeId)
.maxSelectNum(3)
.minSelectNum(1)
.imageSpanCount(4)
.selectionMode(PictureConfig.MULTIPLE)
.previewImage(true)
.isCamera(true)
.isZoomAnim(true)
.enableCrop(false)
.compress(true)
.synOrAsy(true)
.glideOverride(160, 160)
.freeStyleCropEnabled(true)
.selectionMedia(selectList)
.minimumCompressSize(100)
.forResult(PictureConfig.CHOOSE_REQUEST)
}
private var adapter: GridImageAdapter? = null
......@@ -142,20 +140,16 @@ class FeedbackActivity : BaseActivity(), GridImageAdapter.onAddPicClickListener,
when (requestCode) {
PictureConfig.CHOOSE_REQUEST -> {
listImage.clear()
// 图片选择结果回调
selectList = PictureSelector.obtainMultipleResult(data)
if (selectList != null) {
tv_img_size.text = getString(R.string.upload_pictures) + "(" + selectList.size + "/3)"
for (media in selectList) {
var path = ""
path = if (media.isCut && !media.isCompressed) {
// 裁剪过
media.cutPath
} else if (media.isCompressed || media.isCut && media.isCompressed) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
media.compressPath
} else {
// 原图
media.path
}
if (path == "") {
......
......@@ -77,13 +77,13 @@ class LogoutActivity : BaseActivity() {
return
}
val language = SPUtil.getInstance(this@LogoutActivity).selectLanguage
if (language == 1) {//韩文
if (language == 1) {//한글
if (title.size > 0) {
val html = "<html><header>$linkCss</header>${content[0]}</body></html>"
WebViewUtil.initWebViewSettings(webView, this@LogoutActivity)
WebViewUtil.loadData(webView, html)
}
} else {//中文
} else {//중국어.
if (title.size > 1) {
val html = "<html><header>$linkCss</header>${content[1]}</body></html>"
WebViewUtil.initWebViewSettings(webView, this@LogoutActivity)
......
......@@ -65,10 +65,10 @@ class MyCollectActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
/**
* 删除
* 삭제 하 다.
*/
tv_collect_delete.setOnClickListener {
//遍历拿到所有选中的收藏uuid
//모든 선택 한 모음 집 가 져 오기 uid
var uuidAll = mutableListOf<String>()
for (i in 0 until listData.size) {
myCollectAdapter?.let {
......@@ -78,7 +78,7 @@ class MyCollectActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
}
//请求服务器删除数据
//서버 데이터 삭제 요청
var map = HashMap<String, Any?>()
map["user_collect_list"] = uuidAll
UserServiceFactory.deleteUserCollect(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
......@@ -90,7 +90,7 @@ class MyCollectActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
/**
* 取消
* 취소 하 다.
*/
tv_collect_collect.setOnClickListener {
myCollectAdapter?.let {
......
......@@ -14,8 +14,8 @@ import io.reactivex.disposables.Disposable
import kotlinx.android.synthetic.main.fragment_select_coupon.*
private const val ARG_PARAM1 = "param1"//0未使用(可用)1,已使用
private const val ARG_PARAM2 = "param2"//0餐馆,1商城
private const val ARG_PARAM1 = "param1"//0 미사 용 (사용 가능) 1, 이미 사용
private const val ARG_PARAM2 = "param2"//0식당.,1상점.
class MyCouponFragment : LazyLoadBaseFragment() {
......
......@@ -36,12 +36,12 @@ class PersonalFragment : BaseFragment(), View.OnClickListener {
}
/**
* 当前Fragment是否可见
* 현재 Fragment 보 이 는 지 여부
*/
private var isViewVisible = false
/**
* 是否与View建立起映射关系
* View 와 맵 관 계 를 맺 을 지 여부
*/
private var isInitView = false
......@@ -125,6 +125,6 @@ class PersonalFragment : BaseFragment(), View.OnClickListener {
@Subscribe(threadMode = ThreadMode.MAIN)
public fun onEvent(event: PersonUpdateEvent) {
requestPersonalInfo()//刷新个人中心信息
requestPersonalInfo()//개인 센터 정보 새로 고침
}
}
......@@ -52,7 +52,7 @@ class PersonalInfoActivity : BaseActivity(), View.OnClickListener {
ARouter.getInstance().build(LoginProtocol.UPDATE_EMAIL).navigation()
isRefreshing = true
}
R.id.ll_personal_password -> {//修改密码
R.id.ll_personal_password -> {//비밀번호 변경
ARouter.getInstance().build(LoginProtocol.UPDATE_PASSWORD).navigation()
isRefreshing = true
}
......@@ -113,47 +113,47 @@ class PersonalInfoActivity : BaseActivity(), View.OnClickListener {
R.id.tv_item_korean -> {
selectListOne.clear()
PictureSelector.create(this@PersonalInfoActivity)
.openCamera(PictureMimeType.ofImage())// 单独拍照,也可录像或也可音频 看你传入的类型是图片or视频
.maxSelectNum(1)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.previewImage(true)// 是否可预览图片
.enableCrop(true)// 是否裁剪
.compress(true)// 是否压缩
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.withAspectRatio(1, 1)// 裁剪比例 如16:9 3:2 3:4 1:1 可自定义
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.circleDimmedLayer(true)// 是否圆形裁剪
.showCropFrame(false)// 是否显示裁剪矩形边框 圆形裁剪时建议设为false
.showCropGrid(false)// 是否显示裁剪矩形网格 圆形裁剪时建议设为false
.selectionMedia(selectListOne)// 是否传入已选图片
.previewEggs(false)//预览图片时 是否增强左右滑动图片体验(图片滑动一半即可看到上一张是否选中)
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(11)//结果回调onActivityResult code
.openCamera(PictureMimeType.ofImage())
.maxSelectNum(1)
.minSelectNum(1)
.previewImage(true)
.enableCrop(true)
.compress(true)
.glideOverride(160, 160)
.withAspectRatio(1, 1)
.freeStyleCropEnabled(true)
.circleDimmedLayer(true)
.showCropFrame(false)
.showCropGrid(false)
.selectionMedia(selectListOne)
.previewEggs(false)
.minimumCompressSize(100)
.forResult(11)
}
R.id.tv_item_chinese -> {
selectListTow.clear()
PictureSelector.create(this@PersonalInfoActivity)
.openGallery(PictureMimeType.ofImage())// 全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()、音频.ofAudio()
.maxSelectNum(1)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.imageSpanCount(4)// 每行显示个数
.selectionMode(PictureConfig.SINGLE)// 多选 or 单选
.previewImage(true)// 是否可预览图片
.isCamera(false)// 是否显示拍照按钮
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
.enableCrop(true)// 是否裁剪
.withAspectRatio(1, 1)// 裁剪比例 如16:9 3:2 3:4 1:1 可自定义
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.circleDimmedLayer(true)// 是否圆形裁剪
.showCropFrame(false)// 是否显示裁剪矩形边框 圆形裁剪时建议设为false
.showCropGrid(false)// 是否显示裁剪矩形网格 圆形裁剪时建议设为false
.compress(true)// 是否压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.selectionMedia(selectListTow)// 是否传入已选图片
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(22)//结果回调onActivityResult code
.openGallery(PictureMimeType.ofImage())
.maxSelectNum(1)
.minSelectNum(1)
.imageSpanCount(4)
.selectionMode(PictureConfig.SINGLE)
.previewImage(true)
.isCamera(false)
.isZoomAnim(true)
.enableCrop(true)
.withAspectRatio(1, 1)
.freeStyleCropEnabled(true)
.circleDimmedLayer(true)
.showCropFrame(false)
.showCropGrid(false)
.compress(true)
.synOrAsy(true)
.glideOverride(160, 160)
.freeStyleCropEnabled(true)
.selectionMedia(selectListTow)
.minimumCompressSize(100)
.forResult(22)
}
}
}
......@@ -168,7 +168,7 @@ class PersonalInfoActivity : BaseActivity(), View.OnClickListener {
if (resultCode == Activity.RESULT_OK) {
when (requestCode) {
11 -> {
// 图片选择结果回调
// 이미지 선택 결과 반전
selectListOne = PictureSelector.obtainMultipleResult(data)
showUpload(selectListOne.get(0))
}
......@@ -184,13 +184,13 @@ class PersonalInfoActivity : BaseActivity(), View.OnClickListener {
val media = localMedia
var path = ""
path = if (media.isCut && !media.isCompressed) {
// 裁剪过
media.cutPath
} else if (media.isCompressed || media.isCut && media.isCompressed) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
media.compressPath
} else {
// 原图
media.path
}
if (path == "") {
......@@ -206,10 +206,10 @@ class PersonalInfoActivity : BaseActivity(), View.OnClickListener {
showLoadingDialog()
val listPath = listOf<String>(path)
//上传到腾讯云
CosUploadUtil.getInstance().uploadPicture(this, listPath, object : CosUploadUtil.ImageUpReturnListener {
override fun uploadSuccess(picUrls: MutableList<String>?) {
//修改头像
var map = HashMap<String, Any?>()
picUrls?.let {
if (it.size>0){
......
......@@ -30,12 +30,12 @@ import kotlinx.android.synthetic.main.activity_queue_details.*
import okhttp3.ResponseBody
/**
* 排队详情
* 대기 자세 한 정보
*/
class QueueDetailsActivity : BaseActivity() {
private var uuid: String? = null
private var type = "0"//0,1,2//三种状态,0排队成功,1排队中,2排队已过号
private var type = "0"//0,1,2//세 가지 상태, 0 줄 서기 성공, 1 줄 서기 중 2 줄 이 지 났 습 니 다.
override fun getLayoutId(): Int {
return R.layout.activity_queue_details
......@@ -43,7 +43,7 @@ class QueueDetailsActivity : BaseActivity() {
private var hotelUUID = ""
private var tablesNumber: Int = 0//前方等待桌数
private var tablesNumber: Int = 0//전방 대기 테이블 수
override fun initComponents() {
addSingleTitleBar(getString(R.string.queuing_details))
......@@ -62,11 +62,11 @@ class QueueDetailsActivity : BaseActivity() {
}
type = t.is_over_number
when (t.is_over_number) {
"0" -> {//排队中
"0" -> {//줄 서 는 중
tv_state.text = getString(R.string.in_the_ine)
btn_cancel.setText(R.string.cancel_queuing)
}
"1" -> {//排队成功
"1" -> {//줄 서기 성공
tv_state.text = getString(R.string.successful_queuing)
iv_start_image.setImageResource(R.mipmap.ic_home_line_up_success)
}
......@@ -89,9 +89,9 @@ class QueueDetailsActivity : BaseActivity() {
}
})
//返回首页
//홈 페이지 로 되돌아가다
btn_cancel.setOnClickListener {
if (type == "0") {//取消排队
if (type == "0") {//줄 서기 취소
showDialog("", getString(R.string.whether_to_cancel_the_queue), object : DKCallBackBoolean {
override fun action(type: Int) {
RestaurantServiceFactory.cancelQueue(hotelUUID).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this@QueueDetailsActivity) {
......@@ -102,21 +102,21 @@ class QueueDetailsActivity : BaseActivity() {
})
}
}, true, true)
} else {//返回首页
} else {//홈 페이지 로 되돌아가다
startActivity(Intent(this@QueueDetailsActivity, HomeActivity::class.java))
}
}
//我要点餐
//주문 할 게 요.
btn_order.setOnClickListener {
if (type == "2") {//重新排队
if (type == "2") {//다시 줄 서기
val intent = Intent(this@QueueDetailsActivity, QueueActivity::class.java)
intent.putExtra(ConstantsRestaurantType.UUID, hotelUUID)
startActivity(intent)
} else {//我要点餐
if (tablesNumber == 0) {//去扫码
} else {//주문 할 게 요.
if (tablesNumber == 0) {//스 캔 을 가다
startActivityForResult(Intent(this@QueueDetailsActivity, CaptureActivity::class.java), ConstantsHomeType.SCAN)
} else {//提示,前方桌数等待为0时候才可以点餐
} else {//안내, 앞 테이블 수 는 0 시 까지 기 다 려 야 주문 할 수 있 습 니 다.
showDialog(getString(R.string.waiting_before_ordering))
}
}
......
......@@ -35,7 +35,7 @@ class SettingActivity : BaseActivity(), CallDialog.OnCenterItemClickListener, Vi
override fun onClick(v: View?) {
when (v?.id) {
R.id.ll_address_manager -> {//跳转到地址管理
R.id.ll_address_manager -> {//주소 관리 로 가기
var intent = Intent(this@SettingActivity, AddressManagerActivity::class.java)
intent.putExtra("inType", 1)
startActivity(intent)
......@@ -68,10 +68,10 @@ class SettingActivity : BaseActivity(), CallDialog.OnCenterItemClickListener, Vi
R.id.ll_setting_language -> {
showBottomDialog()
}
R.id.ll_setting_logout -> {//注销账号
R.id.ll_setting_logout -> {//계 정 탈퇴
startActivity(Intent(this@SettingActivity, LogoutActivity::class.java))
}
R.id.btn_setting_exit -> {//退出账号
R.id.btn_setting_exit -> {//계 정 탈퇴
val builder = CommonDialog.Builder(this)
builder.setTitle(getString(R.string.are_you_sure_to_log_out))
.setPositiveButton(getString(R.string.ok), Color.parseColor("#141414")) { type ->
......@@ -122,7 +122,7 @@ class SettingActivity : BaseActivity(), CallDialog.OnCenterItemClickListener, Vi
requestPhone()
//获取缓存大小并显示
//캐 시 크기 가 져 오고 표시
try {
val totalCacheSize = CleanDataUtils.getTotalCacheSize(this)
tv_cache.text = totalCacheSize
......@@ -161,12 +161,6 @@ class SettingActivity : BaseActivity(), CallDialog.OnCenterItemClickListener, Vi
}
}
/**
* 如果是7.0以下,我们需要调用changeAppLanguage方法,
* 如果是7.0及以上系统,直接把我们想要切换的语言类型保存在SharedPreferences中即可
* 然后重新启动MainActivity
* @param language
*/
private fun changeLanguage(language: String?) {
//ToastUtils.showLong(getString(R.string.switch_success))
//LanguageUtil.setApplicationLanguage(this, language)
......
......@@ -22,7 +22,7 @@ class SystemMessageDetailsActivity : BaseActivity() {
tv_message_title.text = title
tv_message_content.text = content
//刷新状态
//리 셋 상태
UserServiceFactory.updateState(uuid).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
......
......@@ -14,8 +14,8 @@ import io.reactivex.disposables.Disposable
import kotlinx.android.synthetic.main.fragment_select_coupon.*
private const val ARG_PARAM1 = "param1"//0未使用(可用)1,已使用
private const val ARG_PARAM2 = "param2"//0餐馆,1商城
private const val ARG_PARAM1 = "param1"//0 미사 용 (사용 가능) 1, 이미 사용
private const val ARG_PARAM2 = "param2"//식당, 쇼핑 몰
class UnCouponFragment : LazyLoadBaseFragment() {
......
......@@ -46,12 +46,12 @@ import okhttp3.ResponseBody
import java.io.Serializable
/**
* 餐馆评价
* 식당 평가
*/
class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickListener, View.OnClickListener {
private var listImage = mutableListOf<String>()//需要提交的评论图片,上传到腾讯云的图片
private var commitListImage = mutableListOf<String>()//作为参数上传的图片
private var listImage = mutableListOf<String>()//제출 해 야 할 댓 글 사진, 텐 센트 클 라 우 드 에 올 려 주세요.
private var commitListImage = mutableListOf<String>()//매개 변수 로 올 린 이미지
override fun onClick(v: View?) {
......@@ -66,7 +66,7 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
return
}
if (listImage.size == 0) {//没有选择图片
if (listImage.size == 0) {//그림 선택 안 함
commitListImage.clear()
commitEvaluationData(content, commitListImage)
} else {
......@@ -86,7 +86,7 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
}
/**
* 提交评论数据
* 리 뷰 데이터 제출
*/
private fun commitEvaluationData(content: String, picUrls: MutableList<String>?) {
var evaluationCommitEntity = EvaluationCommitEntity()
......@@ -117,25 +117,25 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
override fun onAddPicClick() {
PictureSelector.create(this@FoodEvaluationActivity)
.openGallery(PictureMimeType.ofImage())// 全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()、音频.ofAudio()
.theme(themeId)// 主题样式设置 具体参考 values/styles 用法:R.style.picture.white.style
.maxSelectNum(6)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.imageSpanCount(4)// 每行显示个数
.selectionMode(PictureConfig.MULTIPLE)// 多选 or 单选
.previewImage(true)// 是否可预览图片
.isCamera(true)// 是否显示拍照按钮
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
//.imageFormat(PictureMimeType.PNG)// 拍照保存图片格式后缀,默认jpeg
//.setOutputCameraPath("/CustomPath")// 自定义拍照保存路径
.enableCrop(false)// 是否裁剪
.compress(true)// 是否压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.selectionMedia(selectList)// 是否传入已选图片
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(PictureConfig.CHOOSE_REQUEST)//结果回调onActivityResult code
.openGallery(PictureMimeType.ofImage())
.theme(themeId)
.maxSelectNum(6)
.minSelectNum(1)
.imageSpanCount(4)
.selectionMode(PictureConfig.MULTIPLE)
.previewImage(true)
.isCamera(true)
.isZoomAnim(true)
//.imageFormat(PictureMimeType.PNG)
//.setOutputCameraPath("/CustomPath")
.enableCrop(false)
.compress(true)
.synOrAsy(true)
.glideOverride(160, 160)
.freeStyleCropEnabled(true)
.selectionMedia(selectList)
.minimumCompressSize(100)
.forResult(PictureConfig.CHOOSE_REQUEST)
}
override fun getLayoutId(): Int {
......@@ -178,7 +178,7 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
}
/**
* 请求数据,获取店铺名字和图片
* 데 이 터 를 요청 하고 가게 이름과 그림 을 가 져 옵 니 다.
*/
private fun requestData() {
UserServiceFactory.orderHotelDetail(orderId).subscribe(object : AbstractDialogSubscriber<OrderHotelDetail>(this) {
......@@ -208,7 +208,7 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
if (data == null) {
return
}
// 图片选择结果回调
// 이미지 선택 결과 반전
selectList = PictureSelector.obtainMultipleResult(data)
if (selectList != null) {
......@@ -222,13 +222,13 @@ class FoodEvaluationActivity : BaseActivity(), GridImageAdapter.onAddPicClickLis
val media = selectList.get(i)
var path = ""
path = if (media.isCut && !media.isCompressed) {
// 裁剪过
// 재단 한 적 이 있다
media.cutPath
} else if (media.isCompressed || media.isCut && media.isCompressed) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
// 압축 한 적 이 있 거나, 재단 과 동시에 압축 한 적 이 있 으 며, 최종 적 으로 그림 을 압축 한 적 이 있 는 것 을 기준 으로 한다.
media.compressPath
} else {
// 原图
// 원 도
media.path
}
if (path == "") {
......
......@@ -19,10 +19,10 @@ class FoodOrderActivity : BaseActivity() {
addSingleTitleBar(getString(R.string.food_order))
var dataList = ArrayList<Fragment>()
dataList.add(FoodOrderFragment.newInstance("1"))//1-已支付 / 待上餐/ 待发货);
dataList.add(FoodOrderFragment.newInstance("4"))//4-已完成
dataList.add(FoodOrderFragment.newInstance("11"))//8-已取消(退款成功)
dataList.add(FoodOrderFragment.newInstance("2"))//2-售后订单
dataList.add(FoodOrderFragment.newInstance("1"))//1 - 지불 / 배 송 대기);
dataList.add(FoodOrderFragment.newInstance("4"))//4 - 이미 완성
dataList.add(FoodOrderFragment.newInstance("11"))//8 - 취소 (환불 성공)
dataList.add(FoodOrderFragment.newInstance("2"))//2 - 애 프 터 주문
var titles = ArrayList<String>()
titles.add(getString(R.string.paymented))
......@@ -42,7 +42,7 @@ class FoodOrderActivity : BaseActivity() {
}
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.let {
// 默认切换的时候,会有一个过渡动画,设为false后,取消动画,直接显示
// 기본 값 으로 전환 할 때 하나의 과도 애니메이션 이 있 는데 false 로 설정 한 후에 애니메이션 을 취소 하고 바로 표시 합 니 다.
vp_pager.setCurrentItem(tab.position, false)
vp_pager.currentItem = tab.position
}
......
......@@ -28,7 +28,7 @@ import java.text.DecimalFormat
class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialog.OnCenterItemClickListener {
override fun OnCenterItemClick(dialog: CallListDialog?, view: View?) {
when (view?.id) {
R.id.btn_commit -> {//餐馆申请售后
R.id.btn_commit -> {//식당 에서 애프터서비스 를 신청 하 다.
var reason = dialog?.reason
var reasonUUID = dialog?.reasonUUID
if (reason == "") {
......@@ -59,8 +59,8 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
var orderHotelDetail: OrderHotelDetail? = null
override fun onClick(v: View?) {
when (v?.id) {
R.id.tv_order_again -> {//点击再来一单
//先删除已有的
R.id.tv_order_again -> {//클릭 하여 하나 더 추가
//기 존 것 부터 삭제
val entities = LitePal.where("storeUUid=? ", mStoreUUID).find(FoodEntity::class.java)
entities?.let {
for (i in 0 until entities.size) {
......@@ -68,7 +68,7 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
foodEntity.delete()
}
}
//获取当前数据,存储到本地数据库
//현재 데 이 터 를 가 져 와 로 컬 데이터베이스 에 저장 합 니 다.
orderHotelDetail?.let {
for (i in 0 until it.orders_goods_list.size) {
var shopBean = it.orders_goods_list.get(i)
......@@ -98,10 +98,10 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
startActivity(Intent(this@OrderDetailsActivity, FoodEvaluationActivity::class.java).putExtra("order_id", uuid))
setResetAllButton()
}
R.id.tv_order_appeal -> {//申请售后
R.id.tv_order_appeal -> {//A / S 를 신청 하 다
listDialog?.show()
}
R.id.tv_order_cancel_apply -> {//取消申诉
R.id.tv_order_cancel_apply -> {//신 고 를 취소 하 다.
showDialog("", getString(R.string.is_cancel_apply), object : DKCallBackBoolean {
override fun action(type: Int) {
var map = HashMap<String, Any?>()
......@@ -202,7 +202,7 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
showRefund(orders_after_sale_vo)
}
3 -> getString(R.string.to_be_received)
4 -> {//以上餐
4 -> {//이상 의 식사
tv_order_again.visibility = View.VISIBLE
appealButtonStatus(pay_type, is_after_sale)
}
......@@ -245,24 +245,24 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
tv_details_restaurant_name.text = hotel_name
if (!(order_status == 11 || order_status == 12 || order_status == 2)) {
if (is_comment == 0) {//未评论
if (is_comment == 0) {//미 평론
tv_order_evaluation.visibility = View.VISIBLE
} else {//已评论
} else {//이미 평론 하 다.
tv_order_evaluation.visibility = View.GONE
}
}
payType = pay_type
if (pay_type == 2) {//邮票支付
if (pay_type == 2) {//우표 지불
tv_details_restaurant_total_price.text = UIUtile.stringToStamp(should_pay_price)
tv_details_restaurant_actual_price.text = UIUtile.stringToStamp(real_pay_price)
//隐藏优惠券抵扣
//쿠폰 할인 숨 기기
ll_coupon.visibility = View.GONE
} else {
tv_details_restaurant_total_price.text = UIUtile.stringToPrice(should_pay_price)
tv_details_restaurant_actual_price.text = UIUtile.stringToPrice(real_pay_price)
//优惠券抵扣
//쿠폰 할인
tv_details_restaurant_deduction_price.text = "-" + UIUtile.stringToPrice(coupon_price)
}
}
......@@ -272,7 +272,7 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
private fun appealButtonStatus(payType: Int, is_after_sale: Int) {
val currentTime = System.currentTimeMillis()
if (!UIUtile.isBeyond(currentTime, createTime)) {//超过的二十四小时,不显示订单申诉
if (!UIUtile.isBeyond(currentTime, createTime)) {//24 시간 이 넘 으 면, 주문 신고 가 표시 되 지 않 는 다.
if (payType != 2) {
if (is_after_sale == 0) {
tv_order_appeal.visibility = View.VISIBLE
......@@ -287,7 +287,7 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
/**
* 重置所有按钮状态
* 모든 버튼 상태 초기 화
*/
private fun setResetAllButton() {
tv_order_again.visibility = View.GONE
......@@ -306,7 +306,7 @@ class OrderDetailsActivity : BaseActivity(), View.OnClickListener, CallListDialo
tv_apply_time.text = it.create_time
tv_reason.text = it.refund_reason
if (payType == 2) {//邮票支付
if (payType == 2) {//우표 지불
tv_money.text = UIUtile.stringToStamp(it.refund_price)
} else {
tv_money.text = UIUtile.stringToPrice(it.refund_price)
......
package cn.dankal.client.ui.personal.order.food;
import java.text.DecimalFormat;
/**
* Created by zhengpeng on 2019/9/24.
*/
public class Test {
public static void main(String[] args) {
Double s = Double.valueOf(new DecimalFormat("#").format(Double.valueOf(10.0)));
System.out.println("输出值->"+s);
}
}
......@@ -37,12 +37,12 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
return
}
when (v?.id) {
R.id.ll_consult -> {//协商历史
R.id.ll_consult -> {//역사 협상
startActivity(Intent(this@AfterSaleInfoActivity, LogisticsActivity::class.java)
.putExtra("after_sale_uuid", afterSaleUuid)
.putExtra("cause", refundReason))
}
R.id.tv_btn_cancel -> {//撤销申请
R.id.tv_btn_cancel -> {//신청 을 취소 하 다
showDialogStateOne(getString(R.string.do_you_want_to_cancel_the_refund_application), {
UserServiceFactory.orderAfterSaleRepeal(afterSaleUuid, orderUuid).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this@AfterSaleInfoActivity) {
override fun onNext(t: ResponseBody) {
......@@ -57,7 +57,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
it.dismiss()
}
//发送消息,刷新售后列表
//소식 발송, 애 프 터 리스트 리 셋
EventBus.getDefault().post(UpdateSaleAfterEvent())
startActivity(Intent(this@AfterSaleInfoActivity, AfterSaleInfoActivity::class.java).putExtra("after_sale_uuid", afterSaleUuid))
finish()
......@@ -70,17 +70,17 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
})
}, true)
}
R.id.tv_btn_update -> {//修改申请
R.id.tv_btn_update -> {//신청 을 수정 하 다
val intent = Intent(this@AfterSaleInfoActivity, ApplyAfterSaleTowActivity::class.java)
val bundle = Bundle()
bundle.putString("after_sale_uuid", afterSaleUuid)
bundle.putInt("type", 1)
bundle.putSerializable("entity", entity)
intent.putExtras(bundle)
startActivity(intent)//修改
startActivity(intent)//고치다.
finish()
}
R.id.tv_btn_service -> {//联系客服
R.id.tv_btn_service -> {//고객 지원 을 연락 하 다.
showDialogStateOne(getString(R.string.whether_to_dial) + "\n" + phone, {
UserServiceFactory.orderAfterSaleRepeal(afterSaleUuid, orderUuid).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this@AfterSaleInfoActivity) {
override fun onNext(t: ResponseBody) {
......@@ -128,7 +128,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求售后详情
* A / S 요청 상세
*/
private fun requestData() {
var map = HashMap<String, Any?>()
......@@ -138,7 +138,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
entity = t
t.let {
when (t.refund_status) {
0 -> {//待审核
0 -> {//심 사 를 기다리다
tv_tip_text_one.visibility = View.VISIBLE
tv_tip_title.visibility = View.VISIBLE
......@@ -150,15 +150,15 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
tv_tip_title.text = getString(R.string.you_have_successfully_initiated_a_refund_applicatiplease_be_patient_and_wait_for_the_merchant_to_process_it)
tv_tip_text_one.text = getString(R.string.tip_merchant_refuses)
//处理倒计时
val total: kotlin.Long = 60 * 60 * 24 * 7//总时间3天
//처리 초읽기
val total: kotlin.Long = 60 * 60 * 24 * 7//총 3 일
val createTime = UIUtile.dateToStamp(it.create_time) / 1000//获取创建时间的时间戳
val showTime = System.currentTimeMillis() / 1000 - createTime//得到时间差值
val createTime = UIUtile.dateToStamp(it.create_time) / 1000//생 성 시간의 스탬프 가 져 오기
val showTime = System.currentTimeMillis() / 1000 - createTime//시간 차 를 얻다
if (showTime < total + 1) {
val countDown = total - showTime
//倒计时显示
//카운트다운 표시
flowable = Flowable.intervalRange(1, countDown, 0, 1, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.doOnNext { aLong ->
......@@ -172,7 +172,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
tv_remaining_time.text = getString(R.string.left) + 0 + getString(R.string.day) + 0 + getString(R.string.hour) + 0 + getString(R.string.branch) + 0 + getString(R.string.second) + getString(R.string.merchant_does_not_process)
}
}
1 -> {//审核通过
1 -> {//심사 에 통과 하 다
tv_tip_text_one.visibility = View.VISIBLE
tv_tip_text_tow.visibility = View.VISIBLE
......@@ -185,7 +185,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
tv_tip_text_one.text = getString(R.string.your_refund_application_has_been_successful)
tv_tip_text_tow.text = getString(R.string.please_wait_for_business_refund_to_return_to_your_account)
}
2 -> {//审核拒绝
2 -> {//심사 하여 거절 하 다.
tv_tip_text_one.visibility = View.VISIBLE
tv_tip_title.visibility = View.VISIBLE
......@@ -194,7 +194,7 @@ class AfterSaleInfoActivity : BaseActivity(), View.OnClickListener {
tv_tip_title.text = getString(R.string.your_refund_application_has_not_been_approved_and_the_refund_has_been_closed)
tv_tip_text_one.text = getString(R.string.your_application_is_not_in_conformity_with_the_actual_situation)
}
3 -> {//撤销申请
3 -> {//신청 을 취소 하 다
tv_tip_title.visibility = View.VISIBLE
tv_after_close.visibility = View.VISIBLE
ll_refund_information.visibility = View.VISIBLE
......
......@@ -18,11 +18,11 @@ class ApplyAfterSaleActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.cl_only_one -> {//仅退款
R.id.cl_only_one -> {//환불 만 가능
orderStatus = 6
toPage()
}
R.id.cl_only_tow -> {//退货退款
R.id.cl_only_tow -> {//반품 환불
orderStatus = 7
toPage()
}
......
......@@ -35,9 +35,9 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
private var reason: String? = ""
private var reasonUUID: String? = ""
var afterSaleUuid: String = ""//售后id
var afterSaleUuid: String = ""//애 프 터 id
private val listImage = mutableListOf<String>()//上传到腾讯云的图片
private val listImage = mutableListOf<String>()//텐 센트 클 라 우 드 에 올 린 사진 입 니 다.
private val commitListImage = mutableListOf<String>()
override fun OnCenterItemClick(dialog: CallListDialog?, view: View?) {
......@@ -71,12 +71,12 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
return
}
if (listImage.size == 0) {//只上传内容
if (listImage.size == 0) {//내용 만 올 리 기
commitListImage.clear()
commitRequest(commitListImage)
} else {
showLoadingDialog()
//上传图片到腾讯云
//텐 센트 클 라 우 드 에 사진 올 리 기
CosUploadUtil.getInstance().uploadPicture(this, listImage, object : CosUploadUtil.ImageUpReturnListener {
override fun uploadSuccess(picUrls: MutableList<String>?) {
commitRequest(picUrls)
......@@ -99,7 +99,7 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
val afterCause = et_after_cause.text.toString()
//申请售后
//A / S 를 신청 하 다
var map = HashMap<String, Any?>()
map["img_list"] = picUrls
map["order_goods_uuid"] = it.uuid
......@@ -150,31 +150,31 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
private var listDialog: CallListDialog? = null//订单售后理由
override fun onAddPicClick() {
// 进入相册 以下是例子:不需要的api可以不写
PictureSelector.create(this@ApplyAfterSaleTowActivity)
.openGallery(PictureMimeType.ofImage())// 全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()、音频.ofAudio()
.theme(themeId)// 主题样式设置 具体参考 values/styles 用法:R.style.picture.white.style
.maxSelectNum(4)// 最大图片选择数量
.minSelectNum(1)// 最小选择数量
.imageSpanCount(4)// 每行显示个数
.selectionMode(PictureConfig.MULTIPLE)// 多选 or 单选
.previewImage(true)// 是否可预览图片
.isCamera(true)// 是否显示拍照按钮
.isZoomAnim(true)// 图片列表点击 缩放效果 默认true
.enableCrop(false)// 是否裁剪
.compress(true)// 是否压缩
.synOrAsy(true)//同步true或异步false 压缩 默认同步
.glideOverride(160, 160)// glide 加载宽高,越小图片列表越流畅,但会影响列表图片浏览的清晰度
// .isGif(cb_isGif.isChecked())// 是否显示gif图片
.freeStyleCropEnabled(true)// 裁剪框是否可拖拽
.selectionMedia(selectList)// 是否传入已选图片
.minimumCompressSize(100)// 小于100kb的图片不压缩
.forResult(PictureConfig.CHOOSE_REQUEST)//结果回调onActivityResult code
.openGallery(PictureMimeType.ofImage())
.theme(themeId)
.maxSelectNum(4)
.minSelectNum(1)
.imageSpanCount(4)
.selectionMode(PictureConfig.MULTIPLE)
.previewImage(true)
.isCamera(true)
.isZoomAnim(true)
.enableCrop(false)
.compress(true)
.synOrAsy(true)
.glideOverride(160, 160)
// .isGif(cb_isGif.isChecked())
.freeStyleCropEnabled(true)
.selectionMedia(selectList)
.minimumCompressSize(100)
.forResult(PictureConfig.CHOOSE_REQUEST)
}
private var selectList: List<LocalMedia> = ArrayList<LocalMedia>()
private var type = 0//判断类型,0,提交售后 1、申请售后
private var type = 0//판단 유형, 0, 제출 애 프 터 1, 신청 애 프 터
override fun getLayoutId(): Int {
return R.layout.activity_apply_after_sale_tow
......@@ -203,14 +203,14 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
val mediaType = PictureMimeType.pictureToVideo(pictureType)
when (mediaType) {
1 ->
// 预览图片 可自定长按保存路径
// 미리 보기 그림 은 저장 경로 에 따라 자동 으로 길 게 설정 할 수 있 습 니 다.
//PictureSelector.create(MainActivity.this).themeStyle(themeId).externalPicturePreview(position, "/custom_file", selectList);
PictureSelector.create(this@ApplyAfterSaleTowActivity).themeStyle(themeId).openExternalPreview(position, selectList)
2 ->
// 预览视频
// 영상 미리 보기
PictureSelector.create(this@ApplyAfterSaleTowActivity).externalPictureVideo(media.getPath())
3 ->
// 预览音频
// 오디 오 미리 보기
PictureSelector.create(this@ApplyAfterSaleTowActivity).externalPictureAudio(media.getPath())
}
}
......@@ -218,14 +218,11 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
}
}
/**
* 初始化数据
*/
private fun initData() {
var bundle = intent.extras
type = bundle.getInt("type")
if (type == 0) {//提交售后
if (type == 0) {//애프터서비스 를 제출 하 다.
entity = bundle.getSerializable("shop") as MallOrderDetailEntity.OrdersGoodsListBean?
storeName = bundle.getString("store_name")
orderStatus = bundle.getInt("orderStatus")
......@@ -245,7 +242,7 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
tv_shop_refund_money.text = UIUtile.stringToPriceTow(it.real_price)
tv_shop_refund_more_money.text = UIUtile.stringToPrice(it.real_price)
}
} else {//修改售后
} else {//애프터서비스 를 수정 하 다.
afterSaleUuid = bundle.getString("after_sale_uuid", "")
var afterInfoEntity: AfterInfoEntity = bundle.getSerializable("entity") as AfterInfoEntity
afterInfoEntity?.let {
......@@ -273,7 +270,7 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
if (data == null) {
return
}
// 图片选择结果回调
// 이미지 선택 결과 반전
selectList = PictureSelector.obtainMultipleResult(data)
if (selectList != null && selectList.isNotEmpty()) {
tv_img_count.text = "${selectList.size}/4"
......@@ -283,13 +280,13 @@ class ApplyAfterSaleTowActivity : BaseActivity(), GridImageAdapter.onAddPicClick
for (media in selectList) {
var path = ""
path = if (media.isCut && !media.isCompressed) {
// 裁剪过
media.cutPath
} else if (media.isCompressed || media.isCut && media.isCompressed) {
// 压缩过,或者裁剪同时压缩过,以最终压缩过图片为准
media.compressPath
} else {
// 原图
media.path
}
if (path == "") {
......
......@@ -47,16 +47,16 @@ class EvaluationActivity : BaseActivity() {
var listData = it.selectResult
//循环遍历获取所有的图片
//모든 그림 을 반복 해서 가 져 옵 니 다.
val listAllImage = mutableListOf<String>()
uploadImage.forEach { it ->
listAllImage.addAll(it.value)
}
if (listAllImage.size == 0) {//用户并没有选择图片
if (listAllImage.size == 0) {//사용자 가 그림 을 선택 하지 않 았 습 니 다
UserServiceFactory.userComment(listData).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this@EvaluationActivity) {
override fun onNext(t: ResponseBody) {
ToastUtils.showShort(getString(R.string.successful_comments))
//跳转到评价成功结果页
//평가 성공 결과 쪽으로 가기
val intent = Intent(this@EvaluationActivity, MallPayResultActivity::class.java)
var bundle = Bundle()
bundle.putInt("type", 3)
......@@ -67,7 +67,7 @@ class EvaluationActivity : BaseActivity() {
ActivityManager.getInstance().finishIndexActivity(2)
}
})
} else {//有图片
} else {//그림 이 있어 요.
showLoadingDialog()
CosUploadUtil.getInstance().uploadPicture(this, listAllImage, object : CosUploadUtil.ImageUpReturnListener {
override fun uploadSuccess(picUrls: MutableList<String>?) {
......@@ -91,7 +91,7 @@ class EvaluationActivity : BaseActivity() {
UserServiceFactory.userComment(listData).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this@EvaluationActivity) {
override fun onNext(t: ResponseBody) {
ToastUtils.showShort(getString(R.string.successful_comments))
//跳转到评价成功结果页
//평가 성공 결과 쪽으로 가기
val intent = Intent(this@EvaluationActivity, MallPayResultActivity::class.java)
var bundle = Bundle()
bundle.putInt("type", 3)
......@@ -133,7 +133,7 @@ class EvaluationActivity : BaseActivity() {
if (data == null) {
return
}
// 图片选择结果回调
// 이미지 선택 결과 반전
selectList = PictureSelector.obtainMultipleResult(data)
adapter?.let {
it.setList(it.mPosition, selectList)
......
......@@ -49,7 +49,7 @@ public class ExpressActivity extends BaseActivity {
initView();
addSingleTitleBar(getString(R.string.logistics_details));
//请求物流key
//물류 키 요청
requestLogistic();
//sendByOKHttp();
}
......@@ -75,7 +75,7 @@ public class ExpressActivity extends BaseActivity {
});
}
//开始请求数据
//시작 요청 데이터
private void requestData(String logistics) {
Bundle bundle = getIntent().getExtras();
......
......@@ -63,7 +63,7 @@ class LeaveMessageActivity : BaseActivity(), OnRefreshLoadMoreListener {
map["orderUuid"] = uuid
map["pageSize"] = 10
requestLeaveNotesList()//初始化数据
requestLeaveNotesList()//데 이 터 를 초기 화 하 다.
adapter = LeaveMessageAdapter(this, R.layout.item_leave_message, mData)
rv_leave_message.layoutManager = LinearLayoutManager(this)
......@@ -114,7 +114,7 @@ class LeaveMessageActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
/**
* 提交留言
* 메 시 지 를 남기다
*/
private fun commitLeave(content: String) {
var parameter = HashMap<String, Any?>()
......@@ -132,7 +132,7 @@ class LeaveMessageActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
/**
* 请求留言记录
* 메모 요청
*/
private fun requestLeaveNotesList() {
map["pageIndex"] = page
......@@ -158,7 +158,7 @@ class LeaveMessageActivity : BaseActivity(), OnRefreshLoadMoreListener {
}
/**
* 关闭软键盘
* 소프트 키 패드 닫 기
*
* @param mEditText输入框
* @param mContext上下文
......
......@@ -10,7 +10,7 @@ import cn.dankal.client.adapter.shop.LogisticsAdapter
import kotlinx.android.synthetic.main.activity_logistics.*
/**
* 协商历史
* 역사 협상
*/
class LogisticsActivity : BaseActivity() {
override fun getLayoutId(): Int {
......
......@@ -45,7 +45,7 @@ class MallOrderActivity : BaseActivity() {
}
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.let {
// 默认切换的时候,会有一个过渡动画,设为false后,取消动画,直接显示
// 기본 값 으로 전환 할 때 하나의 과도 애니메이션 이 있 는데 false 로 설정 한 후에 애니메이션 을 취소 하고 바로 표시 합 니 다.
vp_pager.setCurrentItem(tab.position, false)
vp_pager.currentItem = tab.position
}
......
......@@ -38,7 +38,7 @@ import kotlinx.android.synthetic.main.activity_mall_order_details.*
import okhttp3.ResponseBody
/**
* 待发货、卖家已发货,待收货
* 배 송 대기, 판매자 가 이미 화물 을 발송 하여 수령 대기
*/
class MallOrderDetailsActivity : BaseActivity(), View.OnClickListener, CallDialog.OnCenterItemClickListener,
CallListDialog.OnCenterItemClickListener,
......@@ -56,7 +56,7 @@ class MallOrderDetailsActivity : BaseActivity(), View.OnClickListener, CallDialo
private var isLogisticsInfo = true
/**
* 列表对话框
* 목록 대화 상자
*/
override fun OnCenterItemClick(dialog: CallListDialog?, view: View?) {
when (view?.id) {
......@@ -66,7 +66,7 @@ class MallOrderDetailsActivity : BaseActivity(), View.OnClickListener, CallDialo
if (reason == "") {
ToastUtils.showShort(getString(R.string.please_choose_the_reason_for_canceling_the_order))
return
} else {//取消商城订单
} else {//상점 주문 취소
var map = HashMap<String, Any?>()
map["order_uuid"] = orderUUid
map["reason"] = reasonUUID
......@@ -74,7 +74,7 @@ class MallOrderDetailsActivity : BaseActivity(), View.OnClickListener, CallDialo
override fun onNext(t: ResponseBody) {
ToastUtils.showShort(getString(R.string.cancellation_successful))
finish()
//刷新状态
//리 셋 상태
startActivity(Intent(this@MallOrderDetailsActivity, MallOrderDetailsCancelActivity::class.java).putExtra(ConstantsRestaurantType.UUID, orderUUid))
}
})
......
......@@ -13,7 +13,7 @@ import cn.dankal.client.util.UIUtile
import kotlinx.android.synthetic.main.activity_mall_order_cancel_details.*
/**
* 待发货、卖家已发货
* 출하 대기, 판매자 이미 발송
*/
class MallOrderDetailsCancelActivity : BaseActivity() {
private var uuid: String? = null
......@@ -41,7 +41,7 @@ class MallOrderDetailsCancelActivity : BaseActivity() {
/**
* 请求数据
* 요청 데이터
*/
private fun requestPageData() {
UserServiceFactory.orderStoreDetail(uuid).subscribe(object : AbstractDialogSubscriber<MallOrderDetailEntity>(this) {
......@@ -65,7 +65,7 @@ class MallOrderDetailsCancelActivity : BaseActivity() {
else -> ""
}
if (order_status == 5) {//已取消,显示取消原因
if (order_status == 5) {//취소, 취소 원인 표시
ll_cause.visibility = View.VISIBLE
tv_order_cancel_cause.text = cancel_reason
} else {
......
......@@ -21,7 +21,7 @@ import kotlinx.android.synthetic.main.activity_mall_order_complete_details.*
/**
* 交易完成
* 거래 가 끝나다
*/
class MallOrderDetailsCompleteActivity : BaseActivity(), View.OnClickListener, LogisticsDialog.OnCenterItemClickListener {
......@@ -48,14 +48,14 @@ class MallOrderDetailsCompleteActivity : BaseActivity(), View.OnClickListener, L
override fun onClick(v: View?) {
when (v?.id) {
R.id.tv_evaluation -> {//评价
R.id.tv_evaluation -> {//평가 하 다.
var intent = Intent(this@MallOrderDetailsCompleteActivity, EvaluationActivity::class.java)
var bundle = Bundle()
bundle.putSerializable("shop_list", shopOrderEntity)
intent.putExtras(bundle)
startActivity(intent)
}
R.id.ll_mall_logistics -> {//物流
R.id.ll_mall_logistics -> {//물류
if (isLogisticsInfo) {
val bundle = Bundle()
bundle.putString(ExpressActivity.LOGISTICS_NAME, mLogisticsName)
......@@ -66,7 +66,7 @@ class MallOrderDetailsCompleteActivity : BaseActivity(), View.OnClickListener, L
ToastUtils.showShort(getString(R.string.no_logistics_information_yet))
}
}
R.id.tv_see_evaluation -> {//查看评论
R.id.tv_see_evaluation -> {//댓 글 을 보다
startActivity(Intent(this, MallEvaluateDetailsActivity::class.java)
.putExtra(ConstantsShopType.GOODS_UUID, uuid))
}
......@@ -94,7 +94,7 @@ class MallOrderDetailsCompleteActivity : BaseActivity(), View.OnClickListener, L
/**
* 请求数据
* 요청 데이터
*/
private fun requestPageData() {
UserServiceFactory.orderStoreDetail(uuid).subscribe(object : AbstractDialogSubscriber<MallOrderDetailEntity>(this) {
......@@ -124,9 +124,9 @@ class MallOrderDetailsCompleteActivity : BaseActivity(), View.OnClickListener, L
mLogisticsName = if (logistics_name != null) logistics_name else ""
mLogisticsCode = if (logistics_code != null) logistics_code else ""
if (is_comment == 0) {//未评价显示评价按钮
if (is_comment == 0) {//평가 없 음 평가 버튼
tv_evaluation.visibility = View.VISIBLE
} else {//显示查看评价按钮
} else {//보기 평가 버튼 보이 기
tv_see_evaluation.visibility = View.VISIBLE
}
......
......@@ -34,7 +34,7 @@ import java.util.*
import java.util.concurrent.TimeUnit
/**
* 待支付
* 미 지급
*/
class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallListDialog.OnCenterItemClickListener {
......@@ -45,7 +45,7 @@ class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallLi
if (reason == "") {
ToastUtils.showShort(getString(R.string.please_choose_the_reason_for_canceling_the_order))
return
} else {//取消商城订单
} else {//상점 주문 취소
var map = HashMap<String, Any?>()
map["order_uuid"] = uuid
map["reason"] = reason
......@@ -69,7 +69,7 @@ class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallLi
private var mDisposable: Disposable? = null
private var listDialog: CallListDialog? = null//选择取消理由
private var listDialog: CallListDialog? = null//취소 사유 선택
var mListData = mutableListOf<MallOrderDetailEntity.OrdersGoodsListBean>()
......@@ -77,13 +77,13 @@ class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallLi
override fun onClick(v: View?) {
when (v?.id) {
R.id.tv_cancel_order -> {//取消订单
R.id.tv_cancel_order -> {//주문 취소
listDialog?.let {
it.show()
}
}
R.id.tv_order_pay -> {//立即支付
//刷新购物车
R.id.tv_order_pay -> {//즉시 지불 하 다.
//카 트 리 셋
EventBus.getDefault().postSticky(UpdateCarEvent())
var map = HashMap<String, Any?>()
map["order_uuid"] = uuid
......@@ -122,7 +122,7 @@ class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallLi
/**
* 请求数据
* 요청 데이터
*/
private fun requestPageData() {
UserServiceFactory.orderStoreDetail(uuid).subscribe(object : AbstractDialogSubscriber<MallOrderDetailEntity>(this) {
......@@ -157,14 +157,14 @@ class MallOrderDetailsPayActivity : BaseActivity(), View.OnClickListener, CallLi
tv_receipt_phone.text = phone
tv_receipt_address.text = address
val total: kotlin.Long = 15 * 60//总时间15分钟
val total: kotlin.Long = 15 * 60//총 시간 15 분
val createTime = UIUtile.dateToStamp(create_time) / 1000//获取创建时间的时间戳
val showTime = System.currentTimeMillis() / 1000 - createTime//得到时间差值
val createTime = UIUtile.dateToStamp(create_time) / 1000//생 성 시간의 스탬프 가 져 오기
val showTime = System.currentTimeMillis() / 1000 - createTime//시간 차 를 얻다
if (showTime < total + 1) {
val countDown = total - showTime
//倒计时显示
//카운트다운 표시
flowable = Flowable.intervalRange(1, countDown, 0, 1, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.doOnNext { aLong ->
......
......@@ -48,7 +48,7 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
if (reason == "") {
ToastUtils.showShort(getString(R.string.please_choose_the_reason_for_canceling_the_order))
return
} else {//取消商城订单
} else {//상점 주문 취소
var map = HashMap<String, Any?>()
map["order_uuid"] = mDataList[mPosition].uuid
map["reason"] = reasonUUID
......@@ -56,7 +56,7 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
UserServiceFactory.orderStoreCancel(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
ToastUtils.showShort(getString(R.string.cancellation_successful))
requestDataList(true)//刷新界面
requestDataList(true)//화면 새로 고침
}
})
}
......@@ -96,14 +96,14 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
adapter?.setOnItemChildClickListener { adapter, view, position ->
when (view.id) {
R.id.tv_store_order_cancel -> {//取消订单
R.id.tv_store_order_cancel -> {//주문 취소
listDialog?.let {
it.show()
mPosition = position
}
}
R.id.tv_store_order_pay -> {//支付
//刷新购物车
R.id.tv_store_order_pay -> {//지불 하 다.
//카 트 리 셋
EventBus.getDefault().postSticky(UpdateCarEvent())
var map = HashMap<String, Any?>()
map["order_uuid"] = mDataList[mPosition].uuid
......@@ -114,7 +114,7 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
}
})
}
R.id.tv_store_order_sure -> {//确认收货
R.id.tv_store_order_sure -> {//수령 확인
showDialog("", getString(R.string.do_you_want_to_confirm_receipt), {
UserServiceFactory.finishMallOrder(mDataList[mPosition].uuid).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
......@@ -124,31 +124,31 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
})
}, true, true)
}
R.id.tv_store_evaluate -> {//评价
R.id.tv_store_evaluate -> {//평가 하 다.
requestShopData(mDataList[mPosition].uuid)
}
R.id.rv_item_mall_order -> {
when (mDataList[position].order_status) {
0 -> {
//"待支付"
//"미 지급"
startActivity(Intent(activity, MallOrderDetailsPayActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
1 -> {
//"已支付"
//"지불 됨"
startActivity(Intent(activity, MallOrderDetailsActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
2 -> {
startActivity(Intent(activity, MallOrderDetailsCancelActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
3 -> {
//"待收货"
//"수령 대기 화물"
startActivity(Intent(activity, MallOrderDetailsActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
4 -> { //"已完成"
4 -> { //"완료 됨"
startActivity(Intent(activity, MallOrderDetailsCompleteActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
5 -> {
//"已取消"
//"취소 됨"
startActivity(Intent(activity, MallOrderDetailsCancelActivity::class.java).putExtra(ConstantsRestaurantType.UUID, mDataList[position].uuid))
}
6 -> {
......@@ -187,7 +187,7 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
}
private var isCreate = false
private var isLoading = false//是否进行网络请求
private var isLoading = false//네트워크 요청 여부
override fun setUserVisibleHint(isVisibleToUser: Boolean) {
super.setUserVisibleHint(isVisibleToUser)
......@@ -198,7 +198,6 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
if (isCreate && userVisibleHint && !isLoading) {
isLoading = true
requestDataList(true)
// Log.i("aaaaaaaaaaa","调用了"+this@MallOrderFragment.toString())
}
}
......@@ -276,17 +275,17 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
request.appId = WxConstants.WX_APP_ID//appid
request.partnerId = payEntity.partner_id//商户号
request.partnerId = payEntity.partner_id//상점 번호
request.prepayId = payEntity.prepay_id//预支付交易会话ID
request.prepayId = payEntity.prepay_id//선불 거래 세 션 ID
request.packageValue = payEntity.package_str//扩展字段
request.packageValue = payEntity.package_str//확장 필드
request.nonceStr = payEntity.nonce_str//随机字符串
request.nonceStr = payEntity.nonce_str//임 의 문자열
request.timeStamp = payEntity.time_stamp
request.sign = payEntity.sign//签名
request.sign = payEntity.sign//서명 하 다.
api.sendReq(request)
}
......@@ -303,14 +302,14 @@ class MallOrderFragment : BaseFragment(), OnRefreshLoadMoreListener, CallListDia
}
/**
* 微信支付回调
* 위 챗 결 제 를 반송 하 다.
*/
@org.greenrobot.eventbus.Subscribe(threadMode = ThreadMode.MAIN)
public fun updatePlayStatus(entity: PlayStatusEntity?) {
if (entity != null) {
if (entity.type == 0) {//支付失败
if (entity.type == 0) {//지불 실패
ToastUtils.showShort(getString(R.string.failure_to_pay))
} else {//支付成功
} else {//지불 성공
ToastUtils.showShort(getString(R.string.successful_payment))
}
}
......
......@@ -70,7 +70,7 @@ public class AddAddressActivity extends BaseActivity {
private ArrayAdapter arrayAdapter;
private static boolean isDefault = false;//是否已经设置成默认地址
private static boolean isDefault = false;//기본 주소 로 설정 하 였 는 지 여부
private PopupWindow popupWindow;
......@@ -90,10 +90,10 @@ public class AddAddressActivity extends BaseActivity {
uuid = getIntent().getStringExtra(UUID);
}
if (!TextUtils.isEmpty(uuid)) {//地址详情
if (!TextUtils.isEmpty(uuid)) {//주소 상세
addSingleTitleBar(getString(R.string.address_details));
requestAddressData(uuid);
} else {//新建地址
} else {//새 주소
addSingleTitleBar(getString(R.string.new_Address));
}
......@@ -105,7 +105,7 @@ public class AddAddressActivity extends BaseActivity {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//调用接口去搜索韩国的地址
//인 터 페 이 스 를 이용 하여 한국 의 주 소 를 검색 하 다.
if (!isSearch) {
isSearch = true;
return;
......@@ -136,7 +136,7 @@ public class AddAddressActivity extends BaseActivity {
if (actionId == EditorInfo.IME_ACTION_SEND
|| actionId == EditorInfo.IME_ACTION_DONE
|| (event != null && KeyEvent.KEYCODE_ENTER == event.getKeyCode() && KeyEvent.ACTION_DOWN == event.getAction())) {
//处理事件
//사건 을 처리 하 다
}
return true;
});
......@@ -160,7 +160,7 @@ public class AddAddressActivity extends BaseActivity {
if (actionId == EditorInfo.IME_ACTION_SEND
|| actionId == EditorInfo.IME_ACTION_DONE
|| (event != null && KeyEvent.KEYCODE_ENTER == event.getKeyCode() && KeyEvent.ACTION_DOWN == event.getAction())) {
//处理事件
//사건 을 처리 하 다
}
return true;
});
......@@ -199,7 +199,7 @@ public class AddAddressActivity extends BaseActivity {
/**
* 绑定数据
* 바 인 딩 데이터
*
* @param uuid
*/
......@@ -276,7 +276,7 @@ public class AddAddressActivity extends BaseActivity {
map.put("is_default", 0);
}
if (TextUtils.isEmpty(uuid)) {//添加
if (TextUtils.isEmpty(uuid)) {//첨가 하 다.
AddressServiceFactory.addAddress(map).subscribe(new AbstractDialogSubscriber<AddressEntity>(this) {
@Override
public void onNext(AddressEntity addressEntity) {
......@@ -285,7 +285,7 @@ public class AddAddressActivity extends BaseActivity {
finish();
}
});
} else {//修改
} else {//고치다.
map.put("uuid", uuid);
AddressServiceFactory.updateAddress(map).subscribe(new AbstractDialogSubscriber<AddressEntity>(this) {
@Override
......
......@@ -29,7 +29,7 @@ class AddressManagerActivity : BaseActivity(), View.OnClickListener {
private var adapter: AddressManagerAdapter? = null
private var inType = 0//0选择地址,1地址管理
private var inType = 0//0 주소 선택, 1 주소 관리
override fun onClick(v: View?) {
when (v?.id) {
......
......@@ -32,8 +32,8 @@ class CommentMallActivity : BaseListActivity<CommentContentEntity.DataBean>() {
private var page = 1
private var maps: MutableMap<String, Any>? = null
private var type = 0//评论类型,默认0,全部
private var listType: MutableList<CommentTypeEntity>? = null//评论类别
private var type = 0//댓 글 유형, 기본 값 0, 전부
private var listType: MutableList<CommentTypeEntity>? = null//논평 유형
override fun onLoadMore(refreshLayout: RefreshLayout) {
requestListData(false)
......
......@@ -71,7 +71,7 @@ public class DetailsMerchantFragment extends BaseFragment implements OnRefreshLo
@Override
protected void initComponents() {
initView();
//配置商品内容
//상품 내용 설정
listData = new ArrayList<>();
linearLayoutManagerContent = new LinearLayoutManager(getActivity());
rvDetailsContent.setLayoutManager(linearLayoutManagerContent);
......@@ -94,7 +94,7 @@ public class DetailsMerchantFragment extends BaseFragment implements OnRefreshLo
}
});
//配置商品类别
//상품 유형 설정
Bundle bundle = getArguments();
if (bundle != null) {
storeUuid = bundle.getString(ConstantsShopType.STORE_UUID);
......@@ -102,9 +102,9 @@ public class DetailsMerchantFragment extends BaseFragment implements OnRefreshLo
if (goodsTypeListBeans != null && goodsTypeListBeans.size() > 0) {
mGoodsTypeUUID = goodsTypeListBeans.get(0).getUuid();
requestContentData(mGoodsTypeUUID, true);//初始化内容数据
requestContentData(mGoodsTypeUUID, true);//내용 데이터 초기 화
//设置商品类型
//상품 유형 설정
linearLayoutManagerTitle = new LinearLayoutManager(getActivity());
rvDetailsTitle.setLayoutManager(linearLayoutManagerTitle);
shopTypeTitleAdapter = new MallTypeTitleAdapter(getActivity(), R.layout.item_shop_type_title, goodsTypeListBeans);
......
......@@ -20,7 +20,7 @@ import com.scwang.smartrefresh.layout.api.RefreshLayout
import io.reactivex.disposables.Disposable
/**
* 评价详情
* 상세 한 상황 을 평가 하 다.
*/
class MallEvaluateDetailsActivity : BaseListActivity<EvaluateEntity>() {
......
......@@ -33,15 +33,15 @@ class MallPayResultActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.tv_result_see -> {//查看订单
R.id.tv_result_see -> {//주문 서 를 확인 하 다.
startActivity(Intent(this@MallPayResultActivity, MallOrderActivity::class.java))
finish()
}
R.id.tv_result_home -> {//回到首页
R.id.tv_result_home -> {//홈 페이지 로 돌아가다
if (type == 1) {
startActivity(Intent(this@MallPayResultActivity, HomeActivity::class.java))
}
if (type == 2) {//立即评价
if (type == 2) {//즉시 평가 하 다
var intent = Intent(this@MallPayResultActivity, EvaluationActivity::class.java)
var bundle = Bundle()
bundle.putSerializable("shop_list", mallOrderActivity)
......@@ -49,7 +49,7 @@ class MallPayResultActivity : BaseActivity(), View.OnClickListener {
startActivity(intent)
finish()
}
if (type == 3) {//查看评论
if (type == 3) {//댓 글 을 보다
startActivity(Intent(this, MallEvaluateDetailsActivity::class.java)
.putExtra(ConstantsShopType.GOODS_UUID, orderId))
finish()
......@@ -58,7 +58,7 @@ class MallPayResultActivity : BaseActivity(), View.OnClickListener {
}
}
private var orderId: String? = ""//商城订单ID
private var orderId: String? = ""//상점 주문서 ID
private var listData = mutableListOf<RecommendShopEntity.DataBean>()
......@@ -135,7 +135,7 @@ class MallPayResultActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求推荐商品
* 추천 상품 요청
*/
private fun requestShopContentData(goods_type_uuid: List<String>?) {
var map = HashMap<String, Any?>()
......
......@@ -44,7 +44,7 @@ import java.util.HashMap
class MallSearchActivity : BaseActivity(), View.OnClickListener {
private var searchType = 0//搜索类型0商城,1商品
private var searchType = 0//검색 유형 0 상점, 1 상품
private var searchContent = mutableListOf<String>()
......@@ -73,7 +73,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.tv_mall -> {//商城
R.id.tv_mall -> {//상점.
searchType = 0
findHistory()
et_search.hint = getString(R.string.please_enter_the_name_merchant)
......@@ -89,7 +89,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
rv_search_result.layoutManager = LinearLayoutManager(this)
rv_search_result.adapter = mallAdapter
}
R.id.tv_shop -> {//商品
R.id.tv_shop -> {//상품.
searchType = 1
findHistory()
et_search.hint = getString(R.string.please_input_shop_name)
......@@ -106,28 +106,28 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
rv_search_result.adapter = shopAdapter
}
R.id.tv_search -> {//点击搜索
R.id.tv_search -> {//클릭 하여 검색
var searchContent = et_search.text.toString()
if (TextUtils.isEmpty(searchContent)) {
return
}
stareSearchData(searchContent)//加入历史记录
stareSearchData(searchContent)//역사 기록 에 넣다
sv_mall_search.visibility = View.GONE
refreshLayout.visibility = View.VISIBLE
if (searchType == 0) {//商城搜索
if (searchType == 0) {//상점 검색
searchMall(searchContent)
} else {//商品搜索
} else {//상품 검색
searchShop(searchContent)
ll_filter.visibility = View.VISIBLE
updateFilter(1)
}
}
R.id.tv_clean_history -> {//清空搜索历史
R.id.tv_clean_history -> {//검색 기록 비우 기
cleanHistory()
}
R.id.tv_comprehensive -> {//综合
R.id.tv_comprehensive -> {//종합 하 다.
sales = ""
price = ""
var searchContent = et_search.text.toString()
......@@ -163,7 +163,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
/**
* 指定商品
* 지정 상품
*/
private fun searchShop(searchContent: String) {
val map = HashMap<String, Any>()
......@@ -197,7 +197,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
}
/**
* 指定商城
* 상점 을 지정 하 다
*/
private fun searchMall(searchContent: String) {
val map = HashMap<String, Any>()
......@@ -257,7 +257,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
refreshLayout.setRefreshHeader(ClassicsHeader(this).setEnableLastTime(true))
refreshLayout.setRefreshFooter(ClassicsFooter(this))
//初始化历史记录
//과거 기록 초기 화
shopArrayAdapter = ShopArrayAdapter(this, R.layout.item_search_string, searchContent)
lv_history.adapter = shopArrayAdapter
lv_history.onItemClickListener = AdapterView.OnItemClickListener { parent, view, position, id ->
......@@ -266,7 +266,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
et_search.setSelection(et_search.text.length)
}
//初始化热门搜索
//인기 검색 초기 화
tagAdapter = object : TagAdapter<HotSearchListEntity.DataBean>(listHot) {
override fun getView(parent: FlowLayout, position: Int, dataBean: HotSearchListEntity.DataBean): View {
val tv = LayoutInflater.from(this@MallSearchActivity).inflate(R.layout.item_search_hot, fl_tag_one, false) as TextView
......@@ -304,11 +304,11 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
findHistory()
//初始化获得商品和商城热搜
//초기 화 획득 상품 및 상점 검색
requestHotelSearch(1)
requestHotelSearch(2)
//默认配置商城热搜
//기본 구성 상점 검색
listHot.clear()
listHot.addAll(listMallHot)
......@@ -342,7 +342,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
}
}
//商城adapter配置
//상점 adapter 설정
mallAdapter = MallAdapter(R.layout.item_merchant, searchResultMallList)
mallAdapter?.setOnItemClickListener { adapter, view, position ->
val dataBean = searchResultMallList.get(position)
......@@ -357,14 +357,14 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
et_search.setOnEditorActionListener { arg0, arg1, arg2 ->
if (arg1 == EditorInfo.IME_ACTION_SEARCH) {
var searchContent = et_search.text.toString()
stareSearchData(searchContent)//加入历史记录
stareSearchData(searchContent)//역사 기록 에 넣다
sv_mall_search.visibility = View.GONE
refreshLayout.visibility = View.VISIBLE
if (searchType == 0) {//商城搜索
if (searchType == 0) {//상점 검색
searchMall(searchContent)
} else {//商品搜索
} else {//상품 검색
searchShop(searchContent)
ll_filter.visibility = View.VISIBLE
updateFilter(1)
......@@ -376,8 +376,8 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
/**
* 请求热门搜索
* 1 商城,2商品
* 인기 검색 요청
* 1 상점, 2 상품
*/
private fun requestHotelSearch(type: Int) {
HomeServiceFactory.getSearchList(1, 20, type).subscribe(object : AbstractDialogSubscriber<HotSearchListEntity>(this) {
......@@ -386,7 +386,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
listMallHot.clear()
listMallHot.addAll(entity.data)
//初始化商城
//상점 초기 화
listHot.clear()
listHot.addAll(listMallHot)
tagAdapter?.let {
......@@ -404,11 +404,11 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
}
/**
* 保存搜索关键字
* 검색 키워드 저장
* @param searchText
*/
private fun stareSearchData(searchText: String) {
//先查找,是否有改搜索记录
//검색 기록 변경 여 부 를 먼저 찾 습 니 다.
var entitys = findIsPresence(searchText)
if (entitys.isNotEmpty()) {
var entity = entitys[0]
......@@ -430,7 +430,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
}
/**
* 查询历史记录
* 역사 기록 을 조회 하 다.
*/
private fun findHistory() {
......@@ -447,7 +447,7 @@ class MallSearchActivity : BaseActivity(), View.OnClickListener {
}
/**
* 更新筛选状态
* 필터 상태 업데이트
*/
private fun updateFilter(type: Int) {
when (type) {
......
......@@ -33,7 +33,7 @@ class MerchantInfoFragment : BaseFragment(), View.OnClickListener, CallDialog.On
it.show()
}
}
R.id.iv_location -> {//商城详情不跳地图
R.id.iv_location -> {//상점 상세 맵 점프 하지 않 음
// toMaps()
}
R.id.tv_merchant_address -> {
......
......@@ -45,7 +45,7 @@ public class QueueResultActivity extends BaseActivity {
TextView tvCountTime;
TextView tvState;//排队状态
TextView tvState;//대기 상태
ImageView ivStartImage;
......@@ -65,11 +65,11 @@ public class QueueResultActivity extends BaseActivity {
/* @BindView(R.id.ll_background)
LinearLayoutCompat llBackGround;*/
private int tablesNumber;//前方等待桌数
private int tablesNumber;//전방 대기 테이블 수
private CommitQueueEntity commitQueueEntity;
private int type = 0;//0,1,2//三种状态,0排队成功,1排队中,2排队已过号
private int type = 0;//0,1,2//세 가지 상태, 0 줄 서기 성공, 1 줄 서기 중 2 줄 이 지 났 습 니 다.
@Override
......@@ -155,7 +155,7 @@ public class QueueResultActivity extends BaseActivity {
findViewById(R.id.btn_order).setOnClickListener(this::onViewClicked);
}
//显示排队提醒弹出窗口
//대기 열 알림 팝 업 창 표시
private void showQueueTip() {
showDialogStateTow(getString(R.string.queuing_reminders), getString(R.string.we_are_waiting_for_you));
}
......@@ -169,7 +169,7 @@ public class QueueResultActivity extends BaseActivity {
public void onViewClicked(View view) {
if (view.getId()==R.id.btn_cancel){
if (type == 1) {//取消排队
if (type == 1) {//줄 서기 취소
showDialog("", getString(R.string.whether_to_cancel_the_queue), type -> {
if (commitQueueEntity != null) {
RestaurantServiceFactory.cancelQueue(commitQueueEntity.getUuid()).subscribe(new AbstractDialogSubscriber<ResponseBody>(this) {
......@@ -181,20 +181,20 @@ public class QueueResultActivity extends BaseActivity {
});
}
}, true, true);
} else {//返回首页
} else {//홈 페이지 로 되돌아가다
startActivity(new Intent(QueueResultActivity.this, HomeActivity.class));
}
}else if (view.getId()==R.id.btn_order){
if (type == 2) {//重新排队
if (type == 2) {//다시 줄 서기
Intent intent = new Intent(QueueResultActivity.this, QueueActivity.class);
if (commitQueueEntity != null) {
intent.putExtra(ConstantsRestaurantType.UUID, commitQueueEntity.getHotel_uuid());
}
startActivity(intent);
} else {//我要点餐
if (tablesNumber == 0) {//去扫码
} else {//주문 할 게 요.
if (tablesNumber == 0) {//스 캔 을 가다
startActivityForResult(new Intent(QueueResultActivity.this, CaptureActivity.class), ConstantsHomeType.SCAN);
} else {//提示,前方桌数等待为0时候才可以点餐
} else {//안내, 앞 테이블 수 는 0 시 까지 기 다 려 야 주문 할 수 있 습 니 다.
showDialog(getString(R.string.waiting_before_ordering));
}
}
......@@ -204,7 +204,7 @@ public class QueueResultActivity extends BaseActivity {
@Override
protected void onPause() {
super.onPause();
//通知餐馆详情刷新
//식당 정보 갱신 통지
EventBus.getDefault().post(new UpdateStateEvent());
}
......
......@@ -60,17 +60,17 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
var storeUuid: String? = null
var goodsUuid: String? = null
var selectSpecEntity: MallSpecsDetailEntity? = null //选中的规格
var selectSpecEntity: MallSpecsDetailEntity? = null //선 택 된 규격
var operateType = 0//操作类型,0添加到购物车操作,1结算操作
var operateType = 0//조작 유형, 0 카 트 조작 에 추가, 1 결제 작업
var isCollect = 0//当前状态是否收藏,0未收藏,1已收藏
var isCollect = 0//현재 상태 저장 여부, 0 저장 되 지 않 음, 1 저장 되 어 있 음
var collectUUID: String? = null//收藏id
var collectUUID: String? = null//수집 id
var homeTypeUuid = ""
private var inType = 1//进入商城首页类型,1,进入商城首页,2,进入店铺首页
private var inType = 1//상점 홈 페이지 유형 진입, 1, 상점 홈 페이지 진입, 2, 점포 홈 페이지 진입
private val selectShopList = mutableListOf<CartGoodsListEntity.SettleCartGoodsListBeanX>()//当前的商品列表
......@@ -80,7 +80,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
.putExtra(ConstantsShopType.GOODS_UUID, goodsUuid)
.putExtra(ConstantsShopType.STORE_UUID, storeUuid))
R.id.tv_mall_detail_add_car -> {//加入购物车
R.id.tv_mall_detail_add_car -> {//카 트 에 들어가다
operateType = 0
//settleAccounts()
showBottomDialog()
......@@ -114,7 +114,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
tv_button_collect.setCompoundDrawablesWithIntrinsicBounds(null, top, null, null)
}
})
} else {//取消收藏
} else {//모음 집 취소
isCollect = 0
var map = HashMap<String, Any?>()
var listUUID = mutableListOf<String?>()
......@@ -135,7 +135,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
/**
* 添加商品到购物车
* 카 트 에 상품 추가
*/
private fun addCart() {
val map = HashMap<String, Any?>()
......@@ -146,12 +146,12 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
MallServiceFactory.addCart(map).subscribe(object : AbstractDialogSubscriber<AddCarResultEntity>(this) {
override fun onNext(entity: AddCarResultEntity) {
//通知购物车刷新
//카 트 리 셋 알림
EventBus.getDefault().postSticky(UpdateCarEvent())
if (operateType == 0) {//添加到购物车操作
if (operateType == 0) {//카 트 조작 에 추가
ToastUtils.showShort(getString(R.string.add_success))
requestCartList()
} else {//结算操作
} else {//결산 작업
selectShopList.clear()
var settleCartGoodsListBean = CartGoodsListEntity.SettleCartGoodsListBeanX()//配置需要提交结算的参数
......@@ -214,13 +214,13 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求规格详情
* 요청 규격 상세
*/
private fun requestShopSpecsDetailData(storeUuid: String?, goodsUuid: String?) {
MallServiceFactory.getGoodsSpecs(storeUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<List<MallSpecsDetailEntity>>(this) {
override fun onNext(t: List<MallSpecsDetailEntity>) {
specsData = t
//默认选择第一个规格,并用第一个规格的价格
//기본 으로 첫 번 째 규격 을 선택 하고 첫 번 째 규격 의 가격 을 사용 합 니 다.
if (t != null && t.isNotEmpty()) {
selectSpecEntity = t[0]
tv_goods_specs_tip.text = getString(R.string.a_select)
......@@ -231,8 +231,8 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求详情数据
* 状态类型,type=1,刷新收藏
* 요청 정보 데이터
* 상태 유형, type = 1, 모음 집 새로 고침
*/
private fun requestShopDetailData(storeUuid: String?, goodsUuid: String?, type: Int) {
MallServiceFactory.getGoodsDetail(storeUuid, goodsUuid).subscribe(object : AbstractDialogSubscriber<ShopDetailEntity>(this) {
......@@ -272,10 +272,10 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
}
isCollect = is_collect
if (is_collect == 0) {//未收藏
if (is_collect == 0) {//저장 되 지 않 음
val top = resources.getDrawable(R.mipmap.ic_collection_dark)
tv_button_collect.setCompoundDrawablesWithIntrinsicBounds(null, top, null, null)
} else {//已收藏
} else {//저장 됨
val top = resources.getDrawable(R.mipmap.ic_collection_bright)
tv_button_collect.setCompoundDrawablesWithIntrinsicBounds(null, top, null, null)
}
......@@ -381,7 +381,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
/**
* 分类标志选择监听
* 분류 표지 선택 감청
*/
flowLayoutOne.setOnTagClickListener { _, position, _ ->
specsData?.let {
......@@ -435,8 +435,8 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 去结算和加入购物车
* 都需要调用购物车接口
* 결제 하고 카 트 가입 하고.
* 카 트 인터페이스 가 필요 해 요.
*/
private fun settleAccounts() {
if (selectSpecEntity == null) {
......@@ -446,7 +446,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
showBottomDialog()
}
}
} else {//调用添加到购物车接口
} else {//카 트 인터페이스 에 호출
addCart()
}
}
......@@ -459,7 +459,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求评论数据
* 댓 글 요청 데이터
*/
private fun requestListData() {
var maps = HashMap<String, Any?>()
......@@ -505,7 +505,7 @@ class ShopDetailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 查找购物车有多少件商品
* 카 트 에 몇 가지 상품 이 있 는 지 찾 아 보 세 요.
*/
private fun requestCartList() {
MallServiceFactory.getCartList(1, 50).subscribe(object : AbstractDialogSubscriber<ShopCarEntity>(this) {
......
......@@ -111,7 +111,7 @@ public class ShopFragment extends BaseFragment {
});
}
//获取状态栏高度
//획득 상태 표시 줄 높이
private void getStateBar() {
int result = 0;
int resourceId = this.getResources().getIdentifier("status_bar_height", "dimen", "android");
......
......@@ -102,13 +102,13 @@ public class ShopItemFragment extends BaseFragment {
startActivity(new Intent(getActivity(), DishesDetailsTowActivity.class)
.putExtra(Constant.HOTEL_UUID, bean.getHotel_store_uuid())
.putExtra(Constant.SHOP_UUID, bean.getGoods_uuid()));
} else {//商城
} else {//상점.
Intent intent = new Intent(getActivity(), ShopDetailActivity.class);
intent.putExtra(ConstantsShopType.STORE_UUID, bean.getHotel_store_uuid());
intent.putExtra(ConstantsShopType.GOODS_UUID, bean.getGoods_uuid());
startActivity(intent);
}
} else {//富文本
} else {//부 텍스트
startActivity(new Intent(getActivity(), WebViewContentActivity.class).putExtra("url", bean.getContent()));
}
}
......
......@@ -32,33 +32,33 @@ import org.greenrobot.eventbus.ThreadMode
class SureOrderActivity : BaseActivity(), View.OnClickListener {
var pay = 0//0app微信支付,1支付宝支付
var addressUUID: String? = null//地址id
var pay = 0//0app 위 챗 결제, 1 알 리 페 이 결제
var addressUUID: String? = null//주소 id
private var sureOrderAdapter: SureOrderAdapter? = null
private var listShopData = mutableListOf<SettleEntity.UserStorePaySettleListBean.StoreCartGoodsListBean>()
private var orderId: String = ""
private var couponId = ""//优惠券ID
private var couponId = ""//쿠폰 ID
private var homeTypeUuid = ""
private var payment = ""//支付金额
private var payment = ""//지불 금액
override fun onClick(v: View?) {
when (v?.id) {
R.id.ll_replace -> {//选择地址
R.id.ll_replace -> {//주소 선택
var intent = Intent(this@SureOrderActivity, AddressManagerActivity::class.java)
intent.putExtra("inType", 0)
startActivityForResult(intent, 2)
}
R.id.tv_pay -> {//调用支付
R.id.tv_pay -> {//호출 지불
requestPay()
}
R.id.ll_pay_away -> {//选择支付方式
R.id.ll_pay_away -> {//지불 방식 을 선택 하 다
var intent = Intent(this@SureOrderActivity, SelectPayActivity::class.java)
startActivityForResult(intent, 1)
}
......@@ -80,7 +80,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
super.onActivityResult(requestCode, resultCode, data)
when (requestCode) {
1 -> {//支付方式选择返回
1 -> {//지불 방식 선택 복귀
data?.let {
pay = it.getIntExtra("pay", 0)
if (pay == 0) {
......@@ -90,7 +90,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
}
}
2 -> {//地址返回
2 -> {//주소 반환
data?.let {
var data: AddressEntity.DataBean = it.extras.getSerializable("address") as AddressEntity.DataBean
data?.let {
......@@ -107,7 +107,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
}
}
3 -> {//选择优惠券返回
3 -> {//쿠폰 을 선택 하고 돌아 가기
if (data != null) {
var couponId = data.getStringExtra("couponUUID")
var couponName = data.getStringExtra("couponName")
......@@ -117,7 +117,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
tv_coupon_name.text = getString(R.string.please_select_coupon)
}
if (!TextUtils.isEmpty(couponId)) {
//刷新支付信息
//지불 정 보 를 갱신 하 다.
this.couponId = couponId
} else {
this.couponId = ""
......@@ -129,9 +129,9 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
//请求支付
//지불 을 청구 하 다
private fun requestPay() {
//刷新购物车
//카 트 리 셋
EventBus.getDefault().postSticky(UpdateCarEvent())
var map = HashMap<String, Any?>()
......@@ -157,17 +157,17 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
request.appId = WxConstants.WX_APP_ID//appid
request.partnerId = payEntity.partner_id//商户号
request.partnerId = payEntity.partner_id//상점 번호
request.prepayId = payEntity.prepay_id//预支付交易会话ID
request.prepayId = payEntity.prepay_id//선불 거래 세 션 ID
request.packageValue = payEntity.package_str//扩展字段
request.packageValue = payEntity.package_str//확장 필드
request.nonceStr = payEntity.nonce_str//随机字符串
request.nonceStr = payEntity.nonce_str//임 의 문자열
request.timeStamp = payEntity.time_stamp
request.sign = payEntity.sign//签名
request.sign = payEntity.sign//서명 하 다.
api.sendReq(request)
}
......@@ -202,7 +202,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求地址数据
* 요청 주소 데이터
*/
private fun requestAddress() {
AddressServiceFactory.getAddressList()
......@@ -231,7 +231,7 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
/**
* 请求确认订单接口
* 주문 인터페이스 확인 요청
*/
private fun requestData() {
var map = HashMap<String, Any?>()
......@@ -268,17 +268,17 @@ class SureOrderActivity : BaseActivity(), View.OnClickListener {
}
/**
* 微信支付回调
* 위 챗 결 제 를 반송 하 다.
*/
@org.greenrobot.eventbus.Subscribe(threadMode = ThreadMode.MAIN)
public fun updatePlayStatus(entity: PlayStatusEntity?) {
if (entity != null) {
if (entity.type == 0) {//支付失败
if (entity.type == 0) {//지불 실패
ToastUtils.showShort(getString(R.string.failure_to_pay))
//跳转到订单页面
//주문서 페이지 로 가기
startActivity(Intent(this@SureOrderActivity, MallOrderActivity::class.java))
finish()
} else {//支付成功
} else {//지불 성공
ToastUtils.showShort(getString(R.string.successful_payment))
val intent = Intent(this@SureOrderActivity, MallPayResultActivity::class.java)
var bundle = Bundle()
......
......@@ -16,7 +16,7 @@ import cn.dankal.entities.shop.ShopTypeContentEntity;
/**
* Created by zhengpeng on 2019/8/21.
* 查询数据库工具类
* 데이터베이스 도구 클래스 검색
*/
public class FindUtil {
......@@ -25,18 +25,18 @@ public class FindUtil {
* @param goods_uuid
* @param second_main_specs_uuid
* @param secondSpecs
* @return 数据库是否查到了该商品
* @return 데이터베이스 에서 이 상품 을 찾 았 는 지 여부
*/
public static FoodEntity findDataBasesShop(String storeUUID, String goods_uuid, String second_main_specs_uuid, List<String> secondSpecs) {
List<FoodEntity> entities = LitePal.where("storeUUid=? and goods_uuid=? and second_main_specs_uuid=?",
storeUUID, goods_uuid, second_main_specs_uuid).order("id desc").find(FoodEntity.class);
if (entities == null || entities.size() == 0) {//没有当前商品,新添加
if (entities == null || entities.size() == 0) {//현재 상품 없 이 추가
return null;
} else {
//判断辅规格是不是一样
//보조 규격 이 같 는 지 아 닌 지 판단 하 다.
for (int i = 0; i < entities.size(); i++) {
FoodEntity foodEntity = entities.get(i);
//获取当前辅规格
//현재 보조 규격 가 져 오기
List<String> secondSpecList = foodEntity.getSecond_specs_list();
if (secondSpecList == null) {
......@@ -46,10 +46,10 @@ public class FindUtil {
return null;
}
} else {
if (secondSpecs.size() == 0 && secondSpecList.size() == 0) {//没有选择辅规格
if (secondSpecs.size() == 0 && secondSpecList.size() == 0) {//보조 사양 선택 하지 않 음
return foodEntity;
}
if (secondSpecList.equals(secondSpecs)) {//辅规格一样,数量加1
if (secondSpecList.equals(secondSpecs)) {//보조 규격 동일, 수량 증가 1
return foodEntity;
}
}
......
......@@ -10,7 +10,7 @@ import cn.dankal.basiclib.util.AppUtils;
/**
* Created by zhengpeng on 2019/8/8.
* 为了解决多语言切换,ToastUtil的坑
* 다 국어 적 전환 을 해결 하기 위해, Toast Util 의 구덩이
*/
public class ToastUtils {
public static void showShort(int text) {
......
......@@ -36,28 +36,28 @@ public class UIUtile {
public static final String TAG = "ui_log";
/**
* 地球半径,单位 km
* 지구 반경 단위 km
*/
private static final double EARTH_RADIUS = 6378.137;
/**
* 改变tabLayout指示器宽度
* tabLayot 인디케이터 폭 변경
*
* @param tabLayout
*/
public static void reflex(final TabLayout tabLayout) {
//了解源码得知 线的宽度是根据 tabView的宽度来设置的
//소스 코드 를 알 아 보 니 라인 의 너 비 는 tabView 의 넓이 에 따라 설 치 된 것 입 니 다.
tabLayout.post(new Runnable() {
@Override
public void run() {
try {
//拿到tabLayout的mTabStrip属性
//tabLayot 의 mTabStrip 속성 가 져 오기
LinearLayout mTabStrip = (LinearLayout) tabLayout.getChildAt(0);
for (int i = 0; i < mTabStrip.getChildCount(); i++) {
View tabView = mTabStrip.getChildAt(i);
//拿到tabView的mTextView属性 tab的字数不固定一定用反射取mTextView
//tabView 를 가 져 온 mTextView 속성 tab 의 글자 수 는 고정 되 지 않 고 반드시 mTextView 를 반사 해서 취하 십시오.
Field mTextViewField = tabView.getClass().getDeclaredField("mTextView");
mTextViewField.setAccessible(true);
......@@ -65,7 +65,7 @@ public class UIUtile {
tabView.setPadding(0, 0, 0, 0);
//因为我想要的效果是 字多宽线就多宽,所以测量mTextView的宽度
//내 가 원 하 는 효 과 는 글자 가 많 고 선 이 넓 기 때문에 mTextView 의 폭 을 재 는 것 이다.
int width = 0;
width = mTextView.getWidth();
if (width == 0) {
......@@ -73,7 +73,7 @@ public class UIUtile {
width = mTextView.getMeasuredWidth();
}
//设置tab左右间距为10dp 注意这里不能使用Padding 因为源码中线的宽度是根据 tabView的宽度来设置的
//tab 좌우 간격 을 10dp 로 설정 합 니 다. 여 기 는 Padding 을 사용 할 수 없습니다.
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) tabView.getLayoutParams();
params.width = width;
params.leftMargin = tabView.getMeasuredWidth() / 2 - width / 2;
......@@ -94,18 +94,18 @@ public class UIUtile {
public static void reflexTow(final TabLayout tabLayout) {
//了解源码得知 线的宽度是根据 tabView的宽度来设置的
//소스 코드 를 알 아 보 니 라인 의 너 비 는 tabView 의 넓이 에 따라 설 치 된 것 입 니 다.
tabLayout.post(new Runnable() {
@Override
public void run() {
try {
//拿到tabLayout的mTabStrip属性
//tabLayot 의 mTabStrip 속성 가 져 오기
LinearLayout mTabStrip = (LinearLayout) tabLayout.getChildAt(0);
for (int i = 0; i < mTabStrip.getChildCount(); i++) {
View tabView = mTabStrip.getChildAt(i);
//拿到tabView的mTextView属性 tab的字数不固定一定用反射取mTextView
//tabView 를 가 져 온 mTextView 속성 tab 의 글자 수 는 고정 되 지 않 고 반드시 mTextView 를 반사 해서 취하 십시오.
Field mTextViewField = tabView.getClass().getDeclaredField("mTextView");
mTextViewField.setAccessible(true);
......@@ -113,7 +113,7 @@ public class UIUtile {
tabView.setPadding(0, 0, 0, 0);
//因为我想要的效果是 字多宽线就多宽,所以测量mTextView的宽度
//내 가 원 하 는 효 과 는 글자 가 많 고 선 이 넓 기 때문에 mTextView 의 폭 을 재 는 것 이다.
int width = 0;
width = mTextView.getWidth();
if (width == 0) {
......@@ -121,7 +121,7 @@ public class UIUtile {
width = mTextView.getMeasuredWidth();
}
//设置tab左右间距为10dp 注意这里不能使用Padding 因为源码中线的宽度是根据 tabView的宽度来设置的
//tab 좌우 간격 을 10dp 로 설정 합 니 다. 여 기 는 Padding 을 사용 할 수 없습니다.
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) tabView.getLayoutParams();
params.width = width;
params.leftMargin = (tabView.getMeasuredWidth() / 3);
......@@ -141,7 +141,7 @@ public class UIUtile {
}
/**
* xml转换成View
* xml 를 View 로 변환 하 다
*
* @param layoutId
* @param parent
......@@ -153,7 +153,7 @@ public class UIUtile {
}
/**
* 处理价格
* 처리 가격
*/
@NotNull
public static String stringToPrice(String s) {
......@@ -164,13 +164,13 @@ public class UIUtile {
return "₩" + new DecimalFormat("#").format(Double.valueOf(s));
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return "0";
}
/**
* 处理价格
* 처리 가격
*/
@NotNull
public static String stringToPrice(double s) {
......@@ -178,13 +178,13 @@ public class UIUtile {
return "₩" + new DecimalFormat("#").format(s);
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return "0";
}
/**
* 处理价格,String to double
* 처리 가격,String to double
*/
@NotNull
public static Double stringToDouble(String s) {
......@@ -195,22 +195,29 @@ public class UIUtile {
return Double.valueOf(new DecimalFormat("#").format(Double.valueOf(s)));
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return 0.00;
}
/**
* 处理邮票
* 우 표를 처리 하 다
*/
@NotNull
public static String stringToStamp(String s) {
try {
String zhang = "장";
if (SPUtil.getInstance(DankalApplication.getContext()).getSelectLanguage() == 1) {
int languageType = SPUtil.getInstance(DankalApplication.getContext()).getSelectLanguage();
if (languageType == 1) {
zhang = "장";
} else {
} else if (languageType == 0) {
zhang = "张";
} else if (languageType == 2) {
zhang = "";
} else if (languageType == 3) {
zhang = "枚";
}
int index = s.indexOf(".");
if (index != -1) {
......@@ -219,33 +226,38 @@ public class UIUtile {
return s + zhang;
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return "";
}
/**
* 处理邮票
* 우 표를 처리 하 다
*/
@NotNull
public static String stringToStamp(int s) {
try {
String zhang = "장";
if (SPUtil.getInstance(DankalApplication.getContext()).getSelectLanguage() == 1) {
int languageType = SPUtil.getInstance(DankalApplication.getContext()).getSelectLanguage();
if (languageType == 1) {
zhang = "장";
} else {
} else if (languageType == 0) {
zhang = "张";
} else if (languageType == 2) {
zhang = "";
} else if (languageType == 3) {
zhang = "枚";
}
return s + zhang;
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return DankalApplication.getContext().getString(R.string.zhang);
}
/**
* 处理价格,不带¥
* 처리 가격 은 ¥ 하지 않 는 다.
*/
public static String stringToPriceTow(String s) {
try {
......@@ -255,13 +267,13 @@ public class UIUtile {
return new DecimalFormat("#").format(Double.valueOf(s));
} catch (Exception e) {
e.printStackTrace();
Log.e(TAG, "数据转换错误");
Log.e(TAG, "데이터 변환 오류");
}
return "0";
}
/*
* 将时间戳转换为时间
* 타임 스탬프 를 시간 으로 변환
*/
public static String stampToDate(String s) {
String res;
......@@ -273,7 +285,7 @@ public class UIUtile {
}
/*
* 将时间转换为时间戳
* 시간 을 타임스탬프 로 변환 하 다
*/
public static long dateToStamp(String s) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
......@@ -283,7 +295,7 @@ public class UIUtile {
}
/**
* 计算时间差,是否超过二十四小时
* 계산 시간 차, 24 시간 초과 여부
*/
public static boolean isBeyond(long startTime, long endTime) {
double hours = (double) (startTime - endTime) / 3600 / 1000;
......@@ -295,7 +307,7 @@ public class UIUtile {
}
/**
* 计算时间差,是否超过7天
* 계산 시간 차, 7 일 초과 여부
*/
public static boolean isBeyondDay(long startTime, long endTime) {
double hours = (double) (startTime - endTime) / 3600 / 1000;
......@@ -307,10 +319,10 @@ public class UIUtile {
}
/**
* 获取用户距离餐馆的 距离
* 식당 에서 사용자 거리 확보
*
* @param lng 用户经度
* @param lat 用户纬度
* @param lng 사용자 경도
* @param lat 사용자 위도
*/
public static String getDistanceTow(double lng, double lat, double lng2, double lat2) {
Double dis = getDistance(lng, lat, lng2, lat2);
......@@ -325,35 +337,35 @@ public class UIUtile {
}
/**
* 根据经纬度,计算两点间的距离
* 경위 에 근거 하여 두 점 간 의 거 리 를 계산 하 다.
*
* @param longitude1 第一个点的经度
* @param latitude1 第一个点的纬度
* @param longitude2 第二个点的经度
* @param latitude2 第二个点的纬度
* @return 返回距离 单位千米
* @param longitude1 첫 번 째 점 의 경도.
* @param latitude1 첫 번 째 위도.
* @param longitude2 두 번 째 점 의 경도
* @param latitude2 두 번 째 점 의 위도
* @return 복귀 거리 단위 천 미터
*/
public static double getDistance(double longitude1, double latitude1, double longitude2, double latitude2) {
// 纬度
// 위도.
double lat1 = Math.toRadians(latitude1);
double lat2 = Math.toRadians(latitude2);
// 经度
// 경도.
double lng1 = Math.toRadians(longitude1);
double lng2 = Math.toRadians(longitude2);
// 纬度之差
// 위도 의 차이
double a = lat1 - lat2;
// 经度之差
// 경도 의 차이
double b = lng1 - lng2;
// 计算两点距离的公式
// 두 점 거 리 를 계산 하 는 공식.
double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
Math.cos(lat1) * Math.cos(lat2) * Math.pow(Math.sin(b / 2), 2)));
// 弧长乘地球半径, 返回单位: 千米
//아크 길이 지구 반경 곱 하기, 복귀 단위: 천 미터
s = s * EARTH_RADIUS;
return s;
}
/**
* 富文本拼接成HTML
* 부 텍스트 를 HTML 로 맞 춥 니 다.
*
* @param text
* @return
......
......@@ -44,11 +44,11 @@ class ForgetPasswordHomeActivity : BaseActivity() {
var options = mutableListOf<Int>()
var optionsShow = mutableListOf<String>()//显示文本
var optionsShow = mutableListOf<String>()//텍스트 보이 기
private var smsCodeImpl: SmsCodeImpl? = null
var phoneCode = 82//默认手机区域码
var phoneCode = 82//기본 핸드폰 구역 코드
override fun getLayoutId(): Int {
return R.layout.activity_forget_password_home
......@@ -58,7 +58,7 @@ class ForgetPasswordHomeActivity : BaseActivity() {
addSingleTitleBar(getString(R.string.Forget_the_password))
smsCodeImpl = SmsCodeImpl(this)
//初始化手机类型数据
//핸드폰 유형 데이터 초기 화
initPhoneTypeData()
ll_forget_phone.setOnClickListener {
......@@ -70,17 +70,17 @@ class ForgetPasswordHomeActivity : BaseActivity() {
}
//手机号找回密码,下一步
//핸드폰 번호 비밀번호 찾기, 다음 단계
bt_phone_next.setOnClickListener {
var phone = et_phone_num.text.toString().trim()
var code = et_passwd.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return@setOnClickListener
}
//判断验证码
//판단 인증번호
if (TextUtils.isEmpty(code)) {
ToastUtils.showShort(getString(R.string.Please_enter_the_verification_code))
return@setOnClickListener
......@@ -88,33 +88,33 @@ class ForgetPasswordHomeActivity : BaseActivity() {
verificationPhoneAndCode(phone, code, 0)
}
//电话类型选择
//전화 유형 선택
tv_pop_select.setOnClickListener {
KeyBoardUtil.closeKeybord(et_phone_num)
showPhoneTypeWindows()
}
//获取手机号验证码
//핸드폰 번호 인증번호 가 져 오기
btn_code.setOnClickListener {
var phone = et_phone_num.text.toString().trim()
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return@setOnClickListener
}
//调用获取验证码接口
//호출 인증번호 인터페이스
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
}
//获取邮箱验证码
//메 일 박스 인증번호 가 져 오기
btn_email_code.setOnClickListener {
var email = et_email_num.text.toString()
if (TextUtils.isEmpty(email)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_mailbox))
return@setOnClickListener
}
//调用获取邮箱验证码接口
//호출 획득 메 일주 소 인증번호 인터페이스
smsCodeImpl?.getEmailCode(email, btn_email_code)
}
......@@ -135,8 +135,8 @@ class ForgetPasswordHomeActivity : BaseActivity() {
}
setPhoneInputListen()//手机号输入监听
setEmailInputListen()//邮箱监听
setPhoneInputListen()//핸드폰 번호 입력 감청
setEmailInputListen()//메 일 박스 모니터링
}
private fun updateStates(states: Boolean) {
......@@ -161,10 +161,10 @@ class ForgetPasswordHomeActivity : BaseActivity() {
}
/**
* 校验手机号和验证码
* 校验邮箱和验证码
* 핸드폰 번호 와 인증번호 확인
* 메 일주 소 체크 와 인증번호
*
* type=0,手机号校验,type=1邮箱校验
* type = 0, 핸드폰 번호 검사, type = 1 메 일주 소 검사
*/
private fun verificationPhoneAndCode(phone: String, code: String, type: Int) {
if (smsCodeImpl?.uuid == null) {
......@@ -190,7 +190,7 @@ class ForgetPasswordHomeActivity : BaseActivity() {
/**
* 忘记密码邮箱登录,->跳去修改密码
* 비밀번호 잊 고 이메일 로그 인, - > 비밀번호 고치 기
*/
private fun requestLogin(email: String) {
UserServiceFactory.emailLogin(email).subscribe(object : AbstractDialogSubscriber<UserInfoBean>(this) {
......@@ -231,7 +231,7 @@ class ForgetPasswordHomeActivity : BaseActivity() {
private fun showPhoneTypeWindows() {
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
//3 개의 등급 으로 돌아 가 는 선 택 된 위치 입 니 다.
val opt1tx = if (options.size > 0)
options[options1]
else
......@@ -246,11 +246,11 @@ class ForgetPasswordHomeActivity : BaseActivity() {
.setSubmitText(getString(R.string.ok))
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK)
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(optionsShow as List<Any>?)//一级选择器
pvOptions.setPicker(optionsShow as List<Any>?)//1 급 선택 기
pvOptions.show()
}
......
......@@ -40,32 +40,32 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
var options = mutableListOf<Int>()
var optionsShow = mutableListOf<String>()//显示文本
var optionsShow = mutableListOf<String>()//텍스트 보이 기
var phoneCode = 82//默认手机区域码
var phoneCode = 82//기본 핸드폰 구역 코드
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_code -> {
var phone = et_phone_num.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
}
//调用获取验证码接口
//호출 인증번호 인터페이스
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
}
R.id.bt_next -> {
var phone = et_phone_num.text.toString().trim()
var code = et_passwd.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
}
//判断验证码
//판단 인증번호
if (TextUtils.isEmpty(code)) {
ToastUtils.showShort(getString(R.string.Please_enter_the_verification_code))
return
......@@ -73,7 +73,7 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
verificationPhoneAndCode(phone, code)
}
R.id.tv_pop_select -> {//显示底部手机号码选择弹窗
R.id.tv_pop_select -> {//밑 에 핸드폰 번호 표시 팝 업 창 선택
if (options.size == 0) {
ToastUtils.showShort(getString(R.string.Data_is_being_initialized))
return
......@@ -86,7 +86,7 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
private fun showPhoneTypeWindows() {
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
val opt1tx = if (options.size > 0)
options[options1]
else
......@@ -101,16 +101,16 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
.setSubmitText(getString(R.string.ok))
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK)
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(optionsShow as List<Any>?)//一级选择器
pvOptions.setPicker(optionsShow as List<Any>?)
pvOptions.show()
}
/**
* 校验手机号和验证码
* 핸드폰 번호 와 인증번호 확인
*/
private fun verificationPhoneAndCode(phone: String, code: String) {
if (smsCodeImpl == null || smsCodeImpl?.uuid == null) {
......@@ -123,10 +123,10 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
map["phone"] = phone
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
//找回邮箱
//메 일주 소 찾기
UserServiceFactory.findEmail(phone).subscribe(object : AbstractDialogSubscriber<FindEmailEntity>(this@FindEmailActivity) {
override fun onNext(t: FindEmailEntity) {
//验证成功跳转到邮箱界面
//검증 성공 메 일주 소 인터페이스 로 전송
ARouter.getInstance().build(FIND_EMAIL_TOW).withString("email", t.email).navigation()
}
})
......@@ -153,7 +153,7 @@ class FindEmailActivity : BaseActivity(), View.OnClickListener {
setInputListen()
//初始化手机类型数据
//핸드폰 유형 데이터 초기 화
initPhoneTypeData()
}
......
......@@ -52,7 +52,7 @@ class FindEmailTowActivity : BaseActivity() {
}
/**
* 忘记密码邮箱登录
* 비밀번호 잊 고 이메일 로그 인
*/
private fun requestLogin(email: String) {
UserServiceFactory.emailLogin(email).subscribe(object : AbstractDialogSubscriber<UserInfoBean>(this) {
......@@ -88,7 +88,7 @@ class FindEmailTowActivity : BaseActivity() {
// Get new Instance ID token
val token = task.result?.token
//上传到服务器
var map = HashMap<String, Any?>()
map["fcm_token"] = token
map["type"] = 0
......
......@@ -35,18 +35,18 @@ class LanguageSelectActivity : BaseActivity() {
}
override fun initComponents() {
//判断是否为第一次进入
//첫 입장 여 부 를 판단 하 다
if (SPUtils.get(Constant.FIRST_IN, true) as Boolean) {
ll_select_bg.visibility = View.VISIBLE
} else {
if (DankalApplication.isLogin()) {//已登录
//判断信息是否初始完成
if (DankalApplication.isLogin()) {//로그 인 됨
//정보의 초기 완성 여 부 를 판단 하 다.
if (TextUtils.isEmpty(DKUserManager.getUserInfo().phone)) {
ARouter.getInstance().build(LoginProtocol.LOGIN).navigation()
} else {
ARouter.getInstance().build(MainProtocol.MAIN).navigation()
}
} else {//没有登录
} else {//로그 인 하지 않 음
ARouter.getInstance().build(LoginProtocol.LOGIN).navigation()
}
}
......
......@@ -84,17 +84,17 @@ class LoginActivity : BaseActivity() {
accountLogin(account, pass)
}
//注册
//등록 하 다.
tv_register_account.setOnClickListener {
ARouter.getInstance().build(REGISTER).navigation()
}
//忘记密码
//비밀 번 호 를 잊어버리다.
tv_forget.setOnClickListener {
ARouter.getInstance().build(FORGET_PASSWORD).navigation()
}
//找回邮箱
//메 일주 소 찾기
tv_find_email.setOnClickListener {
ARouter.getInstance().build(FIND_EMAIL).navigation()
}
......@@ -114,7 +114,7 @@ class LoginActivity : BaseActivity() {
mRxPermissions?.let {
it.request(Permission.ACCESS_COARSE_LOCATION, Permission.READ_PHONE_STATE).subscribe({
if (it) {
//权限被允许
//권한 이 허용 되다
initLocation()
} else {
val builder = CommonDialog.Builder(this)
......@@ -140,10 +140,10 @@ class LoginActivity : BaseActivity() {
}
/**
* 微信登录
* 위 챗 로그 인
*/
private fun setWeChatLogin() {
//跳往 WXEntryActivity
val req = SendAuth.Req()
req.scope = "snsapi_userinfo"
req.state = "dankal-android-login"
......@@ -189,7 +189,7 @@ class LoginActivity : BaseActivity() {
}
/**
* 账号登录
* 계 정 로그 인
*
* @param email
* @param pass
......@@ -201,7 +201,7 @@ class LoginActivity : BaseActivity() {
UserServiceFactory.accountLogin(map).subscribe(object : AbstractDialogSubscriber<UserInfoBean>(this) {
override fun onNext(userInfoBean: UserInfoBean) {
DankalApplication.setLogin(true)//设置账号已登录
DankalApplication.setLogin(true)
val userResponseBody = UserResponseBody()
val tokenBean = UserResponseBody.TokenBean()
tokenBean.token = userInfoBean.access_token
......@@ -212,7 +212,7 @@ class LoginActivity : BaseActivity() {
DKUserManager.saveUserInfo(userResponseBody)
DKUserManager.updateUserInfo(userInfoBean)
//上传Firebase的token
//업로드 하 다.Firebase的token
uploadFireBaseToken()
ARouter.getInstance().build(MainProtocol.MAIN).navigation()
......@@ -234,7 +234,7 @@ class LoginActivity : BaseActivity() {
Log.i("FirebaseInstanceId", token)
//上传到服务器
//서버 에 업로드 하 다
var map = HashMap<String, Any?>()
map["fcm_token"] = token
map["type"] = 0
......@@ -258,7 +258,7 @@ class LoginActivity : BaseActivity() {
AppUtils.finishAllActivities()
Handler().postDelayed({
try {
// 杀死该应用进程
// 이 프로 세 스 를 죽 입 니 다.
android.os.Process.killProcess(android.os.Process.myPid())
System.exit(0)
} catch (e: Exception) {
......
......@@ -17,7 +17,7 @@ import kotlinx.android.synthetic.main.activity_email_update_password.*
import okhttp3.ResponseBody
/**
* 修改密码-用于邮箱验证登录后修改
* 비밀번호 변경 - 메 일 인증 로그 인 후 수정 에 사용
*/
@Route(path = EMAIL_UPDATE_PASSWORD)
class EmailUpdatePasswordActivity : BaseActivity(), View.OnClickListener {
......
......@@ -19,7 +19,7 @@ import okhttp3.ResponseBody
/**
* Created by zhengpeng on 2019/6/17.
* 修改邮箱
* 메 일 박스 수정
*/
@Route(path = UPDATE_EMAIL)
class ModifyEmailActivity : BaseActivity(), View.OnClickListener {
......@@ -75,16 +75,16 @@ class ModifyEmailActivity : BaseActivity(), View.OnClickListener {
setInputListen()
}
//请求接口判断邮箱是否存在
//요청 인터페이스 판단 메 일주 소 존재 여부
private fun requestIsEmail(email: String) {
UserServiceFactory.isRegister(email, 1).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//邮箱存在
if ("10001" == reason) {//메 일주 소 존재
tv_email_register.text = getString(R.string.mailbox_id_is_registered)
et_phone_num.setTextColor(ContextCompat.getColor(this@ModifyEmailActivity,R.color.btn_bg))
} else {//不存在
//调用获取邮箱验证码接口
} else {//존재 하지 않 음
//호출 획득 메 일주 소 인증번호 인터페이스
smsCodeImpl?.getEmailCode(email, btn_code)
}
}
......@@ -93,7 +93,7 @@ class ModifyEmailActivity : BaseActivity(), View.OnClickListener {
}
/**
* 校验邮箱和验证码
* 메 일주 소 체크 와 인증번호
*/
private fun verificationPhoneAndCode(email: String, code: String) {
var map = HashMap<String, Any?>()
......@@ -102,8 +102,8 @@ class ModifyEmailActivity : BaseActivity(), View.OnClickListener {
map["phone"] = email
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
//邮箱验证成功,修改邮箱
//修改手机号
//메 일 박스 인증 성공, 메 일 박스 수정
//핸드폰 번호 를 고치다
var map = HashMap<String, Any?>()
map["avatar"] = ""
map["email"] = email
......
......@@ -26,7 +26,7 @@ import okhttp3.ResponseBody
/**
* Created by zhengpeng on 2019/6/16.
* 修改手机号
* 핸드폰 번호 를 고치다
*/
@Route(path = UPDATE_PHONE)
class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
......@@ -36,9 +36,9 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
var options = mutableListOf<Int>()
var optionsShow = mutableListOf<String>()//显示文本
var optionsShow = mutableListOf<String>()
var phoneCode = 82//默认手机区域码
var phoneCode = 82
private var phoneIsEmpty = true
private var passwordIsEmpty = true
......@@ -47,7 +47,7 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
when (v?.id) {
R.id.btn_code -> {
var phone = et_phone_num.text.toString().trim()
//判断手机号码
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
......@@ -58,12 +58,12 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
var phone = et_phone_num.text.toString().trim()
var code = et_passwd.text.toString().trim()
//判断手机号码
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
}
//判断验证码
if (TextUtils.isEmpty(code)) {
ToastUtils.showShort(getString(R.string.Please_enter_the_verification_code))
return
......@@ -87,16 +87,16 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
}
/**
* 判断当前手机号是否存在
* 현재 핸드폰 번호 가 존재 하 는 지 여 부 를 판단 하 다.
*/
private fun isPhoneExist(phone: String) {
UserServiceFactory.isRegister(phone, 0).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//手机号码存在,去验证手机是否绑定第三方账号
if ("10001" == reason) {//핸드폰 번호 가 존재 하 므 로 핸드폰 이 제3자 계 정 에 연결 되 었 는 지 확인 하 세 요.
ToastUtils.showShort(getString(R.string.Mobile_phone_number_already_exists))
} else {//不存在
//调用获取验证码接口
} else {
//호출 인증번호 인터페이스
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
}
}
......@@ -123,7 +123,7 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
private fun showPhoneTypeWindows() {
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
//3 개의 등급 으로 돌아 가 는 선 택 된 위치 입 니 다.
val opt1tx = if (options.size > 0)
options[options1]
else
......@@ -138,16 +138,16 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
.setSubmitText(getString(R.string.ok))
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK) //선택 한 텍스트 색상 설정
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(optionsShow as List<Any>?)//一级选择器
pvOptions.setPicker(optionsShow as List<Any>?)
pvOptions.show()
}
/**
* 校验手机号和验证码
* 핸드폰 번호 와 인증번호 확인
*/
private fun verificationPhoneAndCode(phone: String, code: String) {
var map = HashMap<String, Any?>()
......@@ -156,7 +156,7 @@ class ModifyPhoneActivity : BaseActivity(), View.OnClickListener {
map["phone"] = phone
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
//修改手机号
//핸드폰 번호 를 고치다
var map = HashMap<String, Any?>()
map["avatar"] = ""
map["email"] = ""
......
......@@ -18,7 +18,7 @@ import com.alibaba.android.arouter.facade.annotation.Route
import kotlinx.android.synthetic.main.activity_protocol.*
/**
* 协议
* 협의 하 다.
*/
@Route(path = LoginProtocol.PROTOCOL)
class ProtocolActivity : BaseActivity() {
......@@ -27,8 +27,8 @@ class ProtocolActivity : BaseActivity() {
@JvmField
var type: Int = 0
private var mTitle = ""//标题
private var mContent = ""//内容
private var mTitle = ""
private var mContent = ""
override fun getLayoutId(): Int {
return R.layout.activity_protocol
......@@ -46,14 +46,14 @@ class ProtocolActivity : BaseActivity() {
"</style>"
t?.apply {
val language = SPUtil.getInstance(this@ProtocolActivity).selectLanguage
if (language == 1) {//韩文
if (language == 1) {//한글
if (title != null && content != null) {
if (title.size > 0 && content.size > 0) {
mTitle = title[0]
mContent = content[0]
}
}
} else {//中文
} else {//중국어.
if (title != null && content != null) {
if (title.size > 1 && content.size > 1) {
mTitle = title[1]
......
......@@ -36,16 +36,16 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
var options1Items = mutableListOf<PhoneTypeCodeEntity>()
var options = mutableListOf<Int>()//实际数字
var options = mutableListOf<Int>()//실제 숫자
var optionsShow = mutableListOf<String>()//显示文本
var optionsShow = mutableListOf<String>()//텍스트 보이 기
var phoneCode = 82//默认手机区域码
var phoneCode = 82
override fun onClick(v: View?) {
when (v?.id) {
R.id.bt_login -> {//注册下一步
R.id.bt_login -> {//다음 단계 등록
if (!cb_select.isChecked) {
ToastUtils.showShort(getString(R.string.Please_check_the_agreement_first))
......@@ -55,12 +55,12 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
var phone = et_phone_num.text.toString().trim()
var code = et_passwd.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
}
//判断验证码
//판단 인증번호
if (TextUtils.isEmpty(code)) {
ToastUtils.showShort(R.string.Please_enter_the_verification_code)
}
......@@ -68,9 +68,9 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
verificationPhoneAndCode(phone, code)
}
R.id.btn_code -> {//获取验证码
R.id.btn_code -> {//인증번호 가 져 오기
var phone = et_phone_num.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
......@@ -79,11 +79,11 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
isPhoneExist(phone)
}
R.id.tv_account_login -> {//已有账号登录
R.id.tv_account_login -> {//이미 계 정 로그 인
finish()
}
R.id.tv_forget_password -> {//忘记密码
R.id.tv_forget_password -> {//비밀 번 호 를 잊어버리다.
finish()
ARouter.getInstance().build(LoginProtocol.FORGET_PASSWORD).navigation()
}
......@@ -93,23 +93,23 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
showPhoneTypeWindows()
}
R.id.tv_user_protocol -> {//用户授权协议
R.id.tv_user_protocol -> {//사용자 인증 프로 토 콜
ARouter.getInstance().build(LoginProtocol.PROTOCOL).withInt("type", 0).navigation()
}
}
}
/**
* 判断当前手机号是否存在
* 현재 핸드폰 번호 가 존재 하 는 지 여 부 를 판단 하 다.
*/
private fun isPhoneExist(phone: String) {
UserServiceFactory.isRegister(phone, 0).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//手机号码存在
if ("10001" == reason) {//핸드폰 번호 가 존재 합 니 다.
ToastUtils.showShort(getString(R.string.Mobile_phone_number_already_exists))
} else {//不存在
//调用获取验证码接口
} else {//존재 하지 않 음
//호출 인증번호 인터페이스
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
}
}
......@@ -118,7 +118,7 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
}
/**
* 校验手机号和验证码
* 핸드폰 번호 와 인증번호 확인
*/
private fun verificationPhoneAndCode(phone: String, code: String) {
var codeUuid = smsCodeImpl?.uuid
......@@ -132,7 +132,7 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
map["phone"] = phone
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
//验证成功跳转到邮箱界面
//검증 성공 메 일주 소 인터페이스 로 전송
ARouter.getInstance().build(REGISTER_EMAIL)
.withString("phone", phone)
.withString("native_code", phoneCode.toString())
......@@ -203,7 +203,7 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
}
/**
* 初始化加载手机号码类型
* 로 딩 핸드폰 번호 유형 초기 화
*/
private fun initPhoneTypeData() {
Thread(Runnable {
......@@ -213,7 +213,7 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
options.add(options1Items[i].code)
if (SPUtil.getInstance(this).selectLanguage != 1) {//中文
optionsShow.add("+${options1Items[i].code}(${options1Items[i].zh})")
} else {//韩文
} else {//한글
optionsShow.add("+${options1Items[i].code}(${options1Items[i].ko})")
}
}
......@@ -221,7 +221,7 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
}
private fun showPhoneTypeWindows() {
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
val opt1tx = if (options.size > 0)
options[options1]
else
......@@ -236,11 +236,11 @@ class RegisterActivity : BaseActivity(), View.OnClickListener {
.setSubmitText(getString(R.string.ok))
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK)
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(optionsShow as List<Any>?)//一级选择器
pvOptions.setPicker(optionsShow as List<Any>?)
pvOptions.show()
}
}
......@@ -37,7 +37,7 @@ class RegisterEmailActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_code -> {//获取邮箱验证码
R.id.btn_code -> {//메 일 박스 인증번호 가 져 오기
/* var email = et_phone_num.text.toString().trim()
if (TextUtils.isEmpty(email)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_mailbox))
......@@ -69,7 +69,7 @@ class RegisterEmailActivity : BaseActivity(), View.OnClickListener {
requestIsEmail(email)
}
R.id.tv_email_protocol -> {//邮箱接收协议
R.id.tv_email_protocol -> {//메 일 박스 수신 프로 토 콜
ARouter.getInstance().build(LoginProtocol.PROTOCOL).withInt("type", 1).navigation()
}
}
......@@ -78,7 +78,7 @@ class RegisterEmailActivity : BaseActivity(), View.OnClickListener {
/* */
/**
* 校验邮箱和验证码
* 메 일주 소 체크 와 인증번호
*//*
private fun verificationPhoneAndCode(email: String, code: String) {
var map = HashMap<String, Any?>()
......@@ -97,18 +97,18 @@ class RegisterEmailActivity : BaseActivity(), View.OnClickListener {
})
}*/
//请求接口判断邮箱是否存在
//요청 인터페이스 판단 메 일주 소 존재 여부
private fun requestIsEmail(email: String) {
UserServiceFactory.isRegister(email, 1).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//邮箱存在
if ("10001" == reason) {//메 일주 소 존재
tv_email_register.text = getString(R.string.mailbox_id_is_registered)
et_phone_num.setTextColor(ContextCompat.getColor(this@RegisterEmailActivity,R.color.btn_bg))
} else {//不存在
//调用获取邮箱验证码接口
} else {//존재 하지 않 음
//호출 획득 메 일주 소 인증번호 인터페이스
// smsCodeImpl?.getEmailCode(email, btn_code)
//跳转到下一页
//다음 페이지 로 건 너 뛰 기
ARouter.getInstance().build(REGISTER_INPUT)
.withString("phone", phone)
.withString("email", email)
......
......@@ -38,11 +38,12 @@ import java.util.*
@Route(path = IS_BAND_PHONE)
class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
private var mState = 0//0正常状态手机号码不存在,1手机号码存在已绑定第三方账号,2手机号码存在未绑定第三方账号
private var mState = 0//0 정상 상태 핸드폰 번호 가 존재 하지 않 습 니 다. 1 핸드폰 번 호 는 이미
// 제3자 계 정 에 연결 되 어 있 고 2 핸드폰 번 호 는 제3자 계 정 에 연결 되 지 않 습 니 다.
override fun onClick(v: View?) {
when (v?.id) {
R.id.bt_login -> {//注册下一步
R.id.bt_login -> {//다음 단계 등록
if (!cb_select.isChecked) {
ToastUtils.showShort(getString(R.string.Please_check_the_agreement_first))
return
......@@ -51,12 +52,12 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
var phone = et_phone_num.text.toString().trim()
var code = et_passwd.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
}
//判断验证码
//판단 인증번호
if (TextUtils.isEmpty(code)) {
ToastUtils.showShort(R.string.Please_enter_the_verification_code)
}
......@@ -64,9 +65,9 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
verificationPhoneAndCode(phone, code)
}
R.id.btn_code -> {//获取验证码
R.id.btn_code -> {//인증번호 가 져 오기
var phone = et_phone_num.text.toString().trim()
//判断手机号码
//핸드폰 번호 판단
if (TextUtils.isEmpty(phone)) {
ToastUtils.showShort(getString(R.string.Please_enter_your_cell_phone_number))
return
......@@ -80,7 +81,7 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
showPhoneTypeWindows()
}
R.id.tv_user_protocol -> {//用户授权协议
R.id.tv_user_protocol -> {//사용자 인증 프로 토 콜
ARouter.getInstance().build(LoginProtocol.PROTOCOL).withInt("type", 0).navigation()
}
}
......@@ -90,11 +91,11 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
var options1Items = mutableListOf<PhoneTypeCodeEntity>()
var options = mutableListOf<Int>()//实际数字
var options = mutableListOf<Int>()//실제 숫자
var optionsShow = mutableListOf<String>()//显示文本
var optionsShow = mutableListOf<String>()//텍스트 보이 기
var phoneCode = 82//默认手机区域码
var phoneCode = 82//기본 핸드폰 구역 코드
override fun getLayoutId(): Int {
return R.layout.activity_is_bind_phone
......@@ -116,17 +117,17 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
}
/**
* 判断当前手机号是否存在
* 현재 핸드폰 번호 가 존재 하 는 지 여 부 를 판단 하 다.
*/
private fun isPhoneExist(phone: String) {
UserServiceFactory.isRegister(phone, 0).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//手机号码存在,去验证手机是否绑定第三方账号
if ("10001" == reason) {//핸드폰 번호 가 존재 하 므 로 핸드폰 이 제3자 계 정 에 연결 되 었 는 지 확인 하 세 요.
goVerification(phone, 0, 0)
//ToastUtils.showShort(getString(R.string.Mobile_phone_number_already_exists))
} else {//不存在
//调用获取验证码接口
} else {//존재 하지 않 음
//호출 인증번호 인터페이스
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
mState = 0
}
......@@ -135,15 +136,15 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
})
}
//去验证手机号是否绑定第三方账号
//핸드폰 번호 가 제3자 계 정 에 연결 되 었 는 지 확인 하 세 요.
private fun goVerification(phone: String, type: Int, thirdType: Int) {
UserServiceFactory.isBindingThird(phone, type, thirdType).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//已绑定
if ("10001" == reason) {//이미 귀속
mState = 1
ToastUtils.showShort(getString(R.string.the_phone_number_is_already_bound))
} else {//没有绑定
} else {//바 인 딩 없 음
mState = 2
smsCodeImpl?.getCode(phone, phoneCode.toString(), btn_code, "0")
}
......@@ -153,7 +154,7 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
}
/**
* 校验手机号和验证码
* 핸드폰 번호 와 인증번호 확인
*/
private fun verificationPhoneAndCode(phone: String, code: String) {
var codeUuid = smsCodeImpl?.uuid
......@@ -168,20 +169,20 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
if (mState == 0) {
//验证成功跳转到邮箱界面
//검증 성공 메 일주 소 인터페이스 로 전송
ARouter.getInstance().build(LoginProtocol.REGISTER_EMAIL_WX)
.withString("phone", phone)
.withString("native_code", phoneCode.toString())
.navigation()
} else if (mState == 1) {
ToastUtils.showShort(getString(R.string.the_phone_number_is_already_bound))
} else {//未绑定第三方账号
} else {//제3자 계 정 에 귀속 되 지 않 음
var map = HashMap<String, Any?>()
map["phone"] = phone
map["type"] = 1
UserServiceFactory.accountBinding(map).subscribe(object : AbstractDialogSubscriber<UserInfoBean>(this@IsBindPhoneActivity) {
override fun onNext(userInfoBean: UserInfoBean) {
DankalApplication.setLogin(true)//设置账号已登录
DankalApplication.setLogin(true)//계 정 설정 이미 로그 인
val userResponseBody = UserResponseBody()
val tokenBean = UserResponseBody.TokenBean()
tokenBean.token = userInfoBean.access_token
......@@ -243,7 +244,7 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
}
/**
* 初始化加载手机号码类型
* 로 딩 핸드폰 번호 유형 초기 화
*/
private fun initPhoneTypeData() {
Thread(Runnable {
......@@ -253,7 +254,7 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
options.add(options1Items[i].code)
if (SPUtils.get(Constant.EVENT_REFRESH_LANGUAGE, "ch") == "ch") {//中文
optionsShow.add("+${options1Items[i].code}(${options1Items[i].zh})")
} else {//韩文
} else {//한글
optionsShow.add("+${options1Items[i].code}(${options1Items[i].ko})")
}
}
......@@ -262,7 +263,7 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
private fun showPhoneTypeWindows() {
val pvOptions = OptionsPickerBuilder(this, OnOptionsSelectListener { options1, options2, options3, v ->
//返回的分别是三个级别的选中位置
val opt1tx = if (options.size > 0)
options[options1]
else
......@@ -275,11 +276,11 @@ class IsBindPhoneActivity : BaseActivity(), View.OnClickListener {
.setDividerColor(Color.WHITE)
.setCancelColor(Color.parseColor("#4A4A4A"))
.setSubmitColor(Color.parseColor("#FF6B5C"))
.setTextColorCenter(Color.BLACK) //设置选中项文字颜色
.setTextColorCenter(Color.BLACK)
.setContentTextSize(20)
.build<Any>()
pvOptions.setPicker(optionsShow as List<Any>?)//一级选择器
pvOptions.setPicker(optionsShow as List<Any>?)
pvOptions.show()
}
}
......@@ -35,7 +35,7 @@ class RegisterWXEmailActivity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.btn_code -> {//获取邮箱验证码
R.id.btn_code -> {
}
R.id.bt_login -> {
......@@ -54,7 +54,7 @@ class RegisterWXEmailActivity : BaseActivity(), View.OnClickListener {
requestIsEmail(email)
}
R.id.tv_email_protocol -> {//邮箱接收协议
R.id.tv_email_protocol -> {
// ARouter.getInstance().build(LoginProtocol.PROTOCOL).withInt("type", 1).navigation()
}
}
......@@ -63,7 +63,7 @@ class RegisterWXEmailActivity : BaseActivity(), View.OnClickListener {
/* */
/**
* 校验邮箱和验证码
* 메 일주 소 체크 와 인증번호
*//*
private fun verificationPhoneAndCode(email: String, code: String) {
var map = HashMap<String, Any?>()
......@@ -72,7 +72,7 @@ class RegisterWXEmailActivity : BaseActivity(), View.OnClickListener {
map["phone"] = email
UserServiceFactory.smsCode(map).subscribe(object : AbstractDialogSubscriber<ResponseBody>(this) {
override fun onNext(t: ResponseBody) {
//跳转到下一页
//다음 페이지 로 건 너 뛰 기
ARouter.getInstance().build(REGISTER_INPUT)
.withString("phone", phone)
.withString("email", email)
......@@ -82,17 +82,17 @@ class RegisterWXEmailActivity : BaseActivity(), View.OnClickListener {
})
}*/
//请求接口判断邮箱是否存在
//요청 인터페이스 판단 메 일주 소 존재 여부
private fun requestIsEmail(email: String) {
UserServiceFactory.isRegister(email, 1).subscribe(object : AbstractDialogSubscriber<IsRegisterPhoneOrEmailEntity>(this) {
override fun onNext(t: IsRegisterPhoneOrEmailEntity) {
t.apply {
if ("10001" == reason) {//邮箱存在
if ("10001" == reason) {//메 일주 소 존재
tv_email_register.text = getString(R.string.mailbox_id_is_registered)
} else {//不存在
//调用获取邮箱验证码接口
} else {//존재 하지 않 음
//호출 획득 메 일주 소 인증번호 인터페이스
// smsCodeImpl?.getEmailCode(email, btn_code)
//跳转到下一页
//다음 페이지 로 건 너 뛰 기
ARouter.getInstance().build(REGISTER_INPUT_WX)
.withString("phone", phone)
.withString("email", email)
......
......@@ -517,7 +517,7 @@
<string name="srl_header_release">Release Instant Refresh</string>
<string name="srl_header_finish">Refresh to complete</string>
<string name="srl_header_failed">Refresh the failure</string>
<string name="srl_header_update">The last update M-d HH:mm</string>
<string name="srl_header_update"> M-d HH:mm</string>
<string name="srl_header_secondary">Release to the second floor</string>
<string name="srl_footer_pulling">Pull up loads more</string>
......
......@@ -11,7 +11,7 @@ buildscript {
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
classpath 'com.google.gms:google-services:4.2.0'
//classpath 'com.google.gms:google-services:4.2.0'
classpath 'com.novoda:bintray-release:0.9.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
......
if (assembleApp.toBoolean()) {
apply plugin: 'com.android.library'
} else {
......
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