Commit 5d5d2e5c by zxl

解决因为odoo接口需要session导致没法提交数据问题

parent 79f4503b
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="1.8" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings"> <component name="GradleSettings">
<option name="linkedExternalProjectsSettings"> <option name="linkedExternalProjectsSettings">
<GradleProjectSettings> <GradleProjectSettings>
<option name="testRunner" value="PLATFORM" />
<option name="distributionType" value="DEFAULT_WRAPPED" /> <option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" /> <option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules"> <option name="modules">
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="MavenRepo" />
<option name="name" value="MavenRepo" />
<option name="url" value="https://repo.maven.apache.org/maven2/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven2" />
<option name="name" value="maven2" />
<option name="url" value="https://jitpack.io" />
</remote-repository>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="DesignSurface">
<option name="filePathToZoomLevelMap">
<map>
<entry key="..\:/studio work/HuaYangProject/app/src/main/res/layout/activity_main.xml" value="0.24114583333333334" />
<entry key="..\:/studio work/HuaYangProject/app/src/main/res/layout/activity_transport.xml" value="0.24114583333333334" />
<entry key="..\:/studio work/HuaYangProject/app/src/main/res/layout/recycler_item_transport.xml" value="0.24114583333333334" />
<entry key="..\:/studio work/HuaYangProject/app/src/main/res/layout/recycler_menu_item.xml" value="0.24114583333333334" />
<entry key="..\:/studio work/HuaYangProject/app/src/main/res/layout/recycler_menu_line.xml" value="0.24114583333333334" />
</map>
</option>
</component>
<component name="ProjectInspectionProfilesVisibleTreeState"> <component name="ProjectInspectionProfilesVisibleTreeState">
<entry key="Project Default"> <entry key="Project Default">
<profile-state> <profile-state>
...@@ -74,7 +85,7 @@ ...@@ -74,7 +85,7 @@
</profile-state> </profile-state>
</entry> </entry>
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" /> <output url="file://$PROJECT_DIR$/build/classes" />
</component> </component>
<component name="ProjectType"> <component name="ProjectType">
......
...@@ -3,9 +3,7 @@ ...@@ -3,9 +3,7 @@
<component name="RunConfigurationProducerService"> <component name="RunConfigurationProducerService">
<option name="ignoredProducers"> <option name="ignoredProducers">
<set> <set>
<option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" /> <option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
</set> </set>
</option> </option>
</component> </component>
......
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
android { android {
signingConfigs {
debug {
storeFile file('F:\\studiowork\\rongke.jks')
storePassword 'android'
keyAlias 'android'
keyPassword 'android'
}
}
compileSdkVersion 30 compileSdkVersion 30
buildToolsVersion "30.0.2" buildToolsVersion "30.0.2"
defaultConfig { defaultConfig {
...@@ -19,12 +27,17 @@ android { ...@@ -19,12 +27,17 @@ android {
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
} }
} }
lintOptions{
checkReleaseBuilds false
abortOnError false
}
} }
dependencies { dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar']) implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.google.android.material:material:1.3.0'
testImplementation 'junit:junit:4.12' testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.1' androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
...@@ -32,10 +45,13 @@ dependencies { ...@@ -32,10 +45,13 @@ dependencies {
implementation 'com.android.support:design:30.0.0' implementation 'com.android.support:design:30.0.0'
//屏幕自适应 //屏幕自适应
implementation 'me.jessyan:autosize:1.1.2'
implementation 'me.jessyan:autosize:1.2.1'
//黄油刀 //黄油刀
implementation 'com.jakewharton:butterknife:7.0.1' implementation 'com.jakewharton:butterknife:7.0.1'
// implementation 'com.jakewharton:butterknife:10.2.1'
// annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.1'
//谷歌权限三方 //谷歌权限三方
implementation 'pub.devrel:easypermissions:1.2.0' implementation 'pub.devrel:easypermissions:1.2.0'
//网络框架 //网络框架
......
...@@ -4,6 +4,9 @@ import android.content.Context; ...@@ -4,6 +4,9 @@ import android.content.Context;
import com.roke.huayangproject.base.BaseApplication; import com.roke.huayangproject.base.BaseApplication;
import me.jessyan.autosize.AutoSizeCompat;
import me.jessyan.autosize.AutoSizeConfig;
/** /**
* 自定义application * 自定义application
...@@ -22,6 +25,8 @@ public class HuaYangApp extends BaseApplication { ...@@ -22,6 +25,8 @@ public class HuaYangApp extends BaseApplication {
public void onCreate() { public void onCreate() {
super.onCreate(); super.onCreate();
mContext = this; mContext = this;
} }
public static Context getContext(){ public static Context getContext(){
......
package com.roke.huayangproject; package com.roke.huayangproject;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle; import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.lzy.okgo.OkGo;
import com.roke.huayangproject.adapter.MenuAdapter;
import com.roke.huayangproject.bean.MenuInfo;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.utils.DialogUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import com.roke.huayangproject.utils.SimplexToast;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class MainActivity extends AppCompatActivity { public class MainActivity extends AppCompatActivity {
@Bind(R.id.tv_toolbar_title)
TextView tvToolbarTitle;
@Bind(R.id.iv_scan)
ImageView ivScan;
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
private Context mContext;
private GridLayoutManager manager = new GridLayoutManager(this, 5);
private List<MenuInfo.ResultBean> datas = new ArrayList<>();
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);
ButterKnife.bind(this);
if (null != getSupportActionBar()) {
getSupportActionBar().hide();
}
tvToolbarTitle.setText("功能列表");
ivScan.setVisibility(View.GONE);
mContext = this;
rvMenu.setLayoutManager(manager);
DialogUtils.getInstance().createLoadingDialog(mContext, "请求中...").showDialog();
initData();
}
private SharedPreferences pref;
private SharedPreferences.Editor editor;
private void initData() {
pref = getSharedPreferences("IpInfo",MODE_PRIVATE);
editor = pref.edit();
String ip = "http://"+pref.getString("ip",null)+"/";
ShipHttpClient.getInstance().getMenuByUser(ip, mContext, HuaYangApp.getUser(), new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
DialogUtils.getInstance().closeDialog();
MenuInfo info = JsonUtil.parseJsonToBean(json,MenuInfo.class);
if (null!=info &&null!= info.getResult() && info.getResult().size() >0){
for (MenuInfo.ResultBean resultBean : info.getResult()) {//遍历所有的标题
if (resultBean.getMenu_parentid() == 0){//如果是标题
resultBean.setItemType(0);
datas.add(resultBean);
for (MenuInfo.ResultBean bean : info.getResult()) {
if (bean.getMenu_parentid() == resultBean.getMenu_id()){
bean.setItemType(1);
datas.add(bean);
}
}
}
}
setRecycler();
}
}
@Override
public void onError(String msg) {
DialogUtils.getInstance().closeDialog();
SimplexToast.show(mContext,msg);
}
});
}
private void setRecycler() {
MenuAdapter adapter = new MenuAdapter(mContext, datas, new MenuAdapter.OnItemClickListener() {
@Override
public void onItemClick(int position) {
try {
MenuInfo.ResultBean resultBean = datas.get(position);
String menu_relevant_interface = resultBean.getMenu_relevant_interface();
//这里解析时候传入的类名,必须是包名加文件名,加类名
Class menu_relevant_interface1 = Class.forName(menu_relevant_interface);
Intent intent = new Intent(mContext,menu_relevant_interface1);
startActivity(intent);
} catch (ClassNotFoundException e) {
SimplexToast.show(mContext,"菜单解析失败");
}
}
});
rvMenu.setAdapter(adapter);
}
@OnClick(R.id.iv_scan)
public void onViewClicked() {
SimplexToast.show(mContext,"需要扫描么?");
// Intent intent = new Intent(mContext, ScanActivity.class);
// startActivityForResult(intent,999);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode ==999 &&resultCode == 999){
if (data!=null){
String scanResult =data.getStringExtra("scan");
ShowMsgUtils.ShowMessage(mContext,scanResult);
}
}else if (requestCode ==995 &&resultCode == 995){
if (data!=null){
//刷新数据
}
}
}
@Override
protected void onDestroy() {
super.onDestroy();
ButterKnife.unbind(this);
OkGo.getInstance().cancelTag(mContext);
} }
} }
\ No newline at end of file
package com.roke.huayangproject.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.roke.huayangproject.R;
import com.roke.huayangproject.bean.LoadingListBean;
import java.util.List;
public class LoadingListAdapter extends BaseQuickAdapter<LoadingListBean.ResultBean, BaseViewHolder> {
public LoadingListAdapter(List<LoadingListBean.ResultBean> data) {
super(R.layout.recycler_item_loadinglist, data);
}
@Override
protected void convert(BaseViewHolder helper, LoadingListBean.ResultBean item) {
helper.setText(R.id.et_cph,item.getCar_no())
.setText(R.id.et_ydh,item.getOrder_code())
.setText(R.id.et_rq,item.getSend_date())
;
}
}
package com.roke.huayangproject.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.roke.huayangproject.R;
import com.roke.huayangproject.bean.MenuInfo;
import java.util.List;
/**
* Created by 赵新龙 on 2019/7/8.
*/
public class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder> {
private Context context;
private List<MenuInfo.ResultBean> menuInfos;
private OnItemClickListener listener;
private LayoutInflater mInflater;
public MenuAdapter(Context context , List<MenuInfo.ResultBean> mData, OnItemClickListener listener) {
this.context =context;
menuInfos = mData;
this.listener = listener;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
ViewHolder vh = null;
mInflater = LayoutInflater.from(context);
//判断viewtype类型返回不同Viewholder
switch (viewType) {
case 0:
vh = new HolderOne(mInflater.inflate(R.layout.recycler_menu_line, parent, false));
break;
case 1:
vh = new HolderTwo(mInflater.inflate(R.layout.recycler_menu_item, parent,false));
break;
}
return vh;
}
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
super.onAttachedToRecyclerView(recyclerView);
final RecyclerView.LayoutManager manager = recyclerView.getLayoutManager();
if (manager instanceof GridLayoutManager) {
final GridLayoutManager gridManager = (GridLayoutManager) manager;
gridManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
int type = getItemViewType(position);
switch (type) {
case 0:
return 5;
case 1:
return 1;
}
return 1;
}
});
}
}
@Override
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
if(menuInfos.get(position).getItemType() == 0){
holder.mTitle.setText(menuInfos.get(position).getMenu_name());
}else {
holder.mItem.setText(menuInfos.get(position).getMenu_name());
int drawable = context.getResources().getIdentifier( menuInfos.get(position).getMenu_icon_name(), "drawable", context.getApplicationInfo().packageName);
if (drawable == 0 || drawable == -1){
drawable = context.getResources().getIdentifier( "jianhuo", "drawable", context.getApplicationInfo().packageName);
}
holder.mImageView.setImageResource(drawable);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (null!=listener){
listener.onItemClick(holder.getAbsoluteAdapterPosition());
}
}
});
}
}
@Override
public int getItemCount() {
return menuInfos.size();
}
@Override
public int getItemViewType(int position) {
int itemType = menuInfos.get(position).getItemType();
return itemType;
}
public class ViewHolder extends RecyclerView.ViewHolder {
public TextView mTitle;
public TextView mItem;
public ImageView mImageView;
public ViewHolder(View itemView) {
super(itemView);
}
}
public class HolderOne extends ViewHolder {
public HolderOne(View viewHolder) {
super(viewHolder);
mTitle= (TextView) viewHolder.findViewById(R.id.tv_title);
}
}
public class HolderTwo extends ViewHolder {
public HolderTwo(final View viewHolder) {
super(viewHolder);
mItem =(TextView)viewHolder.findViewById(R.id.tv_title);
mImageView =(ImageView) viewHolder.findViewById(R.id.iv_img);
}
}
public interface OnItemClickListener{
void onItemClick(int position);
}
}
package com.roke.huayangproject.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.roke.huayangproject.R;
import com.roke.huayangproject.bean.LoadingInfo;
import com.roke.huayangproject.bean.TransportBean;
import java.util.List;
public class TransportAdapter extends BaseQuickAdapter<TransportBean.ResultBean, BaseViewHolder> {
public TransportAdapter(List<TransportBean.ResultBean> data) {
super(R.layout.recycler_item_transport, data);
}
@Override
protected void convert(BaseViewHolder helper, TransportBean.ResultBean item) {
helper.setText(R.id.et_cph,item.getCar_no())
;
}
}
package com.roke.huayangproject.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.roke.huayangproject.R;
import com.roke.huayangproject.bean.LoadingInfo;
import com.roke.huayangproject.bean.TransportBean;
import java.util.List;
public class TreansportDetailAdapter extends BaseQuickAdapter<TransportBean.ResultBean.OrderDetailsBean, BaseViewHolder> {
public TreansportDetailAdapter(List<TransportBean.ResultBean.OrderDetailsBean> data) {
super(R.layout.recycler_item_transportdetail, data);
}
@Override
protected void convert(BaseViewHolder helper, TransportBean.ResultBean.OrderDetailsBean item) {
helper.setText(R.id.et_cpmc,item.getProduct_name())
.setText(R.id.et_cpsl,item.getProduct_num())
;
}
}
...@@ -72,7 +72,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseVie ...@@ -72,7 +72,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseVie
} }
//默认有菜单 //默认有菜单
protected boolean getHasMenu() { protected boolean getHasMenu() {
return true; return false;
} }
protected abstract void init(); protected abstract void init();
...@@ -153,7 +153,11 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseVie ...@@ -153,7 +153,11 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseVie
} }
return super.onCreateOptionsMenu(menu); return super.onCreateOptionsMenu(menu);
} }
/**
* 是否按照宽度进行等比例适配 (为了保证在高宽比不同的屏幕上也能正常适配, 所以只能在宽度和高度之中选择一个作为基准进行适配)
*
* @return {@code true} 为按照宽度进行适配, {@code false} 为按照高度进行适配
*/
@Override @Override
public boolean isBaseOnWidth() { public boolean isBaseOnWidth() {
return false; return false;
......
...@@ -8,6 +8,7 @@ import com.lzy.okgo.OkGo; ...@@ -8,6 +8,7 @@ import com.lzy.okgo.OkGo;
import com.lzy.okgo.cache.CacheEntity; import com.lzy.okgo.cache.CacheEntity;
import com.lzy.okgo.cache.CacheMode; import com.lzy.okgo.cache.CacheMode;
import com.lzy.okgo.cookie.store.MemoryCookieStore; import com.lzy.okgo.cookie.store.MemoryCookieStore;
import com.lzy.okgo.model.HttpHeaders;
import java.util.Map; import java.util.Map;
import java.util.logging.Level; import java.util.logging.Level;
...@@ -45,6 +46,8 @@ public class BaseApplication extends Application { ...@@ -45,6 +46,8 @@ public class BaseApplication extends Application {
} }
public void initOkgo() { public void initOkgo() {
// HttpHeaders headers =new HttpHeaders();
// headers.put("Content-Type","application/json");
// HttpParams params = new HttpParams(); // HttpParams params = new HttpParams();
// params.put("jtoken", Util.getUserToken()+""); //全局请求参数 // params.put("jtoken", Util.getUserToken()+""); //全局请求参数
//必须调用初始化 //必须调用初始化
......
package com.roke.huayangproject.bean;
import java.io.Serializable;
import java.util.List;
//create : 3C
//时间2021/11/3 13:39
public class LoadingListBean implements Serializable {
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public List<ResultBean> getResult() {
return result;
}
public void setResult(List<ResultBean> result) {
this.result = result;
}
/**
* state : success
* msg : 查询成功
* result : [{"order_id":1,"car_no":"鲁A123456","order_code":"S00001","send_date":"2021-10-12"},{"order_id":3,"car_no":"鲁A123456","order_code":"S00002","send_date":"2021-10-15"}]
* code : 0
*/
private String state;
private String msg;
private String code;
private List<ResultBean> result;
public static class ResultBean implements Serializable {
public String getOrder_id() {
return order_id;
}
public void setOrder_id(String order_id) {
this.order_id = order_id;
}
public String getCar_no() {
return car_no;
}
public void setCar_no(String car_no) {
this.car_no = car_no;
}
public String getOrder_code() {
return order_code;
}
public void setOrder_code(String order_code) {
this.order_code = order_code;
}
public String getSend_date() {
return send_date;
}
public void setSend_date(String send_date) {
this.send_date = send_date;
}
/**
* order_id : 1
* car_no : 鲁A123456
* order_code : S00001
* send_date : 2021-10-12
*/
private String order_id;
private String car_no;
private String order_code;
private String send_date;
}
}
package com.roke.huayangproject.bean;
import java.util.List;
/**
* Created by 赵新龙 on 2019/7/8.
*/
public class MenuInfo {
/**
* result : [{"menu_relevant_interface":false,"menu_default_open":false,"menu_name":"生产","menu_id":5,"menu_parentid":0,"menu_code":"MES-SC"},{"menu_relevant_interface":"QualityInspectionActivity","menu_default_open":false,"menu_name":"质检工作台","menu_id":6,"menu_parentid":5,"menu_code":"MES-ZJGZT"},{"menu_relevant_interface":"MaintainActivity","menu_default_open":false,"menu_name":"维保工作台","menu_id":7,"menu_parentid":5,"menu_code":"MES-WBGZT"},{"menu_relevant_interface":"ProductionActivity","menu_default_open":false,"menu_name":"生产报工","menu_id":8,"menu_parentid":5,"menu_code":"MES-SCBG"}]
* code : 0
* message :
*/
private String code;
private String message;
private List<ResultBean> result;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public List<ResultBean> getResult() {
return result;
}
public void setResult(List<ResultBean> result) {
this.result = result;
}
public static class ResultBean {
/**
* menu_default_open : false
* menu_code : MES-SC
* menu_id : 5
* menu_icon_name :
* menu_name : 生产
* menu_parentid : 0
* menu_relevant_interface :
*/
private int itemType ;
private boolean menu_default_open;
private String menu_code;
private int menu_id;
private String menu_icon_name;
private String menu_name;
private int menu_parentid;
private String menu_relevant_interface;
public boolean isMenu_default_open() {
return menu_default_open;
}
public void setMenu_default_open(boolean menu_default_open) {
this.menu_default_open = menu_default_open;
}
public String getMenu_code() {
return menu_code;
}
public void setMenu_code(String menu_code) {
this.menu_code = menu_code;
}
public int getMenu_id() {
return menu_id;
}
public void setMenu_id(int menu_id) {
this.menu_id = menu_id;
}
public String getMenu_icon_name() {
return menu_icon_name;
}
public void setMenu_icon_name(String menu_icon_name) {
this.menu_icon_name = menu_icon_name;
}
public String getMenu_name() {
return menu_name;
}
public void setMenu_name(String menu_name) {
this.menu_name = menu_name;
}
public int getMenu_parentid() {
return menu_parentid;
}
public void setMenu_parentid(int menu_parentid) {
this.menu_parentid = menu_parentid;
}
public String getMenu_relevant_interface() {
return menu_relevant_interface;
}
public void setMenu_relevant_interface(String menu_relevant_interface) {
this.menu_relevant_interface = menu_relevant_interface;
}
public int getItemType() {
return itemType;
}
public void setItemType(int itemType) {
this.itemType = itemType;
}
}
}
package com.roke.huayangproject.bean;
import java.io.Serializable;
import java.util.List;
//create : 3C
//时间2021/11/3 13:39
public class TransportBean {
/**
* state : success
* msg : 查询成功
* result : [{"car_no":"鲁A111111","car_id":2,"order":[{"order_id":1,"order_code":"S00001"}],"order_details":[{"product_name":"产品1","product_num":1}]},{"car_no":"鲁A123456","car_id":1,"order":[{"order_id":2,"order_code":"S00001"},{"order_id":6,"order_code":"S00005"},{"order_id":7,"order_code":"S00006"}],"order_details":[{"product_name":"产品1","product_num":3},{"product_name":"产品2","product_num":2}]}]
* code : 0
*/
private String state;
private String msg;
private String code;
private List<ResultBean> result;
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public List<ResultBean> getResult() {
return result;
}
public void setResult(List<ResultBean> result) {
this.result = result;
}
public static class ResultBean implements Serializable {
/**
* car_no : 鲁A111111
* car_id : 2
* order : [{"order_id":1,"order_code":"S00001"}]
* order_details : [{"product_name":"产品1","product_num":1}]
*/
private String car_no;
private String car_id;
private List<OrderBean> order;
private List<OrderDetailsBean> order_details;
public String getCar_no() {
return car_no;
}
public void setCar_no(String car_no) {
this.car_no = car_no;
}
public String getCar_id() {
return car_id;
}
public void setCar_id(String car_id) {
this.car_id = car_id;
}
public List<OrderBean> getOrder() {
return order;
}
public void setOrder(List<OrderBean> order) {
this.order = order;
}
public List<OrderDetailsBean> getOrder_details() {
return order_details;
}
public void setOrder_details(List<OrderDetailsBean> order_details) {
this.order_details = order_details;
}
public static class OrderBean implements Serializable{
/**
* order_id : 1
* order_code : S00001
*/
private String order_id;
private String order_code;
public String getOrder_id() {
return order_id;
}
public void setOrder_id(String order_id) {
this.order_id = order_id;
}
public String getOrder_code() {
return order_code;
}
public void setOrder_code(String order_code) {
this.order_code = order_code;
}
}
public static class OrderDetailsBean implements Serializable{
/**
* product_name : 产品1
* product_num : 1.0
*/
private String product_name;
private String product_num;
public String getProduct_name() {
return product_name;
}
public void setProduct_name(String product_name) {
this.product_name = product_name;
}
public String getProduct_num() {
return product_num;
}
public void setProduct_num(String product_num) {
this.product_num = product_num;
}
}
}
}
...@@ -5,6 +5,7 @@ import android.util.Log; ...@@ -5,6 +5,7 @@ import android.util.Log;
import com.lzy.okgo.callback.StringCallback; import com.lzy.okgo.callback.StringCallback;
import com.lzy.okgo.request.BaseRequest; import com.lzy.okgo.request.BaseRequest;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil; import com.roke.huayangproject.utils.JsonUtil;
import okhttp3.Call; import okhttp3.Call;
...@@ -40,7 +41,8 @@ public abstract class BaseCallback extends StringCallback { ...@@ -40,7 +41,8 @@ public abstract class BaseCallback extends StringCallback {
if (Integer.parseInt(JsonUtil.getFieldValue(JsonUtil.getFieldValue(json,"result"),"code")) == ShipHttpClient.RESULT_CODE_SUCCESS) { if (Integer.parseInt(JsonUtil.getFieldValue(JsonUtil.getFieldValue(json,"result"),"code")) == ShipHttpClient.RESULT_CODE_SUCCESS) {
onSuccessInfo(json); onSuccessInfo(json);
} else { } else {
onSuccessError(json);
onSuccessError(JsonUtil.getFieldValue(json,"result"));
} }
}else{ }else{
onSuccessError(json); onSuccessError(json);
......
...@@ -10,19 +10,28 @@ import android.os.Environment; ...@@ -10,19 +10,28 @@ import android.os.Environment;
public class Constant { public class Constant {
//尾部必须以/结尾 //尾部必须以/结尾
//测试接口地址:端口 //测试接口地址:端口
public static final String baseUrl = "http://222.173.210.250:48080/"; public static final String baseUrl = "http://49.4.30.236:9095/";
// public static final String baseUrl = "http://222.173.210.250:48080/";
//排队测试接口 //排队测试接口
public static final String ceshiUrl = "http://47.105.84.179/"; public static final String ceshiUrl = "http://47.105.84.179/";
//服务器地址 //服务器地址
public static final String database="JNDT_R3_WMS"; public static final String database="JNDT_R3_WMS";
//登录 //登录
public static final String login = "roke/login/"; public static final String login = "roke/login/";
//获取菜单 //
public static final String get_order_info = "send/get_order_info"; public static final String get_order_info = "send/get_order_info";
//获取菜单 //获取菜单
public static final String detail_button = "send/detail_button"; public static final String detail_button = "send/detail_button";
//拣货确认 //拣货确认
public static final String button_line_done = "send/button_line_done"; public static final String button_line_done = "send/button_line_done";
//获取菜单
public static final String getMenu = "roke/get_menu_info";
//获取出厂列表
public static final String get_transport_order = "send/get_transport_order";
//获取出厂列表
public static final String get_cc_order = "send/get_cc_order";
//出厂确认
public static final String set_out = "send/set_out";
......
...@@ -54,6 +54,15 @@ public class ShipHttpClient { ...@@ -54,6 +54,15 @@ public class ShipHttpClient {
} }
/**
* 获取菜单信息--暂时通过
*
* @param crabHttpCallback`
*/
public void getMenuByUser(String ip, Context context, String login, CrabHttpCallback<String> crabHttpCallback) {
String[] key = new String[]{"login"};
getRequestParams(context, ip + Constant.getMenu, crabHttpCallback, key, login);
}
/** /**
...@@ -67,6 +76,37 @@ public class ShipHttpClient { ...@@ -67,6 +76,37 @@ public class ShipHttpClient {
} }
/** /**
* 获取出厂列表
*
* @param crabHttpCallback`
*/
public void get_cc_order( Context context,CrabHttpCallback<String> crabHttpCallback) {
String[] key = new String[]{};
getRequestParamsGET(context, HuaYangApp.ip + Constant.get_cc_order, crabHttpCallback, key );
}
/**
* 获取卸车列表
*
* @param crabHttpCallback`
*/
public void get_transport_order_xc( Context context, CrabHttpCallback<String> crabHttpCallback) {
String[] key = new String[]{"mission_type"};
getRequestParamsGET(context, HuaYangApp.ip + Constant.get_transport_order, crabHttpCallback, key, "XH");
}
/**
* 获取装车列表
*
* @param crabHttpCallback`
*/
public void get_transport_order_zc( Context context, CrabHttpCallback<String> crabHttpCallback) {
String[] key = new String[]{"mission_type"};
getRequestParamsGET(context, HuaYangApp.ip + Constant.get_transport_order, crabHttpCallback, key, "ZC");
}
/**
* 确认装车,取消确认 * 确认装车,取消确认
* *
* @param crabHttpCallback` * @param crabHttpCallback`
...@@ -87,6 +127,16 @@ public class ShipHttpClient { ...@@ -87,6 +127,16 @@ public class ShipHttpClient {
getRequestParams(context, HuaYangApp.ip + Constant.button_line_done, crabHttpCallback, key, order_id,user_id); getRequestParams(context, HuaYangApp.ip + Constant.button_line_done, crabHttpCallback, key, order_id,user_id);
} }
/**
* 出厂确认
*
* @param crabHttpCallback`
*/
public void set_out( Context context, String car_id, CrabHttpCallback<String> crabHttpCallback) {
String[] key = new String[]{"car_id"};
getRequestParamsBySession(context, HuaYangApp.ip + Constant.set_out, crabHttpCallback, key,car_id);
}
// /** // /**
// * 图片上传 // * 图片上传
...@@ -157,14 +207,18 @@ public class ShipHttpClient { ...@@ -157,14 +207,18 @@ public class ShipHttpClient {
@Override @Override
public void onSuccessError(String json) { public void onSuccessError(String json) {
super.onSuccessError(json); super.onSuccessError(json);
if (!CommonUtils.isNull(JsonUtil.getFieldValue(json, "message"))) {
callback.onError(JsonUtil.getFieldValue(json, "message")); if (JsonUtil.isContains(json, "error")) {
callback.onError(JsonUtil.getFieldValue(json, "error"));
} else { } else {
if (!CommonUtils.isNull(JsonUtil.getFieldValue(json, "msg"))) { if (JsonUtil.isContains(json, "msg")){
callback.onError(JsonUtil.getFieldValue(json, "msg")); callback.onError(JsonUtil.getFieldValue(json, "msg"));
} else { }else if (JsonUtil.isContains(json,"result")){
callback.onError(JsonUtil.getFieldValue(JsonUtil.getFieldValue(json,"result"), "msg"));
}else{
callback.onError("系统开了会小差,请重试..."); callback.onError("系统开了会小差,请重试...");
} }
} }
} }
}); });
......
...@@ -4,6 +4,7 @@ import android.Manifest; ...@@ -4,6 +4,7 @@ import android.Manifest;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.graphics.Color; import android.graphics.Color;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
...@@ -31,6 +32,9 @@ import java.util.List; ...@@ -31,6 +32,9 @@ import java.util.List;
import java.util.Timer; import java.util.Timer;
import java.util.TimerTask; import java.util.TimerTask;
import me.jessyan.autosize.AutoSize;
import me.jessyan.autosize.AutoSizeCompat;
import me.jessyan.autosize.internal.CustomAdapt;
import pub.devrel.easypermissions.AppSettingsDialog; import pub.devrel.easypermissions.AppSettingsDialog;
import pub.devrel.easypermissions.EasyPermissions; import pub.devrel.easypermissions.EasyPermissions;
...@@ -39,7 +43,7 @@ import pub.devrel.easypermissions.EasyPermissions; ...@@ -39,7 +43,7 @@ import pub.devrel.easypermissions.EasyPermissions;
* Created by 赵新龙 on 2019/6/10. * Created by 赵新龙 on 2019/6/10.
*/ */
public class SplashActivity extends AppCompatActivity implements EasyPermissions.PermissionCallbacks{ public class SplashActivity extends AppCompatActivity implements EasyPermissions.PermissionCallbacks {
private int GET_UNKNOWN_APP_SOURCES = 5; private int GET_UNKNOWN_APP_SOURCES = 5;
@Override @Override
protected void onCreate(@Nullable Bundle savedInstanceState) { protected void onCreate(@Nullable Bundle savedInstanceState) {
...@@ -51,6 +55,8 @@ public class SplashActivity extends AppCompatActivity implements EasyPermissions ...@@ -51,6 +55,8 @@ public class SplashActivity extends AppCompatActivity implements EasyPermissions
//测试的时候需要添加,如果是真实的情况还需要根据具体情况设定 //测试的时候需要添加,如果是真实的情况还需要根据具体情况设定
} }
private void requestSavePermissions() { private void requestSavePermissions() {
PermissionUtil.requestStoragePermissions(this, new PermissionUtil.PermissionsCallBackListener() { PermissionUtil.requestStoragePermissions(this, new PermissionUtil.PermissionsCallBackListener() {
@Override @Override
......
...@@ -19,6 +19,7 @@ import com.roke.huayangproject.adapter.UnLoadingAdapter; ...@@ -19,6 +19,7 @@ import com.roke.huayangproject.adapter.UnLoadingAdapter;
import com.roke.huayangproject.base.BaseActivity; import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.bean.LoadingInfo; import com.roke.huayangproject.bean.LoadingInfo;
import com.roke.huayangproject.http.ShipHttpClient; import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil; import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils; import com.roke.huayangproject.utils.ShowMsgUtils;
import com.roke.huayangproject.utils.SimplexToast; import com.roke.huayangproject.utils.SimplexToast;
...@@ -35,7 +36,7 @@ import butterknife.OnClick; ...@@ -35,7 +36,7 @@ import butterknife.OnClick;
public class LoadingActivity extends BaseActivity { public class LoadingActivity extends BaseActivity {
@Bind(R.id.tv_ydh) @Bind(R.id.tv_ydh)
EditText tvYdh; TextView tvYdh;
@Bind(R.id.tv_cph) @Bind(R.id.tv_cph)
TextView tvCph; TextView tvCph;
@Bind(R.id.tv_czy) @Bind(R.id.tv_czy)
...@@ -54,12 +55,19 @@ public class LoadingActivity extends BaseActivity { ...@@ -54,12 +55,19 @@ public class LoadingActivity extends BaseActivity {
private int currentPosition = 0;//当前显示的页面 private int currentPosition = 0;//当前显示的页面
private UnLoadingAdapter unLoadingAdapter; private UnLoadingAdapter unLoadingAdapter;
private LoadingAdapter loadingAdapter; private LoadingAdapter loadingAdapter;
private String code,codeid;
private String scan; private String scan;
private List<LoadingInfo.ResultBean.DetailListBean> unLoadingDatas; private List<LoadingInfo.ResultBean.DetailListBean> unLoadingDatas;
@Override @Override
protected void init() { protected void init() {
tvYdh.setOnEditorActionListener(new MyEditGoodsListener()); code = getIntent().getStringExtra("code");
codeid = getIntent().getStringExtra("codeid");
if (!CommonUtils.isNull(code)){
tvYdh.setText(code);
requestByScan(code);
}
// tvYdh.setOnEditorActionListener(new MyEditGoodsListener());
tvCzy.setText(HuaYangApp.getUser()); tvCzy.setText(HuaYangApp.getUser());
rvMenu.setLayoutManager(new LinearLayoutManager(mContext)); rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
} }
...@@ -74,10 +82,6 @@ public class LoadingActivity extends BaseActivity { ...@@ -74,10 +82,6 @@ public class LoadingActivity extends BaseActivity {
return "装车确认"; return "装车确认";
} }
@Override
protected boolean hasActionBar() {
return false;
}
@Override @Override
protected boolean getHasMenu() { protected boolean getHasMenu() {
...@@ -101,7 +105,6 @@ public class LoadingActivity extends BaseActivity { ...@@ -101,7 +105,6 @@ public class LoadingActivity extends BaseActivity {
@Override @Override
public void requestByScan(String scan) { public void requestByScan(String scan) {
this.scan = scan; this.scan = scan;
showD(); showD();
ShipHttpClient.getInstance().get_order_info(mContext, scan, new ShipHttpClient.CrabHttpCallback<String>() { ShipHttpClient.getInstance().get_order_info(mContext, scan, new ShipHttpClient.CrabHttpCallback<String>() {
@Override @Override
...@@ -110,7 +113,6 @@ public class LoadingActivity extends BaseActivity { ...@@ -110,7 +113,6 @@ public class LoadingActivity extends BaseActivity {
info = JsonUtil.parseJsonToBean(json, LoadingInfo.class); info = JsonUtil.parseJsonToBean(json, LoadingInfo.class);
if (null != info && null != info.getResult() && null != info.getResult().getDetail_list() && info.getResult().getDetail_list().size() > 0) { if (null != info && null != info.getResult() && null != info.getResult().getDetail_list() && info.getResult().getDetail_list().size() > 0) {
tvCph.setText(info.getResult().getCar()); tvCph.setText(info.getResult().getCar());
setRecycleView(); setRecycleView();
} else { } else {
ShowMsgUtils.ShowMessage(mContext, "数据解析有误,请联系管理员!"); ShowMsgUtils.ShowMessage(mContext, "数据解析有误,请联系管理员!");
...@@ -185,7 +187,7 @@ public class LoadingActivity extends BaseActivity { ...@@ -185,7 +187,7 @@ public class LoadingActivity extends BaseActivity {
public void onViewClicked(View view) { public void onViewClicked(View view) {
switch (view.getId()) { switch (view.getId()) {
case R.id.btn_xq: case R.id.btn_xq:
if (null != info && null != info.getResult() && null != info.getResult().getDetail_list() && info.getResult().getRecord_list().size() > 0) { if (null != info && null != info.getResult() ) {
if (currentPosition != 0) { if (currentPosition != 0) {
setPosition(0); setPosition(0);
setRecycleView(); setRecycleView();
...@@ -195,7 +197,7 @@ public class LoadingActivity extends BaseActivity { ...@@ -195,7 +197,7 @@ public class LoadingActivity extends BaseActivity {
} }
break; break;
case R.id.btn_ss: case R.id.btn_ss:
if (null != info && null != info.getResult() && null != info.getResult().getDetail_list() && info.getResult().getRecord_list().size() > 0) { if (null != info && null != info.getResult()) {
if (currentPosition != 1) { if (currentPosition != 1) {
setPosition(1); setPosition(1);
setRecycleView(); setRecycleView();
......
package com.roke.huayangproject.ui.loading;
import android.content.Intent;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.EditText;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.roke.huayangproject.R;
import com.roke.huayangproject.adapter.LoadingListAdapter;
import com.roke.huayangproject.adapter.TransportAdapter;
import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.bean.LoadingListBean;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.ui.transport.TransportDetailActivity;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
//create : 3C
//时间2021/11/3 13:19
public class LoadingListActivity extends BaseActivity {
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
@Bind(R.id.et_search)
EditText etSearch;
private LoadingListBean info;
private LoadingListAdapter adapter;
@Override
protected void init() {
rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
etSearch.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
String data = etSearch.getText().toString().trim();
if (!CommonUtils.isNull(data)){
List<LoadingListBean.ResultBean> beans = new ArrayList<>();
for (LoadingListBean.ResultBean resultBean : info.getResult()) {
if (resultBean.getCar_no().contains(data) || resultBean.getOrder_code().contains(data)){
beans.add(resultBean);
}
}
setRecycleView(beans);
}else{
if (null !=info){
setRecycleView(info.getResult());
}
}
}
});
}
@Override
protected int getLayoutId() {
return R.layout.activity_transport;
}
@Override
protected String getActionBarTitle() {
return "装车列表";
}
@Override
protected boolean getHasMenu() {
return false;
}
@Override
protected void submitClick() {
}
@Override
public void initView() {
}
@Override
public void initData() {
showD();
ShipHttpClient.getInstance().get_transport_order_zc(mContext, new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
info = JsonUtil.parseJsonToBean(json, LoadingListBean.class);
if (null != info && null != info.getResult() && info.getResult().size() > 0) {
setRecycleView(info.getResult());
} else {
ShowMsgUtils.ShowMessage(mContext, "当前没有任务!");
}
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext, msg);
}
});
}
public void setRecycleView(List<LoadingListBean.ResultBean> beans){
adapter = new LoadingListAdapter(beans);
rvMenu.setAdapter(adapter);
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, final int position) {
List<LoadingListBean.ResultBean> beans = adapter.getData();
//进入详情
Intent intent = new Intent(mContext, LoadingActivity.class);
intent.putExtra("code",beans.get(position).getOrder_code());
intent.putExtra("codeid",beans.get(position).getOrder_id());
startActivity(intent);
}
});
}
}
...@@ -36,7 +36,7 @@ import butterknife.OnClick; ...@@ -36,7 +36,7 @@ import butterknife.OnClick;
import butterknife.OnTextChanged; import butterknife.OnTextChanged;
import me.jessyan.autosize.internal.CustomAdapt; import me.jessyan.autosize.internal.CustomAdapt;
public class LoginActivity extends AppCompatActivity implements CustomAdapt { public class LoginActivity extends AppCompatActivity {
@Bind(R.id.iv_setting) @Bind(R.id.iv_setting)
ImageView ivSetting; ImageView ivSetting;
...@@ -134,12 +134,13 @@ public class LoginActivity extends AppCompatActivity implements CustomAdapt { ...@@ -134,12 +134,13 @@ public class LoginActivity extends AppCompatActivity implements CustomAdapt {
HuaYangApp.setData("username",etUser.getText().toString().trim()); HuaYangApp.setData("username",etUser.getText().toString().trim());
HuaYangApp.setData("password",etPwd.getText().toString().trim()); HuaYangApp.setData("password",etPwd.getText().toString().trim());
HuaYangApp.ip = ip; HuaYangApp.ip = ip;
Intent intent; // Intent intent;
if (HuaYangApp.PAGE.equals("装车")){ // if (HuaYangApp.PAGE.equals("装车")){
intent = new Intent(mContext, LoadingActivity.class); // intent = new Intent(mContext, LoadingActivity.class);
}else{ // }else{
intent = new Intent(mContext, PickingActivity.class); // intent = new Intent(mContext, PickingActivity.class);
} // }
Intent intent = new Intent(mContext,MainActivity.class);
startActivity(intent); startActivity(intent);
finish(); finish();
}else{ }else{
...@@ -159,19 +160,6 @@ public class LoginActivity extends AppCompatActivity implements CustomAdapt { ...@@ -159,19 +160,6 @@ public class LoginActivity extends AppCompatActivity implements CustomAdapt {
} }
//是否按照宽度进行适配,true为是,false用高度进行适配
@Override
public boolean isBaseOnWidth() {
return false;
}
//设置当前屏幕大小,根据上边true或者false设置宽高,是用系统的用的是0
@Override
public float getSizeInDp() {
return 0;
}
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
......
package com.roke.huayangproject.ui.transport;
import android.content.Intent;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.EditText;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.roke.huayangproject.R;
import com.roke.huayangproject.adapter.TransportAdapter;
import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.bean.TransportBean;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
//create : 3C
//时间2021/11/3 13:19
public class TransportActivity extends BaseActivity {
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
@Bind(R.id.et_search)
EditText etSearch;
private TransportBean info;
private TransportAdapter adapter;
@Override
protected void init() {
rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
etSearch.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
String data = etSearch.getText().toString().trim();
if (!CommonUtils.isNull(data)){
List<TransportBean.ResultBean> beans = new ArrayList<>();
for (TransportBean.ResultBean resultBean : info.getResult()) {
if (resultBean.getCar_no().contains(data)){
beans.add(resultBean);
}
}
setRecycleView(beans);
}else{
if (null !=info){
setRecycleView(info.getResult());
}
}
}
});
}
@Override
protected int getLayoutId() {
return R.layout.activity_transport;
}
@Override
protected String getActionBarTitle() {
return "出厂列表";
}
@Override
protected boolean getHasMenu() {
return false;
}
@Override
protected void submitClick() {
}
@Override
public void initView() {
}
@Override
public void initData() {
showD();
ShipHttpClient.getInstance().get_cc_order(mContext, new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
info = JsonUtil.parseJsonToBean(json, TransportBean.class);
if (null != info && null != info.getResult() && info.getResult().size() > 0) {
setRecycleView(info.getResult());
} else {
ShowMsgUtils.ShowMessage(mContext, "当前没有任务!");
}
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext, msg);
}
});
}
public void setRecycleView(List<TransportBean.ResultBean> beans){
adapter = new TransportAdapter(beans);
rvMenu.setAdapter(adapter);
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, final int position) {
List<TransportBean.ResultBean> beans = adapter.getData();
//进入详情
Intent intent = new Intent(mContext,TransportDetailActivity.class);
intent.putExtra("car",beans.get(position).getCar_no());
intent.putExtra("carid",beans.get(position).getCar_id());
intent.putExtra("data",(Serializable) beans.get(position).getOrder_details());
startActivity(intent);
}
});
}
}
package com.roke.huayangproject.ui.transport;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.roke.huayangproject.HuaYangApp;
import com.roke.huayangproject.R;
import com.roke.huayangproject.adapter.LoadingAdapter;
import com.roke.huayangproject.adapter.TreansportDetailAdapter;
import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.bean.LoadingInfo;
import com.roke.huayangproject.bean.TransportBean;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.OnClick;
public class TransportDetailActivity extends BaseActivity {
@Bind(R.id.tv_cph)
TextView tvCph;
@Bind(R.id.tv_czy)
TextView tvCzy;
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
@Bind(R.id.btn_submit)
Button btnSubmit;
private String car,user,scan;
private TreansportDetailAdapter treansportDetailAdapter;
private List<TransportBean.ResultBean.OrderDetailsBean> bean;
private String carId;
@Override
protected void init() {
car = getIntent().getStringExtra("car");
carId = getIntent().getStringExtra("carid");
tvCph.setText(car);
bean = (List<TransportBean.ResultBean.OrderDetailsBean>) getIntent().getSerializableExtra("data");
rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
tvCzy.setText(HuaYangApp.getUser());
if (null!= bean && bean.size()>0){
setRecycleView();
}
}
@Override
protected int getLayoutId() {
return R.layout.activity_transport_detail;
}
@Override
protected String getActionBarTitle() {
return "出厂详情";
}
@Override
protected boolean getHasMenu() {
return false;
}
@Override
protected void submitClick() {
}
private void setRecycleView() {
treansportDetailAdapter = new TreansportDetailAdapter(bean);
rvMenu.setAdapter(treansportDetailAdapter);
}
@OnClick(R.id.btn_submit)
public void onViewClicked() {
// if (null == bean || bean.size() <=0){
// ShowMsgUtils.ShowMessage(mContext,"请先扫描正确的运单码,然后再点击确认.");
// }else{
requestSubmit();
// }
}
private void requestSubmit() {
showD();
ShipHttpClient.getInstance().set_out(mContext, carId, new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
String result = "";
if (CommonUtils.isNull(JsonUtil.getFieldValue(json,"msg"))){
result = JsonUtil.getFieldValue(JsonUtil.getFieldValue(json,"result"),"msg");
}else{
result = JsonUtil.getFieldValue(json,"msg");
}
ShowMsgUtils.ShowMessage(mContext,result, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext,msg);
}
});
}
@Override
public void initView() {
}
@Override
public void initData() {
}
}
\ No newline at end of file
package com.roke.huayangproject.ui.unloading;
import android.content.DialogInterface;
import android.graphics.Color;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.roke.huayangproject.HuaYangApp;
import com.roke.huayangproject.R;
import com.roke.huayangproject.adapter.LoadingAdapter;
import com.roke.huayangproject.adapter.UnLoadingAdapter;
import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.bean.LoadingInfo;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import com.roke.huayangproject.utils.SimplexToast;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.OnClick;
//create : 3C
//时间2021/8/2 16:07
public class UnLoadingActivity extends BaseActivity {
@Bind(R.id.tv_ydh)
TextView tvYdh;
@Bind(R.id.tv_cph)
TextView tvCph;
@Bind(R.id.tv_czy)
TextView tvCzy;
@Bind(R.id.tv_xq)
TextView tvXq;
@Bind(R.id.btn_xq)
LinearLayout btnXq;
@Bind(R.id.tv_ss)
TextView tvSs;
@Bind(R.id.btn_ss)
LinearLayout btnSs;
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
private LoadingInfo info;
private int currentPosition = 0;//当前显示的页面
private UnLoadingAdapter unLoadingAdapter;
private LoadingAdapter loadingAdapter;
private String code,codeid;
private String scan;
private List<LoadingInfo.ResultBean.DetailListBean> unLoadingDatas;
@Override
protected void init() {
code = getIntent().getStringExtra("code");
codeid = getIntent().getStringExtra("codeid");
if (!CommonUtils.isNull(code)){
tvYdh.setText(code);
requestByScan(code);
}
// tvYdh.setOnEditorActionListener(new MyEditGoodsListener());
tvCzy.setText(HuaYangApp.getUser());
rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
}
@Override
protected int getLayoutId() {
return R.layout.activity_loading;
}
@Override
protected String getActionBarTitle() {
return "卸货确认";
}
@Override
protected boolean getHasMenu() {
return false;
}
@Override
protected void submitClick() {
}
@Override
public void initView() {
}
@Override
public void initData() {
}
@Override
public void requestByScan(String scan) {
this.scan = scan;
showD();
ShipHttpClient.getInstance().get_order_info(mContext, scan, new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
info = JsonUtil.parseJsonToBean(json, LoadingInfo.class);
if (null != info && null != info.getResult() && null != info.getResult().getDetail_list() && info.getResult().getDetail_list().size() > 0) {
tvCph.setText(info.getResult().getCar());
setRecycleView();
} else {
ShowMsgUtils.ShowMessage(mContext, "数据解析有误,请联系管理员!");
}
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext, msg);
}
});
}
private void setRecycleView() {
if (currentPosition == 0){
unLoadingDatas = new ArrayList<>();
for (LoadingInfo.ResultBean.DetailListBean detailListBean : info.getResult().getDetail_list()) {
if (detailListBean.getState().equals("wait_confirm")){
unLoadingDatas.add(detailListBean);
}
}
unLoadingAdapter = new UnLoadingAdapter(unLoadingDatas);
rvMenu.setAdapter(unLoadingAdapter);
unLoadingAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public boolean onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
if (view.getId() == R.id.btn_submit){
submitState(unLoadingDatas.get(position).getLine_id(),"confirm");
}
return true;
}
});
}else{
loadingAdapter = new LoadingAdapter(info.getResult().getRecord_list());
rvMenu.setAdapter(loadingAdapter);
loadingAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, final int position) {
ShowMsgUtils.ShowMessageWithCancelBtn(mContext, "确认要清除确认状态么?", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
submitState(info.getResult().getRecord_list().get(position).getLine_id(),"confirm_cancel");
}
});
}
});
}
}
private void submitState(String sale_line_id, final String confirm) {
showD();
ShipHttpClient.getInstance().detail_button(mContext, sale_line_id, confirm, HuaYangApp.getUser_id(), new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
SimplexToast.show(mContext,JsonUtil.getFieldValue(json,"msg"));
requestByScan(scan);//请求数据
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext,msg);
}
});
}
@OnClick({R.id.btn_xq, R.id.btn_ss})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.btn_xq:
if (null != info && null != info.getResult() ) {
if (currentPosition != 0) {
setPosition(0);
setRecycleView();
}
}else{
ShowMsgUtils.ShowMessage(mContext,"请先扫描运单号获取数据");
}
break;
case R.id.btn_ss:
if (null != info && null != info.getResult()) {
if (currentPosition != 1) {
setPosition(1);
setRecycleView();
}
}else{
ShowMsgUtils.ShowMessage(mContext,"请先扫描运单号获取数据");
}
break;
}
}
private void setPosition(int position) {
currentPosition = position;
tvXq.setTextColor(position == 0? Color.WHITE:Color.BLACK);
tvSs.setTextColor(position == 1? Color.WHITE:Color.BLACK);
tvXq.setBackgroundResource(position == 0 ? R.drawable.btn_left_background : R.drawable.btn_left_background_normal);
tvSs.setBackgroundResource(position == 1 ? R.drawable.btn_right_background : R.drawable.btn_right_background_normal);
}
}
package com.roke.huayangproject.ui.unloading;
import android.content.Intent;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.EditText;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.roke.huayangproject.R;
import com.roke.huayangproject.adapter.LoadingListAdapter;
import com.roke.huayangproject.base.BaseActivity;
import com.roke.huayangproject.bean.LoadingListBean;
import com.roke.huayangproject.http.ShipHttpClient;
import com.roke.huayangproject.ui.loading.LoadingActivity;
import com.roke.huayangproject.utils.CommonUtils;
import com.roke.huayangproject.utils.JsonUtil;
import com.roke.huayangproject.utils.ShowMsgUtils;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
//create : 3C
//时间2021/11/3 13:19
public class UnLoadingListActivity extends BaseActivity {
@Bind(R.id.rv_menu)
RecyclerView rvMenu;
@Bind(R.id.et_search)
EditText etSearch;
private LoadingListBean info;
private LoadingListAdapter adapter;
@Override
protected void init() {
rvMenu.setLayoutManager(new LinearLayoutManager(mContext));
etSearch.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
String data = etSearch.getText().toString().trim();
if (!CommonUtils.isNull(data)){
List<LoadingListBean.ResultBean> beans = new ArrayList<>();
for (LoadingListBean.ResultBean resultBean : info.getResult()) {
if (resultBean.getCar_no().contains(data) || resultBean.getOrder_code().contains(data)){
beans.add(resultBean);
}
}
setRecycleView(beans);
}else{
if (null !=info){
setRecycleView(info.getResult());
}
}
}
});
}
@Override
protected int getLayoutId() {
return R.layout.activity_transport;
}
@Override
protected String getActionBarTitle() {
return "卸货列表";
}
@Override
protected boolean getHasMenu() {
return false;
}
@Override
protected void submitClick() {
}
@Override
public void initView() {
}
@Override
public void initData() {
showD();
ShipHttpClient.getInstance().get_transport_order_xc(mContext, new ShipHttpClient.CrabHttpCallback<String>() {
@Override
public void onSuccess(String json) {
closeD();
info = JsonUtil.parseJsonToBean(json, LoadingListBean.class);
if (null != info && null != info.getResult() && info.getResult().size() > 0) {
setRecycleView(info.getResult());
} else {
ShowMsgUtils.ShowMessage(mContext, "当前没有任务!");
}
}
@Override
public void onError(String msg) {
closeD();
ShowMsgUtils.ShowMessage(mContext, msg);
}
});
}
public void setRecycleView(List<LoadingListBean.ResultBean> beans){
adapter = new LoadingListAdapter(beans);
rvMenu.setAdapter(adapter);
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, final int position) {
List<LoadingListBean.ResultBean> beans = adapter.getData();
//进入详情
Intent intent = new Intent(mContext, UnLoadingActivity.class);
intent.putExtra("code",beans.get(position).getOrder_code());
intent.putExtra("codeid",beans.get(position).getOrder_id());
startActivity(intent);
}
});
}
}
...@@ -12,12 +12,10 @@ ...@@ -12,12 +12,10 @@
style="@style/title_weight1_style" style="@style/title_weight1_style"
android:text="运单号 : " android:text="运单号 : "
/> />
<EditText <TextView
android:id="@+id/tv_ydh" android:id="@+id/tv_ydh"
android:singleLine="true" android:singleLine="true"
android:lines="1" style="@style/text_weight3_right"/>
android:hint="请输入或者扫描运单号"
style="@style/edit_weight3_right"/>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
style="@style/h_linearlayout"> style="@style/h_linearlayout">
......
...@@ -4,7 +4,42 @@ ...@@ -4,7 +4,42 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
tools:context=".MainActivity"> android:orientation="vertical">
<RelativeLayout
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="50dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp">
<TextView
android:id="@+id/tv_toolbar_title"
android:textColor="@color/black"
android:text="主页面"
android:textSize="20sp"
android:layout_centerInParent="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<ImageView
android:id="@+id/iv_scan"
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="center"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:src="@drawable/scan" />
</RelativeLayout>
</RelativeLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/black"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_menu"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"/>
</LinearLayout> </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="5dp"
android:focusable="true"
android:fitsSystemWindows="true"
android:orientation="vertical">
<EditText
android:id="@+id/et_search"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_menu"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"/>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="5dp"
android:focusable="true"
android:fitsSystemWindows="true"
android:orientation="vertical">
<LinearLayout
android:visibility="gone"
style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="运单号 : "
/>
<TextView
android:id="@+id/tv_ydh"
style="@style/text_weight3_right"/>
</LinearLayout>
<LinearLayout
style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="车牌号 : "
/>
<TextView
android:id="@+id/tv_cph"
style="@style/text_weight3_right"/>
</LinearLayout>
<LinearLayout
style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="操作员 : "
/>
<TextView
android:id="@+id/tv_czy"
style="@style/text_weight3_right"/>
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_menu"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"/>
<Button
android:id="@+id/btn_submit"
android:text="确认"
android:textColor="@color/white"
android:textSize="21sp"
android:background="@drawable/btn_background"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:background="@drawable/btn_left_background_normal"
android:orientation="vertical">
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="车牌号 : " />
<TextView
android:id="@+id/et_cph"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="运单号 : " />
<TextView
android:id="@+id/et_ydh"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="日期 : " />
<TextView
android:id="@+id/et_rq"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:background="@drawable/btn_left_background_normal"
android:orientation="vertical">
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="车牌号 : " />
<TextView
android:id="@+id/et_cph"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:background="@drawable/btn_left_background_normal"
android:orientation="vertical">
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="产品名称 : " />
<TextView
android:id="@+id/et_cpmc"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
<LinearLayout style="@style/h_linearlayout">
<TextView
style="@style/title_weight1_style"
android:text="产品数量 : " />
<TextView
android:id="@+id/et_cpsl"
style="@style/text_weight3_right"
android:singleLine="true" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/iv_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="10dp"
android:src="@drawable/scan" />
<TextView
android:id="@+id/tv_title"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:background="@color/white"
android:orientation="vertical">
<TextView
android:id="@+id/tv_title"
android:layout_centerInParent="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
android:textSize="17sp" />
</LinearLayout>
\ No newline at end of file
...@@ -6,7 +6,9 @@ buildscript { ...@@ -6,7 +6,9 @@ buildscript {
//被墙了逼不得已,放大招 //被墙了逼不得已,放大招
maven{url'http://maven.aliyun.com/nexus/content/groups/public/'} maven{url'http://maven.aliyun.com/nexus/content/groups/public/'}
//是用greendao需要添加 //是用greendao需要添加
maven { url "https://jitpack.io" }
mavenCentral() mavenCentral()
mavenLocal()
google() google()
jcenter() jcenter()
} }
...@@ -26,7 +28,6 @@ allprojects { ...@@ -26,7 +28,6 @@ allprojects {
repositories { repositories {
//被墙了逼不得已,放大招 //被墙了逼不得已,放大招
maven{url'http://maven.aliyun.com/nexus/content/groups/public/'} maven{url'http://maven.aliyun.com/nexus/content/groups/public/'}
//是用greendao需要添加 //是用greendao需要添加
mavenCentral() mavenCentral()
google() google()
......
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