def POST(self, lid='0'):
        init.checkadmin()
        if (not lid.isdigit()):
            return init.jsonerr('invalid line id')
        rs = mysql.conn.select('gt_line', where="id=" + lid)
        if (len(rs) < 1):
            return init.jsonerr('error line id')
        data = web.input(imgurl='', imgtext='', imgid='0')
        imgurl = data.imgurl
        imgtext = data.imgtext
        imgid = data.imgid
        if (imgurl != ''):
            sql = "insert ignore into gt_lineimg(lid,img) values(%s, '%s')" % (
                lid, imgurl)
            rsa = mysql.conn.query(sql)
            if rsa:
                return init.jsonok([], '操作成功')
            else:
                return init.jsonerr('图片已插入,请不要重复图片.')

        if (imgtext != ''):
            imgid = imgid.split('_')
            imgid = imgid[-1]
            if (not init.checkadmin() and rs.locking == 1):
                return init.render.error('您不能修改已有图片!')
            mysql.conn.update('gt_lineimg',
                              where="lid=" + lid + " and id=" + imgid,
                              says=imgtext)
            return init.jsonok([], '描述添加成功')

        return init.jsonerr('无效操作')
    def GET(self, lid='0'):
        init.checkadmin()
        if (not lid.isdigit()):
            raise seeother('/')
        rs = mysql.conn.select('gt_line', where="id=" + lid)
        if (len(rs) < 1):
            return seeother('/')
        rs = rs[0]

        data = web.input(delimg='0', mainimg='0')
        delimg = data.delimg
        mainimg = data.mainimg
        #delimg:
        if (delimg != '0'):
            if (not init.checkadmin() and rs.locking == 1):
                return init.render.error('您不能修改已有图片!')
            mysql.conn.delete('gt_lineimg',
                              where="lid=" + lid + " and id=" + delimg)

        #mainimg:
        if (mainimg != '0'):
            if (not init.checkadmin() and rs.locking == 1):
                return init.render.error('您不能修改已有图片!')
            mysql.conn.update('gt_lineimg', where="lid=" + lid, ismain=0)
            mysql.conn.update('gt_lineimg',
                              where="lid=" + lid + " and id=" + mainimg,
                              ismain=1)

        imgs = mysql.conn.select('gt_lineimg',
                                 where="lid=" + lid,
                                 order="id asc")
        return init.render.lineimg(rs, imgs)
Beispiel #3
0
 def GET(self):
     init.checkadmin()
     render = web.template.render('views/admin',
                                  base='layout',
                                  cache=conf.webview_cache,
                                  globals=init.temp_globals)
     return render.main()
Beispiel #4
0
    def POST(self):
        init.checkadmin()
        data = web.input()
        line = int(data.line)
        island = int(data.island)
        area = int(data.area)
        keychar = data.statchar.lower().replace(' ', '')

        id = data.get('id', '0')
        #return id
        if (id == '0'):
            mysql.conn.insert('gt_station',
                              pid=data.pid,
                              keychar=keychar,
                              cid=data.cid,
                              station=data.station,
                              statchar=data.statchar,
                              grade=data.grade,
                              address=data.address,
                              longitude=data.longitude,
                              latitude=data.latitude,
                              line=line,
                              island=island,
                              area=area,
                              building=data.building,
                              passengers=data.passengers)
        else:
            rs = mysql.conn.select('gt_station', where="id=" + id)
            if (not len(rs)):
                return init.render.error('参数有误!')
            rs = rs[0]
            if (not init.checkadmin() and rs.locking == 1):
                return init.render.error('您不能修改已有内容!')
            mysql.conn.update('gt_station',
                              where='id = $id',
                              vars=locals(),
                              keychar=keychar,
                              pid=data.pid,
                              cid=data.cid,
                              station=data.station,
                              statchar=data.statchar,
                              grade=data.grade,
                              address=data.address,
                              longitude=data.longitude,
                              latitude=data.latitude,
                              line=line,
                              island=island,
                              area=area,
                              building=data.building,
                              passengers=data.passengers)

        raise web.seeother('/station')
        pass
Beispiel #5
0
 def GET(self, lid='0'):
     init.checkadmin()
     data = {}
     data['statarr'] = mysql.getstatArr()
     line = mysql.conn.select("gt_line", where="id= " + lid)
     if (len(line) < 1):
         return init.render.error('id参数有误')
     line = line[0]
     rs = mysql.conn.query(
         "select gl.id,province,city,cid,station,stat_id,line_id from gt_linestats gl left join gt_station gt on gl.stat_id = gt.id left join gt_citys gc on gt.cid = gc.id where gl.line_id = %s order by gl.sort asc,gl.id asc"
         % lid)
     return init.render.linestats(line, rs, data)
    def POST(self):
        init.checkadmin()
        data = web.input()

        longkm = int(data.longkm)
        speed = int(data.speed)
        onspeed = int(data.onspeed)
        keychar = data.namechar.lower().replace(' ', '')

        id = data.get('id', '0')
        #return id
        if (id == '0'):
            mysql.conn.insert('gt_line',
                              keychar=keychar,
                              name=data.name,
                              fullname=data.fullname,
                              namechar=data.namechar,
                              statusc=data.statusc,
                              speed=speed,
                              building=data.building,
                              longkm=longkm,
                              onspeed=onspeed,
                              color=data.color)
        else:
            rs = mysql.conn.select('gt_line', where="id=" + id)
            if (not len(rs)):
                return init.render.error('参数有误!')
            rs = rs[0]

            admin = init.checkadmin()
            if (rs.locking and not admin):
                raise web.seeother('/line')

            if (rs.locking):
                raise web.seeother('/line')
            if (not init.checkadmin() and rs.locking == 1):
                return init.render.error('您不能修改已有内容!')
            mysql.conn.update('gt_line',
                              where='id = $id',
                              vars=locals(),
                              keychar=keychar,
                              name=data.name,
                              fullname=data.fullname,
                              namechar=data.namechar,
                              statusc=data.statusc,
                              speed=speed,
                              building=data.building,
                              longkm=longkm,
                              onspeed=onspeed,
                              color=data.color)
        raise web.seeother('/line')
        pass
Beispiel #7
0
 def GET(self):
     init.checkadmin()
     province = mysql.getproArr()
     get = web.input(proid='1000')
     proid = get.proid
     if (not proid.isdigit() or proid == '0'):
         proid = '1000'
     rs = mysql.conn.select('gt_citys',
                            where="proid=" + proid,
                            order='id asc')
     if (len(rs) < 1):
         return init.render.error('参数有误')
     proid = int(proid)
     return init.render.city(rs, province, proid)
 def GET(self):
     init.checkadmin()
     data = {}
     data['status'] = conf.status
     #modify
     indata = web.input(id='0')
     if (indata.id.isdigit() and indata.id != '0'):
         oridata = mysql.conn.select('gt_line', where="id=" + indata.id)
         if (len(oridata) < 1):
             return init.render.error('id参数有误')
         oridata = oridata[0]
     else:
         id = '0'
         oridata = web.Storage()
     return init.render.linedit(data, oridata)
 def GET(self, typeid):
     adminer = init.checkadmin(False)
     find = False
     for item in conf.typearr:
         if (item['id'] == typeid):
             find = True
     if (not find):
         return web.seeother('/')
     rs = mysql.conn.select('gt_article', where="typeval=" + typeid)
     return init.render.article(rs, adminer)
Beispiel #10
0
 def GET(self):
     init.checkadmin()
     data = {}
     data['province'] = mysql.getproArr()
     data['city'] = mysql.getcityArr()
     data['cityj'] = json.dumps(data['city'], ensure_ascii=False)
     data['cityjson'] = data['cityj']  #.replace("&quot;",'"');
     data['grade'] = conf.grade
     #modify
     indata = web.input(id='0')
     if (indata.id.isdigit() and indata.id != '0'):
         oridata = mysql.conn.select('gt_station', where="id=" + indata.id)
         if (len(oridata) < 1):
             return init.render.error('id参数有误')
         oridata = oridata[0]
     else:
         id = '0'
         oridata = web.Storage()
     return init.render.stationedit(data, oridata)
Beispiel #11
0
    def GET(self):
        adminer = init.checkadmin(False)

        province = mysql.getproArr()
        get = web.input(proid='0')
        proid = get.proid
        if (not proid.isdigit() or proid == '0'):
            rs = mysql.conn.select('gt_station', order='id asc')
        else:
            rs = mysql.conn.select('gt_station',
                                   where="pid=" + proid,
                                   order='id asc')
        proid = int(proid)
        return init.render.station(rs, adminer, proid, province)
 def POST(self):
     init.checkadmin()
     data = web.input()
     id = data.get('id', '0')
     station_id = data.get('station_id', '0')
     if (not station_id.isdigit()):
         station_id = '0'
     line_id = data.get('line_id', '0')
     if (not line_id.isdigit()):
         line_id = '0'
     nowt = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
     #return helps.htmlshow(data)
     if (id == '0'):
         mysql.conn.insert('gt_article',
                           title=data.title,
                           line_id=line_id,
                           station_id=station_id,
                           typeval=data.typeval,
                           detail=data.detail,
                           create_time=nowt,
                           update_time=nowt)
     else:
         rs = mysql.conn.select('gt_article', where="id=" + id)
         if (not len(rs)):
             return init.render.error('参数错误!')
         rs = rs[0]
         if (not init.checkadmin() and rs.locking == 1):
             return init.render.error('您不能修改已有内容!')
         mysql.conn.update('gt_article',
                           where="id=" + id,
                           title=data.title,
                           line_id=line_id,
                           station_id=station_id,
                           typeval=data.typeval,
                           detail=data.detail,
                           update_time=nowt)
     raise web.seeother("/article/" + data.typeval)
    def GET(self):
        init.checkadmin()

        indata = web.input()
        aid = indata.get('aid', '0')
        sid = indata.get('sid', '0')
        lid = indata.get('lid', '0')

        if (not aid.isdigit()):
            aid = '0'
        if (not sid.isdigit()):
            sid = '0'
        if (not lid.isdigit()):
            lid = '0'

        oridata = {}
        if (aid != '0' or sid != '0' or lid != '0'):
            if (aid != '0'):
                oridata = mysql.conn.select('gt_article', where="id=" + aid)
                if (len(oridata) < 1):
                    return init.render.error('参数有误')
            elif (sid != '0'):
                oridata = mysql.conn.select('gt_article',
                                            where="station_id=" + sid)
            else:
                oridata = mysql.conn.select('gt_article',
                                            where="line_id=" + lid)
            if (len(oridata) >= 1):
                oridata = oridata[0]
            else:
                oridata = {}
        data = {}
        data['type'] = conf.typearr
        data['linearr'] = mysql.getlineArr()
        data['statarr'] = mysql.getstatArr()
        return init.render.articledit(data, oridata, sid, lid)
    def GET(self, lid='0'):
        if (not lid.isdigit()):
            raise seeother('/')
        rs = mysql.conn.select('gt_line', where="id=" + lid)
        if (len(rs) < 1):
            return seeother('/')
        rs = rs[0]
        admin = init.checkadmin()
        if (rs.locking and not admin):
            raise web.seeother('/line')

        #get all stations
        sql = "select * from gt_fullstats where line_id='%s' order by sortnum asc,id asc" % lid
        oridata = mysql.conn.query(sql)
        web.header("Access-Control-Allow-Origin", "*")
        return init.render.allstatedit(rs, oridata, lid)
Beispiel #15
0
    def POST(self, lid='0'):
        adminer = init.checkadmin()
        line = mysql.conn.select("gt_line", where="id= " + lid)
        if (len(line) < 1):
            return init.jsonerr('无效参数')

        linedata = line[0]
        if (not adminer and linedata.locking == 1):
            return init.jsonerr('此线路已经完善,不能再编辑.')

        indata = web.input()
        sid = indata.get('sid', '0')
        if (not sid.isdigit() or sid == '0'):
            return init.jsonerr('无效参数sid')

        #do sort
        sort = indata.get('sort', '0')
        if (sort.isdigit() and sort != '0'):
            rs = mysql.conn.select("gt_linestats",
                                   order="sort asc,id asc",
                                   where="line_id=" + lid)
            index = 0
            sort = int(sort)
            for row in rs:
                if (row.id == int(sid)):
                    continue
                index += 1
                if (index == sort):
                    mysql.conn.update("gt_linestats",
                                      where="id=" + sid,
                                      sort=index)
                    index += 1
                mysql.conn.update("gt_linestats",
                                  where="id=" + str(row.id),
                                  sort=index)
            return init.jsonok('顺序调整完成')

        station = mysql.conn.select("gt_station", where="id= " + sid)
        if (len(station) < 1):
            return init.jsonerr('无效参数')

        mysql.conn.query(
            "insert ignore into gt_linestats(line_id, stat_id) values(%s, %s)"
            % (lid, sid))
        return init.jsonok('添加成功')
    def POST(self, lid='0'):
        rs = init.checkadmin()
        if not rs:
            raise web.seeother('/')
        if (not lid.isdigit()):
            raise seeother('/')
        rs = mysql.conn.select('gt_line', where="id=" + lid)
        if (len(rs) < 1):
            return seeother('/')

        #do stat data
        rs = rs[0]
        data = web.input()
        #return helps.htmlshow(data);
        test = []
        for num in range(1, 200):
            i = str(num)
            stat = data.get("st_" + i, '')
            stat = stat.strip()
            if not stat:
                sql = "delete from gt_fullstats where line_id=%s and sortnum > %s" % (
                    lid, i)
                rs = mysql.conn.query(sql)
                break
            else:
                sortv = data.get("s_" + i, '1000')
                jwd = data.get("jwd_" + i, '116.400819,39.92556')
                sortv = sortv.strip()
                jwd = jwd.strip()
                web.header('Content-Type', 'text/html;charset=UTF-8')

                #return sortv+stat+jwd
                sql = "insert ignore into gt_fullstats(line_id,stat_name,jingweidu,sortnum) values('%s','%s','%s','%s') ON DUPLICATE KEY UPDATE jingweidu='%s',sortnum='%s'" % (
                    lid, stat, jwd, sortv, jwd, sortv)
                rs = mysql.conn.query(sql)
                #return sql

        raise web.seeother('/allstatedit/' + lid)
        pass
    def GET(self):
        adminer = init.checkadmin(False)
        if( not adminer):
            return init.render.error('您无权限操作此项.')

        data = web.input(doid='0');
        doid = data.doid

        if(not doid.isdigit()):
            return init.render.error('参数错误.')
            
        rs = mysql.conn.select('gt_line', where="id="+doid)
        if(not len(rs)): 
            return init.render.error('参数错误.')

        rs=rs[0]
        if(rs.locking == 0):
            locking = '1'
        else:
            locking = '0'
        mysql.conn.update('gt_line', where="id=" +doid, locking=locking)
        return helps.goback()
Beispiel #18
0
 def GET(self):
     init.checkadmin()
     rs = mysql.conn.select('gt_province', order='sort asc')
     return init.render.province(rs)
Beispiel #19
0
 def GET(self):
     init.checkadmin()
     web.setcookie(conf.admincooker, '', expires=1)
     raise web.seeother('/gtadminerback')
 def GET(self):
     adminer = init.checkadmin(False)
     rs = mysql.conn.select('gt_line', order='id desc')
     return init.render.line(rs, adminer)