1. //进行发票查询
  2. btnFpSelect.setOnClickListener(btnFpSelectClickListener);
  1. private OnClickListener btnFpSelectClickListener = new OnClickListener(){
  2. @Override
  3. public void onClick(View v) {
  4. fphm = etFphm.getText().toString(); //发票号码
  5. fpzje = etFpzje.getText().toString(); //发票总金额
  6. kjrq = etKjrq.getText().toString(); //开具日期
  7. khmch = etKhmch.getText().toString(); //客户名称
  8. khmch = StrUtil.toUrlUtf8(khmch); //因为我的环境是GBK所以在进行网络操作时中文要进行Utf-8转码
  9. xhfshwdjh = etXhfshwdjh.getText().toString(); //销货方税务登记号
  10.  
  11. if(rbFlag.equals("是")){//表示存在税控码
  12. kshm = etShkm.getText().toString(); //税控码
  13. if(kshm.length()<20){
  14. fpchxToast("控税码应为20位的数字!",etShkm);
  15. return;
  16. }
  17. //将税控码分隔成5段每段长度为4的数组
  18. skms = StrUtil.splitStr(kshm, 4);
  19. }
  20. if(fpdm.length()<12){
  21. fpchxToast("发票代码应为长度12位的数字!",etFphm);
  22. return;
  23. }
  24. if(fphm.length()<8){
  25. fpchxToast("发票号码应为长度8位的数字!",etFphm);
  26. return;
  27. }
  28. if(fpzje.length()<1){
  29. fpchxToast("请输入发票金额!",etFpzje);
  30. return;
  31. }
  32. if(!kjrq.matches("\\d{4}-\\d{2}-\\d{2}")){
  33. fpchxToast("请输入正确的日期格式!",etKjrq);
  34. return;
  35. }
  36. if(khmch.length()<1){
  37. fpchxToast("请输入客户名称!",etKhmch);
  38. return;
  39. }
  40. if(xhfshwdjh.length()<18){
  41. fpchxToast("请输入正确的销货方税务登记码!",etXhfshwdjh);
  42. return;
  43. }
  44. //进行查询
  45. oprFpchx();
  46. }
  47. };
  1. /**
  2. * 通过StringRequest Get的方式进行发票查询
  3. */
  4. private void oprFpchx(){
  5. String url="http://192.168.0.100/jsjKjPtFp.do?";
  6.  
  7. url+="fpdm="+fpdm+"&fphm="+fphm+"&kjfnsrsbh="+xhfshwdjh+"&kpje="+fpzje+
  8. "&kprq="+kjrq;
  9. if(rbFlag.equals("是")){
  10. url+="&skm="+skms[0]+"&skm="+skms[1]+"&skm="+skms[2]
  11. +"&skm="+skms[3]+"&skm="+skms[4]+"&spfnsrmc="+khmch;
  12. }else{
  13. url+="&spfnsrmc="+khmch;
  14. }
  15.  
  16. pd = ProgressDialog.show(getActivity(), "发票查询", "正在查询中...");
  17.  
  18. RequestQueue rQueue = WzhVolley.getRequestQueue();
  19.  
  20. StringRequest getRequest = new StringRequest(
  21. Request.Method.GET,
  22. url,
  23. createFpchxSuccessListener(),
  24. createFpchxErrorListener());
  25. rQueue.add(getRequest);
  26. }
  1. private Response.Listener<String> createFpchxSuccessListener(){
  2. return new Response.Listener<String>() {
  3. @Override
  4. public void onResponse(String result) {
  5. String info="";
  6. pd.dismiss();
  7. if(result.indexOf(fphm)>0){
  8. info="\t您查询的内容与开票人开具的发票信息一致!";
  9. }else{
  10. info="\t您查询的内容与开票人开具的发票信息不一致!";
  11. }
  12. AlertDialog.Builder dialog = new AlertDialog.Builder(getActivity());
  13. dialog.setIcon(R.drawable.ic_warnings_info);
  14. dialog.setTitle("查询结果!");
  15. dialog.setMessage(info);
  16. dialog.setNegativeButton("确定", new DialogInterface.OnClickListener() {
  17. @Override
  18. public void onClick(DialogInterface dialog, int which) {
  19. // TODO Auto-generated method stub
  20. }
  21. });
  22. dialog.create().show();
  23. }
  24. };
  25. }
  26.  
  27. private Response.ErrorListener createFpchxErrorListener(){
  28. return new Response.ErrorListener() {
  29. @Override
  30. public void onErrorResponse(VolleyError arg0) {
  31. pd.dismiss();
  32. Toast.makeText(getActivity(), "网络超时请稍后再试!", Toast.LENGTH_SHORT).show();
  33. }
  34. };
  35. }

使用Volley StringRequest Get的方式进行发票查询操作的更多相关文章

  1. 六种方式实现hibernate查询

    最近在学习Hibernate的基本内容,刚好在项目中有用到,基本上都是用到哪就学哪. 今天看看六种方式实现hibernate查询......... 分别是HQL查询,对象化查询Criteria方法,动 ...

  2. 不要在 foreach 循环里进行元素的 remove/add 操作。remove 元素请使用 Iterator 方式,如果并发操作,需要对 Iterator 对象加锁

    不要在 foreach 循环里进行元素的 remove/add 操作.remove 元素请使用 Iterator 方式,如果并发操作,需要对 Iterator 对象加锁. 正例: Iterator&l ...

  3. 【转载】JavaWeb之DBUtils QueryRunner类对数据表的增、删、查(8种结果集处理方式)、改操作

    一.使用QueryRunner类,实现对数据表的 insert delete update package com.shuhuadream.queryrunner; import java.sql.C ...

  4. Hibernate 查询方式、JPA查询方式

    hibernate 查询方式: OID 查询 对象导航查询 HQL 方式查询 QBC方式查询 原生SQL方式查询 JPA 查询方式: OID 查询 对象导航查询 JPQL 方式查询 CriteriaB ...

  5. 使用原生JDBC方式对数据库进行操作

    使用原生JDBC方式对数据库进行操作,包括六个步骤: 1.加载JDBC驱动程序 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM.可以通过java.lang.Class类的静态方法forNa ...

  6. Android Volley - volley StringRequest編碼問題

    有些時候這個類並不能很好的解決中文編碼問題 如果出現亂碼,就 要重寫該類的parseNetworkResponse 方法了. 繼承StringRequest,然後重寫parseNetworkRespo ...

  7. 在非SQL客户端使用命令行方式定期连接SQL Server 服务器并模拟用户查询操作,同时输出信息内容

    一个很长的标题,实现的功能就是尽量使用非人力的方式模拟人去做一件事情,为了便于记录,将他们输出成文件方便查阅. 图形界面方式,使用微软自己的ConnMaker.exe,或者Microsoft 数据连接 ...

  8. Thinkphp查询 1.查询方式 2.表达式查询 3.快捷查询 4.区间查询 5.组合查询 6.统计查询 7.动态查询 8.SQL 查询

    1.使用字符串作为条件查询 $user = M('User'); var_dump($user->where('id=1 AND user="蜡笔小新"')->sele ...

  9. 非链接方式访问数据库--查询的数据集用Dataset来存储。

    private void Button_Click_1(object sender, RoutedEventArgs e) { //非链接方式访问数据库, //1创建连接对象(连接字符串) using ...

随机推荐

  1. ISAP

    跑的是比Dinic快辣. 更新:指针版.... #include<iostream> #include<cstdio> #include<cmath> #inclu ...

  2. 我为什么放弃了win7系统

    作为一个软件开发者,由于要常年维护一些老系统,所以非常看中win7对一些稍老一点软件的兼容性,可它还是让我失望了: 如果没有特殊手段,sqlserver2000是不能向导式安装成功的: 之前公司的主要 ...

  3. HDU_1016——素环问题DFS

    Problem Description A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ... ...

  4. HDU_2020——按绝对值排序

    Problem Description 输入n(n<=100)个整数,按照绝对值从大到小排序后输出.题目保证对于每一个测试实例,所有的数的绝对值都不相等.   Input 输入数据有多组,每组占 ...

  5. POJ-1488(字符串应用)

    Description TEX is a typesetting language developed by Donald Knuth. It takes source text together w ...

  6. npm包管理工具

    # 从官方包仓库中查找forever包的信息 npm search forever # 查看forever包中package.json的信息 npm view forever # 下载,安装forev ...

  7. Java里的接口

    Java里面由于不允许多重继承,所以如果要实现多个类的功能,则可以通过实现多个接口来实现. Java接口和Java抽象类代表的就是抽象类型,就是我们需要提出的抽象层的具体表现.OOP面向对象的编程,如 ...

  8. ASIHTTPRequest使用指南---<<翻译稿>>

    ASIHTTPRequest使用指南---<<翻译稿>> 当第一次使用ASIHTTPRequest进行http请求时,会出现非常多的bug提示.查了一些资料,发现在少倒入了几个 ...

  9. [MySQL CPU]线上飙升800%,load达到12的解决过程

    接到报警通知,负载过高,达到800%,load也过高,有11了. MySQL版本号为5.6.12-log 1 top 之后,确实是mysqld进程占领了全部资源. 2 查看error日志,无不论什么异 ...

  10. [开源夏令营][四] Docker remote API 之 镜像篇

    列出镜像 列出镜像,有两个可选參数,一个是all,一个是filter,all可选值有,0/False/false,1/True/true,默觉得0:filter是一个包括一个过滤对象的json,形式如 ...