




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
移动外勤系统Mobile-Manager E次方团队 移动外勤系统Mobile-Manager项目解决方案-S2C技术路线及实现方案移动外勤系统Mobile-Manager目录目录21.技术路线21.1 系统功能时序图和系统流程图21.1.1 系统功能时序图31.1.2 平台系统流程图41.2 Android手机功能菜单和Android手机功能关键词列表41.3 Web浏览器功能菜单和Web浏览器功能关键词列表52. 实现方案62.1 Android手机主界面功能实现62.1.1 主界面菜单功能的实现62.1.2 获取企业通讯录功能的实现101.技术路线1.1 系统流程图根据Android公众具体的功能实现过程画出了系统流程图,可以清晰明了地展示整个系统接收消息、处理消息和发送消息的操作流程。系统流程图(图1.2)主要介绍整个系统工作的过程,从用户发送消息,到最后用户接收到返回的消息,这个过程通过流程图来描绘,清晰明了。整个系统的实现充分体现出的用户交互友好性。将消息发送到服务器端,服务器端通过数据传输将消息发送回我们的手机上,然后手机对详细进行处理,返回消息到手机平台再到用户手里的过程。1.1.1 平台系统流程图图1.1 整体系统流程图 1.2 Android手机功能菜单和Android手机功能关键词列表Android手机菜单包含了12项功能,功能具体如表1.1主菜单子菜单功能客户客户拜访前往拜访客户,与客户交谈商议签的预约客户评价在拜访客户后,由客户评价工作人员客户管理不同的客户进行分类管理 任务任务发送在任务无法完成情况将任务挂在服务器上,交由其他工作人员帮助完成任务接收接收挂在服务器上的任务,帮助他人完成任务任务查看查看已经挂在网上的任务个人管理个人中心登陆后查看自己信息公司公告从服务器端获取公司内部公告消息企业通讯录独立出来的可添加删除的通讯录GPS定位用于定位员工位置与行程个人签到在GPS定位开启下使用,帮助公司更好管理员工上班行程出差登记用于申请出差,简洁方便表1.1 系统功能表1.3 Web浏览器功能菜单和Web浏览器功能关键词列表Web浏览器菜单包含了12项功能,功能具体如表1.1主菜单子菜单功能管理员管理员登陆与数据库连接进行登陆管理用户对工作人员进行信息管理添加用户对新进的员工进行信息添加查询用户查询某一用户表1.2 Web管理员功能表图1.2 web端后台管理主菜单子菜单功能 用户用户登陆在管理员限制下与数据库连接登陆任务任务发布接收Android手机上传的任务进行管理公告公司公告发布公司公告出差登记出差获取员工发送的出差申请,选择同意与否表1.3 Web用户功能表2. 实现方案2.1 Android手机主界面功能实现2.1.1 主界面菜单功能的实现要设置Android手机的菜单,在手机内部进行页面切换,用Tab分页,然后通过listview和list.add添加跳转功能进入功能实现页面。功能代码如下:public class Main extends TabActivity Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.denglu);TabHost tabHost = getTabHost(); TabSpec tabSpec1 = tabHost.newTabSpec(tab1);tabSpec1.setIndicator(客户);Intent intent1 = new Intent(this, One.class);tabSpec1.setContent(intent1);tabHost.addTab(tabSpec1);TabSpec tabSpec2 = tabHost.newTabSpec(tab2);tabSpec2.setIndicator(任务);Intent intent2 = new Intent(this, Two.class);tabSpec2.setContent(intent2);tabHost.addTab(tabSpec2);TabSpec tabSpec3 = tabHost.newTabSpec(tab3);tabSpec3.setIndicator(个人);Intent intent3 = new Intent(this, Three.class);tabSpec3.setContent(intent3);tabHost.addTab(tabSpec3);public class Three extends Activity private ListView mylistview; private ArrayList list = new ArrayList();Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.tab03); mylistview = (ListView)findViewById(R.id.listview); list. add(个人中心); list.add(公司公告); list.add(企业通讯录); list.add(GPS定位); list.add(个人签到); list.add(出差登记); ArrayAdapter myArrayAdapter = new ArrayAdapter (this,android.R.layout.simple_list_item_1,list); mylistview.setAdapter(myArrayAdapter); mylistview.setOnItemClickListener(new OnItemClickListener()Overridepublic void onItemClick(AdapterView arg0, View arg1, int arg2,long arg3) / TODO Auto-generated method stubif(list.get(arg2).equals(个人中心) Intent intent = new Intent(); intent.setClass(Three.this, ContactsManager.class); startActivity(intent); if(list.get(arg2).equals(公司公告) Intent intent = new Intent(); intent.setClass(Three.this, ContactsManager.class); startActivity(intent); if(list.get(arg2).equals(企业通讯录) Intent intent = new Intent(); intent.setClass(Three.this, ContactsManager.class); startActivity(intent); if(list.get(arg2).equals(GPS定位) Intent intent = new Intent(); intent.setClass(Three.this, ContactsManager.class); startActivity(intent); if(list.get(arg2).equals(个人签到) Intent intent = new Intent(); intent.setClass(Three.this, GPS.class); startActivity(intent); if(list.get(arg2).equals(出差登记) Intent intent = new Intent(); intent.setClass(Three.this, ContactsManager.class); startActivity(intent); ); 图2.1 公众号主界面2.1.2 获取企业通讯录功能的实现企业通讯录就是手机内部储存数据库,手工录入电话号码等信息功能代码函数:public class ContactsManager extends ExpandableListActivity public static final String TAG=ContactsManager;private ContactsManagerDBAdapter contactsManagerDbAdapter;int groupNameIndex;private MyCursrTreeAdapter myCursorTreeAdapter;View view;PopupWindow pop;Button sms;Button btnCall;/缓存除了所选联系人所在组的所有组,用在移动联系人上String groups;/缓存用户所在的组,用在移动联系人上String mygroupName;/长按分组上的 菜单public static final int MENU_GROUP_ADD=Menu.FIRST;public static final int MENU_GROUP_DELETE=Menu.FIRST+1;public static final int MENU_GROUP_MODIFY=Menu.FIRST+2;public static final int MENU_GROUP_ADDCONTACT=Menu.FIRST+3;/长按联系人菜单public static final int MENU_CONTACTS_DELETE=Menu.FIRST;public static final int MENU_CONTACTS_MODIFY=Menu.FIRST+1;public static final int MENU_CONTACTS_MOVE=Menu.FIRST+2;/联系人各个字段索引private static final int icon_index=1;private static final int name_index=2;private static final int description_index=3;private static final int telPhone_index=4;private static final int email_index=5;/组上groupName字段索引private static final int groupName_index=1;Cursor groupCursor; public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.contactsmanager); getExpandableListView().setBackgroundResource(R.drawable.default_bg); registerForContextMenu(getExpandableListView(); contactsManagerDbAdapter=new ContactsManagerDBAdapter(this); contactsManagerDbAdapter.open(); initMyAdapter(); initPopupWindow(); getExpandableListView().setCacheColorHint(0);/拖动时避免出现黑色 getExpandableListView().setDivider(null);/去掉每项下面的黑线(分割线) /自定义下拉图标 getExpandableListView().setGroupIndicator(getResources().getDrawable(R.anim.expander_ic_folder); private void initPopupWindow()view = this.getLayoutInflater().inflate(R.layout.popup_window, null);pop = new PopupWindow(view, ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);pop.setOutsideTouchable(true);sms=(Button)view.findViewById(R.id.btnsms);btnCall=(Button)view.findViewById(R.id.btnCall); /给适配器赋值,刷新界面的时候也会用到 public void initMyAdapter() groupCursor=contactsManagerDbAdapter.getAllGroups(); startManagingCursor(groupCursor); /get the groupName column index groupNameIndex=groupCursor.getColumnIndexOrThrow(groupName); /set my adapter myCursorTreeAdapter=new MyCursrTreeAdapter( groupCursor, this, true ); setListAdapter(myCursorTreeAdapter); public class MyCursrTreeAdapter extends CursorTreeAdapter public MyCursrTreeAdapter(Cursor cursor, Context context,boolean autoRequery) super(cursor, context, autoRequery);Overrideprotected void bindGroupView(View view, Context context, Cursor cursor,boolean isExpanded) / TODO Auto-generated method stubLog.v(TAG, bindGroupView);TextView groupName=(TextView)view.findViewById(R.id.groupName);String group=cursor.getString(groupName_index);groupName.setText(group);TextView groupCount=(TextView)view.findViewById(R.id.groupCount);int count=contactsManagerDbAdapter.getCountContactByGroupName(group);groupCount.setText(+count+);图2.1 企业通讯录2.1.3 GPS定位的实现GPS定位是通过百度地图实现,可以实时显示外勤人员的地址,经纬度以及高度,实时数据传输。功能代码函数:public class GPS extends MapActivity /添加百度地图的相关控件private MapView mapView;private BMapManager bMapManager;/加载地图的引擎/百度地图的keyprivate String keyString = A270F85CD72A01E8519A9677A75FB4016ED9A5A3;/在百度地图上添加一些控件,比如是放大缩小的控件private MapController mapController;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.gps);mapView = (MapView)this.findViewById(R.id.bmapView);bMapManager = new BMapManager(GPS.this);/必须加载keybMapManager.init(keyString, new MKGeneralListener()Overridepublic void onGetPermissionState(int arg0) / TODO Auto-generated method stubif(arg0 = 300)Toast.makeText(GPS.this, 输入的key有错!请核实!, 1).show();Overridepublic void onGetNetworkState(int arg0) / TODO Auto-generated method stub);this.initMapActivity(bMapManager);mapView.setBuiltInZoo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit3 Keep Fit(SectionB 1a-2e)教学设计 人教版英语七年级下册
- 高中地理 第一章 行星地球 第二节 太阳对地球的影响说课稿 新人教版必修1
- 2025年中国粉唑醇行业市场分析及投资价值评估前景预测报告
- 5.3.2 食品保存技术 教学设计-冀少版生物八年级上册
- Unit 3 Section A (1a-2c) 说课稿 2024-2025学年人教版八年级英语下册
- 2025年养老评估师资格认证考试指南及模拟题答案解析
- 学院防疫知识培训会课件
- 2025年农村金融发展现状及趋势分析面试题预测
- 欣赏 黑脸包公、红脸关公、白脸曹操、金莲孙悟空上场诗表演花脸西皮流水唱腔说课稿小学音乐花城版五年级下册-花城版
- 2025年养老护理员初级面试指南营养膳食专题模拟题及解析
- 2025年下半年银行从业资格证考试风险管理复习题库及答案
- 2026华能西藏雅鲁藏布江水电开发投资有限公司应届毕业生校园招聘笔试模拟试题及答案解析
- 围堰施工工序质量验收评定规范
- 2025年成人高考专升本《政治》真题(含答案)
- 抖音短视频平台2025年用户画像深度研究报告
- 2025年广东省中考英语真题及参考答案
- 传媒公司签人的合同范本
- 2025年服装批发行业研究报告及未来行业发展趋势预测
- 珍宝岛战役教学课件
- 人教版(PEP) 六年级上册 Units 1–2综合检测卷月考一 (含答案含听力原文无音频)
- 研学旅行设计学习情境三研之有方研学设计06课件
评论
0/150
提交评论