def mWxPushMsg_Comment_qy(request, pk): year = getToday()[:4] sql = """SELECT title FROM complaint_sup_msg_send WHERE id = %s""" % pk rows, iN = db.select(sql) msgTitle = rows[0][0] sToken = read_access_token_common('access_token_gy_qy') if sToken == '': conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/gettoken?corpid=%s&corpsecret=%s" % (m_sCorpID, m_sCorpSecret_gy) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body, 'access_token_gy_qy') toUser = getRecvUser() toUser += '|liusq|gulq' sUrl = '%s/complaint/login/login_qy?fid=infoDetail&func_id=1000004&seq=%s&must_reply=true' % ( host_url, pk) stitle = """新留言提醒""" surl = my_urlencode(sUrl) description = """您发布的“%s”信息,有新的留言信息,请及时查看。""" % (msgTitle) stitle = json.dumps(stitle) description = json.dumps(description) url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect" % ( m_sCorpID, surl) sMsg = """{ "touser": "******", """ % (toUser) sMsg += """ "msgtype": "news", "agentid": "%s", "news": { "articles":[ { "title": %s, "url": "%s", "description":%s } ] } } """ % (m_sAgentId_gy, stitle, url, description) # print sMsg conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/message/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return HttpResponseCORS(request, errcode)
def mWxPushMsg_FlowSj(request,id): year=getToday()[:4] L =Get_data_FlowSj(request,id) sToken = read_access_token_lw() if sToken == '': conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/gettoken?corpid=%s&corpsecret=%s"%(m_sCorpID,m_sCorpSecret_lw) conn.request('GET', '%s'%url) res = conn.getresponse() body = res.read() ddata=json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_lw(body) file_id=L[0] cusrname = L[1] proj_name = L[2] nowUsrname = L[3] complaintObject = L[4] toUser = L[5] sUrl='%s/complaint/login/login_qy?fid=complainDetail&seq=%s&must_reply=true'%(host_url,file_id) stitle ="""审计上报提醒""" description = """【%s】将“%s”反映“%s”关于“%s”的情况上报给您,请及时查阅。"""%(nowUsrname,cusrname,complaintObject,proj_name) surl = my_urlencode(sUrl) # print toUser stitle=json.dumps(stitle) description = json.dumps(description) url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect"%(m_sCorpID,surl) sMsg ="""{ "touser": "******", """%(toUser) sMsg +=""" "msgtype": "news", "agentid": "%s", "news": { "articles":[ { "title": %s, "url": "%s", "description":%s } ] } } """%(m_sAgentId_lw,stitle,url,description) # print sMsg conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/message/send?access_token=%s"%(sToken) #print url conn.request('POST', '%s'%url,sMsg) res = conn.getresponse() body = res.read() conn.close() ddata=json.loads(body) errcode = ddata['errcode'] return HttpResponseCORS(request,errcode)
def mWxPushMsg_fw(title, pk, toUser): now = getToday() sToken = read_access_token() conn = httplib.HTTPSConnection('api.weixin.qq.com') sToken = read_access_token() if sToken == '': url = "/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s" % ( AppId, AppSecret) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token(body) file_id = pk sUrl = '%s/complaint/login/default?fid=infoDetail&seq=%s&must_reply=true' % ( host_url, file_id) description = """您参与的%s的劳务招标报名,有新审核信息啦""" % (title) surl = my_urlencode(sUrl) # print toUser description = json.dumps(description) now = json.dumps(now) city = json.dumps("深圳") url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect" % ( AppId, surl) sMsg = """{ "touser":"******", "template_id":"%s", "url":"%s", "topcolor":"#FF0000", "data":{ "first": { "value":%s, "color":"#173177" }, "keyword1": { "value":%s, "color":"#173177" }, "keyword2": { "value":%s, "color":"#173177" } } } """ % (toUser, template_id_msg, sUrl, description, city, now) # print sMsg conn = httplib.HTTPSConnection('api.weixin.qq.com') url = "/cgi-bin/message/template/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return errcode
def mWxPushMsg_Comment_fw(request,id): year=getToday()[:4] L,toUser =Get_data_Comment(request,id,'fw') sToken = read_access_token() conn = httplib.HTTPSConnection('api.weixin.qq.com') sToken = read_access_token() if sToken == '': url = "/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s"%(AppId,AppSecret) conn.request('GET', '%s'%url) res = conn.getresponse() body = res.read() ddata=json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token(body) file_id=L[0] proj_name = L[2] cusrname = L[1] toUser = L[3] sUrl='%s/complaint/login/default?fid=complainDetail&seq=%s&must_reply=true'%(host_url,file_id) stitle ="""新评论提醒""" description = """【%s】对您提交的关于“%s”情况反映发表了评论,请及时查阅。"""%(cusrname,proj_name) surl = my_urlencode(sUrl) # print toUser stitle=json.dumps(stitle) description = json.dumps(description) url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect"%(AppId,surl) sMsg ="""{ "touser":"******", "template_id":"%s", "url":"%s", "topcolor":"#FF0000", "data":{ "first": { "value":%s, "color":"#173177" } } } """%(toUser,template_id_msg,sUrl,description) # print sMsg conn = httplib.HTTPSConnection('api.weixin.qq.com') url = "/cgi-bin/message/template/send?access_token=%s"%(sToken) #print url conn.request('POST', '%s'%url,sMsg) res = conn.getresponse() body = res.read() conn.close() ddata=json.loads(body) errcode = ddata['errcode'] return HttpResponseCORS(request,errcode)
def saveVerify309(data_list): sn = data_list.get('sn', '') pk = data_list.get('pk', '') m_id = data_list.get('id', '') lists = data_list.get('pay_list', '') n = 1 sql = "select proj_id from _m309_ZJBF where gw_id=%s" % (pk) rows, iN = db.select(sql) proj_id = rows[0][0] or 'NULL' dept_id = 'NULL' global d_value usr_id = d_value[0] usr_name = d_value[1] n = 0 for e in lists: #print e status = e.get('status', '') mx_id = e.get('mx_id', '') pay_date = e.get('pay_date', '') fk_paytype2 = e.get('fk_paytype2', '') fk_fkh2 = e.get('fk_fkh2', '') fk_pz2 = e.get('fk_pz2', '') fk_checkno2 = e.get('fk_checkno2', '') pl_money = e.get('money1', '') pl_memo = e.get('comment1', '') if pay_date == '': pay_date = getToday(7) sql = "select balance from capital_manage where id=%s" % fk_fkh2 rows, iN = db.select(sql) balance = rows[0][0] - float(pl_money) if str(mx_id) != '': sql = """update fund_call_list set pay_date='%s',pay_class=%s,capital_id=%s,check_no='%s',warrant_id='%s',balance=%s where id=%s """ % (pay_date, fk_paytype2, fk_fkh2, fk_checkno2, fk_pz2, balance, mx_id) db.executesql(sql) sql = "update capital_manage set balance = balance - %s where id=%s" % ( pl_money, fk_fkh2) db.executesql(sql) sql = """INSERT INTO capital_flow (pay_date,sn,title,payout,balance,bill_type,check_no,cid,dept_id,proj_id,memo,source,capital_id,menu_id) VALUES (now(),'%s','%s',%s,%s,%s,'%s',%s,%s,%s,'%s','资金预付',%s,309) """ % (sn, '', pl_money, balance, fk_paytype2, fk_checkno2, usr_id, dept_id, proj_id, pl_memo, fk_fkh2) db.executesql(sql) n += 1 return
def mWxPushMsg_NotJoin(request, pk, cont): year = getToday()[:4] sql = """SELECT title FROM complaint_sup_msg_send WHERE id = %s""" % pk rows, iN = db.select(sql) msgTitle = rows[0][0] usr_id_gy = request.session.get('usr_id_gy', '') or testid sql = """select su.id,su.cname from users_gy u left join addr_book ab on u.addr_id = ab.id left join suppliers su on ab.sup_id = su.id where u.usr_id = '%s'""" % (usr_id_gy) rows, iN = db.select(sql) sup_name = rows[0][1] sToken = read_access_token_common('access_token_gy_qy') if sToken == '': conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/gettoken?corpid=%s&corpsecret=%s" % (m_sCorpID, m_sCorpSecret_gy) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body, 'access_token_gy_qy') toUser = getRecvUser() toUser += '|liusq' sUrl = '%s/complaint/login/login_qy?fid=infoDetail&func_id=1000004&seq=%s&must_reply=true' % ( host_url, pk) stitle = """不参与投标报名通知""" surl = my_urlencode(sUrl) description = """标题:%s\r\n供应商:%s\r\n不参与原因:%s\r\n""" % (msgTitle, sup_name, cont) stitle = json.dumps(stitle) description = json.dumps(description) url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect" % ( m_sCorpID, surl) sMsg = """{ "touser": "******", """ % (toUser) sMsg += """ "msgtype": "news", "agentid": "%s", "news": { "articles":[ { "title": %s, "url": "%s", "description":%s } ] } } """ % (m_sAgentId_gy, stitle, url, description) # print sMsg conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/message/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return HttpResponseCORS(request, errcode)
def mWxPushMsg_Progress(id): year=getToday()[:4] L =Get_data_Progress(id) sToken = read_access_token_lw() if sToken == '': conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/gettoken?corpid=%s&corpsecret=%s"%(m_sCorpID,m_sCorpSecret_lw) conn.request('GET', '%s'%url) res = conn.getresponse() body = res.read() ddata=json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_lw(body) cusrname = L[0] proj_name = L[1] cur_progress = L[2] ctime = L[3] toUser = L[4] toUser += '|lishijie' sUrl='%s/complaint/login/login_qy?fid=uploadDetail&path=ProjPay&seq=%s'%(host_url,id) stitle = """进度款上报提醒""" description = """上报人:%s 上报项目:%s 上报进度:%s%% 上报日期:%s 请及时查阅,并协助申请进度款!"""%(cusrname,proj_name,cur_progress,ctime) # print toUser stitle=json.dumps(stitle) description = json.dumps(description) sMsg ="""{ "touser": "******", """%(toUser) sMsg +=""" "msgtype": "news", "agentid": "%s", "news": { "articles":[ { "title": %s, "url": "%s", "description":%s } ] } } """%(m_sAgentId_lw,stitle,sUrl,description) #print sMsg conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/message/send?access_token=%s"%(sToken) #print url conn.request('POST', '%s'%url,sMsg) res = conn.getresponse() body = res.read() conn.close() ddata=json.loads(body) errcode = ddata['errcode'] sql = "update progress_declare set push_time=now(),push_errcode=%s where id=%s"%(errcode,id) db.executesql(sql) errmsg = ddata.get('errmsg','') sql = """insert into progress_push_log (pd_id, recv_users, push_time, errcode, msg, iType) VALUES (%s, '%s', now(), %s, '%s', 0);"""%(id,toUser,errcode,errmsg) db.executesql(sql) return HttpResponseJsonCORS(errcode)
def mWxPushMsg_tracking_fw(pk, prj_name, usr_id_tj, usr_name, status): now = getToday() toUser = get_toUser(usr_id_tj) conn = httplib.HTTPSConnection('api.weixin.qq.com') sToken = read_access_token_common('access_token_tj') if sToken == '': url = "/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s" % ( AppId_tj, AppSecret_tj) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body, 'access_token_tj') file_id = pk sUrl = '%s/complaint/login/default_tj?fid=projDetail&seq=%s&must_reply=true' % ( host_url, file_id) stitle = """新消息""" description = '' if status == 1: description = """尊敬的%s,您在深圳宝鹰建设集团推荐的"%s"需要反馈跟进信息。""" % (usr_name, prj_name) if status == 2: description = """尊敬的%s,您在深圳宝鹰建设集团推荐的"%s"已半年未反馈信息,请及时反馈跟进信息,否则该项目推荐将会立即失效。""" % ( usr_name, prj_name) surl = my_urlencode(sUrl) # print toUser stitle = json.dumps(stitle) description = json.dumps(description) now = json.dumps(now) city = json.dumps("深圳") url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect" % ( AppId_tj, surl) sMsg = """{ "touser":"******", "template_id":"%s", "url":"%s", "topcolor":"#FF0000", "data":{ "first": { "value":%s, "color":"#173177" }, "keyword1": { "value":%s, "color":"#173177" }, "keyword2": { "value":%s, "color":"#173177" } } } """ % (toUser, template_id_msg_tj, sUrl, description, city, now) # print sMsg conn = httplib.HTTPSConnection('api.weixin.qq.com') url = "/cgi-bin/message/template/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return errcode
def mWxPushMsg_audit(request,id,audit_ret): year=getToday()[:4] L =Get_data_audit(request,id) sToken = read_access_token() conn = httplib.HTTPSConnection('api.weixin.qq.com') sToken = read_access_token_common('access_token_gy') if sToken == '': url = "/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s"%(AppId_gy,AppSecret_gy) conn.request('GET', '%s'%url) res = conn.getresponse() body = res.read() ddata=json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body,'access_token_gy') sUrl='%s/complaint/login/default_gy?fid=apply_form_name&path=apply_gy&seq=%s'%(host_url,id) toUser = L[2] ctime = L[3] title = L[1] type = '供应商报名' if str(audit_ret) == '2': ret = u"通过" color = '#173177' reason = '您的报名已通过,请完善其他信息' else: ret = u"未通过" color = '#dd524d' reason = L[4] description = "感谢您的关注。" ret = json.dumps(ret) title = json.dumps(title) type = json.dumps(type) reason = json.dumps(reason) description = json.dumps(description) sMsg ="""{ "touser":"******", "template_id":"%s", "url":"%s", "topcolor":"#FF0000", "data":{ "first": { "value":%s, "color":"#173177" }, "keyword1": { "value":%s, "color":"#173177" }, "keyword2": { "value":%s, "color":"%s" }, "keyword3": { "value":%s, "color":"#173177" }, "remark": { "value":%s, "color":"#173177" } } } """%(toUser,template_id_result_gy,sUrl,title,type,ret,color,reason,description) print ToGBK(sMsg) conn = httplib.HTTPSConnection('api.weixin.qq.com') url = "/cgi-bin/message/template/send?access_token=%s"%(sToken) #print url conn.request('POST', '%s'%url,sMsg) res = conn.getresponse() body = res.read() conn.close() ddata=json.loads(body) errcode = ddata['errcode'] print body return HttpResponseCORS(request,errcode)
def mWxPushMsg_fw_gy(pk, toUser): now = getToday() conn = httplib.HTTPSConnection('api.weixin.qq.com') sToken = read_access_token_common('access_token_gy') if sToken == '': url = "/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s" % ( AppId_gy, AppSecret_gy) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body, 'access_token_gy') sql = "select pjname,sh_yf,gysname from prj_mat_pay1 where uuid='%s'" % ( pk) lT, iN = local.select(sql) if iN == 0: return -1 sUrl = 'http://lw.szby.cn/lwerp/lw/src/html/receiptList.html?seq=%s' % (pk) description = """感谢您的查看。""" stitle = """亲爱的合作伙伴,您现在收到的是本项目需开票的相关信息,请确认。""" # print toUser stitle = json.dumps(stitle) description = json.dumps(description) pjname = json.dumps("%s %s" % (lT[0][0], u' 项目部')) sh_yf = json.dumps(lT[0][1]) gysname = json.dumps(lT[0][2]) sMsg = """{ "touser":"******", "template_id":"%s", "url":"%s", "topcolor":"#FF0000", "data":{ "first": { "value":%s, "color":"#173177" }, "keyword1": { "value":%s, "color":"#173177" }, "keyword2": { "value":%s, "color":"#173177" }, "keyword3": { "value":%s, "color":"#173177" }, "remark": { "value":%s, "color":"#173177" } } } """ % (toUser, template_id, sUrl, stitle, pjname, sh_yf, gysname, description) print sMsg conn = httplib.HTTPSConnection('api.weixin.qq.com') url = "/cgi-bin/message/template/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return errcode
def mWxPushMsg_Result(request, pk): year = getToday()[:4] L, toUser = Get_data_Result(request, pk) sToken = read_access_token_common('access_token_gy_qy') if sToken == '': conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/gettoken?corpid=%s&corpsecret=%s" % (m_sCorpID, m_sCorpSecret_gy) conn.request('GET', '%s' % url) res = conn.getresponse() body = res.read() ddata = json.loads(body) sToken = ddata['access_token'] conn.close() write_access_token_common(body, 'access_token_gy_qy') file_id = L[0] # title = ToUnicode(L[1]) cusrname = L[1] #投诉人 complaintObject = L[2] #投诉对象 proj_name = L[3] sUrl = '%s/complaint/login/login_qy?fid=complainDetail&func_id=1000004&seq=%s&must_reply=true' % ( host_url, file_id) stitle = """新反映结案提醒""" surl = my_urlencode(sUrl) description = """针对“%s”关于“%s”的供应商反映已结案。""" % (complaintObject, proj_name) # print toUser stitle = json.dumps(stitle) description = json.dumps(description) sUrl = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=wx#wechat_redirect" % ( m_sCorpID, surl) sMsg = """{ "touser": "******", """ % (toUser) sMsg += """ "msgtype": "news", "agentid": "%s", "news": { "articles":[ { "title": %s, "url": "%s", "description":%s } ] } } """ % (m_sAgentId_gy, stitle, sUrl, description) # print sMsg conn = httplib.HTTPSConnection('qyapi.weixin.qq.com') url = "/cgi-bin/message/send?access_token=%s" % (sToken) #print url conn.request('POST', '%s' % url, sMsg) res = conn.getresponse() body = res.read() conn.close() ddata = json.loads(body) errcode = ddata['errcode'] return HttpResponseCORS(request, errcode)