图片1(类别):

图片中的数据是我一月的花费统计分析、

这是该网站的地址:http://www.10086bank.com/(需要登录)  没有帐号马上注册一个吧、进入系统后点击“记一笔”  添加数据即可!   类别查询和详细查询!

PC端日程:       

android版在这里:

android版调用站点中的webservice的功能    先上图:

    // 判断是否网络连接 有返回true 失败返回false
public static boolean isNetworkConnected(Context context) {
if (context != null) {
ConnectivityManager mConnectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mNetworkInfo = mConnectivityManager
.getActiveNetworkInfo();
if (mNetworkInfo != null) {
return mNetworkInfo.isAvailable();
}
}
return false;
}

实现android判断当前是否有网络连接的代码。

登录成功进入主界面了:

这里是android调用webservice的代码:

//点击查询按钮获取当天数据
private ArrayList<HashMap<String, String>> GetThisMonthDataByUsercodeDetail(int year,int month,int day){
ArrayList<HashMap<String, String>> list=null;
SoapObject soapObject = new SoapObject(Competence.NAMESPACE, method_GetThisMonthDataByUsercodeDetail);
soapObject.addProperty("year", year);
soapObject.addProperty("month", month);
soapObject.addProperty("day", day);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.bodyOut = soapObject;
HttpTransportSE ht = new HttpTransportSE(Competence.URLs);
try {
ht.debug = true;
ht.reset();
ht.call(Competence.NAMESPACE+method_GetThisMonthDataByUsercodeDetail, envelope);
SoapObject result=(SoapObject)envelope.getResponse();
int count=result.getPropertyCount();
if(count>1){
list=new ArrayList<HashMap<String, String>>();
for (int i = 0; i < count; i=i+2) {
HashMap<String, String> map = new HashMap<String, String>();
map.put("ItemTitle", result.getProperty(i).toString());
map.put("ItemText", result.getProperty(i+1).toString());
list.add(map);
}
}
} catch (Exception e) {
// TODO: handle exception
}
return list;
}

然后调用

    //绑定数据
private void OnDataToListView(ArrayList<HashMap<String, String>> mylist){
if (mylist!=null) {
ListView list = (ListView) findViewById(R.id.MyListView);
SimpleAdapter mSchedule = new SimpleAdapter(DataManager.this,mylist,R.layout.my_listitem,new String[] {"ItemTitle", "ItemText"},new int[] {R.id.ItemTitle,R.id.ItemText});
list.setAdapter(mSchedule);
mSchedule=null;
list=null;
}
else {
Mesg("没有数据!");
}
}

以上android调用10086bank.com

PC端用到了柱状图和饼状图分析功能、使用的是jquery图表插件工具highcharts (点击进入可下载js包),

下面是主要的js代码:

if (temps != "") {
$("select[myenumid='" + myenumid + "']").parent().children().remove('div');
$("select[myenumid='" + myenumid + "']").removeClass();
$("select[myenumid='" + myenumid + "']").html("");
$("select[myenumid='" + myenumid + "']").append(temps);
$("select[myenumid='" + myenumid + "']").chosen();
}
myenumid = null;
temps = null; for (var i = ; i < obj.length; i++) { data1.push(obj[i].LAB);
data2.push(parseFloat(obj[i].DAT)); summoney = parseFloat(summoney) + parseFloat(obj[i].DAT); var one = [];
one[] = obj[i].LAB;
one[] = parseInt(obj[i].DAT);
data.push(one);
one = null; }

数据格式使用的是json格式,一个很厉害的数据传输格式。

页面中还用到children页面美化:

//填充
var isfull = 1;
function fulldata() {
if (isfull == 1) return;
var myenumid = "myenumid007";
$("select[myenumid='" + myenumid + "']").parent().children().remove('div');
$("select[myenumid='" + myenumid + "']").removeClass();
$("select[myenumid='" + myenumid + "']").html("");
$("select[myenumid='" + myenumid + "']").append("<option value='食'>食</option>");
$("select[myenumid='" + myenumid + "']").append("<option value='衣'>衣</option>");
$("select[myenumid='" + myenumid + "']").append("<option value='住'>住</option>");
$("select[myenumid='" + myenumid + "']").append("<option value='用'>用</option>");
$("select[myenumid='" + myenumid + "']").append("<option value='行'>行</option>");
$("select[myenumid='" + myenumid + "']").append("<option value='其它'>其它</option>");
$("select[myenumid='" + myenumid + "']").chosen(); $("select[myenumid='" + myenumid + "']").parent().children().children("a").attr("class", "chzn-single chzn-single-with-drop");
$("select[myenumid='" + myenumid + "']").parent().children().children("div").attr("style", "left:0px;top:24px");
$("select[myenumid='" + myenumid + "']").parent().children().children("div").children("div").children().focus();
$("select[myenumid='" + myenumid + "']").parent().children().children("div").children("ul").children("li:first-child").attr("class", "active-result result-selected highlighted");
myenumid = null;
}

代码实现起来是很容易的、

PAK下载

PC端(100086bank.com)

文采有限、写不出好的东西、但有一颗自信的心!

谢谢!

一个程序员一月的开销统计分析、(附上PC端和移动端android源码)的更多相关文章

  1. 如果你恨一个程序员 忽悠他去做iOS开发(戏谑篇)

    .state { text-align: right; height: 16px; line-height: 16px; color: #999; padding-top: 5px; overflow ...

  2. 如果你恨一个程序员,忽悠他去做iOS开发

    如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...

  3. 每一个程序员需要了解的10个Linux命令

    作为一个程序员,在软件开发职业生涯中或多或少会用到Linux系统,并且可能会使用Linux命令来检索需要的信息.本文将为各位开发者分享10个有用的Linux命令,希望对你会有所帮助. 以下就是今天我们 ...

  4. --专访雷果国: 从1.5K到18K 一个程序员的5年成长之路--

    导语:今年三月份,在CSDN博客和新浪微博上有一篇<从1.5K到18K,一个程序员的5年成长之路>被众人分享和传阅,这篇博文首先介绍了作者自学之初薄弱的基础,然后通过流水账形式分享了那个从 ...

  5. 阅读<构建之法>第13、14、15、16、17章 与 《一个程序员的生命周期》读后感

    第十三章   软件测试 这一章介绍了很多关于测试的方法,比如说单元测试,代码覆盖率测试,构建验证测试,验收测试等,我有一个很纠结的问题,如果我开发软件,是把这么多测试全做完,还是挑一些测试来进行呢?如 ...

  6. [Python 学习]2.5版yield之学习心得 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …

    [Python 学习]2.5版yield之学习心得 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source - [Pyth ...

  7. 【转】每一个程序员需要了解的10个Linux命令

    作为一个程序员,在软件开发职业生涯中或多或少会用到Linux系统,并且可能会使用Linux命令来检索需要的信息.本文将为各位开发者分享10个有用的Linux命令,希望对你会有所帮助. 以下就是今天我们 ...

  8. 如果恨一个程序员,忽悠他去做iOS开发

    如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...

  9. 作为一个程序员,你了解 win 上有哪些必装的软件吗

    关于 win 的一些基础必知内容之前已经分享过,没有看过的可以戳此处→Windows 使用之那些你还不知道操作 新系统安装的第一个软件 Google Chrome 毫无疑问,作为程序员应该是首选的浏览 ...

随机推荐

  1. HBuilder 做移动端app流程

    1.新建一个移动项目 2.编写代码 3.发行-发行为原生安装包,配置参数 选择icon 和引导页

  2. 解决ueditor jquery javascript 取值问题

    代码如下: var content = UE.getEditor('myEditor').getContent();   myEditor是ueditor 的名称name.   代码如下: <t ...

  3. The great pleasure in life is doing what people say you cannot do.

    The great pleasure in life is doing what people say you cannot do.  人生最大的快乐是做到别人认为你做不到的事情.

  4. GIT新手入门学习教程

    廖雪峰的GIT教程 链接地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

  5. SQL Server数据库log shipping 灾备(Part2 )

    3.配置步骤: 主服务器(A机)设置 (1) 启用Log Shipping Configuration 右键单击需要配置日志传输的数据库->Tasks-> Ship Transaction ...

  6. SharePoint Server和Office 365之间的混合模式集成概述

    正如您可能已经知道的那样,云中的Microsoft Office 365和SharePoint Server 2013/2016内部部署可以通过多种方式协同工作.这些通常被称为混合模式,因为它们将功能 ...

  7. Python2和Python3语法区别

    1.使用for循环进行换行 python 2.x, print 不换行>>> print x, python 3.x print 不换行>>> print(x, e ...

  8. Ubuntu下安装XAMPP

    来源:http://www.ido321.com/1265.html 最近,我也玩起了Linux了,瞬间觉得自己逼格又上去了,所以,就给笔记本安装了Ubuntu+Win7双系统.当然在Ubuntu下必 ...

  9. 苹果市值破万亿,iPhone 会涨价吗?

    今日导读 苹果教父乔布斯曾经说过:“活着就是为了改变世界.”虽然他在 56 岁时就遗憾离世,但他极具创新和变革的精神早已深埋进苹果公司的企业文化里,影响着一代又一代的人.就在最近,这家一直努力“改变世 ...

  10. mac 升级EI Capitan后遇到c++转lua时遇到libclang.dylib找不到的错

    升级EI Capitan后,打包lua脚本时,会报这个错: LibclangError: dlopen(libclang.dylib, 6): image not found. To provide ...