IndexActivity.java 74 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681
  1. package com.uas.hystorage.activity;
  2. import android.annotation.SuppressLint;
  3. import android.app.Activity;
  4. import android.app.AlertDialog;
  5. import android.app.Dialog;
  6. import android.content.DialogInterface;
  7. import android.content.Intent;
  8. import android.content.pm.PackageManager;
  9. import android.graphics.drawable.BitmapDrawable;
  10. import android.os.Handler;
  11. import android.support.annotation.NonNull;
  12. import android.support.annotation.Nullable;
  13. import android.support.v7.widget.DividerItemDecoration;
  14. import android.support.v7.widget.LinearLayoutManager;
  15. import android.support.v7.widget.RecyclerView;
  16. import android.text.TextUtils;
  17. import android.util.Log;
  18. import android.view.Gravity;
  19. import android.view.KeyEvent;
  20. import android.view.LayoutInflater;
  21. import android.view.MotionEvent;
  22. import android.view.View;
  23. import android.view.Window;
  24. import android.view.inputmethod.EditorInfo;
  25. import android.widget.AdapterView;
  26. import android.widget.Button;
  27. import android.widget.CheckBox;
  28. import android.widget.CompoundButton;
  29. import android.widget.EditText;
  30. import android.widget.GridView;
  31. import android.widget.ImageView;
  32. import android.widget.LinearLayout;
  33. import android.widget.PopupWindow;
  34. import android.widget.SimpleAdapter;
  35. import android.widget.TextView;
  36. import com.alibaba.fastjson.JSON;
  37. import com.alibaba.fastjson.JSONArray;
  38. import com.alibaba.fastjson.JSONObject;
  39. import com.android.volley.Request;
  40. import com.android.volley.toolbox.StringRequest;
  41. import com.chad.library.adapter.base.BaseQuickAdapter;
  42. import com.chad.library.adapter.base.BaseViewHolder;
  43. import com.scwang.smartrefresh.layout.api.RefreshLayout;
  44. import com.scwang.smartrefresh.layout.listener.OnRefreshListener;
  45. import com.uas.hystorage.R;
  46. import com.uas.hystorage.adapter.DlMacodeAdapter;
  47. import com.uas.hystorage.application.PdaApplication;
  48. import com.uas.hystorage.bean.AddworkorderBean;
  49. import com.uas.hystorage.bean.DlMacodesBean;
  50. import com.uas.hystorage.bean.MoreEventBusBean;
  51. import com.uas.hystorage.fragment.BaseFragment;
  52. import com.uas.hystorage.fragment.WorkOrderSearchFragment;
  53. import com.uas.hystorage.global.GloableParams;
  54. import com.uas.hystorage.listener.MyEditorActionListener;
  55. import com.uas.hystorage.tools.DataSourceManager;
  56. import com.uas.hystorage.tools.SharedPreUtil;
  57. import com.uas.hystorage.tools.VolleyUtil;
  58. import com.uas.hystorage.util.CameraUtil;
  59. import com.uas.hystorage.util.CommonUtil;
  60. import com.uas.hystorage.util.Constants;
  61. import com.uas.hystorage.util.FastjsonUtil;
  62. import com.uas.hystorage.util.HttpCallback;
  63. import com.uas.hystorage.util.HttpParams;
  64. import com.uas.hystorage.util.LogUtil;
  65. import com.uas.hystorage.util.PermissionUtil;
  66. import com.uas.hystorage.util.StringUtil;
  67. import com.uas.hystorage.util.VolleyRequest;
  68. import com.uas.hystorage.util.VollyRequest;
  69. import com.uas.hystorage.view.ClearableEditText;
  70. import com.uas.hystorage.view.business.StaffUpPopup;
  71. import com.uuzuche.lib_zxing.activity.CaptureActivity;
  72. import com.uuzuche.lib_zxing.activity.CodeUtils;
  73. import org.greenrobot.eventbus.EventBus;
  74. import org.greenrobot.eventbus.Subscribe;
  75. import java.io.Serializable;
  76. import java.util.ArrayList;
  77. import java.util.HashMap;
  78. import java.util.List;
  79. import razerdp.basepopup.BasePopupWindow;
  80. public class IndexActivity extends BaseActivity implements AdapterView.OnItemClickListener, View.OnClickListener, StaffUpPopup.OnStaffUpListener {
  81. private final int SCAN_STAFF_CODE = 0x999;
  82. private static final String TAG = "IndexActivity";
  83. private ArrayList<HashMap<String, Object>> gridItemList;
  84. private GridView menuGridView;
  85. private TextView actionbarTextVeiw;
  86. private TextView tv_metrimal_name;
  87. private PopupWindow mExitPopupWindow;
  88. private TextView mFeeding, mCurDoc, mUnfinish, tv_pihao,
  89. mEmCodeTv, mEmNameTv, mScName, mStaffTextView, mScrapTextView;
  90. private String sc_code = null, mStaffName, mStaffCode,sc_name;
  91. private RefreshLayout mRefreshLayout;
  92. private PopupWindow editPW;
  93. private String MACODE = null; //工单编号
  94. public BaseFragment mFragment;
  95. private ClearableEditText edit_et;
  96. private Button mBackButton;
  97. private StaffUpPopup mStaffUpPopup;
  98. private StringRequest mStringRequest;
  99. private TextView index_qty;
  100. private ArrayList<String> sl_namelist;
  101. private String iforigio = "";
  102. private String ifmultiin = "";
  103. private String ifsplitout= "" ;
  104. private String ifbindmake= "";
  105. private String ifpack= "";
  106. private ArrayList<ComDataBean> ComDataBeanList;
  107. private ArrayList<DlMacodesBean> ComaddBeanList;
  108. private ArrayList<AddworkorderBean> addworkorderBeans;
  109. private IpAndResourcesPortAdapter ipAndResourcesPortAdapter;
  110. private RecyclerView rv_line_ip_port_data;
  111. private String itemname;
  112. private String itemremark;
  113. private String ifneedmj;
  114. private EditText ct_indexgangwei;
  115. private String ifinput;
  116. private String de_location;
  117. private ImageView iv_add_data;
  118. private List<DlMacodesBean> mList;
  119. private DlMacodeAdapter dlMacodeAdapter;
  120. private String dl_macodEdata;
  121. private RecyclerView rv_line_add_port_data;
  122. private ClearableEditText editadd_et;
  123. private String pr_detail;
  124. private String pr_sdetail;
  125. private TextView index_detail_doc;
  126. private String dlstr_macodes;
  127. private TextView index_prce_doc;
  128. private String ma_kind;
  129. private String ma_prodcode;
  130. private TextView index_pc_doc;
  131. private String frommA_code;
  132. @Override
  133. protected void onDestroy() {
  134. // SharedPreUtil.removeAll(getApplicationContext());
  135. VolleyUtil.distoryVolley();
  136. super.onDestroy();
  137. EventBus.getDefault().unregister(this);
  138. }
  139. @Override
  140. protected void initViews() {
  141. setContentView(R.layout.activity_index);
  142. mEmCodeTv = findViewById(R.id.em_code_tv);
  143. mEmNameTv = findViewById(R.id.em_name_tv);
  144. tv_metrimal_name=findViewById(R.id.tv_metrimal_name);
  145. actionbarTextVeiw = (TextView) findViewById(R.id.actionbar);
  146. actionbarTextVeiw.setText("工序采集");
  147. menuGridView = (GridView) findViewById(R.id.grid_menu);
  148. // index_position_resource = (TextView) findViewById(R.id.index_position_resource);
  149. mScName = (TextView) findViewById(R.id.scname_tv);
  150. ct_indexgangwei = (EditText) findViewById(R.id.ct_indexgangwei);
  151. // mFeeding = (TextView) findViewById(R.id.index_feeding);
  152. mCurDoc = (TextView) findViewById(R.id.index_cur_doc);
  153. index_detail_doc = (TextView) findViewById(R.id.index_detail_doc);
  154. mUnfinish = (TextView) findViewById(R.id.index_unfinish_number);
  155. index_qty = findViewById(R.id.index_qty);
  156. mBackButton = findViewById(R.id.btn_actionbar_withback);
  157. // mStaffTextView = findViewById(R.id.index_staff_info_tv);
  158. mScrapTextView = findViewById(R.id.index_scrap_number);
  159. tv_pihao=findViewById(R.id.tv_pihao);
  160. iv_add_data = findViewById(R.id.iv_add_data);
  161. index_prce_doc = findViewById(R.id.index_prce_doc);
  162. index_pc_doc = findViewById(R.id.index_pc_doc);
  163. findViewById(R.id.index_edit).setOnClickListener(this);
  164. mRefreshLayout = findViewById(R.id.SmartRefreshLayout_id);
  165. mRefreshLayout.setEnableLoadMore(false);
  166. gridItemList = DataSourceManager.getDataSourceManager().getIndexMainGridItemList();
  167. findViewById(R.id.btn_actionbar_scan_iv).setOnClickListener(this);
  168. SimpleAdapter adapter = new SimpleAdapter(this, gridItemList, R.layout.item_grid,
  169. new String[]{DataSourceManager.KEY_GRID_ITEMIMG, DataSourceManager.KEY_GRID_ITEMNAME},
  170. new int[]{R.id.griditem_img, R.id.griditem_name});
  171. menuGridView.setAdapter(adapter);
  172. mStaffUpPopup = new StaffUpPopup(this, this);
  173. View view = View.inflate(this, R.layout.pop_exit_application, null);
  174. view.findViewById(R.id.pop_exit_cancel_tv).setOnClickListener(this);
  175. view.findViewById(R.id.pop_exit_minimize_tv).setOnClickListener(this);
  176. view.findViewById(R.id.pop_exit_exit_tv).setOnClickListener(this);
  177. mExitPopupWindow = new PopupWindow(view, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
  178. mExitPopupWindow.setBackgroundDrawable(new BitmapDrawable());
  179. mExitPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
  180. @Override
  181. public void onDismiss() {
  182. closeExitPopupWindow();
  183. }
  184. });
  185. mFragment = new WorkOrderSearchFragment();
  186. sc_code=SharedPreUtil.getString(this,Constants.FLAG.GANG_WEI_SOURCE_CODE,"");
  187. sc_name=SharedPreUtil.getString(this,Constants.FLAG.GANG_WEI_SOURCE_NAME,"");
  188. new Handler().postDelayed(new Runnable() {
  189. @Override
  190. public void run() {
  191. if (!StringUtil.isEmpty(sc_code)) {
  192. handleCode(sc_code, true);
  193. }else{
  194. // initEditPopupWindow();
  195. // getRepairStep("");
  196. ct_indexgangwei.requestFocus();
  197. }
  198. }
  199. },500);
  200. getPrintTemplate();
  201. EventBus.getDefault().register(this);
  202. iv_add_data.setOnClickListener(new View.OnClickListener() {
  203. @Override
  204. public void onClick(View v) {
  205. addDataList();
  206. }
  207. });
  208. }
  209. @Override
  210. protected void initEvents() {
  211. menuGridView.setOnItemClickListener(this);
  212. menuGridView.setOnTouchListener(new View.OnTouchListener() {
  213. @Override
  214. public boolean onTouch(View v, MotionEvent event) {
  215. //控制gridView不滚动
  216. if (event.getAction() == MotionEvent.ACTION_MOVE)
  217. return true;
  218. return false;
  219. }
  220. });
  221. mRefreshLayout.setOnRefreshListener(new OnRefreshListener() {
  222. @Override
  223. public void onRefresh(RefreshLayout refreshLayout) {
  224. if (StringUtil.isEmpty(sc_code)) {
  225. CommonUtil.toastNoRepeat(IndexActivity.this, "请先采集岗位资源");
  226. mRefreshLayout.finishRefresh(0);
  227. return;
  228. }
  229. getDeviceline(sc_code);
  230. mRefreshLayout.finishRefresh(0);
  231. }
  232. });
  233. mBackButton.setOnClickListener(new View.OnClickListener() {
  234. @Override
  235. public void onClick(View v) {
  236. finish();
  237. }
  238. });
  239. ct_indexgangwei.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  240. @Override
  241. public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  242. if (actionId == EditorInfo.IME_ACTION_DONE
  243. || actionId == EditorInfo.IME_ACTION_SEND
  244. || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
  245. String data = ct_indexgangwei.getText().toString().trim();
  246. handleCode(data, true);
  247. return true;
  248. }
  249. return false;
  250. }
  251. });
  252. mList = new ArrayList<>();
  253. // setlistview();
  254. }
  255. @SuppressLint("NonConstantResourceId")
  256. @Override
  257. public void onClick(View v) {
  258. int Id = v.getId();
  259. switch (Id) {
  260. case R.id.pop_exit_cancel_tv:
  261. closeExitPopupWindow();
  262. break;
  263. case R.id.pop_exit_exit_tv:
  264. PdaApplication.removeAllDataCache();
  265. System.exit(0);
  266. break;
  267. case R.id.pop_exit_minimize_tv:
  268. closeExitPopupWindow();
  269. moveTaskToBack(isFinishing());
  270. break;
  271. case R.id.index_edit:
  272. // initEditPopupWindow();
  273. getRepairStep("");
  274. break;
  275. case R.id.btn_actionbar_scan_iv:
  276. if (CameraUtil.hasCamera()) {
  277. Intent intent = new Intent();
  278. intent.setClass(IndexActivity.this, CaptureActivity.class);
  279. startActivityForResult(intent, Constants.FLAG.SCAN_BARCODE_CODE);
  280. } else {
  281. CommonUtil.toastNoRepeat(IndexActivity.this, getString(R.string.no_camera_detected));
  282. }
  283. break;
  284. default:
  285. }
  286. }
  287. @Override
  288. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  289. super.onActivityResult(requestCode, resultCode, data);
  290. if (data != null && data.getExtras() != null) {
  291. if (requestCode == Constants.FLAG.SCAN_BARCODE_CODE && resultCode == Activity.RESULT_OK) {
  292. String result = data.getExtras().getString(CodeUtils.RESULT_STRING) + "";
  293. LogUtil.i("onActivityResult", result);
  294. if (!StringUtil.isEmpty(result)) {
  295. ct_indexgangwei.setText(result);
  296. sc_code = result;
  297. handleCode(result, true);
  298. }
  299. }
  300. if (requestCode == Constants.FLAG.GET_COMMON_ITEM && resultCode == 1847) {
  301. String result = data.getStringExtra("ITEM_DATA");
  302. if(result.contains("(")){
  303. edit_et.setText(result.split("\\(")[0]);
  304. edit_et.setSelection(result.split("\\(")[0].length());
  305. }
  306. }
  307. if (requestCode == SCAN_STAFF_CODE && resultCode == Activity.RESULT_OK) {
  308. String scanResult = CommonUtil.getScanResult(data);
  309. mStaffUpPopup.setEmidText(scanResult);
  310. onStaffUp(scanResult);
  311. }
  312. }
  313. }
  314. private void initEditPopupWindow() {
  315. View contView = LayoutInflater.from(this).inflate(R.layout.index_edit_pup, null);
  316. edit_et = (ClearableEditText) contView.findViewById(R.id.edit_et);
  317. TextView sure_tv = (TextView) contView.findViewById(R.id.sure_tv);
  318. TextView cancle_tv = (TextView) contView.findViewById(R.id.cancle_tv);
  319. ImageView search_im = contView.findViewById(R.id.search_im);
  320. // search_im.setVisibility(View.GONE);
  321. editPW = new PopupWindow(contView, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
  322. editPW.setTouchable(true);
  323. editPW.setBackgroundDrawable(new BitmapDrawable());
  324. editPW.setOnDismissListener(new BasePopupWindow.OnDismissListener() {
  325. @Override
  326. public void onDismiss() {
  327. closeListPopupWindow();
  328. }
  329. });
  330. View parentView = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
  331. editPW.showAtLocation(parentView, Gravity.CENTER, 0, 0);
  332. CommonUtil.setBackgroundAlpha(this, 0.5f);
  333. sure_tv.setOnClickListener(new View.OnClickListener() {
  334. @Override
  335. public void onClick(View v) {
  336. String code = edit_et.getText().toString().trim();
  337. handleCode(code, true);
  338. }
  339. });
  340. search_im.setOnClickListener(new View.OnClickListener() {
  341. @Override
  342. public void onClick(View v) {
  343. Intent intent = new Intent(IndexActivity.this, CommonSeclecActivity.class);
  344. intent.putExtra("title", "岗位资源");
  345. intent.putExtra("type", 1);
  346. intent.putExtra("etname", edit_et.getText().toString().trim());
  347. startActivityForResult(intent, Constants.FLAG.GET_COMMON_ITEM);
  348. }
  349. });
  350. CommonUtil.setEditorActionListener(edit_et, new MyEditorActionListener() {
  351. @Override
  352. public void MyEditorAction(String text, int actionId, KeyEvent event) {
  353. String code = edit_et.getText().toString().trim();
  354. handleCode(code, true);
  355. }
  356. });
  357. cancle_tv.setOnClickListener(new View.OnClickListener() {
  358. @Override
  359. public void onClick(View v) {
  360. closeListPopupWindow();
  361. }
  362. });
  363. }
  364. //修改岗位资源操作
  365. /**
  366. * @param code
  367. * @param isCheck 当修改岗位资源或者切换时
  368. */
  369. private void handleCode(String code, Boolean isCheck) {
  370. if (StringUtil.isEmpty(code)) return;
  371. closeListPopupWindow();
  372. if (!isCheck) {
  373. getDeviceline(code);
  374. return;
  375. }
  376. progressDialog.show();
  377. VollyRequest.getInstance().stringRequest(new HttpParams.Builder()
  378. .url(GloableParams.ADDRESS_PDA_INDEX_CHECKSOURCEEMP)
  379. .method(Request.Method.GET)
  380. .tag(TAG + "checkSourceEmp")
  381. .flag(0)
  382. .addParam("sc_code", code)
  383. .build(), new HttpCallback() {
  384. @Override
  385. public void onSuccess(int flag, Object o) throws Exception {
  386. progressDialog.dismiss();
  387. try {
  388. JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(), "data");
  389. showDataView(dataObject);
  390. } catch (Exception e) {
  391. }
  392. }
  393. @Override
  394. public void onFail(int flag, String failStr) throws Exception {
  395. progressDialog.dismiss();
  396. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  397. }
  398. });
  399. }
  400. @Override
  401. protected void initDatas() {
  402. ComDataBeanList = new ArrayList<>();
  403. ComaddBeanList = new ArrayList<>();
  404. addworkorderBeans = new ArrayList<>();
  405. }
  406. private void getDeviceline(String scCode) {
  407. progressDialog.show();
  408. mStaffCode = "";
  409. mStaffName = "";
  410. VollyRequest.getInstance().stringRequest(new HttpParams.Builder()
  411. .url(GloableParams.ADDRESS_PDA_INDEX_GETDEVICELINE)
  412. .method(Request.Method.GET)
  413. .tag(TAG + "getDeviceline")
  414. .flag(0)
  415. .addParam("sc_code", scCode)
  416. .build(), new HttpCallback() {
  417. @Override
  418. public void onSuccess(int flag, Object o) throws Exception {
  419. try {
  420. Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(), "success");
  421. if (isSuccess) {
  422. JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(), "data");
  423. showDataView(dataObject);
  424. } else {
  425. }
  426. progressDialog.dismiss();
  427. } catch (Exception e) {
  428. }
  429. }
  430. @Override
  431. public void onFail(int flag, String failStr) throws Exception {
  432. progressDialog.dismiss();
  433. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  434. }
  435. });
  436. }
  437. private void showDataView(JSONObject dataObject) {
  438. if (!StringUtil.isEmpty(dataObject.getString("SC_CODE"))) {
  439. sc_code = dataObject.getString("SC_CODE");
  440. SharedPreUtil.saveString(this, "SC_CODE", sc_code);
  441. ct_indexgangwei.setText(sc_code);
  442. if (!sc_code.isEmpty()){
  443. ct_indexgangwei.setFocusable(false);
  444. ct_indexgangwei.setFocusableInTouchMode(false);
  445. }else {
  446. ct_indexgangwei.setFocusable(true);
  447. ct_indexgangwei.setFocusableInTouchMode(true);
  448. ct_indexgangwei.requestFocus();
  449. }
  450. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_CODE,sc_code);
  451. String sc_name = dataObject.getString("SC_NAME");
  452. de_location = dataObject.getString("DE_LOCATION");
  453. if (StringUtil.isEmpty(de_location)) {
  454. de_location = "-";
  455. }
  456. de_location = "(" + de_location + ")";
  457. mScName.setText(de_location);
  458. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_NAME,sc_name);
  459. sl_namelist = new ArrayList<>();
  460. JSONArray dataArrayone = FastjsonUtil.getJSONArray(dataObject,"TAG");
  461. for(Object index:dataArrayone){
  462. JSONObject data = (JSONObject) index;
  463. sl_namelist.add(data.getString("SL_NAME"));
  464. }
  465. String ifboxortag = dataObject.getString("IFBOXORTAG");
  466. String SC_NAME = dataObject.getString("SC_DEVCODE");
  467. SharedPreUtil.saveString(this,"SC_DEVCODE",SC_NAME);
  468. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_ifboxortag,ifboxortag);
  469. iforigio = dataObject.getString("IFORIGIO");
  470. ifmultiin = dataObject.getString("IFMULTIIN");
  471. ifsplitout = dataObject.getString("IFSPLITOUT");
  472. ifbindmake = dataObject.getString("IFBINDMAKE");
  473. ifpack = dataObject.getString("IFPACK");
  474. ifneedmj = dataObject.getString("IFNEEDMJ");
  475. ifinput = dataObject.getString("IFINPUT");
  476. Log.e("ifneedmj",ifneedmj);
  477. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_ifmultiin,ifmultiin);
  478. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_ifsplitout,ifsplitout);
  479. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_iforigio,iforigio);
  480. SharedPreUtil.saveString(this,Constants.FLAG.GANG_WEI_SOURCE_ifneedmj,ifneedmj);
  481. } else {
  482. CommonUtil.toastNoRepeat(this, "岗位资源数据为空");
  483. return;
  484. }
  485. JSONArray dataArray = dataObject.getJSONArray("DL_MACODES");
  486. if (dataArray!=null) {
  487. mList.clear();
  488. for(Object index:dataArray){
  489. JSONObject data = (JSONObject) index;
  490. DlMacodesBean bean = new DlMacodesBean();
  491. String DL_MACODE = data.getString("DL_MACODE") == null ? "-" : data.getString("DL_MACODE");
  492. String MA_PRODCODE = data.getString("MA_PRODCODE") == null ? "-" : data.getString("MA_PRODCODE");
  493. String MA_QTY = data.getString("MA_QTY") == null ? "-" : data.getString("MA_QTY");
  494. String PR_DETAIL = data.getString("PR_DETAIL") == null ? "-" : data.getString("PR_DETAIL");
  495. String PR_SPEC = data.getString("PR_SPEC") == null ? "-" : data.getString("PR_SPEC");
  496. String DL_MOULDCODE = data.getString("DL_MOULDCODE") == null ? "" : data.getString("DL_MOULDCODE");
  497. String ma_kind = data.getString("MA_KIND")== null ? "" : data.getString("MA_KIND");
  498. bean.setDL_MACODE(DL_MACODE);
  499. bean.setMA_PRODCODE(MA_PRODCODE);
  500. bean.setMA_QTY(MA_QTY);
  501. bean.setPR_DETAIL(PR_DETAIL);
  502. bean.setPR_SPEC(PR_SPEC);
  503. bean.setDL_MOULDCODE(DL_MOULDCODE);
  504. bean.setMA_KIND(ma_kind);
  505. mList.add(bean);
  506. }
  507. if (!StringUtil.isEmpty(frommA_code)){
  508. for (int i=0;i<mList.size();i++){
  509. if(mList.get(i).getDL_MACODE().contains(frommA_code)){
  510. MACODE = mList.get(i).getDL_MACODE();
  511. pr_detail = mList.get(i).getPR_DETAIL();
  512. dlstr_macodes = mList.get(i).getDL_MOULDCODE();
  513. ma_kind = mList.get(i).getMA_KIND();
  514. ma_prodcode = mList.get(i).getMA_PRODCODE();
  515. }
  516. }
  517. }else {
  518. MACODE = mList.get(0).getDL_MACODE();
  519. pr_detail = mList.get(0).getPR_DETAIL();
  520. dlstr_macodes = mList.get(0).getDL_MOULDCODE();
  521. ma_kind = mList.get(0).getMA_KIND();
  522. ma_prodcode = mList.get(0).getMA_PRODCODE();
  523. }
  524. // StringBuilder stringtext = new StringBuilder();
  525. // for (int i=0;i<mList.size();i++){
  526. // stringtext.append(mList.get(i).getLOTNO()).append(",");
  527. // }
  528. index_pc_doc.setText(ma_prodcode);
  529. index_prce_doc.setText(ma_kind);
  530. SharedPreUtil.saveString(this, "MA_CODE", MACODE);
  531. mCurDoc.setText(MACODE);
  532. index_detail_doc.setText(pr_detail);
  533. if (mList==null||mList.size()==0||mList.size()==1){
  534. iv_add_data.setVisibility(View.GONE);
  535. }else {
  536. iv_add_data.setVisibility(View.VISIBLE);
  537. }
  538. } else {
  539. iv_add_data.setVisibility(View.GONE);
  540. SharedPreUtil.saveString(this, "MA_CODE", "");
  541. mCurDoc.setText("");
  542. index_detail_doc.setText("");
  543. index_prce_doc.setText("");
  544. }
  545. if (!StringUtil.isEmpty(dataObject.getString("MA_QTY"))) {//UNFINISHQQTY
  546. mUnfinish.setText(dataObject.getString("MA_QTY"));
  547. } else {
  548. mUnfinish.setText("");
  549. }
  550. if (!StringUtil.isEmpty(dataObject.getString("QTY"))) {
  551. index_qty.setText(dataObject.getString("QTY"));
  552. }else {
  553. index_qty.setText("");
  554. }
  555. if (!StringUtil.isEmpty(dataObject.getString("SC_STEPCODE"))) {
  556. tv_pihao.setText(dataObject.getString("SC_STEPCODE")+"("+dataObject.getString("ST_NAME")+")");
  557. } else {
  558. tv_pihao.setText("");
  559. }
  560. //待设置
  561. tv_metrimal_name.setText(dataObject.getString("PR_DETAIL"));
  562. mScrapTextView.setText(FastjsonUtil.getText(dataObject, "NGQTY"));//MA_ONLINESCRAPQTY
  563. mStaffName = FastjsonUtil.getText(dataObject, "UO_EMNAME");
  564. mStaffCode = TextUtils.isEmpty(FastjsonUtil.getText(dataObject, "UO_EMCODE"))?
  565. SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMCODE, "")
  566. :FastjsonUtil.getText(dataObject, "UO_EMCODE");
  567. // mStaffTextView.setText(mStaffName + (TextUtils.isEmpty(mStaffCode) ? "" : ("(" + mStaffCode + ")")));
  568. }
  569. public void addDataList(){
  570. ComaddBeanList.clear();
  571. for (int i = 0; i < mList.size(); i++) {
  572. DlMacodesBean bean = new DlMacodesBean();
  573. bean.setDL_MACODE(mList.get(i).getDL_MACODE());
  574. bean.setMA_PRODCODE(mList.get(i).getMA_PRODCODE());
  575. bean.setMA_QTY(mList.get(i).getMA_QTY());
  576. bean.setPR_DETAIL(mList.get(i).getPR_DETAIL());
  577. bean.setPR_SPEC(mList.get(i).getPR_SPEC());
  578. ComaddBeanList.add(bean);
  579. }
  580. initaddPopupWindow();
  581. }
  582. private void initaddPopupWindow() {
  583. View contView = LayoutInflater.from(this).inflate(R.layout.index_recycle_item, null);
  584. editadd_et = (ClearableEditText) contView.findViewById(R.id.edit_et);
  585. TextView sure_tv = (TextView) contView.findViewById(R.id.sure_tv);
  586. TextView cancle_tv = (TextView) contView.findViewById(R.id.cancle_tv);
  587. ImageView search_im = contView.findViewById(R.id.search_im);
  588. LinearLayout line_top = contView.findViewById(R.id.line_top);
  589. rv_line_add_port_data = contView.findViewById(R.id.rv_ip_port_data);
  590. rv_line_add_port_data.addItemDecoration(new DividerItemDecoration(this, LinearLayout.VERTICAL));
  591. rv_line_add_port_data.setLayoutManager(new LinearLayoutManager(this));
  592. dlMacodeAdapter = new DlMacodeAdapter(ComaddBeanList);
  593. dlMacodeAdapter.setmList(ComaddBeanList);
  594. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  595. setaddAdapter(ComaddBeanList);
  596. editadd_et.requestFocus();
  597. editPW = new PopupWindow(contView, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
  598. editPW.setTouchable(true);
  599. editPW.setBackgroundDrawable(new BitmapDrawable());
  600. editPW.setOnDismissListener(new BasePopupWindow.OnDismissListener() {
  601. @Override
  602. public void onDismiss() {
  603. closeListPopupWindow();
  604. }
  605. });
  606. View parentView = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
  607. editPW.showAtLocation(parentView, Gravity.CENTER, 0, 0);
  608. CommonUtil.setBackgroundAlpha(this, 0.5f);
  609. editadd_et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  610. @Override
  611. public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  612. if (actionId == EditorInfo.IME_ACTION_DONE
  613. || actionId == EditorInfo.IME_ACTION_SEND
  614. || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
  615. String mSearchStr = editadd_et.getText().toString().trim();
  616. if (!mSearchStr.isEmpty()) {
  617. List<DlMacodesBean> thisList = new ArrayList<>();
  618. for(int i=0;i<ComaddBeanList.size();i++){
  619. if(ComaddBeanList.get(i).getDL_MACODE().contains(mSearchStr)){
  620. thisList.add(ComaddBeanList.get(i));
  621. }
  622. if(i == ComaddBeanList.size() -1){
  623. dlMacodeAdapter = new DlMacodeAdapter(thisList);
  624. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  625. LogUtil.i("mSearchStr", JSON.toJSONString(thisList));
  626. }
  627. List<DlMacodesBean> lineCodeEntities = dlMacodeAdapter.getmList();
  628. for (int j = 0; j < lineCodeEntities.size(); j++) {
  629. lineCodeEntities.get(j).setChecked(false);
  630. }
  631. dlMacodeAdapter.notifyDataSetChanged();
  632. }
  633. } else {
  634. dlMacodeAdapter = new DlMacodeAdapter(ComaddBeanList);
  635. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  636. List<DlMacodesBean> lineCodeEntities = dlMacodeAdapter.getmList();
  637. for (int i = 0; i < lineCodeEntities.size(); i++) {
  638. lineCodeEntities.get(i).setChecked(false);
  639. }
  640. dlMacodeAdapter.notifyDataSetChanged();
  641. }
  642. dlMacodeAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  643. @Override
  644. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  645. List<DlMacodesBean> ipAndPortBeans = dlMacodeAdapter.getmList();
  646. dl_macodEdata = ipAndPortBeans.get(position).getDL_MACODE();
  647. dlstr_macodes = ipAndPortBeans.get(position).getDL_MOULDCODE();
  648. pr_sdetail = ipAndPortBeans.get(position).getPR_DETAIL();
  649. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  650. ipAndPortBeans.get(i).setChecked(false);
  651. }
  652. ipAndPortBeans.get(position).setChecked(true);
  653. dlMacodeAdapter.notifyDataSetChanged();
  654. }
  655. });
  656. return true;
  657. }
  658. return false;
  659. }
  660. });
  661. search_im.setOnClickListener(new View.OnClickListener() {
  662. @Override
  663. public void onClick(View v) {
  664. String mSearchStr = editadd_et.getText().toString().trim();
  665. if (!mSearchStr.isEmpty()) {
  666. List<DlMacodesBean> thisList = new ArrayList<>();
  667. for(int i=0;i<ComaddBeanList.size();i++){
  668. if(ComaddBeanList.get(i).getDL_MACODE().contains(mSearchStr)){
  669. thisList.add(ComaddBeanList.get(i));
  670. }
  671. if(i == ComaddBeanList.size() -1){
  672. dlMacodeAdapter = new DlMacodeAdapter(thisList);
  673. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  674. LogUtil.i("mSearchStr", JSON.toJSONString(thisList));
  675. }
  676. List<DlMacodesBean> lineCodeEntities = dlMacodeAdapter.getmList();
  677. for (int j = 0; j < lineCodeEntities.size(); j++) {
  678. lineCodeEntities.get(j).setChecked(false);
  679. }
  680. dlMacodeAdapter.notifyDataSetChanged();
  681. }
  682. } else {
  683. dlMacodeAdapter = new DlMacodeAdapter(ComaddBeanList);
  684. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  685. List<DlMacodesBean> lineCodeEntities = dlMacodeAdapter.getmList();
  686. for (int i = 0; i < lineCodeEntities.size(); i++) {
  687. lineCodeEntities.get(i).setChecked(false);
  688. }
  689. dlMacodeAdapter.notifyDataSetChanged();
  690. }
  691. dlMacodeAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  692. @Override
  693. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  694. List<DlMacodesBean> ipAndPortBeans = dlMacodeAdapter.getmList();
  695. dl_macodEdata = ipAndPortBeans.get(position).getDL_MACODE();
  696. dlstr_macodes = ipAndPortBeans.get(position).getDL_MOULDCODE();
  697. pr_sdetail = ipAndPortBeans.get(position).getPR_DETAIL();
  698. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  699. ipAndPortBeans.get(i).setChecked(false);
  700. }
  701. ipAndPortBeans.get(position).setChecked(true);
  702. dlMacodeAdapter.notifyDataSetChanged();
  703. }
  704. });
  705. }
  706. });
  707. //确定
  708. sure_tv.setOnClickListener(new View.OnClickListener() {
  709. @Override
  710. public void onClick(View v) {
  711. if (StringUtil.isEmpty(dl_macodEdata)){
  712. CommonUtil.toastNoRepeat(getApplicationContext(),"请选择工单");
  713. return;
  714. }
  715. SharedPreUtil.saveString(IndexActivity.this, "MA_CODE", dl_macodEdata);
  716. mCurDoc.setText(dl_macodEdata);
  717. index_detail_doc.setText(pr_sdetail);
  718. Log.e("itemremark",dl_macodEdata);
  719. closeListPopupWindow();
  720. }
  721. });
  722. //取消
  723. cancle_tv.setOnClickListener(new View.OnClickListener() {
  724. @Override
  725. public void onClick(View v) {
  726. closeListPopupWindow();
  727. }
  728. });
  729. String mSearchStr = editadd_et.getText().toString().trim();
  730. if (mSearchStr.isEmpty()) {
  731. dlMacodeAdapter = new DlMacodeAdapter(ComaddBeanList);
  732. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  733. List<DlMacodesBean> lineCodeEntities = dlMacodeAdapter.getmList();
  734. for (int i = 0; i < lineCodeEntities.size(); i++) {
  735. lineCodeEntities.get(i).setChecked(false);
  736. }
  737. dlMacodeAdapter.notifyDataSetChanged();
  738. dlMacodeAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  739. @Override
  740. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  741. List<DlMacodesBean> ipAndPortBeans = dlMacodeAdapter.getmList();
  742. dl_macodEdata = ipAndPortBeans.get(position).getDL_MACODE();
  743. pr_sdetail = ipAndPortBeans.get(position).getPR_DETAIL();
  744. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  745. ipAndPortBeans.get(i).setChecked(false);
  746. }
  747. ipAndPortBeans.get(position).setChecked(true);
  748. dlMacodeAdapter.notifyDataSetChanged();
  749. }
  750. });
  751. }
  752. }
  753. private void setaddAdapter(ArrayList<DlMacodesBean> mList) {
  754. LogUtil.i("mList", JSON.toJSONString(mList));
  755. dlMacodeAdapter = new DlMacodeAdapter(mList);
  756. dlMacodeAdapter.setmList(mList);
  757. rv_line_add_port_data.setAdapter(dlMacodeAdapter);
  758. dlMacodeAdapter.notifyDataSetChanged();
  759. }
  760. private void getRepairStep(String trim) {
  761. progressDialog.show();
  762. VollyRequest.getInstance().stringRequest(mStringRequest,
  763. new HttpParams.Builder()
  764. .url(GloableParams.ADDRESS_PAD_GETSOURCEBYEMP)
  765. .method(Request.Method.GET)
  766. .tag(TAG + "getMaCode")
  767. .flag(0)
  768. .build(), new HttpCallback() {
  769. @Override
  770. public void onSuccess(int flag, Object o) throws Exception {
  771. progressDialog.dismiss();
  772. Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(),"success");
  773. JSONArray dataArray = FastjsonUtil.getJSONArray(o.toString(), "data");
  774. if (isSuccess){
  775. if (dataArray == null){
  776. CommonUtil.toastNoRepeat(getApplicationContext(),"未搜索到匹配数据");
  777. }else {
  778. handleFeededlineData(dataArray);
  779. }
  780. }
  781. }
  782. @Override
  783. public void onFail(int flag, String failStr) throws Exception {
  784. progressDialog.dismiss();
  785. CommonUtil.toastNoRepeat(getApplicationContext(), failStr);
  786. }
  787. });
  788. }
  789. private void handleFeededlineData(JSONArray dataArray) {
  790. ComDataBean bean;
  791. ComDataBeanList.clear();
  792. for (Object index : dataArray) {
  793. JSONObject data = (JSONObject) index;
  794. bean= new ComDataBean();
  795. bean.setItemName(data.getString("SC_NAME"));
  796. bean.setItemremark(data.getString("SC_CODE"));
  797. bean.setDe_location(data.getString("DE_LOCATION") == null ? "-" : data.getString("DE_LOCATION"));
  798. ComDataBeanList.add(bean);
  799. }
  800. initresourcesPopupWindow();
  801. }
  802. private void initresourcesPopupWindow() {
  803. View contView = LayoutInflater.from(this).inflate(R.layout.index_recycle_item, null);
  804. edit_et = (ClearableEditText) contView.findViewById(R.id.edit_et);
  805. TextView sure_tv = (TextView) contView.findViewById(R.id.sure_tv);
  806. TextView cancle_tv = (TextView) contView.findViewById(R.id.cancle_tv);
  807. ImageView search_im = contView.findViewById(R.id.search_im);
  808. LinearLayout line_top = contView.findViewById(R.id.line_top);
  809. rv_line_ip_port_data = contView.findViewById(R.id.rv_ip_port_data);
  810. rv_line_ip_port_data.addItemDecoration(new DividerItemDecoration(this, LinearLayout.VERTICAL));
  811. rv_line_ip_port_data.setLayoutManager(new LinearLayoutManager(this));
  812. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(ComDataBeanList);
  813. ipAndResourcesPortAdapter.setmList(ComDataBeanList);
  814. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  815. setlineAdapter(ComDataBeanList);
  816. edit_et.requestFocus();
  817. editPW = new PopupWindow(contView, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
  818. editPW.setTouchable(true);
  819. editPW.setBackgroundDrawable(new BitmapDrawable());
  820. editPW.setOnDismissListener(new BasePopupWindow.OnDismissListener() {
  821. @Override
  822. public void onDismiss() {
  823. closeListPopupWindow();
  824. }
  825. });
  826. View parentView = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
  827. editPW.showAtLocation(parentView, Gravity.CENTER, 0, 0);
  828. CommonUtil.setBackgroundAlpha(this, 0.5f);
  829. edit_et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  830. @Override
  831. public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  832. if (actionId == EditorInfo.IME_ACTION_DONE
  833. || actionId == EditorInfo.IME_ACTION_SEND
  834. || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
  835. String mSearchStr = edit_et.getText().toString().trim();
  836. if (!mSearchStr.isEmpty()) {
  837. List<ComDataBean> thisList = new ArrayList<>();
  838. for(int i=0;i<ComDataBeanList.size();i++){
  839. if(ComDataBeanList.get(i).getItemremark().contains(mSearchStr)||ComDataBeanList.get(i).getItemName().contains(mSearchStr)){
  840. thisList.add(ComDataBeanList.get(i));
  841. }
  842. if(i == ComDataBeanList.size() -1){
  843. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(thisList);
  844. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  845. LogUtil.i("mSearchStr", JSON.toJSONString(thisList));
  846. }
  847. List<ComDataBean> lineCodeEntities = ipAndResourcesPortAdapter.getmList();
  848. for (int j = 0; j < lineCodeEntities.size(); j++) {
  849. lineCodeEntities.get(j).setChecked(false);
  850. }
  851. ipAndResourcesPortAdapter.notifyDataSetChanged();
  852. }
  853. } else {
  854. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(ComDataBeanList);
  855. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  856. List<ComDataBean> lineCodeEntities = ipAndResourcesPortAdapter.getmList();
  857. for (int i = 0; i < lineCodeEntities.size(); i++) {
  858. lineCodeEntities.get(i).setChecked(false);
  859. }
  860. ipAndResourcesPortAdapter.notifyDataSetChanged();
  861. }
  862. ipAndResourcesPortAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  863. @Override
  864. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  865. List<ComDataBean> ipAndPortBeans = ipAndResourcesPortAdapter.getmList();
  866. itemname = ipAndPortBeans.get(position).getItemName();
  867. itemremark = ipAndPortBeans.get(position).getItemremark();
  868. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  869. ipAndPortBeans.get(i).setChecked(false);
  870. }
  871. ipAndPortBeans.get(position).setChecked(true);
  872. ipAndResourcesPortAdapter.notifyDataSetChanged();
  873. }
  874. });
  875. return true;
  876. }
  877. return false;
  878. }
  879. });
  880. search_im.setOnClickListener(new View.OnClickListener() {
  881. @Override
  882. public void onClick(View v) {
  883. String mSearchStr = edit_et.getText().toString().trim();
  884. if (!mSearchStr.isEmpty()) {
  885. List<ComDataBean> thisList = new ArrayList<>();
  886. for(int i=0;i<ComDataBeanList.size();i++){
  887. if(ComDataBeanList.get(i).getItemremark().contains(mSearchStr)||ComDataBeanList.get(i).getItemName().contains(mSearchStr)){
  888. thisList.add(ComDataBeanList.get(i));
  889. }
  890. if(i == ComDataBeanList.size() -1){
  891. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(thisList);
  892. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  893. LogUtil.i("mSearchStr", JSON.toJSONString(thisList));
  894. }
  895. List<ComDataBean> lineCodeEntities = ipAndResourcesPortAdapter.getmList();
  896. for (int j = 0; j < lineCodeEntities.size(); j++) {
  897. lineCodeEntities.get(j).setChecked(false);
  898. }
  899. ipAndResourcesPortAdapter.notifyDataSetChanged();
  900. }
  901. } else {
  902. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(ComDataBeanList);
  903. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  904. List<ComDataBean> lineCodeEntities = ipAndResourcesPortAdapter.getmList();
  905. for (int i = 0; i < lineCodeEntities.size(); i++) {
  906. lineCodeEntities.get(i).setChecked(false);
  907. }
  908. ipAndResourcesPortAdapter.notifyDataSetChanged();
  909. }
  910. ipAndResourcesPortAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  911. @Override
  912. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  913. List<ComDataBean> ipAndPortBeans = ipAndResourcesPortAdapter.getmList();
  914. itemname = ipAndPortBeans.get(position).getItemName();
  915. itemremark = ipAndPortBeans.get(position).getItemremark();
  916. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  917. ipAndPortBeans.get(i).setChecked(false);
  918. }
  919. ipAndPortBeans.get(position).setChecked(true);
  920. ipAndResourcesPortAdapter.notifyDataSetChanged();
  921. }
  922. });
  923. }
  924. });
  925. List<String> list=new ArrayList<>();
  926. //确定
  927. sure_tv.setOnClickListener(new View.OnClickListener() {
  928. @Override
  929. public void onClick(View v) {
  930. list.clear();
  931. if (StringUtil.isEmpty(itemremark)){
  932. CommonUtil.toastNoRepeat(getApplicationContext(),"请选择工序");
  933. return;
  934. }
  935. handleCode(itemremark, true);
  936. // ct_qty.setText(sc_code);
  937. // ct_qty.requestFocus();
  938. // ct_qty.setSelection(ct_qty.getText().length());
  939. // getSourcePunchInfo(ct_qty.getText().toString().trim());
  940. closeListPopupWindow();
  941. }
  942. });
  943. //取消
  944. cancle_tv.setOnClickListener(new View.OnClickListener() {
  945. @Override
  946. public void onClick(View v) {
  947. closeListPopupWindow();
  948. }
  949. });
  950. String mSearchStr = edit_et.getText().toString().trim();
  951. if (mSearchStr.isEmpty()) {
  952. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(ComDataBeanList);
  953. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  954. List<ComDataBean> lineCodeEntities = ipAndResourcesPortAdapter.getmList();
  955. for (int i = 0; i < lineCodeEntities.size(); i++) {
  956. lineCodeEntities.get(i).setChecked(false);
  957. }
  958. ipAndResourcesPortAdapter.notifyDataSetChanged();
  959. ipAndResourcesPortAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  960. @Override
  961. public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  962. List<ComDataBean> ipAndPortBeans = ipAndResourcesPortAdapter.getmList();
  963. itemname = ipAndPortBeans.get(position).getItemName();
  964. itemremark = ipAndPortBeans.get(position).getItemremark();
  965. for (int i = 0; i < ipAndPortBeans.size(); i++) {
  966. ipAndPortBeans.get(i).setChecked(false);
  967. }
  968. ipAndPortBeans.get(position).setChecked(true);
  969. ipAndResourcesPortAdapter.notifyDataSetChanged();
  970. }
  971. });
  972. }
  973. // edit_et.addTextChangedListener(new TextWatcher() {
  974. // @Override
  975. // public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
  976. // @Override
  977. // public void onTextChanged(CharSequence s, int start, int before, int count) { }
  978. // @Override
  979. // public void afterTextChanged(Editable s) {
  980. // if (ComDataBeanList.isEmpty()){
  981. // getfuzzySearchSourceData(edit_et.getText().toString().trim(),"不良");
  982. // }
  983. // if (s.length() >= 0) {
  984. // String mSearchStr = s.toString().trim();
  985. // LogUtil.i("mSearchStr",mSearchStr);
  986. // List<ComDataBean> thisList = new ArrayList<>();
  987. // for(int i=0;i<ComDataBeanList.size();i++){
  988. // if(ComDataBeanList.get(i).getSC_CODE().contains(mSearchStr)){
  989. // thisList.add(ComDataBeanList.get(i));
  990. // }
  991. // if(i == ComDataBeanList.size() -1){
  992. // ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(thisList);
  993. // rv_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  994. // LogUtil.i("mSearchStr", JSON.toJSONString(thisList));
  995. // }
  996. // }
  997. // ipAndResourcesPortAdapter.notifyDataSetChanged();
  998. //
  999. // } else {
  1000. //
  1001. // ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(ComDataBeanList);
  1002. // rv_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  1003. //
  1004. // }
  1005. // ipAndResourcesPortAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
  1006. // @Override
  1007. // public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
  1008. // List<ComDataBean> ipAndPortBeans = ipAndResourcesPortAdapter.getmList();
  1009. // for (int i = 0; i < ipAndPortBeans.size(); i++) {
  1010. // ipAndPortBeans.get(i).setChecked(false);
  1011. // }
  1012. // ipAndPortBeans.get(position).setChecked(true);
  1013. // ipAndResourcesPortAdapter.notifyDataSetChanged();
  1014. // }
  1015. // });
  1016. // }
  1017. //
  1018. // });
  1019. }
  1020. private void setlineAdapter(ArrayList<ComDataBean> mList) {
  1021. LogUtil.i("mList", JSON.toJSONString(mList));
  1022. ipAndResourcesPortAdapter = new IpAndResourcesPortAdapter(mList);
  1023. ipAndResourcesPortAdapter.setmList(ComDataBeanList);
  1024. ipAndResourcesPortAdapter.notifyDataSetChanged();
  1025. rv_line_ip_port_data.setAdapter(ipAndResourcesPortAdapter);
  1026. }
  1027. private void closeListPopupWindow() {
  1028. if (editPW != null) {
  1029. editPW.dismiss();
  1030. editPW = null;
  1031. CommonUtil.setBackgroundAlpha(this, 1f);
  1032. }
  1033. }
  1034. @Override
  1035. protected void onResume() {
  1036. super.onResume();
  1037. mEmCodeTv.setText("(" + SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMCODE, "-") + ")");
  1038. mEmNameTv.setText(SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMNAME, "-"));
  1039. //新增---给上线人员设置默认值
  1040. mStaffCode =SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMCODE, "");
  1041. sc_code=SharedPreUtil.getString(this,Constants.FLAG.GANG_WEI_SOURCE_CODE,"");
  1042. sc_name=SharedPreUtil.getString(this,Constants.FLAG.GANG_WEI_SOURCE_NAME,"");
  1043. ct_indexgangwei.setText(sc_code);
  1044. mScName.setText(de_location);
  1045. // if (!StringUtil.isEmpty(sc_code)) {
  1046. // handleCode(sc_code, true);
  1047. // }
  1048. }
  1049. @Override
  1050. protected void onNewIntent(Intent intent) {
  1051. super.onNewIntent(intent);
  1052. boolean needClear = intent.getBooleanExtra(Constants.FLAG.NEED_CLEAR_SCCODE, false);
  1053. String fromSc_Code = intent.getStringExtra(Constants.FLAG.SC_CODE);
  1054. frommA_code = intent.getStringExtra(Constants.FLAG.MA_CODE);
  1055. LogUtil.i("getDevicelineneedClear", needClear + "");
  1056. LogUtil.i("getDevicelinefromSc_Code", fromSc_Code + "");
  1057. if (!StringUtil.isEmpty(fromSc_Code) && !needClear) {
  1058. handleCode(fromSc_Code, false);
  1059. } else if (!StringUtil.isEmpty(fromSc_Code) && needClear) {
  1060. sc_code = null;
  1061. ct_indexgangwei.setText("");
  1062. mScName.setText("");
  1063. mFeeding.setText("");
  1064. mCurDoc.setText("");
  1065. SharedPreUtil.saveString(this, "MA_CODE", "");
  1066. index_detail_doc.setText("");
  1067. index_prce_doc.setText("");
  1068. mUnfinish.setText("");
  1069. } else {
  1070. return;
  1071. }
  1072. }
  1073. int pageType = -1;
  1074. @Override
  1075. public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  1076. String itemName = (String) gridItemList.get(position).get(DataSourceManager.KEY_GRID_ITEMNAME);
  1077. //岗位
  1078. String station = ct_indexgangwei.getText().toString().trim();//岗位资源
  1079. if (StringUtil.isEmpty(station)) {
  1080. CommonUtil.toastNoRepeat(this, "请先采集岗位资源");
  1081. return;
  1082. } else {
  1083. //工单暂停,工单切换,实时报工
  1084. if (TextUtils.isEmpty(mStaffCode) && (GloableParams.GRIDNAME_WORK_PAUSE.equals(itemName)
  1085. || GloableParams.GRIDNAME_WORK_SWITCH.equals(itemName)
  1086. || GloableParams.GRIDNAME_TIME_REPORT.equals(itemName)
  1087. || GloableParams.GRIDNAME_TIME_REPORT_DETAIL.equals(itemName))) {
  1088. CommonUtil.toastNoRepeat(this, "当前没有上线人员,请先进行人员上线");
  1089. } else {
  1090. //工单号为空,启动工单
  1091. String workOrder = mCurDoc.getText().toString().trim();
  1092. //工步序交和工序接收
  1093. if(GloableParams.GRIDNAME_STEP_TRANSFER.equals(itemName)
  1094. ||GloableParams.GRIDNAME_STEP_RECEIVE.equals(itemName)
  1095. ||GloableParams.GRIDNAME_BULIANG_CAIJI.equals(itemName)
  1096. ||GloableParams.GRIDNAME_CHAI_PI.equals(itemName)
  1097. ||GloableParams.GRIDNAME_TIAO_ZHAN.equals(itemName)
  1098. // ||GloableParams.GRIDNAME__PUTINTO.equals(itemName)
  1099. ||GloableParams.GRIDNAME_HE_PI.equals(itemName)
  1100. ||GloableParams.GRIDNAME_BAD_EXCHANGE.equals(itemName)
  1101. // ||GloableParams.GRIDNAME_ROLLOUT.equals(itemName)
  1102. ) {
  1103. goFragment(position);
  1104. } else if (GloableParams.GRIDNAME__PUTINTO.equals(itemName)){
  1105. if (!ifbindmake.equals("0")){
  1106. if (StringUtil.isEmpty(workOrder)){
  1107. CommonUtil.toastNoRepeat(this, "暂无在线工单,可点击工单绑定进行操作");
  1108. }else {
  1109. goFragment(position);
  1110. }
  1111. }else {
  1112. goFragment(position);
  1113. }
  1114. }else if (GloableParams.GRIDNAME_ROLLOUT.equals(itemName)){
  1115. if (!ifbindmake.equals("0")){
  1116. if (StringUtil.isEmpty(workOrder)){
  1117. CommonUtil.toastNoRepeat(this, "暂无在线工单,可点击工单绑定进行操作");
  1118. }else {
  1119. goFragment(position);
  1120. }
  1121. }else {
  1122. goFragment(position);
  1123. }
  1124. }else if(GloableParams.GRIDNAME_WORK_PAUSE.equals(itemName)){//解除绑定
  1125. if(TextUtils.isEmpty(workOrder)){
  1126. CommonUtil.toastNoRepeat(this, "暂无在线工单,无法进行解除绑定操作");
  1127. return;
  1128. }
  1129. // List<Master> masterList = DataSourceManager.getDataSourceManager().getMasterList();
  1130. // String maName = masterList.get(position).getMaName();
  1131. // String userName = SharedPreUtil.getString(this, "user_name", null);
  1132. pageType = VolleyUtil.FRAGMENT_LOGIN;
  1133. Dialog dia = new Dialog(IndexActivity.this);
  1134. dia.setContentView(R.layout.dialog_custom);
  1135. CheckBox check_alldelete = dia.findViewById(R.id.check_alldelete);
  1136. TextView tv_warning = dia.findViewById(R.id.tv_warning);
  1137. LinearLayout lineone = dia.findViewById(R.id.lineone);
  1138. LinearLayout linetwo = dia.findViewById(R.id.linetwo);
  1139. TextView tv_info = dia.findViewById(R.id.tv_info);
  1140. ClearableEditText et_pwd_login = dia.findViewById(R.id.et_pwd_login);
  1141. Button btn_cancel = dia.findViewById(R.id.btn_cancel);//取消
  1142. Button btn_confirm = dia.findViewById(R.id.btn_confirm);//确定
  1143. tv_info.setText("工单:"+workOrder);
  1144. dia.show();
  1145. check_alldelete.setVisibility(View.GONE);
  1146. check_alldelete.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
  1147. @Override
  1148. public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
  1149. if (isChecked==true){
  1150. tv_warning.setText("确认全部下料?");
  1151. }else {
  1152. tv_warning.setText("确认解除绑定?");
  1153. }
  1154. }
  1155. });
  1156. dia.setCanceledOnTouchOutside(true);
  1157. btn_confirm.setOnClickListener(new View.OnClickListener() {
  1158. @Override
  1159. public void onClick(View v) {
  1160. // if (check_alldelete.isChecked()){
  1161. getalldeltes(workOrder);
  1162. // }else {
  1163. // getDatagong(workOrder);
  1164. // }
  1165. dia.dismiss();
  1166. }
  1167. });
  1168. btn_cancel.setOnClickListener(new View.OnClickListener() {
  1169. @Override
  1170. public void onClick(View v) {
  1171. dia.dismiss();
  1172. }
  1173. });
  1174. }else{
  1175. if (StringUtil.isEmpty(workOrder)){
  1176. //工单启动,人员换岗
  1177. if (GloableParams.GRIDNAME_WORK_START.equals(itemName)) {
  1178. goFragment(position);
  1179. } else {
  1180. CommonUtil.toastNoRepeat(this, "暂无在线工单,可点击工单绑定进行操作");
  1181. }
  1182. } else if (!ifbindmake.equals("0")&& GloableParams.GRIDNAME__PUTINTO.equals(itemName)){
  1183. if (StringUtil.isEmpty(workOrder)){
  1184. CommonUtil.toastNoRepeat(this, "暂无在线工单,可点击工单绑定进行操作");
  1185. }else {
  1186. goFragment(position);
  1187. }
  1188. }else if (!ifbindmake.equals("0")&& GloableParams.GRIDNAME_ROLLOUT.equals(itemName)){
  1189. if (StringUtil.isEmpty(workOrder)){
  1190. CommonUtil.toastNoRepeat(this, "暂无在线工单,可点击工单绑定进行操作");
  1191. }else {
  1192. goFragment(position);
  1193. }
  1194. } else if (!ifinput.equals("0")&& GloableParams.GRIDNAME_IN_MATERIAL.equals(itemName)){
  1195. if (StringUtil.isEmpty(workOrder)){
  1196. CommonUtil.toastNoRepeat(this, "已有在线工单不需要进行工单绑定");
  1197. }else {
  1198. goFragment(position);
  1199. }
  1200. }else if (!ifinput.equals("-1")&& GloableParams.GRIDNAME_IN_MATERIAL.equals(itemName)){
  1201. CommonUtil.toastNoRepeat(this, "岗位资源对应的工序不需要上料");
  1202. } else {
  1203. if (GloableParams.GRIDNAME_WORK_START.equals(itemName)) {//工单启动
  1204. // CommonUtil.toastNoRepeat(this, "已有在线工单不需要进行工单绑定");
  1205. new AlertDialog.Builder(this)
  1206. .setTitle("提示")
  1207. .setMessage("是否追加绑定工单?")
  1208. .setNegativeButton(R.string.cancel, null)
  1209. .setPositiveButton(R.string.confirm, new DialogInterface.OnClickListener() {
  1210. @Override
  1211. public void onClick(DialogInterface dialog, int which) {
  1212. Intent intent=new Intent(IndexActivity.this, AppendBindingActivity.class);
  1213. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  1214. intent.putExtra(Constants.FLAG.SC_CODE, sc_code);
  1215. intent.putExtra(Constants.FLAG.MOULDCODE, dlstr_macodes);
  1216. intent.putExtra("index_detail_doc", index_detail_doc.getText().toString().trim());
  1217. intent.putExtra("de_location", de_location);
  1218. intent.putExtra("mListdata", (Serializable)mList);
  1219. intent.putExtra(Constants.FLAG.MLIST, mList.size()+"");
  1220. intent.putExtra(Constants.FLAG.MA_CODE, mCurDoc.getText().toString());
  1221. intent.putStringArrayListExtra("MA_SL_NAME",sl_namelist);
  1222. startActivity(intent);
  1223. }
  1224. }).show();
  1225. }else if (ifpack.equals("0")&& GloableParams.GRIDNAME_PACKAGE.equals(itemName)){
  1226. CommonUtil.toastNoRepeat(this, "非包装工序不允许点击");
  1227. } else {
  1228. goFragment(position);
  1229. }
  1230. }
  1231. }
  1232. }
  1233. }
  1234. }
  1235. @Subscribe
  1236. public void onMessageEvent(MoreEventBusBean evensst) {
  1237. }
  1238. //全部删除
  1239. public void getalldeltes(String workOrder){
  1240. progressDialog.show();
  1241. VollyRequest.getInstance().stringRequest(mStringRequest,
  1242. new HttpParams.Builder()
  1243. .url(GloableParams.ADDRESS_PDA_DELETEMSSALL)
  1244. .method(Request.Method.POST)
  1245. .tag(TAG + "deleteMSSAll")
  1246. .flag(0)
  1247. .addParam("ma_code",workOrder)
  1248. .addParam("sc_code", ct_indexgangwei.getText().toString().trim())
  1249. .build(), new HttpCallback() {
  1250. @Override
  1251. public void onSuccess(int flag, Object o) throws Exception {
  1252. try {
  1253. progressDialog.dismiss();
  1254. Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(), "success");
  1255. if (isSuccess) {
  1256. // JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(),"data");
  1257. getDatagong(workOrder);
  1258. }
  1259. } catch (Exception e) {
  1260. }
  1261. }
  1262. @Override
  1263. public void onFail(int flag, String failStr) throws Exception {
  1264. progressDialog.dismiss();
  1265. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  1266. }
  1267. });
  1268. }
  1269. //解除绑定
  1270. public void getDatagong(String workOrder){
  1271. Log.e("workOrder",workOrder);
  1272. Log.e("ct_indexgangwei",ct_indexgangwei.getText().toString().trim());
  1273. progressDialog.show();
  1274. VollyRequest.getInstance().stringRequest(mStringRequest,
  1275. new HttpParams.Builder()
  1276. .url(GloableParams.ADDRESS_PDA_STOPMA)
  1277. .method(Request.Method.POST)
  1278. .tag("stopMa")
  1279. .flag(0)
  1280. .addParam("ma_code",workOrder)
  1281. .addParam("sc_code",ct_indexgangwei.getText().toString().trim())
  1282. .build(), new HttpCallback() {
  1283. @Override
  1284. public void onSuccess(int flag, Object o) throws Exception {
  1285. Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(),"success");
  1286. if (isSuccess){
  1287. CommonUtil.toastNoRepeat(IndexActivity.this,"解绑成功!");
  1288. JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(),"data");
  1289. Intent intent = new Intent(IndexActivity.this, IndexActivity.class);
  1290. intent.putExtra(Constants.FLAG.SC_CODE,sc_code);
  1291. startActivity(intent);
  1292. }else{
  1293. CommonUtil.toastNoRepeat(IndexActivity.this,"解绑失败!");
  1294. }
  1295. progressDialog.dismiss();
  1296. }
  1297. @Override
  1298. public void onFail(int flag, String failStr) throws Exception {
  1299. progressDialog.dismiss();
  1300. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  1301. }
  1302. });
  1303. }
  1304. private void staffDown() {
  1305. progressDialog.show();
  1306. VollyRequest.getInstance().stringRequest(new HttpParams.Builder()
  1307. .url(GloableParams.ADDRESS_PDASHOP_DOWNSORUCEMAN)
  1308. .method(Request.Method.POST)
  1309. .addParam("sc_code", sc_code)
  1310. .addParam("em_code", SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMCODE, ""))
  1311. .build(), new HttpCallback() {
  1312. @Override
  1313. public void onSuccess(int flag, Object o) throws Exception {
  1314. progressDialog.dismiss();
  1315. try {
  1316. CommonUtil.toastNoRepeat(IndexActivity.this, "人员下线成功");
  1317. String result = o.toString();
  1318. JSONObject resultObject = JSON.parseObject(result);
  1319. JSONObject dataObject = FastjsonUtil.getJSONObject(resultObject, "data");
  1320. showDataView(dataObject);
  1321. } catch (Exception e) {
  1322. e.printStackTrace();
  1323. }
  1324. }
  1325. @Override
  1326. public void onFail(int flag, String failStr) throws Exception {
  1327. progressDialog.dismiss();
  1328. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  1329. }
  1330. });
  1331. }
  1332. private void goFragment(int position) {
  1333. //将选中的ItemName传递给功能Activity(FunctionActivity)
  1334. String itemName = (String) gridItemList.get(position).get(DataSourceManager.KEY_GRID_ITEMNAME);
  1335. Intent intent = new Intent(IndexActivity.this, FunctionActivity.class);
  1336. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  1337. intent.putExtra(Constants.FLAG.SC_CODE, sc_code);
  1338. intent.putExtra(Constants.FLAG.MOULDCODE, dlstr_macodes);
  1339. intent.putExtra("index_detail_doc", index_detail_doc.getText().toString().trim());
  1340. intent.putExtra("de_location", de_location);
  1341. intent.putExtra("mListdata", (Serializable)mList);
  1342. intent.putExtra(Constants.FLAG.MLIST, mList.size()+"");
  1343. intent.putExtra(Constants.FLAG.MA_CODE, mCurDoc.getText().toString());
  1344. intent.putStringArrayListExtra("MA_SL_NAME",sl_namelist);
  1345. startActivity(intent);
  1346. }
  1347. @Override
  1348. public void onStaffScan() {
  1349. if (CameraUtil.hasCamera()) {
  1350. Intent intent = new Intent();
  1351. intent.setClass(this, CaptureActivity.class);
  1352. startActivityForResult(intent, SCAN_STAFF_CODE);
  1353. } else {
  1354. CommonUtil.toastNoRepeat(this, getString(R.string.no_camera_detected));
  1355. }
  1356. }
  1357. @Override
  1358. public void onStaffUp(String emid) {
  1359. if (emid != null) {
  1360. progressDialog.show();
  1361. VollyRequest.getInstance().stringRequest(new HttpParams.Builder()
  1362. .url(GloableParams.ADDRESS_PDASHOP_UPSORUCEMAN)
  1363. .method(Request.Method.POST)
  1364. .addParam("sc_code", sc_code)
  1365. .addParam("em_id", emid)
  1366. .addParam("em_code", SharedPreUtil.getString(this, Constants.FLAG.CACHE_USER_EMCODE, ""))
  1367. .build(), new HttpCallback() {
  1368. @Override
  1369. public void onSuccess(int flag, Object o) throws Exception {
  1370. progressDialog.dismiss();
  1371. try {
  1372. JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(), "data");
  1373. showDataView(dataObject);
  1374. mStaffUpPopup.dismiss();
  1375. CommonUtil.toastNoRepeat(IndexActivity.this, "人员上线成功");
  1376. } catch (Exception e) {
  1377. e.printStackTrace();
  1378. }
  1379. }
  1380. @Override
  1381. public void onFail(int flag, String failStr) throws Exception {
  1382. progressDialog.dismiss();
  1383. CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
  1384. }
  1385. });
  1386. }
  1387. }
  1388. @Override
  1389. public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
  1390. super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  1391. if (requestCode == PermissionUtil.DEFAULT_REQUEST) {
  1392. if (grantResults.length != 1 || grantResults[0] != PackageManager.PERMISSION_GRANTED) {
  1393. //没有获取到权限
  1394. } else {
  1395. }
  1396. }
  1397. }
  1398. @Override
  1399. public void onBackPressed() {
  1400. super.onBackPressed();
  1401. /*if (mExitPopupWindow.isShowing()) {
  1402. closeExitPopupWindow();
  1403. } else {
  1404. if (mExitPopupWindow != null) {
  1405. CommonUtil.setBackgroundAlpha(this, 0.5f);
  1406. mExitPopupWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER, 0, 0);
  1407. }
  1408. }*/
  1409. }
  1410. private void getPrintTemplate() {
  1411. VolleyRequest.getInstance().stringRequest(mStringRequest,
  1412. new HttpParams.Builder()
  1413. .url(GloableParams.ADDRESS_BARINFO_PRINTMODEL)
  1414. .method(Request.Method.GET)
  1415. .flag(0)
  1416. .tag("barinfoPrint")
  1417. .addParam("caller", "Lotno!PDAPrint")//Barcode!PDAPrint仓库
  1418. .build(), new HttpCallback() {
  1419. @Override
  1420. public void onSuccess(int flag, Object o) throws Exception {
  1421. try {
  1422. String result = o.toString();
  1423. Log.e("prints", result);
  1424. if (FastjsonUtil.validate(result)) {
  1425. JSONObject resultObject = JSON.parseObject(result);
  1426. JSONArray dataArray = resultObject.getJSONArray("data");
  1427. if (dataArray != null && dataArray.size() > 0) {
  1428. SharedPreUtil.saveString(IndexActivity.this, Constants.FLAG.PRINT_TEMPLATE_CACHE, dataArray.toJSONString());
  1429. }
  1430. }
  1431. } catch (Exception e) {
  1432. e.printStackTrace();
  1433. }
  1434. }
  1435. @Override
  1436. public void onFail(int flag, String failStr) throws Exception {
  1437. Log.e("printf", failStr);
  1438. }
  1439. });
  1440. }
  1441. private void closeExitPopupWindow() {
  1442. if (mExitPopupWindow != null) {
  1443. mExitPopupWindow.dismiss();
  1444. CommonUtil.setBackgroundAlpha(this, 1f);
  1445. }
  1446. }
  1447. private class IpAndResourcesPortAdapter extends BaseQuickAdapter<ComDataBean, BaseViewHolder> {
  1448. private List<ComDataBean> mmmmList;
  1449. public List<ComDataBean> getmList() {
  1450. return mmmmList;
  1451. }
  1452. public void setmList(List<ComDataBean> mList) {
  1453. this.mmmmList = mList;
  1454. }
  1455. public ComDataBean getBeanByPositon(int position){
  1456. return mmmmList.get(position);
  1457. }
  1458. private IpAndResourcesPortAdapter(@Nullable List<ComDataBean> data) {
  1459. super(R.layout.fuzzy_ipandport_item, data);
  1460. this.mmmmList = data;
  1461. }
  1462. @Override
  1463. protected void convert(BaseViewHolder helper, ComDataBean item) {
  1464. helper.setText(R.id.macode_ip__Tv,item.getItemremark()+"-("+item.getItemName()+")-("+item.getDe_location()+")");
  1465. LinearLayout line_true = helper.itemView.findViewById(R.id.line_true);
  1466. if (item.getChecked()) {
  1467. line_true.setSelected(true);
  1468. } else {
  1469. line_true.setSelected(false);
  1470. }
  1471. }
  1472. }
  1473. private class ComDataBean{
  1474. String itemName = null;
  1475. String itemremark = null;
  1476. String de_location = null;
  1477. boolean Checked;
  1478. public String getDe_location() {
  1479. return de_location;
  1480. }
  1481. public void setDe_location(String de_location) {
  1482. this.de_location = de_location;
  1483. }
  1484. public boolean getChecked() {
  1485. return Checked;
  1486. }
  1487. public void setChecked(boolean checked) {
  1488. Checked = checked;
  1489. }
  1490. public String getItemName() {
  1491. return itemName;
  1492. }
  1493. public void setItemName(String itemName) {
  1494. this.itemName = itemName;
  1495. }
  1496. public String getItemremark() {
  1497. return itemremark;
  1498. }
  1499. public void setItemremark(String itemremark) {
  1500. this.itemremark = itemremark;
  1501. }
  1502. }
  1503. }