BannerActivity.java 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  1. package com.uas.standard_esop.activity;
  2. import android.content.Context;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.text.TextUtils;
  6. import android.util.Base64;
  7. import android.util.Log;
  8. import android.view.KeyEvent;
  9. import android.view.View;
  10. import android.view.WindowManager;
  11. import android.view.inputmethod.EditorInfo;
  12. import android.widget.CompoundButton;
  13. import android.widget.ImageView;
  14. import android.widget.LinearLayout;
  15. import android.widget.Switch;
  16. import android.widget.TextView;
  17. import com.alibaba.fastjson.JSONObject;
  18. import com.android.volley.Request;
  19. import com.android.volley.toolbox.StringRequest;
  20. import com.bumptech.glide.Glide;
  21. import com.bumptech.glide.request.target.Target;
  22. import com.github.chrisbanes.photoview.PhotoView;
  23. import com.stx.xhb.xbanner.XBanner;
  24. import com.uas.standard_esop.R;
  25. import com.uas.standard_esop.global.GloableParams;
  26. import com.uas.standard_esop.tools.SharedPreUtil;
  27. import com.uas.standard_esop.util.CommonUtil;
  28. import com.uas.standard_esop.util.Constants;
  29. import com.uas.standard_esop.util.FastjsonUtil;
  30. import com.uas.standard_esop.util.HttpCallback;
  31. import com.uas.standard_esop.util.HttpParams;
  32. import com.uas.standard_esop.util.VollyRequest;
  33. import com.uas.standard_esop.view.ClearableEditText;
  34. import java.util.ArrayList;
  35. import java.util.List;
  36. public class BannerActivity extends BaseActivity {
  37. private StringRequest mStringRequest;
  38. private static String TAG = "BannerActivity";
  39. private XBanner x_banner;
  40. private Context context;
  41. private String sinmagedata;
  42. private int popViewPosition= 0;
  43. private ImageView iv_pepole;
  44. private TextView iv_name;
  45. private TextView iv_jin;
  46. private TextView tv_jixiao;
  47. private ImageView iv_jixiao;
  48. private ClearableEditText at_peoplecode;
  49. private TextView get_data;
  50. private TextView tv_key_positions;
  51. private String keystep;
  52. private String keyStepSet;
  53. private ArrayList<String> lists;
  54. private Switch s_control;
  55. // private BasePopupView show;
  56. @Override
  57. protected void onCreate(Bundle savedInstanceState) {
  58. super.onCreate(savedInstanceState);
  59. context=this;
  60. setContentView(R.layout.activity_banner);
  61. Intent intent = getIntent();
  62. lists = new ArrayList<>();
  63. try {
  64. lists = intent.getStringArrayListExtra("lists");
  65. keystep = intent.getStringExtra("keystep");
  66. keyStepSet = intent.getStringExtra("keyStepSet");
  67. List<Object> objects = (List) lists;
  68. }catch (Exception e) {
  69. e.printStackTrace();
  70. }
  71. x_banner = findViewById(R.id.x_banner);
  72. iv_pepole = findViewById(R.id.iv_pepole);
  73. iv_name = findViewById(R.id.iv_name);
  74. iv_jin = findViewById(R.id.iv_jin);
  75. tv_jixiao = findViewById(R.id.tv_jixiao);
  76. iv_jixiao = findViewById(R.id.iv_jixiao);
  77. at_peoplecode = findViewById(R.id.at_peoplecode);
  78. get_data = findViewById(R.id.get_data);
  79. tv_key_positions = findViewById(R.id.tv_key_positions);
  80. PhotoView photoView = findViewById(R.id.photo_view);
  81. s_control = findViewById(R.id.s_control);
  82. // String imageUrl = "https://example.com/image.jpg"; // 替换为你的图片URL
  83. ImageView iv_fullscreen = findViewById(R.id.iv_fullscreen);
  84. LinearLayout iv_goback = findViewById(R.id.iv_goback);
  85. ImageView imag_back = findViewById(R.id.imag_back);
  86. imag_back.setColorFilter(this.getResources().getColor(R.color.zise));
  87. iv_fullscreen.setColorFilter(this.getResources().getColor(R.color.zise));
  88. // List<String> bannerList=new ArrayList<>();
  89. // bannerList.add("https://p2.itc.cn/images01/20210510/096eeb9cd3c84bd8ba09b5713679b4f9.jpeg");
  90. // bannerList.add("https://p2.itc.cn/images01/20210510/096eeb9cd3c84bd8ba09b5713679b4f9.jpeg");
  91. // bannerList.add("http://i0.hdslb.com/bfs/article/97549c0fd58b940c1306faac923a8685551a6a2a.jpg");
  92. if (lists != null) {
  93. for (int i = 0; i < lists.size(); i++) {
  94. sinmagedata = lists.get(i);
  95. Log.e("smd5", sinmagedata);
  96. }
  97. }else {
  98. lists = new ArrayList<>();
  99. }
  100. x_banner.setData(lists,null);
  101. x_banner.setmAdapter(new XBanner.XBannerAdapter() {
  102. @Override
  103. public void loadBanner(XBanner banner, Object model, View view, int position) {
  104. // Glide.with(context).load(lists.get(position)).into((ImageView) view);
  105. Glide.with(context)
  106. .load(lists.get(position))
  107. .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
  108. .into((ImageView) view);
  109. }
  110. });
  111. // x_banner.setmAutoPalyTime(2000);
  112. x_banner.startAutoPlay();
  113. x_banner.setOnItemClickListener(new XBanner.OnItemClickListener() {
  114. @Override
  115. public void onItemClick(XBanner xBanner, int i) {
  116. getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
  117. // iv_fullscreen.setVisibility(View.VISIBLE);
  118. // iv_goback.setVisibility(View.VISIBLE);
  119. x_banner.setVisibility(View.GONE);
  120. photoView.setVisibility(View.VISIBLE);
  121. Log.e("连接", lists.get(i));
  122. // 使用Glide加载网络图片
  123. Glide.with(context)
  124. .load(lists.get(i))
  125. .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
  126. .into(photoView);
  127. }
  128. });
  129. iv_goback.setOnClickListener(new View.OnClickListener() {
  130. @Override
  131. public void onClick(View v) {
  132. if (photoView.getVisibility()==View.VISIBLE){
  133. x_banner.setVisibility(View.VISIBLE);
  134. photoView.setVisibility(View.GONE);
  135. }else {
  136. finish();
  137. }
  138. }
  139. });
  140. iv_fullscreen.setOnClickListener(new View.OnClickListener() {
  141. @Override
  142. public void onClick(View v) {
  143. getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
  144. iv_fullscreen.setVisibility(View.GONE);
  145. iv_goback.setVisibility(View.GONE);
  146. }
  147. });
  148. at_peoplecode.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  149. @Override
  150. public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  151. if (actionId == EditorInfo.IME_ACTION_DONE
  152. || actionId == EditorInfo.IME_ACTION_SEND
  153. || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
  154. String data = at_peoplecode.getText().toString().trim();
  155. getSourcePunchInfo(data);
  156. return true;
  157. }
  158. return false;
  159. }
  160. });
  161. // getSourcePunchInfo("123");
  162. get_data.setOnClickListener(new View.OnClickListener() {
  163. @Override
  164. public void onClick(View v) {
  165. at_peoplecode.clearFocus();
  166. getSourcePunchInfo(at_peoplecode.getText().toString().trim());
  167. }
  168. });
  169. //关键岗位
  170. if (!TextUtils.isEmpty(keystep)) { //自动选择
  171. if (keystep.equals("-1")) {
  172. tv_key_positions.setVisibility(View.VISIBLE);
  173. s_control.setChecked(true);
  174. }else {
  175. s_control.setChecked(false);
  176. tv_key_positions.setVisibility(View.INVISIBLE);
  177. }
  178. }else if (!TextUtils.isEmpty(keyStepSet)) { //手动选择
  179. if (keyStepSet.equals("-1")) {
  180. tv_key_positions.setVisibility(View.VISIBLE);
  181. s_control.setChecked(true);
  182. }else {
  183. s_control.setChecked(false);
  184. tv_key_positions.setVisibility(View.INVISIBLE);
  185. }
  186. }else {
  187. boolean aBoolean = SharedPreUtil.getBoolean(BannerActivity.this, Constants.FLAG.KEY_POSITION_SWITCH, false);
  188. s_control.setChecked(aBoolean);
  189. }
  190. s_control.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
  191. @Override
  192. public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
  193. if (isChecked) {
  194. // Switch被打开时的逻辑
  195. tv_key_positions.setVisibility(View.VISIBLE);
  196. SharedPreUtil.saveBoolean(BannerActivity.this, Constants.FLAG.KEY_POSITION_SWITCH, true);
  197. } else {
  198. // Switch被关闭时的逻辑
  199. tv_key_positions.setVisibility(View.INVISIBLE);
  200. SharedPreUtil.saveBoolean(BannerActivity.this, Constants.FLAG.KEY_POSITION_SWITCH, false);
  201. }
  202. }
  203. });
  204. }
  205. // @Subscribe
  206. // public void onMessageEvent(ReceiveNewImages evensst) {
  207. // finish();
  208. // }
  209. private void getSourcePunchInfo(String em_code) {
  210. if (em_code.isEmpty()){
  211. CommonUtil.toastNoRepeat(BannerActivity.this, "请输入人员编号");
  212. return;
  213. }
  214. progressDialog.show();
  215. VollyRequest.getInstance().stringRequest(mStringRequest,
  216. new HttpParams.Builder()
  217. .url(GloableParams.ADDRESS_SPM_GETEMINFO)
  218. .method(Request.Method.GET)
  219. .tag(TAG + "getMaCode")
  220. .flag(0)
  221. .addParam("em_code", em_code)
  222. .build(), new HttpCallback() {
  223. @Override
  224. public void onSuccess(int flag, Object o) throws Exception {
  225. progressDialog.dismiss();
  226. Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(),"success");
  227. if (isSuccess){
  228. JSONObject dataObject = FastjsonUtil.getJSONObject(o.toString(),"data");
  229. if (dataObject == null){
  230. }else {
  231. String SED_EMNAME = dataObject.getString("sed_emname") == null ? "" : dataObject.getString("sed_emname");
  232. String PATH = dataObject.getString("path") == null ? "" : dataObject.getString("path");
  233. String SED_SKILL = dataObject.getString("sed_skill") == null ? "" : dataObject.getString("sed_skill");
  234. String sed_score = dataObject.getString("sed_score") == null ? "" : dataObject.getString("sed_score");
  235. String strs2 = new String(Base64.decode(PATH,Base64.DEFAULT));
  236. Glide.with(context)
  237. .load(strs2)
  238. .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
  239. .into(iv_pepole);
  240. iv_name.setText("姓名:"+SED_EMNAME);
  241. iv_jin.setText("技能:"+SED_SKILL);
  242. tv_jixiao.setText("绩效:");
  243. if (!TextUtils.isEmpty(sed_score)) {
  244. try {
  245. //大于等于100分显示深绿,80-99分显示浅绿,80以下显示红色
  246. int score = Integer.parseInt(sed_score);
  247. iv_jixiao.setVisibility(View.VISIBLE);
  248. if (score >= 100) {
  249. iv_jixiao.setBackground(getResources().getDrawable(R.color.jx_greens));
  250. }else if (score < 100 && score >= 80) {
  251. iv_jixiao.setBackground(getResources().getDrawable(R.color.jx_green));
  252. }else {
  253. iv_jixiao.setBackground(getResources().getDrawable(R.color.jx_red));
  254. }
  255. }catch (Exception e) {
  256. }
  257. }
  258. }
  259. }
  260. }
  261. @Override
  262. public void onFail(int flag, String failStr) throws Exception {
  263. CommonUtil.toastNoRepeat(BannerActivity.this, failStr);
  264. progressDialog.dismiss();
  265. }
  266. });
  267. }
  268. @Override
  269. protected void initViews() {
  270. }
  271. @Override
  272. protected void initEvents() {
  273. }
  274. @Override
  275. protected void initDatas() {
  276. }
  277. }