package com.jqyd.shareInterface; import java.io.File; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import com.jqyd.app.WriteFile; import com.jqyd.model.CoUserModule; import com.jqyd.model.CustomerModule; import com.jqyd.model.DbsxLcgzModel; import com.jqyd.model.EmpsModule; import com.jqyd.model.GroupsModule; import com.jqyd.model.LocationModule; import com.jqyd.model.ProTypeModule; import com.jqyd.model.PublicInfoModule; import com.jqyd.model.RecordModel; import com.jqyd.model.YjxxModel; import com.jqyd.pub.JqydDateUtil; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.util.Log; /** * 操作Sqllite3数据库的接口程序 * @author wangliang * */ public class Optdb_interfce { //数据库对象 private static SQLiteDatabase db = null; //数据库游标 private Cursor cursor = null; //数据库名 private static String DATABASE_JQGJ="JQGJ.db"; //数据变量 private String group_flag = ""; private WriteFile wf; /** * 数据库表字段信息 */ //管理员信息表 private static final String T_COUSERS = "CREATE TABLE T_COUSERS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GGUID VARCHAR(50),SJHM VARCHAR(20),QC VARCHAR(100)," + "JC VARCHAR(50),XT VARCHAR(50),QYDZ VARCHAR(500),XM VARCHAR(30),DISLIMIT VARCHAR(10),JCLB VARCHAR(500),XXCJLB VARCHAR(500)"; //客户信息表 private static final String T_CUSTOMERS = "CREATE TABLE T_CUSTOMERS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,CID VARCHAR(50),CNAME VARCHAR(100),SJHM VARCHAR(20)," + "CZJM VARCHAR(50),GID VARCHAR(50),ADDTIME VARCHAR(30),LINKMAN VARCHAR(30),LINK_SIM VARCHAR(20),SHORT_NAME VARCHAR(50),KH_SORT INT,ADDRESS VARCHAR(500)," + "LON VARCHAR(30),LAT VARCHAR(30),CLON VARCHAR(30),CLAT VARCHAR(30),KH_STATE INT,EMAIL VARCHAR(50),QQ VARCHAR(20),HONOR VARCHAR(50),DEPARTMENT VARCHAR(50)"; //员工信息表 private static final String T_EMPS = "CREATE TABLE T_EMPS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GUID VARCHAR(50),DWHM VARCHAR(20),XM VARCHAR(30),GID VARCAHR(50)," + "ZJM VARCHAR(30),ZCSJ VARCHAR(30),HONOR VARCHAR(50),DEPARTMENT VARCHAR(50),EMAIL VARCHAR(50),QQ VARCHAR(20),ADDR VARCHAR(200)"; //分组信息表------------------ private static final String T_GROUPS = "CREATE TABLE T_GROUPS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GID INT,GNAME VARCHAR(50),G_PID INT,G_SORT INT"; //公共信息表--公告、通知 private static final String T_PUBINFOS = "CREATE TABLE T_PUBINFOS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GID INT,TITLE VARCHAR(50),CONTENT VARCHAR(1000)," + "G_COSIM VARCHAR(30),ADDTIME VARCHAR(30),G_SORT INT,STATE INT"; //产品规格信息表 private static final String T_PRODUCTS = "CREATE TABLE T_PRODUCTS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,PID INT,TID VARCHAR(50),P_NAME VARCHAR(50),P_ZJM VARCHAR(50),P_TYPE VARCHAR(50)," + "P_SORT VARCHAR(30),P_STATUS INT,P_UNIT VARCHAR(20),P_CBJ VARCHAR(20),P_PFJ VARCHAR(20),P_LSJ VARCHAR(20),P_FACTORY VARCHAR(100),P_ADDR VARCHAR(500),P_SALER VARCHAR(50),P_BZ VARCHAR(500),P_ADDTIME VARCHAR(30),P_LB INT,GID INT"; //数据更新记录表 private static final String T_DATA_UPDATES = "CREATE TABLE T_DATA_UPDATES(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,DATATYPE VARCHAR(20),UTIME VARCHAR(20)"; //数据重传表 private static final String T_RECORDS = "CREATE TABLE T_RECORDS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GID INT,CUSTID VARCHAR(50),LON VARCHAR(30)," + "LAT VARCHAR(30),ADD_TIME VARCHAR(30),CONTENT VARCHAR(500),JCLB VARCHAR(500),XXCJLB VARCHAR(500),WZBS INT,PIC_DETAIL VARCHAR(100),PIC_URL VARCHAR(100)," + "BZ VARCHAR(500),RESULT INT,CID VARCHAR(50),LAC VARCHAR(50),NCODE VARCHAR(50),CCODE VARCHAR(50),XHQD VARCHAR(100),RADIUS VARCHAR(50)"; //历史记录表 private static final String T_HISTORYS = "CREATE TABLE T_HISTORYS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GID INT,ZID INT,ADD_TIME VARCHAR(30),CONTENT VARCHAR(500)"; //拜访记录表 private static final String T_VISTORS = "CREATE TABLE T_VISTORS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,CID VARCHAR(50),POINT INT"; //基站信息表 private static final String T_LACINFO = "CREATE TABLE T_LACINFO(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,CID VARCHAR(50),CELL_ID VARCHAR(50)," + "LAC VARCHAR(50),CCODE VARCHAR(50),NCODE VARCHAR(50),XHQD VARCHAR(100),RADIUS VARCHAR(500),LOC_TYPE INT"; //工作信息表(指:预警信息、经营管控等) private static final String T_WORKINFOS = "CREATE TABLE T_WORKINFOS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,GID INT,TITLE VARCHAR(50),CONTENT VARCHAR(1000)," + "G_COSIM VARCHAR(30),ADDTIME VARCHAR(30),G_SORT INT,STATE INT"; //任务计划表(指:连续上报功能) private static final String T_TASKS = "CREATE TABLE T_TASKS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,ONTIME VARCAHR(6),OFFTIME VARCHAR(6)," + "INTERVALTIME VARCHAR(5),EXECUTE VARCHAR(2),REGSIM VARCHAR(20),COSIM VARCHAR(20)"; //代办、流程跟踪信息表 private static final String T_PROCESS = "CREATE TABLE T_PROCESS(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,SID VARCAHR(50),SPLB INT,S_SJZG VARCAHR(50)" + ",SPCS INT,SPZT INT,ADDTIME VARCHAR(20),SPTIME VARCHAR(20),SPTM VARCHAR(100),GUID VARCHAR(50),BZ VARCHAR(500),SPPERSON VARCHAR(30),JHZT INT," + "XDR VARCHAR(20),TYPE INT,ZXZT INT"; //预警信息表 private static final String T_PERWARN = "CREATE TABLE T_PERWARN(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,LB INT,SPID VARCAHR(50)" + ",REGGUID VARCHAR(50),ADDTIME VARCHAR(20),SJZGGUID VARCHAR(50),MS VARCHAR(500),SJZGNAME VARCHAR(30),YGNAME VARCHAR(30)"; //扩展字段值 private static final String extendValue = "REMARK1 VARCHAR(500),REMARK2 VARCHAR(500)," + "REMARK3 VARCHAR(500),REMARK4 VARCHAR(500),REMARK5 VARCHAR(500)"; /** * 创建或打开数据库 */ public Optdb_interfce(Context context){ // wf = new WriteFile(context, JqydDateUtil.getDateDayTwo(new Date())+"DateBaseFile"); try { this.db = context.openOrCreateDatabase(DATABASE_JQGJ, context.MODE_APPEND, null); // wf.writeToFile("当前数据库地址:"+this.db!=null?this.db.getPath():"数据库对象db为空"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void dropDb(){ try { db.execSQL("DROP DATABASE JQGJ.db"); System.out.println("删除数据库"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("删除数据库异常"); } } /** * 判断数据库是否已打开 * @return */ public boolean isOpen(){ boolean flag = false; try { if(db != null && db.isOpen()){ //如果游标未关闭,则关闭游标 if(cursor != null && !cursor.isClosed()){ cursor.close(); } flag = true; } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return flag; } //创建数据库表 public void createTable(){ System.out.println("******************开始创建久其管家数据库******************"); try { db.execSQL(T_COUSERS+","+extendValue+")"); db.execSQL(T_CUSTOMERS+","+extendValue+")"); db.execSQL(T_EMPS+","+extendValue+")"); db.execSQL(T_GROUPS+","+extendValue+")"); db.execSQL(T_PUBINFOS+","+extendValue+")"); db.execSQL(T_PRODUCTS+","+extendValue+")"); db.execSQL(T_DATA_UPDATES+","+extendValue+")"); db.execSQL(T_RECORDS+","+extendValue+")"); db.execSQL(T_HISTORYS+","+extendValue+")"); db.execSQL(T_VISTORS+","+extendValue+")"); db.execSQL(T_LACINFO+","+extendValue+")"); db.execSQL(T_WORKINFOS+","+extendValue+")"); db.execSQL(T_TASKS+","+extendValue+")"); db.execSQL(T_PROCESS+","+extendValue+")"); db.execSQL(T_PERWARN+","+extendValue+")"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("表已存在!"); } System.out.println("****************创建久其管家数据库成功**********************"); } public void createTable(String table){ System.out.println("******************开始创建久其管家数据库******************"); try { db.execSQL(table+","+extendValue+")"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("表已存在!"); } System.out.println("****************创建久其管家数据库成功**********************"); } //插入数据 public void updateToDb(String tableName,ArrayList<Object> list){ try{ //写入数据前,先清空数据表(除分组信息表) if(!tableName.equals("T_GROUPS") && !tableName.equals("T_RECORDS")){ deleteFromDb(tableName); } //开始写入数据 if(tableName.equals("T_COUSERS")){ CoUserModule coUser = (CoUserModule) list.get(0); db.execSQL("INSERT INTO T_COUSERS (GGUID,SJHM,QC,JC,XT,QYDZ,XM,DISLIMIT,JCLB,XXCJLB,REMARK1) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?)", new Object[]{coUser.getGuid(),coUser.getSjhm(),coUser.getQc(),coUser.getJc(),coUser.getXtmc(),coUser.getQydz(),coUser.getXm(),coUser.getDislimit(),coUser.getJclb(),coUser.getXxcjlb(),coUser.getTxl()}); }else if(tableName.equals("T_CUSTOMERS")){ for(int i=0;i<list.size();i++){ CustomerModule custUser = (CustomerModule) list.get(i); db.execSQL("INSERT INTO T_CUSTOMERS (CID,CNAME,CZJM,GID,ADDTIME,LINKMAN,LINK_SIM,SHORT_NAME,KH_SORT,ADDRESS,LON,LAT,CLON,CLAT,KH_STATE,EMAIL,QQ,HONOR,DEPARTMENT,SJHM) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", new Object[]{custUser.getCid(),custUser.getCname(),custUser.getCzjm(),custUser.getGid(),custUser.getAddtime(),custUser.getLinkman(), custUser.getLink_sim(),custUser.getShort_name(),custUser.getKh_sort(),custUser.getAddress(),custUser.getLon(),custUser.getLat(),custUser.getClon(), custUser.getClat(),custUser.getKh_state(),custUser.getEmail(),custUser.getQq(),custUser.getHonor(),custUser.getDepartment(),custUser.getSjhm()}); //System.out.println("客户信息----------------"+custUser.getCname()+","+custUser.getKh_sort()+","+custUser.getCid()); } }else if(tableName.equals("T_EMPS")){ for(int i=0;i<list.size();i++){ EmpsModule emp = (EmpsModule) list.get(i); db.execSQL("INSERT INTO T_EMPS (GUID,DWHM,XM,ZJM,GID,ZCSJ,HONOR,DEPARTMENT,EMAIL,QQ,ADDR,REMARK1,REMARK2) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)",new Object[]{emp.getGuid(),emp.getDwhm(),emp.getXm(),emp.getZjm(),emp.getGid(),emp.getZcsj(),emp.getHonor(),emp.getDepartment(),emp.getEmail(),emp.getQq(),emp.getAddr(),emp.getDwfs(),emp.getIsshow()}); } }else if(tableName.equals("T_GROUPS")){ boolean flag_kh = false; boolean flag_yg = false; boolean flag_bp = false; boolean flag_jp = false; for(int i=0;i<list.size();i++){ GroupsModule group = (GroupsModule) list.get(i); //System.out.println("分组信息------------:"+group.getG_sort()+"---------"+group.getGname()); //仅删除需要更新的类别的分组信息1、客户2、员工3、本品4、竞品 switch(group.getG_sort()){ case 1: if(!flag_kh){//客户分组 db.execSQL("DELETE FROM T_GROUPS WHERE G_SORT=1"); flag_kh = true; } break; case 2: if(!flag_yg){//员工分组 db.execSQL("DELETE FROM T_GROUPS WHERE G_SORT=2"); flag_yg = true; } break; case 3: if(!flag_bp){//本品分组 db.execSQL("DELETE FROM T_GROUPS WHERE G_SORT=3"); flag_bp = true; } break; case 4: if(!flag_jp){//竞品分组 db.execSQL("DELETE FROM T_GROUPS WHERE G_SORT=4"); flag_jp = true; } break; } //删除过后再次插入 db.execSQL("INSERT INTO T_GROUPS (GID,GNAME,G_PID,G_SORT) " + "VALUES (?,?,?,?)",new Object[]{group.getGid(),group.getGname(),group.getG_pid(),group.getG_sort()}); } }else if(tableName.equals("T_PUBINFOS")){ for(int i=0;i<list.size();i++){ boolean flag = false; PublicInfoModule pubinfo = (PublicInfoModule) list.get(i); //检测公告或通知信息是否已经存在,如果存在则不再插入表中 cursor = db.rawQuery("SELECT * FROM T_PUBINFOS WHERE GID=?",new String[]{pubinfo.getGid()+""}); while(cursor.moveToNext()){ flag = true; break; } //不存在 if(!flag){ db.execSQL("INSERT INTO T_PUBINFOS (GID,TITLE,CONTENT,G_COSIM,ADDTIME,G_SORT,STATE) " + "VALUES (?,?,?,?,?,?,?)",new Object[]{pubinfo.getGid(),pubinfo.getTitle(),pubinfo.getContent(),pubinfo.getAdduser(), pubinfo.getAdd_time(),pubinfo.getType(),pubinfo.getState()}); } } }else if(tableName.equals("T_PRODUCTS")){ for(int i=0;i<list.size();i++){ ProTypeModule pro_type = (ProTypeModule) list.get(i); db.execSQL("INSERT INTO T_PRODUCTS (PID,TID,P_NAME,P_TYPE,P_SORT,P_STATUS,P_UNIT,P_CBJ,P_PFJ,P_LSJ,P_FACTORY,P_ADDR,P_SALER,P_BZ,P_ADDTIME,P_LB,GID,P_ZJM) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",new Object[]{pro_type.getId(),pro_type.getCode(),pro_type.getName(),pro_type.getModel(),pro_type.getType(), pro_type.getStatus(),pro_type.getUnit(),pro_type.getCbPrise(),pro_type.getPfPrise(),pro_type.getLsPrise(),pro_type.getProducer(),pro_type.getOrigin(), pro_type.getJxs(),pro_type.getDescription(),pro_type.getAddtime(),pro_type.getIsbq(),pro_type.getLbid(),pro_type.getZjm()}); } }else if(tableName.equals("T_RECORDS")){ System.out.println("插入失败记录***************************"+list.size()); RecordModel record = (RecordModel) list.get(0); System.out.println("插入失败记录时间***************************"+record.getAdd_time()); db.execSQL("INSERT INTO T_RECORDS (GID,CUSTID,LON,LAT,ADD_TIME,CONTENT,JCLB,XXCJLB,WZBS,PIC_DETAIL,PIC_URL,BZ,RESULT,CID,LAC,NCODE,CCODE,XHQD,RADIUS,REMARK1,REMARK2,REMARK3,REMARK4,REMARK5) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",new Object[]{record.getGid(),record.getCustid(),record.getLon(),record.getLat(), record.getAdd_time(),record.getContent(),record.getJclb(),record.getXxcjlb(),record.getWzbs(),record.getPic_detail(),record.getPic_url(), record.getBz(),record.getResult(),record.getCid(),record.getLac(),record.getNcode(),record.getCcode(),record.getXhqd(),record.getRaduis(), record.getRemark1(),record.getRemark2(),record.getRemark3(),record.getRemark4(),record.getRemark5()}); }else if(tableName.equals("T_VISTORS")){ db.execSQL("INSERT INTO T_VISTORS (CID,POINT) " + "VALUES (?,?)",new Object[]{}); }else if(tableName.equals("T_LACINFO")){ for(int i=0;i<list.size();i++){ LocationModule loc = (LocationModule) list.get(i); db.execSQL("INSERT INTO T_LACINFO (CID,CELL_ID,LAC,CCODE,NCODE,XHQD,RADIUS,LOC_TYPE,REMARK1,REMARK2) " + "VALUES (?,?,?,?,?,?,?,?,?,?)",new Object[]{loc.getCid(),loc.getCell_id(),loc.getLac(),loc.getCcode(),loc.getNcode(),loc.getXhqd(), loc.getRadius(),loc.getLoc_type(),loc.getLon(),loc.getLat()}); } }else if(tableName.equals("T_WORKINFOS")){ for(int i=0;i<list.size();i++){ PublicInfoModule pubinfo = (PublicInfoModule) list.get(i); db.execSQL("INSERT INTO T_WORKINFOS (GID,TITLE,CONTENT,G_COSIM,ADDTIME,G_SORT,STATE) " + "VALUES (?,?,?,?,?,?,?)",new Object[]{pubinfo.getGid(),pubinfo.getTitle(),pubinfo.getContent(),pubinfo.getAdduser(), pubinfo.getAdd_time(),pubinfo.getType(),pubinfo.getState()}); } }else if(tableName.equals("T_PROCESS")){ for(int i=0;i<list.size();i++){ DbsxLcgzModel process = (DbsxLcgzModel) list.get(i); db.execSQL("INSERT INTO T_PROCESS (SID,SPLB,S_SJZG,SPCS,SPZT,ADDTIME,SPTIME,SPTM,GUID,BZ,SPPERSON,JHZT,XDR,TYPE,ZXZT) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", new Object[]{process.getSpid(),process.getSplb(),process.getSjzgguid(),process.getSpcs(),process.getSpzt(),process.getAddtime(), process.getSptime(),process.getSptm(),process.getRegguid(),process.getBz(),process.getSpperson(),process.getJhzt(),process.getXdr(),process.getType(),process.getZxzt()}); System.out.println("待办事项、流程跟踪校验----------"+process.getSptm()+","+process.getSpid()+","+process.getType()); } }else if(tableName.equals("T_PERWARN")){ for(int i=0;i<list.size();i++){ YjxxModel yjxx = (YjxxModel) list.get(i); db.execSQL("INSERT INTO T_PERWARN (LB,SPID,REGGUID,ADDTIME,SJZGGUID,MS,SJZGNAME,YGNAME) " + "VALUES (?,?,?,?,?,?,?,?)", new Object[]{yjxx.getLb(),yjxx.getSpid(),yjxx.getGuid(),yjxx.getZjsj(), yjxx.getSjzgguid(),yjxx.getMs(),yjxx.getSjzgname(),yjxx.getYgname()}); } } }catch(Exception e){ e.printStackTrace(); if(e.getMessage().contains("no such")){ if(tableName.equals("T_LACINFO")){ createTable(T_LACINFO); updateToDb(tableName,list); } } } } /** * 更新时间节点 * @param optName * @param timeNode */ public void updateTimeNode(String optName,String timeNode){ System.out.println("更新时间节点------------"+optName+","+timeNode); if(optName.equals("ALL")){ db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"COUSERS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"CUSTOMERS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"EMPS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"EGROUPS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"PUBINFOS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"PRODUCTS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"LACINFO",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"YJXX",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"LXSB",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"DBSX",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"LCGZ",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"JYGK",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"CGROUPS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"PGROUPS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"JGROUPS",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"JP",timeNode}); db.execSQL("INSERT INTO T_DATA_UPDATES (DATATYPE,UTIME) VALUES (?,?)",new Object[]{"YWTZ",timeNode}); }else if(optName.equals("COUSERS")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'COUSERS'"); }else if(optName.equals("CUSTOMERS")){ //System.out.println("客户---------------------------------------------"); db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'CUSTOMERS'"); }else if(optName.equals("EMPS")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'EMPS'"); }else if(optName.equals("PUBINFOS")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'PUBINFOS'"); }else if(optName.equals("LACINFO")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'LACINFO'"); }else if(optName.equals("YJXX")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'YJXX'"); }else if(optName.equals("LXSB")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'LXSB'"); }else if(optName.equals("DBSX")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'DBSX'"); }else if(optName.equals("LCGZ")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'LCGZ'"); }else if(optName.equals("JYGK")){ db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'JYGK'"); } } /** * 更新分组时间节点 * @param type * @param timeNode */ public void updateGTimeNode(String optName,int type,String timeNode){ if(optName.equals("GROUP")){ switch(type){ case 1: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'CGROUPS'"); break; case 2: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'EGROUPS'"); break; case 3: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'PGROUPS'"); break; case 4: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'JGROUPS'"); break; } }else if(optName.equals("PRODUCT")){ switch(type){ case 3: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'PRODUCTS'"); break; case 4: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'JP'"); break; } }else if(optName.equals("PUBINFO")){ switch(type){ case 1: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'PUBINFOS'"); break; case 2: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'YWTZ'"); break; } }else if(optName.equals("PROCESS")){ switch(type){ case 1: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'DBSX'"); break; case 2: db.execSQL("UPDATE T_DATA_UPDATES SET UTIME = '"+timeNode+"' WHERE DATATYPE = 'LCGZ'"); break; } } } /** * 更新历史记录表 * @param gid * @param zid * @param content */ public void updateHistory(int gid,String zid,String content){ System.out.println("---------------------------历史记录记录写入-------------------------------"); boolean flag_content = false; int count = 0; try{ //1、查询是否内容已经存在,如果存在则不插入 cursor = db.rawQuery("SELECT * FROM T_HISTORYS WHERE GID = ? AND ZID = ? AND CONTENT = ?",new String[]{gid+"",zid,content}); while(cursor.moveToNext()){ flag_content = true; } //2、查询是否历史保存记录已经超过十条,如果超过则更新时间最旧的一条数据 cursor = db.rawQuery("SELECT COUNT(ID) COUNT FROM T_HISTORYS WHERE GID = ? AND ZID = ?",new String[]{gid+"",zid}); while(cursor.moveToNext()){ count = Integer.parseInt(cursor.getString(cursor.getColumnIndex("COUNT"))); } System.out.println("历史记录保存-------------"+flag_content+"------------"+count); if(!flag_content && count<10){//执行插入操作 Date date = new Date(); String nowDate= new SimpleDateFormat("yyyy-MM-dd HH:mm").format(date); db.execSQL("INSERT INTO T_HISTORYS (GID,ZID,ADD_TIME,CONTENT) " + "VALUES (?,?,?,?)",new Object[]{gid,zid,nowDate,content}); }else if(!flag_content && count>=10){//执行更新记录操作 System.out.println("---------------------------执行更新历史记录-------------------------------"); Date date = new Date(); String nowDate= new SimpleDateFormat("yyyy-MM-dd HH:mm").format(date); System.out.println(nowDate); // --日期有问题************************************************************************8 //更新时间最老的记录 db.execSQL("UPDATE T_HISTORYS SET ADD_TIME='"+nowDate+"',CONTENT='"+content+"' WHERE GID="+gid+" AND ZID='"+zid+"' AND ADD_TIME IN " + "(SELECT MIN(ADD_TIME) FROM T_HISTORYS WHERE GID="+gid+" AND ZID='"+zid+"')"); } }catch(Exception e){ if(e.getMessage().equals("no such table")){ createTable(T_HISTORYS); updateHistory(gid,zid,content); } } } /** * 查询历史记录信息 * @param gid * @param zid * @return */ public ArrayList<String> searchHistory(int gid,String zid){ ArrayList<String> list = new ArrayList<String>(); try{ cursor = db.rawQuery("SELECT * FROM T_HISTORYS WHERE GID = ? AND ZID = ? ORDER BY ADD_TIME DESC",new String[]{gid+"",zid}); while(cursor.moveToNext()){ list.add(cursor.getString(cursor.getColumnIndex("CONTENT"))); //System.out.println("查询历史记录---"+cursor.getString(cursor.getColumnIndex("ADD_TIME"))+"---"+cursor.getString(cursor.getColumnIndex("CONTENT"))); } }catch(SQLiteException e){ if(e.getMessage().contains("no such table")){ createTable(T_HISTORYS); searchHistory(gid,zid); } }catch(Exception e){ e.printStackTrace(); } return list; } public void deleteFromDb(String param){ System.out.println("******************删除数据表中的数据******************"+param); try { if(param.equals("ALL")){ db.execSQL("DELETE FROM T_COUSERS"); db.execSQL("DELETE FROM T_CUSTOMERS"); db.execSQL("DELETE FROM T_EMPS"); db.execSQL("DELETE FROM T_GROUPS"); db.execSQL("DELETE FROM T_PUBINFOS"); db.execSQL("DELETE FROM T_PRODUCTS"); db.execSQL("DELETE FROM T_DATA_UPDATES"); db.execSQL("DELETE FROM T_RECORDS"); db.execSQL("DELETE FROM T_HISTORYS"); db.execSQL("DELETE FROM T_VISTORS"); db.execSQL("DELETE FROM T_LACINFO"); db.execSQL("DELETE FROM T_WORKINFOS"); db.execSQL("DELETE FROM T_TASKS"); db.execSQL("DELETE FROM T_PROCESS"); db.execSQL("DELETE FROM T_PERWARN"); }else if(param.equals("T_COUSERS")){ db.execSQL("DELETE FROM T_COUSERS"); }else if(param.equals("T_CUSTOMERS")){ db.execSQL("DELETE FROM T_CUSTOMERS"); }else if(param.equals("T_EMPS")){ db.execSQL("DELETE FROM T_EMPS"); }else if(param.equals("T_GROUPS")){ db.execSQL("DELETE FROM T_GROUPS"); }if(param.equals("T_PRODUCTS")){ db.execSQL("DELETE FROM T_PRODUCTS"); }else if(param.equals("T_LACINFO")){ db.execSQL("DELETE FROM T_LACINFO"); }else if(param.equals("T_WORKINFOS")){ db.execSQL("DELETE FROM T_WORKINFOS"); }else if(param.equals("T_PROCESS")){ db.execSQL("DELETE FROM T_PROCESS"); }else if(param.equals("T_PERWARN")){ db.execSQL("DELETE FROM T_PERWARN"); }else if(param.equals("T_RECORDS")){ db.execSQL("DELETE FROM T_RECORDS"); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * 删除表结构 * @param tableName */ public void dropDb(String tableName){ System.out.println("-----------------删除表结构-----------------"); try { if(tableName.equals("T_DATA_UPDATES")){ db.execSQL("DELETE FROM T_DATA_UPDATES"); } if(tableName.equals("ALL")){ db.execSQL("DROP TABLE T_COUSERS"); db.execSQL("DROP TABLE T_CUSTOMERS"); db.execSQL("DROP TABLE T_EMPS"); db.execSQL("DROP TABLE T_GROUPS"); db.execSQL("DROP TABLE T_PUBINFOS"); db.execSQL("DROP TABLE T_PRODUCTS"); db.execSQL("DROP TABLE T_DATA_UPDATES"); db.execSQL("DROP TABLE T_RECORDS"); db.execSQL("DROP TABLE T_HISTORYS"); db.execSQL("DROP TABLE T_VISTORS"); db.execSQL("DROP TABLE T_LACINFO"); db.execSQL("DROP TABLE T_WORKINFOS"); db.execSQL("DROP TABLE T_TASKS"); db.execSQL("DROP TABLE T_PROCESS"); db.execSQL("DROP TABLE T_PERWARN"); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("---------------删除表结构异常---------------"); } } /** * 删除连续上报历史保存任务 * @param tableName */ public void deleteToTask( int limit){ if(limit!=0){ db.execSQL("DELETE FROM T_RECORDS WHERE ID IN (SELECT ID FROM T_RECORDS WHERE GID = 999 ORDER BY ID ASC LIMIT "+limit+")"); }else{db.execSQL("DELETE FROM T_RECORDS WHERE GID = 999");} } /** * 查询连续上报任务时间 * @return */ public String searchTaskTime(){ String taskTime = ""; cursor = db.rawQuery("SELECT * FROM T_DATA_UPDATES WHERE DATATYPE = 'LXSB'",null); while(cursor.moveToNext()){ taskTime = cursor.getString(cursor.getColumnIndex("UTIME")); } return taskTime; } /** * 查询数据库表,获得相应的数据 * @param tableName * @return */ public ArrayList<Object> searchFromDb(String dataType){ //System.out.println("查找数据更新---------"+dataType); ArrayList<Object> list = new ArrayList<Object>(); if(dataType.equals("DATA_UPDATES")){//获得数据更新的时间节点 ArrayList<String> selList = new ArrayList<String>(); selList.add("COUSERS"); selList.add("CUSTOMERS"); selList.add("EMPS"); selList.add("PUBINFOS"); selList.add("EGROUPS"); selList.add("PRODUCTS"); selList.add("LACINFO"); selList.add("LXSB"); selList.add("YJXX"); selList.add("DBSX"); selList.add("LCGZ"); selList.add("JYGK"); selList.add("CGROUPS"); selList.add("PGROUPS"); selList.add("JGROUPS"); selList.add("JP"); selList.add("YWTZ"); for(int i=0;i<selList.size();i++){ //容错处理,删除重复数据,后期可以把此语句删除********************************************************更新版本 去掉此语句--1.1.3 //db.execSQL("DELETE FROM T_DATA_UPDATES WHERE ID = (SELECT MIN(ID) FROM T_DATA_UPDATES WHERE DATATYPE='COUSERS' GROUP BY DATATYPE HAVING COUNT(DATATYPE)>1)") ; //************************************************ //System.out.println("是否会出错"); cursor = db.rawQuery("SELECT * FROM T_DATA_UPDATES WHERE DATATYPE = ?",new String[]{selList.get(i)}); while(cursor.moveToNext()){ list.add(cursor.getString(cursor.getColumnIndex("UTIME")));//sqlite3是否提供了内置转换功能,直接将日期格式数据以字符串格式提取出来 System.out.println("--------时间参数---------"+cursor.getString(cursor.getColumnIndex("UTIME"))+"-------"+cursor.getString(cursor.getColumnIndex("DATATYPE"))); } } }else if(dataType.equals("COUSERS")){//获得管理员信息 cursor = db.rawQuery("SELECT * FROM T_COUSERS",null); while(cursor.moveToNext()){ CoUserModule coUser = new CoUserModule(); coUser.setGuid(cursor.getString(cursor.getColumnIndex("GGUID"))); coUser.setDislimit(cursor.getString(cursor.getColumnIndex("DISLIMIT"))); coUser.setJclb(cursor.getString(cursor.getColumnIndex("JCLB"))); coUser.setXxcjlb(cursor.getString(cursor.getColumnIndex("XXCJLB"))); coUser.setSjhm(cursor.getString(cursor.getColumnIndex("SJHM"))); coUser.setTxl(cursor.getString(cursor.getColumnIndex("REMARK1"))); list.add(coUser); //System.out.println("误差距离---------"+cursor.getString(cursor.getColumnIndex("DISLIMIT"))); } }else if(dataType.equals("PUBINFOS")){ cursor = db.rawQuery("SELECT * FROM T_PUBINFOS ORDER BY ADDTIME COLLATE NOCASE DESC",null); while(cursor.moveToNext()){ PublicInfoModule pubInfo = new PublicInfoModule(); pubInfo.setAdd_time(cursor.getString(cursor.getColumnIndex("ADDTIME"))); pubInfo.setAdduser(cursor.getString(cursor.getColumnIndex("G_COSIM"))); pubInfo.setContent(cursor.getString(cursor.getColumnIndex("CONTENT"))); pubInfo.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); pubInfo.setState(Integer.parseInt(cursor.getString(cursor.getColumnIndex("STATE")))); pubInfo.setTitle(cursor.getString(cursor.getColumnIndex("TITLE"))); pubInfo.setType(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_SORT")))); list.add(pubInfo); } } return list; } /** * 获得数据重传记录 * @param gid * 功能标识1、签到2、签退3、我的日志4、我的请假5、我的计划6、我的差旅7、信息反馈8、订单上报9、销售上报10、竞品上报11、客户拜访12、市场检查13、客户采集999、数据重传等 * @return */ public ArrayList<Object> getRecordInfo(int gid){ ArrayList<Object> list = new ArrayList<Object>(); // try{ String sql = "SELECT * FROM T_RECORDS"; if(gid ==0){ //查询全部 }else if(gid==-1){ //查询非定时上报的数据,数据重传模块 sql += " WHERE GID != 999"; }else{ sql += " WHERE GID = "+gid+""; } cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ System.out.println("----------------------------有保存数据----------------------------"+cursor.getString(cursor.getColumnIndex("GID"))); RecordModel record = new RecordModel(); record.setGid(cursor.getString(cursor.getColumnIndex("GID"))); record.setAdd_time(cursor.getString(cursor.getColumnIndex("ADD_TIME"))); record.setBz(cursor.getString(cursor.getColumnIndex("BZ"))); record.setCcode(cursor.getString(cursor.getColumnIndex("CCODE"))); record.setCid(cursor.getString(cursor.getColumnIndex("CID"))); record.setContent(cursor.getString(cursor.getColumnIndex("CONTENT"))); record.setCustid(cursor.getString(cursor.getColumnIndex("CUSTID"))); record.setJclb(cursor.getString(cursor.getColumnIndex("JCLB"))); record.setLac(cursor.getString(cursor.getColumnIndex("LAC"))); record.setLat(cursor.getString(cursor.getColumnIndex("LAT"))); record.setLon(cursor.getString(cursor.getColumnIndex("LON"))); record.setNcode(cursor.getString(cursor.getColumnIndex("NCODE"))); record.setPic_detail(cursor.getString(cursor.getColumnIndex("PIC_DETAIL"))); record.setPic_url(cursor.getString(cursor.getColumnIndex("PIC_URL"))); record.setRaduis(cursor.getString(cursor.getColumnIndex("RADIUS"))); record.setResult(cursor.getString(cursor.getColumnIndex("RESULT"))); record.setWzbs(cursor.getString(cursor.getColumnIndex("WZBS"))); record.setXhqd(cursor.getString(cursor.getColumnIndex("XHQD"))); record.setXxcjlb(cursor.getString(cursor.getColumnIndex("XXCJLB"))); record.setJiange(cursor.getString(cursor.getColumnIndex("RESULT")));//存放间隔时间,用于连续上报!!! record.setRemark1(cursor.getString(cursor.getColumnIndex("REMARK1"))); record.setRemark2(cursor.getString(cursor.getColumnIndex("REMARK2"))); record.setRemark3(cursor.getString(cursor.getColumnIndex("REMARK3"))); record.setRemark4(cursor.getString(cursor.getColumnIndex("REMARK4"))); record.setRemark5(cursor.getString(cursor.getColumnIndex("REMARK5"))); record.setId(cursor.getString(cursor.getColumnIndex("ID"))); list.add(record); } // }catch(SQLException e){ // if(e.getMessage().contains("no such table")){ // createTable(T_RECORDS); // getRecordInfo(gid); // } // }catch(Exception e){ // // } return list; } /** * 根据标识删除相应记录 * @param ids */ public void delRecordByIds(String ids){ db.execSQL("DELETE FROM T_RECORDS WHERE ID IN ("+ids+")"); } /** * 获得公告、通知、代办事项、流程跟踪等信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchPubinfos(String dataType,int type){ ArrayList<Object> list = new ArrayList<Object>(); System.out.println("-----------"+type); if(dataType.equals("PUBINFOS")){ cursor = db.rawQuery("SELECT * FROM T_PUBINFOS WHERE G_SORT=? ORDER BY ADDTIME COLLATE NOCASE DESC",new String[]{type+""}); while(cursor.moveToNext()){ PublicInfoModule pubInfo = new PublicInfoModule(); pubInfo.setAdd_time(cursor.getString(cursor.getColumnIndex("ADDTIME"))); pubInfo.setAdduser(cursor.getString(cursor.getColumnIndex("G_COSIM"))); pubInfo.setContent(cursor.getString(cursor.getColumnIndex("CONTENT"))); pubInfo.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); pubInfo.setState(Integer.parseInt(cursor.getString(cursor.getColumnIndex("STATE")))); pubInfo.setTitle(cursor.getString(cursor.getColumnIndex("TITLE"))); pubInfo.setType(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_SORT")))); list.add(pubInfo); //System.out.println("----------"+cursor.getString(cursor.getColumnIndex("ADDTIME"))+"--"+cursor.getString(cursor.getColumnIndex("TITLE"))+"--"+cursor.getString(cursor.getColumnIndex("G_SORT"))); } }else if(dataType.equals("GROUPS")){ cursor = db.rawQuery("SELECT GID,GPID,GNAME FROM T_GROUPS WHERE G_SORT=? AND G_PID=? ",new String[]{type+"","0"}); while(cursor.moveToNext()){ GroupsModule group = new GroupsModule(); group.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); group.setGname(cursor.getString(cursor.getColumnIndex("GNAME"))); group.setG_pid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_PID")))); } } return list; } /** * 查询代办事项、流程跟踪等数据 * @param type * @param dbNum * @param spzt * @return */ public ArrayList<DbsxLcgzModel> getProcessBySelect(int type,String dbNum){ ArrayList<DbsxLcgzModel> list = new ArrayList<DbsxLcgzModel>(); String sql = "SELECT * FROM T_PROCESS WHERE TYPE = "+type+" AND (SPZT=0 OR (SPZT = 1 AND SPLB = 3))"; if(!dbNum.equals("")){ sql+=" AND SID = '"+dbNum+"'"; } //cursor = db.rawQuery("SELECT * FROM T_PROCESS WHERE sid = ? ",new String[]{dbNum}); cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ DbsxLcgzModel process = new DbsxLcgzModel(); process.setAddtime(cursor.getString(cursor.getColumnIndex("ADDTIME"))); process.setBz(cursor.getString(cursor.getColumnIndex("BZ"))); process.setJhzt(cursor.getString(cursor.getColumnIndex("JHZT"))); process.setRegguid(cursor.getString(cursor.getColumnIndex("GUID"))); process.setSjzgguid(cursor.getString(cursor.getColumnIndex("S_SJZG"))); process.setSpcs(cursor.getString(cursor.getColumnIndex("SPCS"))); process.setSpid(cursor.getString(cursor.getColumnIndex("SID"))); process.setSplb(cursor.getString(cursor.getColumnIndex("SPLB"))); process.setSpperson(cursor.getString(cursor.getColumnIndex("SPPERSON"))); process.setSptime(cursor.getString(cursor.getColumnIndex("SPTIME"))); process.setSptm(cursor.getString(cursor.getColumnIndex("SPTM"))); process.setSpzt(cursor.getString(cursor.getColumnIndex("SPZT"))); process.setXdr(cursor.getString(cursor.getColumnIndex("XDR"))); process.setZxzt(cursor.getString(cursor.getColumnIndex("ZXZT"))); list.add(process); //System.out.println("获得代办事项信息-------------"+cursor.getString(cursor.getColumnIndex("SPTM"))+","+cursor.getString(cursor.getColumnIndex("SPZT"))); } return list; } /** * 查询预警信息 * @return */ public ArrayList<YjxxModel> getYjxxInfo(String spid){ ArrayList<YjxxModel> list = new ArrayList<YjxxModel>(); String sql = "SELECT * FROM T_PERWARN"; if(!spid.equals("")){ sql+=" SPID = '"+spid+"'"; } sql+=" ORDER BY ADDTIME COLLATE NOCASE DESC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ YjxxModel yjxx = new YjxxModel(); yjxx.setGuid(cursor.getString(cursor.getColumnIndex("REGGUID"))); yjxx.setLb(cursor.getString(cursor.getColumnIndex("LB"))); yjxx.setMs(cursor.getString(cursor.getColumnIndex("MS"))); yjxx.setSjzgguid(cursor.getString(cursor.getColumnIndex("SJZGGUID"))); yjxx.setSjzgname(cursor.getString(cursor.getColumnIndex("SJZGNAME"))); yjxx.setSpid(cursor.getString(cursor.getColumnIndex("SPID"))); yjxx.setYgname(cursor.getString(cursor.getColumnIndex("YGNAME"))); yjxx.setZjsj(cursor.getString(cursor.getColumnIndex("ADDTIME"))); list.add(yjxx); } return list; } /** * 更新审批状态 * @param spid */ public void updProcessState(String spid,int value){ db.execSQL("UPDATE T_PROCESS SET SPZT="+value+" WHERE SID='"+spid+"'"); } /** * 获得公告、通知等信息 * @param select1、未读2、已读 * @return */ public ArrayList<Object> searchPubinfos_new(String select){ ArrayList<Object> list = new ArrayList<Object>(); if(select.equals("")){ cursor = db.rawQuery("SELECT * FROM T_PUBINFOS ORDER BY ADDTIME COLLATE NOCASE DESC",null); }else{ cursor = db.rawQuery("SELECT * FROM T_PUBINFOS WHERE state=? ORDER BY ADDTIME COLLATE NOCASE DESC",new String[]{select}); } while(cursor.moveToNext()){ PublicInfoModule pubInfo = new PublicInfoModule(); pubInfo.setAdd_time(cursor.getString(cursor.getColumnIndex("ADDTIME"))); pubInfo.setAdduser(cursor.getString(cursor.getColumnIndex("G_COSIM"))); pubInfo.setContent(cursor.getString(cursor.getColumnIndex("CONTENT"))); pubInfo.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); pubInfo.setState(Integer.parseInt(cursor.getString(cursor.getColumnIndex("STATE")))); pubInfo.setTitle(cursor.getString(cursor.getColumnIndex("TITLE"))); pubInfo.setType(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_SORT")))); list.add(pubInfo); //System.out.println("----------"+cursor.getString(cursor.getColumnIndex("ADDTIME"))+"--"+cursor.getString(cursor.getColumnIndex("TITLE"))+"--"+cursor.getString(cursor.getColumnIndex("G_SORT"))); } return list; } /** * 获得分组信息--------- * @param tableName * @param type * @return */ public String RecursionGroup(String pid,int level,int type,int num){ ArrayList<Object> list = new ArrayList<Object>(); String result = ""; if(num == 0){ list = searchGroups(pid,type); }else{ list = searchFGroups(pid,type); } for(int i=0;i<list.size();i++){ num++; GroupsModule group = (GroupsModule) list.get(i); String gid = group.getGid()+""; String gname = group.getGname(); int g_pid = group.getG_pid(); if(searchFGroups(gid,2).isEmpty()){ // System.out.println("没有子节点------"+gid); group_flag +=gid+","+level+","+gname+"#"; }else{ // System.out.println("存在子节点------"+gid); group_flag +=gid+","+level+","+gname+"#"; RecursionGroup(gid,(level+1),2,num); } } //System.out.println("分组数据-----------------------"+group_flag); if(group_flag.equals("")){ result = ""; }else{ result = group_flag.substring(0, group_flag.length()-1); } return result; } /** * 根据管理范围逆推获得分组信息 * @param tableName * @param type * @return */ public String RecursionGroup(String pid,int type){ ArrayList<Object> list = new ArrayList<Object>(); String result = ""; list = searchGroups(pid,type); for(int i=0;i<list.size();i++){ GroupsModule group = (GroupsModule) list.get(i); String gid = group.getGid()+""; String g_pid = group.getG_pid()+""; if(g_pid.equals("0")){ group_flag +=gid+","; System.out.println("父节点"); }else{ group_flag +=gid+","; RecursionGroup(g_pid,2); } } if(group_flag.equals("")){ result = ""; }else{ result = group_flag.substring(0, group_flag.length()-1); } System.out.println("分组数据-----------------------"+result); return result; } /** * 根据分组父节点查询分组信息 * @param pid * @param type * @return */ public ArrayList<Object> searchFGroups(String pid,int type){ Log.e("xiao","客户分组条件---------------------"+pid+"-------"+type); System.out.println("客户分组条件---------------------"+pid+"-------"+type); ArrayList<Object> list = new ArrayList<Object>(); try{ cursor = db.rawQuery("SELECT GID,G_PID,GNAME FROM T_GROUPS WHERE G_PID IN ("+pid+") and G_SORT="+type+"",null); while(cursor.moveToNext()){ GroupsModule group = new GroupsModule(); group.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); group.setGname(cursor.getString(cursor.getColumnIndex("GNAME"))); group.setG_pid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_PID")))); list.add(group); Log.e("xiao", "分组测试--------"+group.getGid()+"----"+group.getGname()+"----"+group.getG_pid()); System.out.println("分组测试--------"+group.getGid()+"----"+group.getGname()+"----"+group.getG_pid()); } }catch(Exception e){} finally{ cursor.close(); } return list; } /** * 根据分组子节点查询分组信息 * @param pid * @param type * @return */ GroupsModule gm; public ArrayList<Object> searchGroups(String pid,int type){ Log.e("xiao", "客户分组条件---------------------"+pid+"-------"+type); System.out.println("客户分组条件---------------------"+pid+"-------"+type); ArrayList<Object> list = new ArrayList<Object>(); try{ cursor = db.rawQuery("SELECT GID,G_PID,GNAME FROM T_GROUPS WHERE GID IN ("+pid+") and G_SORT="+type+"",null); while(cursor.moveToNext()){ GroupsModule group = new GroupsModule(); group.setGid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("GID")))); group.setGname(cursor.getString(cursor.getColumnIndex("GNAME"))); group.setG_pid(Integer.parseInt(cursor.getString(cursor.getColumnIndex("G_PID")))); list.add(group); gm=group; Log.e("xiao", "分组测试--------"+group.getGid()+"----"+group.getGname()+"----"+group.getG_pid()); System.out.println("分组测试--------"+group.getGid()+"----"+group.getGname()+"----"+group.getG_pid()); } }catch(Exception e){ Log.e("xiao", "出错了+"+gm.getGname()+"-----"+gm.getGid()+" "+gm.getG_pid()); } finally{ if(cursor!=null)cursor.close(); } return list; } /** * 根据分组查询员工信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchEmpsByGps(String gid,String select){ //System.out.println("员工条件---------------------"+gid); ArrayList<Object> list = new ArrayList<Object>(); select = "%"+select+"%"; String sql = "SELECT * FROM T_EMPS WHERE REMARK2='0' AND GID='"+gid+"'"; if(!select.equals("")){ sql+=" AND (XM LIKE '"+select+"' OR ZJM LIKE '"+select+"')"; } sql+=" ORDER BY ZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); //cursor = db.rawQuery("SELECT * FROM T_EMPS WHERE GID=? ORDER BY ZJM COLLATE NOCASE ASC",new String[]{gid}); while(cursor.moveToNext()){ EmpsModule emp = new EmpsModule(); emp.setDwhm(cursor.getString(cursor.getColumnIndex("DWHM"))); emp.setGuid(cursor.getString(cursor.getColumnIndex("GUID"))); emp.setXm(cursor.getString(cursor.getColumnIndex("XM"))); list.add(emp); //System.out.println("根据分组查询员工---------"+cursor.getString(cursor.getColumnIndex("XM"))); } return list; } /** * 根据分组查询客户信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchCustsByGps(String gid,String select){ //System.out.println("客户条件---------------------"+gid); ArrayList<Object> list = new ArrayList<Object>(); select = "%"+select+"%"; String sql = "SELECT * FROM T_CUSTOMERS WHERE GID='"+gid+"' AND KH_STATE =1"; if(!select.equals("")){//模糊搜索 sql+=" AND (CNAME LIKE '"+"%"+select+"%"+"' OR CZJM LIKE '"+"%"+select+"%"+"')"; } sql+=" ORDER BY CZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ CustomerModule cust = new CustomerModule(); cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); list.add(cust); //System.out.println("根据分组查询客户---------"+cursor.getString(cursor.getColumnIndex("XM"))); } return list; } /** * 根据客户编号查询客户信息 * @param cid * @return */ public CustomerModule searchCustById(String cid){ CustomerModule cust = new CustomerModule(); cursor = db.rawQuery("SELECT * FROM T_CUSTOMERS WHERE CID=? AND KH_STATE =1 ORDER BY CZJM COLLATE NOCASE ASC",new String[]{cid}); while(cursor.moveToNext()){ cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); cust.setLink_sim(cursor.getString(cursor.getColumnIndex("LINK_SIM"))); cust.setLinkman(cursor.getString(cursor.getColumnIndex("LINKMAN"))); cust.setAddress(cursor.getString(cursor.getColumnIndex("ADDRESS"))); } return cust; } /** * 根据客户编号批量查询客户信息 * @param cid * @return */ public ArrayList<CustomerModule> searchCustByIds(String cids){ ArrayList<CustomerModule> list = new ArrayList<CustomerModule>(); cursor = db.rawQuery("SELECT * FROM T_CUSTOMERS WHERE CID IN ("+cids+") AND KH_STATE =1 ORDER BY CZJM COLLATE NOCASE ASC",null); while(cursor.moveToNext()){ CustomerModule cust = new CustomerModule(); cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setLink_sim(cursor.getString(cursor.getColumnIndex("LINK_SIM"))); cust.setLinkman(cursor.getString(cursor.getColumnIndex("LINKMAN"))); cust.setAddress(cursor.getString(cursor.getColumnIndex("ADDRESS"))); cust.setLon(cursor.getString(cursor.getColumnIndex("LON"))); cust.setLat(cursor.getString(cursor.getColumnIndex("LAT"))); cust.setClon(cursor.getString(cursor.getColumnIndex("CLON"))); cust.setClat(cursor.getString(cursor.getColumnIndex("CLAT"))); cust.setSjhm(cursor.getString(cursor.getColumnIndex("SJHM"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); list.add(cust); } return list; } /** * 根据批量分组编号查询员工信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchEmpsByMoreGps(String gids){ ArrayList<Object> list = new ArrayList<Object>(); cursor = db.rawQuery("SELECT * FROM T_EMPS WHERE REMARK2='0' AND GID in ("+gids+") ORDER BY ZJM COLLATE NOCASE ASC",null); while(cursor.moveToNext()){ EmpsModule emp = new EmpsModule(); emp.setDwhm(cursor.getString(cursor.getColumnIndex("DWHM"))); emp.setGuid(cursor.getString(cursor.getColumnIndex("GUID"))); emp.setXm(cursor.getString(cursor.getColumnIndex("XM"))); emp.setAddr(cursor.getString(cursor.getColumnIndex("ADDR"))); emp.setDepartment(cursor.getString(cursor.getColumnIndex("DEPARTMENT"))); emp.setEmail(cursor.getString(cursor.getColumnIndex("EMAIL"))); emp.setHonor(cursor.getString(cursor.getColumnIndex("HONOR"))); emp.setDwfs(cursor.getString(cursor.getColumnIndex("REMARK1"))); list.add(emp); //System.out.println("根据分组查询员工---------"+cursor.getString(cursor.getColumnIndex("XM"))); } return list; } /** * 根据批量分组编号查询产品信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchProsByMoreGps(String gids){ ArrayList<Object> list = new ArrayList<Object>(); String sql = "SELECT * FROM T_PRODUCTS WHERE GID in ("+gids+") ORDER BY P_ZJM COLLATE NOCASE ASC"; System.out.println("查询产品:"+sql); cursor = db.rawQuery(sql,null); //cursor = db.rawQuery("SELECT * FROM T_PRODUCTS ORDER BY P_ZJM COLLATE NOCASE ASC",null); while(cursor.moveToNext()){ ProTypeModule product = new ProTypeModule(); product.setAddtime(cursor.getString(cursor.getColumnIndex("P_ADDTIME"))); product.setCbPrise(cursor.getString(cursor.getColumnIndex("P_CBJ"))); product.setCode(cursor.getString(cursor.getColumnIndex("TID"))); product.setDescription(cursor.getString(cursor.getColumnIndex("P_BZ"))); product.setId(cursor.getString(cursor.getColumnIndex("PID"))); product.setJxs(cursor.getString(cursor.getColumnIndex("P_SALER"))); product.setLbid(cursor.getString(cursor.getColumnIndex("GID"))); product.setLsPrise(cursor.getString(cursor.getColumnIndex("P_LSJ"))); product.setModel(cursor.getString(cursor.getColumnIndex("P_TYPE"))); product.setName(cursor.getString(cursor.getColumnIndex("P_NAME"))); product.setOrigin(cursor.getString(cursor.getColumnIndex("P_ADDR"))); product.setPfPrise(cursor.getString(cursor.getColumnIndex("P_PFJ"))); product.setProducer(cursor.getString(cursor.getColumnIndex("P_FACTORY"))); product.setStatus(cursor.getString(cursor.getColumnIndex("P_STATUS"))); product.setType(cursor.getString(cursor.getColumnIndex("P_SORT"))); product.setUnit(cursor.getString(cursor.getColumnIndex("P_UNIT"))); list.add(product); } return list; } /** * 根据批量分组编号查询客户信息 * @param gids -- 分组编号 * @param type -- 客户类别1、企业客户2、个人客户3、联盟商 * @return */ public ArrayList<Object> searchCustsByMoreGps(String gids,int custSort){ ArrayList<Object> list = new ArrayList<Object>(); cursor = db.rawQuery("SELECT * FROM T_CUSTOMERS WHERE GID IN ("+gids+") AND KH_SORT="+custSort+" AND KH_STATE =1 ORDER BY CZJM COLLATE NOCASE ASC",null); while(cursor.moveToNext()){ CustomerModule cust = new CustomerModule(); cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setLink_sim(cursor.getString(cursor.getColumnIndex("LINK_SIM"))); cust.setLinkman(cursor.getString(cursor.getColumnIndex("LINKMAN"))); cust.setAddress(cursor.getString(cursor.getColumnIndex("ADDRESS"))); cust.setLon(cursor.getString(cursor.getColumnIndex("LON"))); cust.setLat(cursor.getString(cursor.getColumnIndex("LAT"))); cust.setClon(cursor.getString(cursor.getColumnIndex("CLON"))); cust.setClat(cursor.getString(cursor.getColumnIndex("CLAT"))); cust.setSjhm(cursor.getString(cursor.getColumnIndex("SJHM"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); list.add(cust); //System.out.println("根据分组查询kehu---------"+cursor.getString(cursor.getColumnIndex("XM"))); } return list; } /** * 获得员工信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchEmps(String tableName,String select){ ArrayList<Object> list = new ArrayList<Object>(); String sql = "SELECT * FROM T_EMPS WHERE (REMARK2='0' OR REMARK2 IS NULL) "; if(tableName.equals("EMPS")){ if(!select.equals("")){ sql+=" AND DWHM='"+select+"'"; } sql+=" ORDER BY ZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ EmpsModule emp = new EmpsModule(); emp.setDwhm(cursor.getString(cursor.getColumnIndex("DWHM"))); emp.setGuid(cursor.getString(cursor.getColumnIndex("GUID"))); emp.setXm(cursor.getString(cursor.getColumnIndex("XM"))); emp.setAddr(cursor.getString(cursor.getColumnIndex("ADDR"))); emp.setDepartment(cursor.getString(cursor.getColumnIndex("DEPARTMENT"))); emp.setEmail(cursor.getString(cursor.getColumnIndex("EMAIL"))); emp.setHonor(cursor.getString(cursor.getColumnIndex("HONOR"))); list.add(emp); //System.out.println("员工信息排序测试-------------"+emp.getXm()+","+cursor.getString(cursor.getColumnIndex("ZJM"))); } } return list; } /** * 获得员工姓名信息 * @param tableName * @param type * @return */ public String searchEmpName(String guid){ String result = ""; cursor = db.rawQuery("SELECT * FROM T_EMPS WHERE GUID=?",new String[]{guid}); while(cursor.moveToNext()){ result = cursor.getString(cursor.getColumnIndex("XM")); } return result; } /** * 模糊搜索员工信息 * @param tableName * @param type * @return */ public ArrayList<Object> searchEmpsBySelect(String select){ ArrayList<Object> list = new ArrayList<Object>(); cursor = db.rawQuery("SELECT * FROM T_EMPS WHERE REMARK2='0' AND (XM LIKE ? OR ZJM LIKE ? OR DWHM LIKE ?) ORDER BY ZJM COLLATE NOCASE ASC",new String[]{"%"+select+"%","%"+select+"%","%"+select+"%"}); while(cursor.moveToNext()){ EmpsModule emp = new EmpsModule(); emp.setDwhm(cursor.getString(cursor.getColumnIndex("DWHM"))); emp.setGuid(cursor.getString(cursor.getColumnIndex("GUID"))); emp.setXm(cursor.getString(cursor.getColumnIndex("XM"))); emp.setAddr(cursor.getString(cursor.getColumnIndex("ADDR"))); emp.setDepartment(cursor.getString(cursor.getColumnIndex("DEPARTMENT"))); emp.setEmail(cursor.getString(cursor.getColumnIndex("EMAIL"))); emp.setHonor(cursor.getString(cursor.getColumnIndex("HONOR"))); list.add(emp); } return list; } /** * 更新阅读状态 * @param tableName * @param gid */ public void updateReadState(String tableName,int gid){ System.out.println("更新阅读状态---------"+gid+"---------"+tableName); if(tableName.equals("T_PUBINFOS")){ db.execSQL("UPDATE T_PUBINFOS SET STATE=2 WHERE GID = "+gid+""); } } /** * 获得签到地点信息--用于考勤 * @param select --归属1、企业客户2、个人客户3、考勤地点 * @param select --客户状态0、无效1、正常 * @param select --查询条件--模糊搜索条件 * @return */ public ArrayList<CustomerModule> searchkqAddrs(int state,String select){ ArrayList<CustomerModule> list = new ArrayList<CustomerModule>(); String sql = "SELECT * FROM T_CUSTOMERS WHERE KH_SORT IN (1,3) AND KH_STATE = "+state+""; if(!select.equals("")){//模糊搜索 sql+=" AND (CNAME LIKE '"+"%"+select+"%"+"' OR CZJM LIKE '"+"%"+select+"%"+"')"; } sql+=" ORDER BY CZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ CustomerModule cust = new CustomerModule(); cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setLink_sim(cursor.getString(cursor.getColumnIndex("LINK_SIM"))); cust.setLinkman(cursor.getString(cursor.getColumnIndex("LINKMAN"))); cust.setAddress(cursor.getString(cursor.getColumnIndex("ADDRESS"))); cust.setLon(cursor.getString(cursor.getColumnIndex("LON"))); cust.setLat(cursor.getString(cursor.getColumnIndex("LAT"))); cust.setClon(cursor.getString(cursor.getColumnIndex("CLON"))); cust.setClat(cursor.getString(cursor.getColumnIndex("CLAT"))); cust.setSjhm(cursor.getString(cursor.getColumnIndex("SJHM"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); list.add(cust); /*System.out.println("客户-------------"+cust.getCname()+"," +cursor.getString(cursor.getColumnIndex("KH_SORT"))+"," +cursor.getString(cursor.getColumnIndex("KH_STATE")));*/ } return list; } /** * 获得客户信息 * @param select --归属1、企业客户2、个人客户3、考勤地点 * @param select --客户状态0、无效1、正常 * @param select --查询条件--模糊搜索条件 * @return */ public ArrayList<CustomerModule> searchCustomers(int type,int state,String select){ ArrayList<CustomerModule> list = new ArrayList<CustomerModule>(); String sql = "SELECT * FROM T_CUSTOMERS WHERE KH_SORT="+type+" AND KH_STATE = "+state+""; if(!select.equals("")){//模糊搜索 sql+=" AND (CNAME LIKE '"+"%"+select+"%"+"' OR CZJM LIKE '"+"%"+select+"%"+"')"; } sql+=" ORDER BY CZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ CustomerModule cust = new CustomerModule(); cust.setCid(cursor.getString(cursor.getColumnIndex("CID"))); cust.setCname(cursor.getString(cursor.getColumnIndex("CNAME"))); cust.setLink_sim(cursor.getString(cursor.getColumnIndex("LINK_SIM"))); cust.setLinkman(cursor.getString(cursor.getColumnIndex("LINKMAN"))); cust.setAddress(cursor.getString(cursor.getColumnIndex("ADDRESS"))); cust.setLon(cursor.getString(cursor.getColumnIndex("LON"))); cust.setLat(cursor.getString(cursor.getColumnIndex("LAT"))); cust.setClon(cursor.getString(cursor.getColumnIndex("CLON"))); cust.setClat(cursor.getString(cursor.getColumnIndex("CLAT"))); cust.setSjhm(cursor.getString(cursor.getColumnIndex("SJHM"))); cust.setShort_name(cursor.getString(cursor.getColumnIndex("SHORT_NAME"))); list.add(cust); //System.out.println("客户-------------"+cust.getCname()+","+cursor.getString(cursor.getColumnIndex("CID"))); } return list; } /** * 获得产品信息--本品、竞品 * @param type --产品类型1、本品2、竞品 * @param sort --产品类型(1-商品、2-赠品、3消耗品) * @param select --查询条件--模糊搜索条件 * @return */ public ArrayList<ProTypeModule> searchProducts(int type,int sort, String select){ ArrayList<ProTypeModule> list = new ArrayList<ProTypeModule>(); String sql = "SELECT * FROM T_PRODUCTS WHERE P_LB="+type+""; if(!select.equals("")){//模糊搜索 sql+=" AND (P_NAME LIKE '"+"%"+select+"%"+"' OR P_ZJM LIKE '"+"%"+select+"%"+"')"; } if(sort !=0){ sql+=" AND P_SORT="+sort+""; } sql+=" ORDER BY P_ZJM COLLATE NOCASE ASC"; cursor = db.rawQuery(sql,null); while(cursor.moveToNext()){ ProTypeModule product = new ProTypeModule(); product.setAddtime(cursor.getString(cursor.getColumnIndex("P_ADDTIME"))); product.setCbPrise(cursor.getString(cursor.getColumnIndex("P_CBJ"))); product.setCode(cursor.getString(cursor.getColumnIndex("TID"))); product.setDescription(cursor.getString(cursor.getColumnIndex("P_BZ"))); product.setId(cursor.getString(cursor.getColumnIndex("PID"))); product.setJxs(cursor.getString(cursor.getColumnIndex("P_SALER"))); product.setLbid(cursor.getString(cursor.getColumnIndex("GID"))); product.setLsPrise(cursor.getString(cursor.getColumnIndex("P_LSJ"))); product.setModel(cursor.getString(cursor.getColumnIndex("P_TYPE"))); product.setName(cursor.getString(cursor.getColumnIndex("P_NAME"))); product.setOrigin(cursor.getString(cursor.getColumnIndex("P_ADDR"))); product.setPfPrise(cursor.getString(cursor.getColumnIndex("P_PFJ"))); product.setProducer(cursor.getString(cursor.getColumnIndex("P_FACTORY"))); product.setStatus(cursor.getString(cursor.getColumnIndex("P_STATUS"))); product.setType(cursor.getString(cursor.getColumnIndex("P_SORT"))); product.setUnit(cursor.getString(cursor.getColumnIndex("P_UNIT"))); list.add(product); } return list; } /** * 根据产品编号,查找商品信息 * @param pnum * @return */ public ProTypeModule searchProductById(String pnum){ System.out.println("商品编号------"+pnum); ProTypeModule product = new ProTypeModule(); cursor = db.rawQuery("SELECT * FROM T_PRODUCTS WHERE PID="+pnum+"",null); while(cursor.moveToNext()){ product.setAddtime(cursor.getString(cursor.getColumnIndex("P_ADDTIME"))); product.setCbPrise(cursor.getString(cursor.getColumnIndex("P_CBJ"))); product.setCode(cursor.getString(cursor.getColumnIndex("TID"))); product.setDescription(cursor.getString(cursor.getColumnIndex("P_BZ"))); product.setId(cursor.getString(cursor.getColumnIndex("PID"))); product.setJxs(cursor.getString(cursor.getColumnIndex("P_SALER"))); product.setLbid(cursor.getString(cursor.getColumnIndex("GID"))); product.setLsPrise(cursor.getString(cursor.getColumnIndex("P_LSJ"))); product.setModel(cursor.getString(cursor.getColumnIndex("P_TYPE"))); product.setName(cursor.getString(cursor.getColumnIndex("P_NAME"))); product.setOrigin(cursor.getString(cursor.getColumnIndex("P_ADDR"))); product.setPfPrise(cursor.getString(cursor.getColumnIndex("P_PFJ"))); product.setProducer(cursor.getString(cursor.getColumnIndex("P_FACTORY"))); product.setStatus(cursor.getString(cursor.getColumnIndex("P_STATUS"))); product.setType(cursor.getString(cursor.getColumnIndex("P_SORT"))); product.setUnit(cursor.getString(cursor.getColumnIndex("P_UNIT"))); //System.out.println("商品信息---------"+cursor.getString(cursor.getColumnIndex("P_NAME"))+","+cursor.getString(cursor.getColumnIndex("PID"))+","+cursor.getString(cursor.getColumnIndex("P_UNIT"))); } return product; } /** * 操作拜访记录表 * @param cid */ public boolean updateBfRecord(String opt,String cid,String content){ boolean flag = false; if(opt.equals("add")){ db.execSQL("INSERT INTO T_VISTORS (CID,REMARK1) VALUES (?,?)",new Object[]{cid,content}); }else if(opt.equals("delete")){ db.execSQL("DELETE FROM T_VISTORS WHERE CID = '"+cid+"'"); }else if(opt.equals("select")){ cursor = db.rawQuery("SELECT * FROM T_VISTORS WHERE CID = ?",new String[]{cid}); while(cursor.moveToNext()){ flag = true; } } return flag; } /** * * Description: 查询拜访记录表 * Title: selectBfRecord * @param cid * @return * String */ public String selectBfRecord(String cid){ String str=""; try { cursor = db.rawQuery("SELECT * FROM T_VISTORS WHERE CID = ?",new String[]{cid}); while(cursor.moveToNext()){ str=cursor.getString(cursor.getColumnIndex("REMARK1")); } } catch (Exception e) { if(e.getMessage().contains("no such table")){ createTable(T_VISTORS); selectBfRecord(cid); } } return str; } /** * 传入Cell id,查询基站信息表 * @return */ public HashMap<String,String> searchLacs(int cell_id,String custId,int lac){ System.out.println("查询基站表--------基站编号:"+cell_id+",客户编号:"+custId+",LAC"+lac); if(custId == null || custId.equals("-1") || custId.equals("")){ cursor = db.rawQuery("SELECT * FROM T_LACINFO WHERE CELL_ID = ? AND LAC = ?",new String[]{cell_id+"",lac+""}); }else{ cursor = db.rawQuery("SELECT * FROM T_LACINFO WHERE CELL_ID = ? AND CID=? AND LAC = ?",new String[]{cell_id+"",custId,lac+""}); } HashMap<String,String> map = null; while(cursor.moveToNext()){ map = new HashMap<String,String>(); map.put("lon", cursor.getString(cursor.getColumnIndex("REMARK1"))); map.put("lat",cursor.getString(cursor.getColumnIndex("REMARK2"))); map.put("radius",cursor.getString(cursor.getColumnIndex("RADIUS"))); map.put("loc_type", cursor.getString(cursor.getColumnIndex("LOC_TYPE"))); System.out.println("基站信息-----------经度:"+cursor.getString(cursor.getColumnIndex("REMARK1"))+",纬度:"+cursor.getString(cursor.getColumnIndex("REMARK2")) +"loc_type:"+cursor.getString(cursor.getColumnIndex("LOC_TYPE"))); } System.out.println("查询基站信息表---------结果:"+map); return map; } public void insertFileLog(String path,File uploadFile){ //表不存在则创建,否则不处理 db.execSQL("CREATE TABLE IF NOT EXISTS T_UPICLOG(ID INTEGER PRIMARY KEY AUTOINCREMENT, UPLOADFILEPATH VARCHAR(100), SOURCEID VARCAHR(10))"); db.execSQL("insert into T_UPICLOG(uploadfilepath, sourceid) values(?,?)",new Object[]{path,uploadFile.getAbsolutePath()}); } public void deleteFileLog(File uploadFile){ db.execSQL("DELETE FROM T_UPICLOG WHERE UPLOADFILEPATH=?", new Object[]{uploadFile.getAbsolutePath()}); } public String getBindId(File uploadFile){ try { Cursor cursor = db.rawQuery("SELECT SOURCEID FROM T_UPICLOG WHERE UPLOADFILEPATH=?", new String[]{uploadFile.getAbsolutePath()}); if(cursor.moveToFirst()){ return cursor.getString(0); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Log.i("db", "数据库表T_UPICLOG不存在!~"); } return null; } /** * 关闭Sqllite3数据库 */ public void close_SqlDb(){ System.out.println("************关闭数据库连接************"); if(cursor != null){ cursor.close(); } if(db != null){ db.close(); } } }