def designLinePrice(self, openid, data): jdkSign = objWeixin.get_jdk_sign(self.url) busline_id = data.busline_id company_id = data.company_id #获取相关数据 sites = linedb.getSitesByLineid(busline_id) prices = linedb.getLinePrice(busline_id) _ret = db.query( "SELECT * FROM BusLine WHERE id = {0}".format(busline_id)) busline = _ret[0] line_name = busline.from_name + "-" + busline.to_name #结果拼装 cfgPara = { "openid": openid, "sites": sites, "prices": prices, "line_name": line_name, "busline_id": busline_id, "company_id": company_id } fixPara = icfg.getFixPara(openid, busline_id=busline_id, company_id=company_id) _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.design_line_price(_cfgPara, jdkSign, fixPara) return ret
def regeditCompany(self, openid, data): cfgPara = {'openid': openid} if web.ctx.method == 'GET': cfgPara["actionEN"] = "regedit" cfgPara["actionCH"] = "注册" cfgPara["homedomain"] = self.env["homedomain"] cfgPara["appid"] = icfg.objWeixin.appid jdkSign = icfg.objWeixin.get_jdk_sign(self.env["url"]) fixPara = icfg.getFixPara(openid) ret = self.render.regedit_company(cfgPara, jdkSign, fixPara) else: id = linedb.regeditCompany( name=data.name, qq=data.qq, weixin=data.weixin, #alipay =data.alipay, #idCard =data.idCard, phone=data.phone, district=data.district, province=data.province, city=data.city, addr=data.address, company=data.company, regedit_openid=data.regedit_openid, valid="待确认", ) cfgPara["result"] = ("success" if id >= 0 else "fail") cfgPara["company_id"] = id ret = uTools.formatPostMsg(cfgPara) return ret
def startLineStat(self, openid, data): busline_id = data.busline_id company_id = data.company_id _ret = db.query( "SELECT * FROM BusLine WHERE id={0}".format(busline_id)) busline = _ret[0] items = devdb.getDeviceByGroupid(openid, busline.busgroupid) line_name = busline.from_name + " " + busline.to_name jdkSign = objWeixin.get_jdk_sign(self.url) fixPara = icfg.getFixPara(openid, busline_id=busline_id, company_id=company_id) cfgPara = { "openid": openid, "buses": items, "busline_id": busline_id, "company_id": company_id, "line_name": line_name } _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.start_busline_stat(_cfgPara, jdkSign, fixPara) return ret
def designLineSiteQQ(self, openid, data): jdkSign = objWeixin.get_jdk_sign(self.url) #对站点进行排序 if data.has_key('busline_id'): #已有的线路重新调整 sites = linedb.getSitesByLineid(data.busline_id, "manual") busline = linedb.getBuslineByid(data.busline_id, format="string") linedb.orderLineSiteSeq(busline["id"]) else: #创建新的线路 sites = {"manual": [], "auto": []} busline = {"id": -1, "from_name": "", "to_name": ""} user = userdb.getUserByOpenid(objWeixin.weixinName, openid) cfgPara = { "openid": openid, "sites": sites, "user": user, "busline": busline, "company_id": data.company_id } fixPara = icfg.getFixPara(openid, busline=busline, company_id=data.company_id) _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.line_sites_qq(_cfgPara, jdkSign, fixPara) return ret
def getLineBuses(self, openid, data): _ret = db.query("SELECT * FROM BusLine WHERE id={0}".format( data.busline_id)) busline = _ret[0] #判定是否为赛维员工 manager = linedb.getManageEmployee(openid) items = devdb.getDeviceByGroupid(openid, busline.busgroupid) line_name = busline.from_name + " " + busline.to_name if web.ctx.method == 'GET': jdkSign = objWeixin.get_jdk_sign(self.url) cfgPara = { "openid": openid, "items": items, "busline_id": data.busline_id, "busgroupid": busline.busgroupid, "company_id": data.company_id, "line_name": line_name } fixPara = icfg.getFixPara(openid, manager=manager, busline_id=data.busline_id, busgroupid=busline.busgroupid, company_id=busline.company_id) _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.line_buses(_cfgPara, jdkSign, fixPara) else: cfgPara = {"items": items, "result": "succuss"} ret = uTools.formatPostMsg(cfgPara) return ret
def getOnlineState(self,openid,data): #查询纳入 buses = devdb.getCompanyBusSate() if web.ctx.method=='GET': jdkSign = objWeixin.get_jdk_sign(self.env["url"]) fixPara = icfg.getFixPara(openid) cfgPara = {"buses":buses,"openid":openid} _cfgPara =json.dumps(cfgPara,ensure_ascii=False) ret = self.render.online_state(_cfgPara,jdkSign,fixPara) else: ret =uTools.formatPostMsg({"buses":buses}) return ret
def company_home_metro(self, openid, data): user = icfg.objWeixin.get_user_info2(openid, format="string") jdkSign = icfg.objWeixin.get_jdk_sign(self.env["url"]) idCard = devdb.getCompany(openid) cfgPara = { 'openid': openid, 'user': user, 'idCard': idCard, 'grid': "abc" } fixPara = icfg.getFixPara(openid) ret = self.render.company_home(cfgPara, jdkSign, fixPara) return ret
def getOnlineTestViewMsg(self,openid): if openid not in ["vk","zongheng"]: return openid = "online-test" cfgPara = devdb.getDeviceDistrubtorView(openid) cfgPara["openid"]=openid #iUrl = "&".join(self.env["qrcode_url"].split("&")[0:2])+"&grpType={0}&grpName={1}".format(grpType,grpName) _cfgPara = json.dumps(cfgPara,ensure_ascii=False) if web.ctx.method=='GET': jdkSign = objWeixin.get_jdk_sign(self.env["url"]) fixPara = icfg.getFixPara(openid) ret = self.render.online_test(_cfgPara,jdkSign,fixPara) else: ret =_cfgPara return ret
def manager_home_metro(self, openid, data): user = icfg.objWeixin.get_user_info(openid) jdkSign = icfg.objWeixin.get_jdk_sign(self.env["url"]) mgr = devdb.getRole(openid) fixPara = icfg.getFixPara(openid) cfgPara = { 'openid': openid, 'user': user, 'role': mgr["role"], 'appid': icfg.objWeixin.appid, 'homedomain': self.env["homedomain"], 'range': mgr["range"], 'grid': "abc" } ret = self.render.manager_home(cfgPara, jdkSign, fixPara) return ret
def designLineSite(self, openid, data): jdkSign = objWeixin.get_jdk_sign(self.url) sites = [{ "name": "无菊", "addr": "云南省红河州金平县无菊酒吧", "lat": 223.1455, "lng": 109.1231 }, { "name": "蒙自", "addr": "云南省红河州蒙自县无菊酒吧", "lat": 223.1455, "lng": 109.1231 }] cfgPara = {"openid": openid, "sites": sites} _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.line_sites(_cfgPara, jdkSign, icfg.getFixPara(openid)) return ret
def showLineStatTask(self,openid,data): busline_id = data.busline_id company_id = data.company_id from_time = datetime.datetime.now() - datetime.timedelta(hours=24) tasks = utidb.getLineStatTaskByOpenid(openid,from_time) jdkSign = icfg.objWeixin.get_jdk_sign(self.url) fixPara = icfg.getFixPara(openid,busline_id=busline_id, company_id=company_id) cfgPara={"openid" :openid, "busline_id":busline_id, "company_id":company_id, "tasks" :tasks} _cfgPara = json.dumps(cfgPara,ensure_ascii=False) ret = self.render.show_task(_cfgPara,jdkSign,fixPara) return ret
def getCompanyBuses(self, openid, data): #manager = objWeixin.getManager(openid) #判定是否为赛维员工 manager = linedb.getManageEmployee(openid) user = objWeixin.get_user_info2(openid, format="string") #获取公司信息 company_id = uTools.get_data_value(data, "company_id", default=0) if company_id == 0: companys = linedb.getCompanyByOpenid(openid, format="string") company = companys[0] company_id = company["id"] else: company_id = int(company_id) company = linedb.getCompany(company_id, format="string") items = devdb.getBusesByCompany(openid, company["id"]) if web.ctx.method == 'GET': jdkSign = objWeixin.get_jdk_sign(self.url) cfgPara = { "openid": openid, "devs": items, "company": company, "user": user } #生成分享链接 share_app_link = "{0}/m/company?act=cert-company&company_id={1}".format( self.env["homedomain"], company_id) share_app_title = "扫一扫,成为-{0}-运营管理员 ".format(company["company"]) fixPara = icfg.getFixPara( openid, manager=manager, company_id=company["id"], company_name=company["company"], share_app_link=share_app_link, share_app_title=share_app_title, ) _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.company_buses(_cfgPara, jdkSign, fixPara) else: cfgPara = {"devs": items, "result": "succuss"} ret = uTools.formatPostMsg(cfgPara) return ret
def startSingleBusStat(self, openid, data): busline_id = data.busline_id company_id = data.company_id imei = data.imei jdkSign = objWeixin.get_jdk_sign(self.url) fixPara = icfg.getFixPara(openid, busline_id=busline_id, company_id=company_id) cfgPara = { "openid": openid, "busline_id": busline_id, "company_id": company_id, "imei": imei } _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.start_bus_stat(_cfgPara, jdkSign, fixPara) return ret
def getCompanyBusLines(self, openid, data): jdkSign = objWeixin.get_jdk_sign(self.url) user = objWeixin.get_user_info2(openid, format="string") #获取openid对应的公司 manager = objWeixin.getManager(openid) company_mgr = linedb.getManageEmployee(openid) company_id = uTools.get_data_value(data, "company_id", default=0) ret = linedb.getBusLineByOpenid(openid, company_id) if len(ret["company_ids"]) == 0: #不是有效员工 if manager != None: #是管理员 return web.seeother( "/company?act=manager-home&openid={0}".format(openid)) else: return web.seeother(icfg.urlHome) else: company_id = ret["company_ids"][0] company = linedb.getCompany(company_id, format="string") employee = linedb.getEmployeeByid(company_id, with_manager=True) cfgPara = { "openid": openid, "user": user, "items": ret["items"], "company": company, "employee": employee } #生成分享链接 share_app_link = "{0}/m/company?act=cert-company&company_id={1}".format( self.env["homedomain"], company_id) share_app_title = "扫一扫,成为-{0}-运营管理员 ".format(company["company"]) mgr = ("manager" if manager != None or company_mgr != None else None) fixPara = icfg.getFixPara(openid, manager=mgr, share_app_link=share_app_link, share_app_title=share_app_title, company_id=company_id) _cfgPara = json.dumps(cfgPara, ensure_ascii=False) ret = self.render.company_buslines(_cfgPara, jdkSign, fixPara) return ret
def home_metro(self, openid, data): grpMgrStat = devdb.getDeviceTypeStat(openid, "管理分组") grpStat = {"mgr": grpMgrStat["sum"]} user = icfg.objWeixin.get_user_info(openid) jdkSign = icfg.objWeixin.get_jdk_sign(self.env["url"]) mgr = devdb.getRole(openid) idCard = devdb.getcompany(openid) customerType = ("older" if grpStat["mgr"] > 0 else "newer") cfgPara = { 'openid': openid, 'user': user, 'grpStat': grpStat, 'role': mgr["role"], 'range': mgr["range"], 'customerType': customerType, 'idCard': idCard, 'grid': "abc" } fixPara = icfg.getFixPara(openid) ret = self.render.home(cfgPara, jdkSign, fixPara) return ret
def certCompany(self, openid, data): if data.has_key("act2"): #来自auth的请求 company_id = data.act2.split("_")[2] else: company_id = data.company_id _distRret = icfg.db.query( """SELECT *,Company.id AS company_id FROM Company, WeixinQRcodeScene WHERE Company.id='{0}' AND Company.WeixinQRcodeScene_id = WeixinQRcodeScene.id """.format(company_id)) if (len(_distRret) > 0): company = _distRret[0] else: return web.seeother(icfg.urlHome) cfgPara = { 'openid': openid, 'company': company, 'homedomain': self.env["homedomain"], "appid": icfg.objWeixin.appid } jdkSign = icfg.objWeixin.get_jdk_sign(self.env["url"]) fixPara = icfg.getFixPara(openid) ret = self.render.cert_company(cfgPara, jdkSign, fixPara) return ret