#include "zxshdb.h" #include "sncdatabase.h" #include ZxshDB::ZxshDB() { } int ZxshDB::addShkjZxshTask(QString ssid, QString userCode, QString province, QString city,\ QString inserttime,QString finishtime, int updatedays, QString isp,\ QString slttype, QString packnolist,QString seglist, int neednum, int rpnum) { QSqlQuery query; QSqlDatabase::database().transaction(); query.prepare("insert into user.SHKJ_ZXSH_TASK(ssid,USERCODE,province,\ city,inserttime,finishtime,updatedays,isp,slttype,packnolist,seg,neednum,rpnum,dealstatus,isdel)\ values(?,?,?,?,?,?,?,?,?,?,?,?,?,'0','N')"); QVariantList vars; vars< ZxshDB::getShkjZxshTasksByUser(QString userCode, QString isdown="0") { QString where = ""; if(isdown=="0") //全部 ; else if(isdown=="1") //已下载 { where += " and dealstatus = 3 "; } else if(isdown=="2") //未下载 { where += " and dealstatus <= 2 "; } else ; QMultiMap values; QSqlQuery query; query.prepare("SELECT TASKID,SSID,PROVINCE,CITY,INSERTTIME,FINISHTIME,UPDATEDAYS,ISP ,\ SLTTYPE,PACKNOLIST,SEG,NEEDNUM ,RPNUM,USERCODE,DEALSTATUS,ISDEL \ from user.SHKJ_ZXSH_TASK where usercode=? and (isdel='N' or isdel is null or isdel='')" + where); query.addBindValue(userCode); query.exec(); while(query.next()) { int i=0; values.insert("taskid",query.value(i++).toString()); values.insert("ssid",query.value(i++).toString()); values.insert("province",query.value(i++).toString()); values.insert("city",query.value(i++).toString()); values.insert("inserttime",query.value(i++).toString()); values.insert("finishtime",query.value(i++).toString()); values.insert("updatedays",query.value(i++).toString()); values.insert("isp",query.value(i++).toString()); values.insert("slttype",query.value(i++).toString()); values.insert("packnolist",query.value(i++).toString()); values.insert("seglist",query.value(i++).toString()); values.insert("neednum",query.value(i++).toString()); values.insert("rpnum",query.value(i++).toString()); values.insert("usercode",query.value(i++).toString()); values.insert("dealstatus",query.value(i++).toString()); values.insert("isdel",query.value(i++).toString()); } return values; } int ZxshDB::updateShkjZxshTaskInfos(QMultiMap maps, QString userCode) { QSqlQuery query; QSqlDatabase::database().transaction(); int cols = maps.uniqueKeys().size(); int rows = 0; if(cols!=0) { rows = maps.size()/cols; } for(int i=0;i maps, QString userCode) { QSqlQuery query; QSqlDatabase::database().transaction(); int cols = maps.uniqueKeys().size(); int rows = 0; if(cols!=0) { rows = maps.size()/cols; } QVariantList v1,v2,v3,v4,v5; for(int i=0;i=9时,接口方法中会返回 9+ dlcount = 10; s5 << dlcount; } file2.close(); QFile::remove(filename); query.exec("drop table Pack_RealNum_tmp"); query.exec("CREATE TABLE Pack_RealNum_tmp (packid varchar(50),\ packnum numberic,\ isp char(1),\ updatedays numberic,dlcount numberic)"); query.finish(); query.prepare("insert into Pack_RealNum_tmp(packid,packnum,isp,updatedays,dlcount) values(?,?,?,?,?)"); query.addBindValue(s1); query.addBindValue(s2); query.addBindValue(s3); query.addBindValue(s4); query.addBindValue(s5); query.execBatch(); QSqlDatabase::database().commit(); } QStringList ZxshDB::getShkjZxshSegRealPnum(int updatedays, QString corp, QString city) { QString cmcc,cutc,ctcc,isp; cmcc = SNCDataBase::getCMCC(); cutc = SNCDataBase::getCUTC(); ctcc = SNCDataBase::getCTCC(); if(corp=="1") isp = cmcc; else if(corp=="2") isp = cutc; else if(corp=="3") isp = ctcc; else isp = cmcc+","+cutc+","+ctcc; QSqlQuery query; QString sql = "select a.seg,b.s1,b.s2,b.s3,b.s4,b.s5,b.s6,b.s7,b.s8,b.s9,b.s10 \ from num.mseg a LEFT JOIN SEG_RealNum_tmp b \ on a.seg = b.seg where a.city = ? and substr(b.seg,1,3) in ("+isp+")"; if(updatedays==1) sql += " and b.s1>0"; else if(updatedays==2) sql += " and b.s2>0"; else if(updatedays==3) sql += " and b.s3>0"; else if(updatedays==4) sql += " and b.s4>0"; else if(updatedays==5) sql += " and b.s5>0"; else if(updatedays==6) sql += " and b.s6>0"; else if(updatedays==7) sql += " and b.s7>0"; else if(updatedays==30) sql += " and b.s8>0"; else if(updatedays==90) sql += " and b.s9>0"; else if(updatedays==180) sql += " and b.s10>0"; query.prepare(sql); query.addBindValue(city); query.exec(); QStringList list; QSqlRecord rec = query.record(); int col = rec.count(); while(query.next()) { QString info=""; for(int i=0;i