def post(self, request): username = request.POST.get('username') feed_id = request.POST.get('feed_id') title = request.POST.get('title') reco_num = int(request.POST.get('reco_num')) # calc_num = request.POST.get('calc_num') display_time = request.POST.get('display_time') user = get_object_or_none(User, email=username) weixin_user = WeixinService.get_weixin_user_by_uid(user=user) if not weixin_user: return JsonResponse( { 'msg': 'not found weixin user', 'status': 'error' } ) openid = weixin_user.openid send_data = WeixinService.get_feed_notify_msg_tpl() url = '{0}{1}/'.format( WeixinService.get_recommand_url(), feed_id ) send_data['first']['value'] = "聘宝刚刚为您推荐了{0}封简历,优质候选人不能等,请尽快查阅简历".format(reco_num), send_data['remark']['value'] = "小宝提示:手机上每个职位定制只能浏览最多5封简历哦,请返回PC上查看全部的简历推荐." if reco_num == 0: send_data['first']['value'] = "小宝遗憾的通知您,以下职位暂时没有合适的人才匹配:", send_data['remark']['value'] = "不要气馁!小宝秘籍在此:你可以尝试修改定制内容,可能会有惊喜哦!" url = WeixinService.get_customize_url() send_data['keyword1']['value'] = title send_data['keyword2']['value'] = reco_num send_data['keyword3']['value'] = display_time ret = WxUtils.send_tpl_msg( openid=openid, tpl_id=WeixinService.get_template_msg_id(), data=send_data, url=url, ) if ret.get('errcode') != 0: return JsonResponse( { 'status': 'error', 'msg': ret.get('errmsg') } ) return JsonResponse( { 'status': 'ok', 'msg': 'success' } )
def send_feed_msg(): need_send_email = EmailFeedData.objects( is_send=False, ).distinct('email') weixin_users = WeixinUser.objects.filter( user__username__in=need_send_email ) for send_user in weixin_users: feed_data = get_feed_data(send_user) feed_id = feed_data.get('feed_id') title = feed_data['title'] reco_num = feed_data['reco_num'] display_time = feed_data['display_time'] send_data = WeixinService.get_feed_notify_msg_tpl() send_data['first']['value'] = "聘宝刚刚为您推荐了{0}封简历,优质候选人不能等,请尽快查阅简历".format(feed_data['reco_num']) send_data['keyword1']['value'] = title send_data['keyword2']['value'] = reco_num send_data['keyword3']['value'] = display_time send_data['remark']['value'] = "小宝提示:手机上每个职位定制只能浏览最多5封简历哦,请返回PC上查看全部的简历推荐." urls = WeixinService.get_recommand_url().split('?from=') url = '{0}{1}/?from={2}'.format(urls[0], feed_id, urls[1]) if reco_num == 0: send_data['first']['value'] = "小宝遗憾的通知您,以下职位暂时没有合适的人才匹配:", send_data['remark']['value'] = "不要气馁!小宝秘籍在此:你可以尝试修改定制内容,可能会有惊喜哦!" url = WeixinService.get_customize_url() ret = WxUtils.send_tpl_msg( openid=feed_data.get('openid'), tpl_id=WeixinService.get_template_msg_id(), data=send_data, url=url ) if ret.get('errcode') == 0: print '%s,(openid:%s) send weixin msg success' % (send_user.user.username, feed_data.get('openid')) else: print '%s,(openid:%s) send weixin msg error' % (send_user.user.username, feed_data.get('openid'))