package com.jiuqi.njt.ui; import java.util.ArrayList; import java.util.List; import com.jiuqi.mobile.nigo.comeclose.bean.app.coop.CooperativeGroupBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.GroupTypeEnum; import com.jiuqi.mobile.nigo.comeclose.bean.base.InnerManagementBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.UserBean; import com.jiuqi.mobile.nigo.comeclose.bean.master.DriverBean; import com.jiuqi.mobile.nigo.comeclose.exception.LoginException; import com.jiuqi.mobile.nigo.comeclose.manager.base.IInnerManagementManager; import com.jiuqi.mobile.nigo.comeclose.manager.master.ICooperativeGroupManager; import com.jiuqi.mobile.nigo.comeclose.ws.client.ClientContext; import com.jiuqi.njt.data.CheckStateInterface; import com.jiuqi.njt.data.MyApp; import com.jiuqi.njt.util.Constants; import com.jiuqi.njt.util.UIUtil; import com.jiuqi.njt.util.login.AutoLoginUtil; import com.jiuqi.njt.widget.ProgressDialogStyle; import android.app.Activity; import android.app.Dialog; import android.os.AsyncTask; import android.os.Bundle; public class AbstractNjtActivity03 extends Activity{ MyApp application; protected UserBean user; protected GetUserTask getUserTask = null; List<DriverBean> userlist = null;// 可查询的用户列表 ArrayList<String> simlist = null; // 目标用户手机号 protected List<InnerManagementBean> parentwfz; List<CooperativeGroupBean> parentfz; protected List<InnerManagementBean> parent; private boolean login; public String name = "";//员工名称 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); doinit(); } protected void onQueryComplete() { } protected void doinit() { initParam(); initWidgets(); initListeners(); initUI(); initQuery(); } private void initQuery() { if(new CheckStateInterface(AbstractNjtActivity03.this).checkConnection()){ getUserTask = new GetUserTask(); getUserTask.execute(); }else{ UIUtil.showMsg(AbstractNjtActivity03.this, Constants.NETWORK_STATE_ERROR); } } protected void initUI() { } protected void initListeners() { } protected void initWidgets() { } protected void initParam() { application = (MyApp) getApplication(); } // 人员列表查询 public class GetUserTask extends AsyncTask<Void, Void, String> { Dialog pd = null; protected void onPreExecute() { pd = ProgressDialogStyle.createLoadingDialog(AbstractNjtActivity03.this, "正在获取用户列表"); pd.show(); } protected String doInBackground(Void... params) { String msg = ""; try { if (application.getIsLogin()) { ClientContext context = application.getClientContext(); IInnerManagementManager manager = context.getManager(IInnerManagementManager.class); ICooperativeGroupManager groupManager = context.getManager(ICooperativeGroupManager.class); user = context.getUser(); String sql = groupManager.getAllGroupSql(user.getGuid()); if(user.getAccount().equals(Constants.ANONYMOUS)){ throw new LoginException("您的登录信息已过期,请重新登录!"); } // 获取未分组,未分组是sql = 机构guid // guid 机构guid 登录用户guid . parentwfz = new ArrayList<InnerManagementBean>(); parentwfz = manager.queryInnerBySql("".equals(sql)?"":("not in ("+sql+")"),user.getGuid(),1,name); parentfz = new ArrayList<CooperativeGroupBean>(); //TODO 待测试 parentfz = groupManager.get(user.getGuid(),GroupTypeEnum.CooperFile.getCode()); parent = new ArrayList<InnerManagementBean>(); parent = getInnerMaBeansFromCooGroupBean(parentfz); } else { msg = "请先登录"; } } catch (Exception e) { msg = "用户列表信息获取异常"; // login = new AutoLoginUtil(AbstractNjtActivity03.this, e).getNewSession(); e.printStackTrace(); } return msg; } protected void onCancelled() { super.onCancelled(); } protected void onPostExecute(String result) { pd.dismiss(); if (!"".equals(result)) { UIUtil.showMsg(AbstractNjtActivity03.this, result); }else{ // 查询成功后,初始化列表数据 onQueryComplete(); } // if(login){ // login =false; // new GetUserTask().execute(); // } } } protected void clearSimList(List<String> list){ if(list == null ){ simlist= new ArrayList<String>(); }else{ simlist.clear(); } } /** * 分组转化成未分组 * @param list * @return */ private List<InnerManagementBean> getInnerMaBeansFromCooGroupBean(List<CooperativeGroupBean> list) { InnerManagementBean iBean ; List<InnerManagementBean> iList = new ArrayList<InnerManagementBean>(); if (list == null || list.size() < 1) { return iList; }else { for (int i = 0; i < list.size(); i++) { iBean = new InnerManagementBean(); iBean.setUserName(list.get(i).getName()); iBean.setCreateDate(list.get(i).getCreateDate()); iBean.setGuid(list.get(i).getGuid()); iBean.setOrgGuid(list.get(i).getCooperativeGuid()); iBean.setLevel(1); iList.add(iBean); } return iList; } } }