会议时间:2016年3月30日  13:00~13:20

会议成员:冉华,张敏,王巍,夏一鸣。

会议目的:汇报前一天工作,全体成员评论,确定会后修改内容或分配下一步任务。

会议内容:

1.前端,完成功能点为“将获取信息转化为中端所需格式”,“发送获取的信息给中端”。以下是代码部分

 package com.onezero.account;

 import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; import com.onezero.account.controller.Account;
import com.onezero.account.controller.AccountManager;
import com.onezero.account.controller.AccountManagerImpl; import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast; public class add extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.add_main);
// 显示当前时间
SimpleDateFormat formatter = new SimpleDateFormat(
"yyyy年MM月dd日 HH:mm:ss");
Date curDate = new Date(System.currentTimeMillis());// 获取当前时间
String str = formatter.format(curDate); TextView mTime = (TextView) findViewById(R.id.mytime);
mTime.setText(str); // 实现事件类型选择,点击并改变显示。
final TextView accounttype = (TextView) findViewById(R.id.accounttype);
// 一般
Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button1 = (Button) findViewById(R.id.button1);
accounttype.setText(button1.getText()); }
});
// 餐饮
Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button2 = (Button) findViewById(R.id.button2);
accounttype.setText(button2.getText()); }
}); // 购物
Button button3 = (Button) findViewById(R.id.button3);
button3.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button3 = (Button) findViewById(R.id.button3);
accounttype.setText(button3.getText()); }
});
// 交通
Button button4 = (Button) findViewById(R.id.button4);
button4.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button4 = (Button) findViewById(R.id.button4);
accounttype.setText(button4.getText()); }
});
// 娱乐
Button button5 = (Button) findViewById(R.id.button5);
button5.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button5 = (Button) findViewById(R.id.button5);
accounttype.setText(button5.getText()); }
}); // 医疗
Button button6 = (Button) findViewById(R.id.button6);
button6.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button6 = (Button) findViewById(R.id.button6);
accounttype.setText(button6.getText()); }
}); Button button7 = (Button) findViewById(R.id.button7);
button7.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
OK(); }
}); } public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.add, menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml. // 获取“录入”的返回键,并执行返回。
int id = item.getItemId();
if (id == R.id.action_add_back) { onBackPressed();
} return super.onOptionsItemSelected(item);
} // OK按钮
public void OK() { TextView mytime = (TextView) findViewById(R.id.mytime);
String text1 = mytime.getText().toString(); TextView accounttype = (TextView) findViewById(R.id.accounttype);
String text2 = accounttype.getText().toString(); EditText editText1 = (EditText) findViewById(R.id.editText1);
String text3 = editText1.getText().toString(); EditText editText2 = (EditText) findViewById(R.id.editText2);
String text4 = editText2.getText().toString(); if (text3.equals("")) { Log.e("$%^", "toast");
Toast toast = Toast.makeText(add.this, "请输入金额。",
Toast.LENGTH_SHORT);
toast.show();
} else if(text3.equals(".")||text3.substring(0, 1).equals("0")){ Toast toast = Toast.makeText(add.this, "输入有误,请重新输入。",
Toast.LENGTH_SHORT);
toast.show(); } else{ AccountManager accountManager = new AccountManagerImpl();
Account account = new Account();
account.setAccountId(1); try {
account.setAccountDate(new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").parse(text1));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} account.setAccountType(text2);
account.setAccountSum(text3);
accountManager.addAcount(account); onBackPressed();
} } }

add.java

2.中端,完成功能点为“接收前端发送的数据”,“发送数据给后端”,“提供查询接口”。以下是代码部分

 package com.onezero.account;

 import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; import com.onezero.account.controller.Account;
import com.onezero.account.controller.AccountManager;
import com.onezero.account.controller.AccountManagerImpl; import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast; public class add extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.add_main);
// 显示当前时间
SimpleDateFormat formatter = new SimpleDateFormat(
"yyyy年MM月dd日 HH:mm:ss");
Date curDate = new Date(System.currentTimeMillis());// 获取当前时间
String str = formatter.format(curDate); TextView mTime = (TextView) findViewById(R.id.mytime);
mTime.setText(str); // 实现事件类型选择,点击并改变显示。
final TextView accounttype = (TextView) findViewById(R.id.accounttype);
// 一般
Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button1 = (Button) findViewById(R.id.button1);
accounttype.setText(button1.getText()); }
});
// 餐饮
Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button2 = (Button) findViewById(R.id.button2);
accounttype.setText(button2.getText()); }
}); // 购物
Button button3 = (Button) findViewById(R.id.button3);
button3.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button3 = (Button) findViewById(R.id.button3);
accounttype.setText(button3.getText()); }
});
// 交通
Button button4 = (Button) findViewById(R.id.button4);
button4.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button4 = (Button) findViewById(R.id.button4);
accounttype.setText(button4.getText()); }
});
// 娱乐
Button button5 = (Button) findViewById(R.id.button5);
button5.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button5 = (Button) findViewById(R.id.button5);
accounttype.setText(button5.getText()); }
}); // 医疗
Button button6 = (Button) findViewById(R.id.button6);
button6.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button button6 = (Button) findViewById(R.id.button6);
accounttype.setText(button6.getText()); }
}); Button button7 = (Button) findViewById(R.id.button7);
button7.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
OK(); }
}); } public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.add, menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml. // 获取“录入”的返回键,并执行返回。
int id = item.getItemId();
if (id == R.id.action_add_back) { onBackPressed();
} return super.onOptionsItemSelected(item);
} // OK按钮
public void OK() { TextView mytime = (TextView) findViewById(R.id.mytime);
String text1 = mytime.getText().toString(); TextView accounttype = (TextView) findViewById(R.id.accounttype);
String text2 = accounttype.getText().toString(); EditText editText1 = (EditText) findViewById(R.id.editText1);
String text3 = editText1.getText().toString(); EditText editText2 = (EditText) findViewById(R.id.editText2);
String text4 = editText2.getText().toString(); if (text3.equals("")) { Log.e("$%^", "toast");
Toast toast = Toast.makeText(add.this, "请输入金额。",
Toast.LENGTH_SHORT);
toast.show();
} else if(text3.equals(".")||text3.substring(0, 1).equals("0")){ Toast toast = Toast.makeText(add.this, "输入有误,请重新输入。",
Toast.LENGTH_SHORT);
toast.show(); } else{ AccountManager accountManager = new AccountManagerImpl();
Account account = new Account();
account.setAccountId(1); try {
account.setAccountDate(new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").parse(text1));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} account.setAccountType(text2);
account.setAccountSum(text3);
accountManager.addAcount(account); onBackPressed();
} } }

Account.java

 package com.onezero.account.controller;

 import java.util.List; 

 public interface AccountManager {

     /**
* 添加账本信息
*
* @param account 帐本信息
* @return true 添加成功 false:添加失败
*
*TODO: 需要确认添加失败是否抛出异常,给用户友好提示
*/
boolean addAcount(Account account); /**
* 查询全部账本信息,返回信息按时间降序排序
*
* @return 全部账本信息
*/
List<Account> queryAcount();
}

AccountManager.java

 package com.onezero.account.controller;

 import java.util.Date;
import java.util.List;
import java.util.ArrayList;
public class AccountManagerImpl implements AccountManager{ /**
* 添加账本信息
*
* @param account 帐本信息
* @return true 添加成功 false:添加失败
*
*TODO: 需要确认添加失败是否抛出异常,给用户友好提示
*/
public boolean addAcount(Account account){
// TODO:调用数据库层
return true;
} /**
* 查询全部账本信息,返回信息按时间降序排序
*
* @return 全部账本信息
*/
public List<Account> queryAcount(){
List<Account> accountList = new ArrayList<Account>(); // TODO: 调用数据库层 (暂时写假的)
Account account = new Account();
account.setAccountId(1);
account.setAccountDate(new Date());
account.setAccountType("transportation");
account.setAccountSum("50"); accountList.add(account);
return accountList;
}
}

AccountManagerImpl.java

3.后端,完成功能点为“将获取的数据插入数据库”。

会议体会:昨天布置的任务大家都顺利完成,继续努力。以下是本周的燃尽图,我对昨天的燃尽图进行了修改。

以上是OneZero第二周第三次站立会议。

OneZero第二周第三次站立会议(2016.3.30)的更多相关文章

  1. OneZero第二周第四次站立会议(2016.3.31)

    会议时间:2016年3月30日  13:00~13:20 会议成员:冉华,张敏,王巍,夏一鸣. 会议目的:汇报前一天工作,全体成员评论,确定会后修改内容或分配下一步任务. 会议内容: 1.前端,夏.张 ...

  2. OneZero第二周第五次站立会议(2016.4.1)

    会议时间:2016年4月1日 会议成员:冉华,张敏,夏一鸣.(王请假). 会议目的:汇报前一天工作,会议成员评论. 会议内容: 1.前端,由夏,张负责汇报,完成前端功能,待命. 2.数据逻辑控制,由王 ...

  3. OneZero第三周第三次站立会议(2016.4.6)

    1. 时间: 13:05--13:15  共计10分钟. 2. 成员: X 夏一鸣 * 组长 (博客:http://www.cnblogs.com/xiaym896/), G 郭又铭 (博客:http ...

  4. OneZero第四周第三次站立会议(2016.4.13)

    1. 时间: 15:15--15:30  共计15分钟. 2. 成员: X 夏一鸣 * 组长 (博客:http://www.cnblogs.com/xiaym896/), G 郭又铭 (博客:http ...

  5. OneZero第二周第二次站立会议(2016.3.29)

    会议时间:2016年3月29日  13:05~13:16 会议成员:冉华,张敏,王巍,夏一鸣. 会议目的:汇报前一天工作,全体成员评论,确定会后修改内容或分配下一步任务. 会议内容:以下是会议插图 1 ...

  6. OneZero第二周第一次站立会议(2016.3.28)

    会议时间:2016年3月28日 会议成员:冉华,张敏,王巍,夏一鸣. 会议目的:分配第二周任务. 会议内容:由于老师要求4月1日进行Alpha发布,我们决定最优先完成消息录入功能.工作具体分配如下 1 ...

  7. OneZero第三次站立会议(2016.3.23)

    会议时间:2016年3月23日 13:00~13:15 会议成员:冉华,张敏,王巍,夏一鸣. 会议目的:汇报前一天工作,全体成员评论并修改. 会议内容:以下为会议插图 1.界面原型方面,夏在统计界面中 ...

  8. 《Spring1之第三次站立会议》

    <第三次站立会议> 昨天:我对自己找到的代码进行了相关的了解后,把它们在编译环境中进行了编译以及接着对代码进行逐步深入了解: 今天:我把小组成员找到的写关于登录界面的代码加到了我的项目工程 ...

  9. 4月17日 (PS:由于时间问题,现在才发,望老师见谅)疯狂猜成语-----第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜

    疯狂猜成语-----第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜 会议内容: 组员依次汇报自己的工作进度,并且提出自己在进行任务的过程中遇到的问题,是否解决以及解决办法. 以下 ...

随机推荐

  1. C#游戏开发中快速的游戏循环

    C#游戏开发中快速的游戏循环的实现.参考<精通C#游戏编程>一书. using System; using System.Collections.Generic; using System ...

  2. ViewData、ViewBag、TempData、Session的区别与联系

    简介 这篇文章是我在学习ASP.NET MVC程序传值方式梳理总结的笔记.在ASP.NET MVC中,页面间和Controller与View之间主要有以下几种小量数据传值方式, ViewData.Vi ...

  3. Python2.7-copy

    copy 模块,python 中的‘=’是使左边的对象成为右边对象的一个引用,对不可变对象(如数字,字符串等)使用‘=’一般不会出现问题,但当对字典,列表等可变对象进行‘=’操作时,要注意修改其中一个 ...

  4. 向jupyter notebook加入Anaconda3中已添加的虚拟环境kernel

    # jupyter notebook添加Anaconda虚拟环境的kernel #  开启虚拟环境 (base) C:\Users\jiangshan>activate tensorflow # ...

  5. OpenGL笔记(四) API参考

    常见API glActiveTexture 选择活动纹理单元 glAttachShader 将一个着色器对象绑定到一个程序对象 void glAttachShader(GLuint program, ...

  6. 20155318 《网络攻防》Exp6 信息搜集与漏洞扫描

    20155318 <网络攻防>Exp6 信息搜集与漏洞扫描 基础问题 哪些组织负责DNS,IP的管理. 互联网名称与数字地址分配机构,ICANN机构.其下有三个支持机构,其中地址支持组织( ...

  7. python3 的 round 函数的 练习

    python3 的 round 函数感觉很别扭,其运算结果与习惯不相符.特记录下来: 代码 ''' python 3的 round 函数 是"四舍六入五成双"的 https://w ...

  8. [转]JVM系列三:JVM参数设置、分析

    不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM.GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java ...

  9. Repository模式与UnitOfWorks模式的运用

    软件开发就像是一个江湖,而设计模式就是一本高深的秘籍每读一次.用一次.想一次都能得到新的领悟,让我们的设计技能有所提高.开始时我们可能会“为了模式而模式”,让代码变得乱78糟甚至难以让人理解,但随着设 ...

  10. Jmeter(二十三)_插件扩展

    Jmeter插件管理器 安装插件的方法有两种,一种是传统的方式,即官网下载,本地配置,重启jmeter.现在有一种快捷的方法可以自定义安装插件-插件管理器 JMeter 插件管理器的使用方法很简单:不 ...