| | |
| | | import android.widget.AdapterView; |
| | | import android.widget.Button; |
| | | import android.widget.GridView; |
| | | import android.widget.TextView; |
| | | import android.widget.ThemedSpinnerAdapter; |
| | | |
| | | import androidx.fragment.app.Fragment; |
| | | |
| | | import com.blankj.utilcode.util.CacheDiskUtils; |
| | | import com.blankj.utilcode.util.GsonUtils; |
| | | import com.blankj.utilcode.util.LogUtils; |
| | | import com.liys.lswitch.BaseSwitch; |
| | | import com.liys.lswitch.LSwitch; |
| | | import com.lotaai.canguiayw.common.HttpLoggerInterceptor; |
| | | import com.lotaai.canguiayw.common.HttpUrlDefine; |
| | | import com.lotaai.canguiayw.common.SettingConfig; |
| | | import com.lotaai.canguiayw.data.BaseDto; |
| | | import com.lotaai.canguiayw.device.CanGuiCommand; |
| | | import com.lotaai.canguiayw.device.CanguiStatus; |
| | | import com.lotaai.canguiayw.device.DeviceMessage; |
| | | import com.lotaai.canguiayw.device.DeviceType; |
| | | import com.lotaai.canguiayw.device.MessageType; |
| | | import com.lotaai.canguiayw.view.GridTableAdapter; |
| | | import com.lotaai.canguiayw.view.GridTableAdapterNew; |
| | | import com.pranavpandey.android.dynamic.toasts.DynamicToast; |
| | | |
| | | import org.greenrobot.eventbus.EventBus; |
| | | import org.greenrobot.eventbus.Subscribe; |
| | | import org.greenrobot.eventbus.ThreadMode; |
| | | |
| | | import java.io.IOException; |
| | | import java.util.ArrayList; |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | import okhttp3.Call; |
| | | import okhttp3.Callback; |
| | | import okhttp3.FormBody; |
| | | import okhttp3.OkHttpClient; |
| | | import okhttp3.Request; |
| | | import okhttp3.RequestBody; |
| | | import okhttp3.Response; |
| | | |
| | | public class OpenDoorFragment extends Fragment { |
| | | |
| | |
| | | private Button fugui003; |
| | | private Button fugui004; |
| | | private Button fugui005; |
| | | private TextView tv_close; |
| | | private int cureentSelectGui = 0; |
| | | private boolean isCanRun = false; |
| | | |
| | |
| | | fugui003 = root.findViewById(R.id.gui003); |
| | | fugui004 = root.findViewById(R.id.gui004); |
| | | fugui005 = root.findViewById(R.id.gui005); |
| | | tv_close = root.findViewById(R.id.tv_close); |
| | | for (int g = 0; g < SettingConfig.getInstance().statusList.size(); g++) { |
| | | if (SettingConfig.getInstance().statusList.get(g).getGuiHao() == 0) { |
| | | if (zhugui.getVisibility() != View.VISIBLE) { |
| | |
| | | cureentSelectGui = 5; |
| | | |
| | | initView(); |
| | | } |
| | | }); |
| | | |
| | | tv_close.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View view) { |
| | | requireActivity().finish(); |
| | | } |
| | | }); |
| | | } |
| | |
| | | } |
| | | } |
| | | Collections.sort(gridStatusList); |
| | | GridTableAdapter adapter = new GridTableAdapter(context, gridStatusList, R.layout.framgment_tablegrid_item); |
| | | if (gridStatusList.size() == 8){ |
| | | CanguiStatus e = new CanguiStatus(); |
| | | e.setGridNo(-1); |
| | | gridStatusList.add(4, e); |
| | | } |
| | | GridTableAdapterNew adapter = new GridTableAdapterNew(context, gridStatusList, R.layout.item_box_new); |
| | | gridtable = root.findViewById(R.id.gridtable); |
| | | gridtable.setAdapter(adapter); |
| | | gridtable.setOnItemClickListener(new AdapterView.OnItemClickListener() { |
| | | @Override |
| | | public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { |
| | | CanguiStatus cangui = gridStatusList.get(i); |
| | | ((CunOjbActivity) getActivity()).setData(cangui); |
| | | |
| | | if (cangui.getGridNo()!=-1){ |
| | | //存餐 |
| | | takeCheckCode(((CunOjbActivity) getActivity()).pickupCode,0,cangui.getGridNo(),((CunOjbActivity) getActivity()).isHand); |
| | | } |
| | | // ((CunOjbActivity) getActivity()).setData(cangui); |
| | | /* View item = gridtable.getChildAt(i).findViewById(R.id.gridLineLayout); |
| | | if (checkIsSelectedAndOrRemove(cangui,true)) { |
| | | item.setBackgroundColor(Color.GRAY); |
| | |
| | | }); |
| | | } |
| | | |
| | | public void takeCheckCode(String code, final int guino, final int gridno, int isHand) { |
| | | HttpLoggerInterceptor loggingInterceptor = new HttpLoggerInterceptor(true); |
| | | OkHttpClient client = new OkHttpClient.Builder() |
| | | .connectTimeout(20, TimeUnit.SECONDS)//响应时间,读取时间 |
| | | .readTimeout(20, TimeUnit.SECONDS) |
| | | .callTimeout(20, TimeUnit.SECONDS) |
| | | .addInterceptor(loggingInterceptor)//添加日志拦截器 |
| | | .build(); |
| | | |
| | | LogUtils.i(CacheDiskUtils.getInstance().getString(SettingConfig.getInstance().Cache_Device_Code), code); |
| | | RequestBody body = new FormBody.Builder() |
| | | .build(); |
| | | |
| | | final Request request = new Request.Builder() |
| | | .url(HttpUrlDefine.checkStatus + "?pickNum=" + code + "&boxNum=" + guino + "&cartNum=" + gridno+ "&isHand=" + isHand+ "&sn=" + CacheDiskUtils.getInstance().getString(SettingConfig.getInstance().Cache_Device_Code)) |
| | | /* .addHeader("language", "zh-CN")*/ |
| | | .post(body) |
| | | .build(); |
| | | client.newCall(request).enqueue(new Callback() { |
| | | @Override |
| | | public void onFailure(Call call, IOException e) { |
| | | requireActivity().runOnUiThread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | DynamicToast.makeError(context, "Request error!", 3).show(); |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onResponse(Call call, Response response) throws IOException { |
| | | String result = response.body().string(); |
| | | LogUtils.i("获取到的数据:" + result); |
| | | final BaseDto baseDto = GsonUtils.fromJson(result, BaseDto.class); |
| | | requireActivity().runOnUiThread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | if (baseDto.getCode() == 200) { |
| | | byte[] command = CanGuiCommand.getInstance().controlGridCommand(guino, |
| | | gridno, 1, 255, 0, 0, 0, 0); |
| | | DeviceMessage message = new DeviceMessage(); |
| | | message.setMessageType(MessageType.SENDMESSAGE.ordinal()); |
| | | message.setDeviceType(DeviceType.CANGUI.ordinal()); |
| | | message.setMessageByte(command); |
| | | EventBus.getDefault().post(message); |
| | | // new Handler(Looper.getMainLooper()).postDelayed(() -> finish(), 3000); |
| | | ((CunOjbActivity)requireActivity()).showResult("Place meal into the box."); |
| | | } else { |
| | | DynamicToast.makeError(context, baseDto.getMsg(), 3).show(); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * @param status |
| | | * @param isControl 是否从控制删除和添加,选中变不选,不选变选 |