def del_admin(): getid = int(request.args.get('id')) delg = db_session.query(Manage).filter(Manage.id == getid).first(); db_session.delete(delg) db_session.commit() db_session.close() return jsonify({"state":"ok"})
def update_feed(feedid, rset, itemlist: list): # cleanup list of new feeds _itemlist = itemlist.copy() # list of new item's links olditems = Item.query.filter( Item.feedid == feedid).all() # list of old items in feed for iter in olditems: if str(iter.link) in _itemlist: _itemlist.remove(iter.link) # 새 feed가 없고, 이전에도 feed가 없었던 경우 if (len(_itemlist) == 0) and (len(itemlist) == len(olditems)): return False # delete all old feed items # todo: feed별 삭제여부를 지정할 수 있도록 할 것 logger.debug("remove all old items in feed: {}".format(feedid)) for olditem in olditems: db_session.delete(olditem) count = 1 for iter in itemlist: logger.info("processing...: {count} / {length}".format_map({ 'count': count, 'length': len(itemlist) })) count = count + 1 feeditem = update_feeditem(feedid, iter, rset) if feeditem: db_session.add(feeditem) db_session.commit() return True
def del_group(): getid = int(request.args.get('group_id')) delg = db_session.query(Group).filter(Group.group_id == getid).first() db_session.delete(delg) db_session.commit() db_session.close() return jsonify({"state": "ok"})
def del_colors(): getid = request.args.get('id') delcolors = db_session.query(ProColor).filter(ProColor.id == getid).first() colorpics = delcolors.colorpic.all() for picurl in colorpics: imgurl = picurl.picurl #获得图片物理地址 imgurl = actros_split(imgurl) delImage(imgurl) #删除物理图片 try: [db_session.delete(n) for n in colorpics] db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) try: db_session.delete(delcolors) db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) db_session.close() return jsonify({"state":'ok'})
def del_contact(): getid = int(request.args.get('id')) delg = db_session.query(ContactUs).filter(ContactUs.id == getid).first() db_session.delete(delg) db_session.commit() db_session.close() return jsonify({"state": "ok"})
def del_news(): if request.method == "POST": getid = request.form.getlist('id') if len(getid) == 1: getid = request.form.get('id') delg = db_session.query(News).filter(News.id == getid).first() try: db_session.delete(delg) db_session.commit() db_session.close() except: return jsonify({"state": "数据库错误"}) else: delg = db_session.query(News).filter(News.id.in_((getid))).all() try: [db_session.delete(n) for n in delg] db_session.commit() db_session.close() except: return jsonify({"state": "数据库错误"}) else: getid = request.args.get('id') delg = db_session.query(News).filter(News.id == getid).first() try: db_session.delete(delg) db_session.commit() db_session.close() except: return jsonify({"state": "数据库错误"}) return jsonify({"state": 'ok'})
def del_team(): getid = int(request.args.get('id')) delg = db_session.query(Team).filter(Team.id == getid).first() db_session.delete(delg) db_session.commit() # 记录日志 actions = ('%s%s%s' % ('删除产品组', ':', getid)) savelog(actions) db_session.close() return jsonify({"state": "ok"})
def ajax_special_delete(): data = request.args.get('data') q = AuthManager.query.filter(AuthManager.route_name == data).first() if q: db1.delete(q) db1.commit() return jsonify({"info": f'delete {data}'}) else: return jsonify({"info": 'nothing'})
def del_cart(): getid = request.get_json().get('cartid') thiscart = UserCart.query.filter_by(id=getid).first() db_session.delete(thiscart) try: db_session.commit() except Exception as e: print(e) db_session.rollback() return jsonify({'code': 3, 'message': '删除失败'}) return jsonify({'code': 1, 'message': '删除成功'})
def del_address(): id = request.get_json().get('id') delad = Address.query.filter_by(id=id).first() db_session.delete(delad) try: db_session.commit() except Exception as e: print(e) db_session.rollback() return jsonify({'code': 0, 'message': '数据库错误'}) db_session.close() return jsonify({'code': 1, 'message': '删除成功'})
def del_silder(): getid = int(request.args.get('id')) picid = int(request.args.get('picid')) # print getid,picid delg = db_session.query(Silder).filter(Silder.id == getid).first() db_session.delete(delg) deli = db_session.query(Images).filter(Images.id == picid).first() imgurl = deli.picurl imgurl = actros_split(imgurl) delImage(imgurl) db_session.delete(deli) db_session.commit() db_session.close() return jsonify({"state": "ok"})
def dellike(): userid = g.current_user.id proid = request.get_json().get('proid') thislike = UserLike.query.filter_by(like_porid=proid, user_id=userid).first() if thislike: db_session.delete(thislike) try: db_session.commit() except Exception as e: print(e) db_session.rollback() return jsonify({'code': 3, 'message': '取消收藏失败'}) return jsonify({'code': 1, 'message': '取消收藏成功'}) return jsonify({'code': 3, 'message': '没有该产品'})
def del_recommend(): getid = int(request.args.get('id')) topid = int(request.args.get('topid')) product = db_session.query(Product).filter(Product.pid == getid).first() if product: return jsonify({'state': 'havedate'}) else: delclass = db_session.query(Recommend).filter( Recommend.id == getid).first() try: db_session.delete(delclass) db_session.commit() # 记录日志 actions = ('%s%s' % ('删除推荐类型id:', getid)) savelog(actions) db_session.close() except: return jsonify({"state": "数据库错误"}) return jsonify({"state": "ok"})
def del_onlypro_pic (thpro,thisdata): for pic in thisdata: colorpics = pic.colorpic.all() for picurl in colorpics: imgurl = picurl.picurl #获得图片物理地址 imgurl = actros_split(imgurl) delImage(imgurl) #删除物理图片 try: [db_session.delete(n) for n in colorpics] db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) try: db_session.delete(thpro) [db_session.delete(n) for n in thisdata] db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"})
def del_many_cart(): getid = request.get_json().get('cartid') delg = db_session.query(UserCart).filter(UserCart.id.in_((getid))).all() if delg: order_type = delg[0].order_type try: [db_session.delete(n) for n in delg] db_session.commit() db_session.close() except Exception as e: print(e) db_session.rollback() return jsonify({ 'code': 3, 'message': '删除失败', 'order_type': order_type }) return jsonify({ 'code': 1, 'message': '删除成功', 'order_type': order_type })
def remove_by_id(cls, t_id): room = db_session.query(Room).filter(Room.id == t_id).first() db_session.delete(room) db_session.commit() return room
def remove_by_id(cls, t_id): message = db_session.query(Message).filter(Message.id == t_id).first() db_session.delete(message) db_session.commit() return message
def edit_silder(): this = 'edit' getid = request.args.get('id') picurl = request.args.get('picurl') silderData = db_session.query(Silder).filter(Silder.id == getid).\ with_entities(Silder.id, Silder.title, Silder.url, Silder.picid, Silder.sort, Silder.img_url).first() form = EditsilderForm() if silderData: form.id.data = silderData.id form.title.data = silderData.title form.url.data = silderData.url form.oldpicid.data = silderData.picid form.sort.data = silderData.sort db_session.close() if form.validate_on_submit(): id = int(request.form.get('id')) title = request.form.get('title') url = request.form.get('url') oldpicid = int(request.form.get('oldpicid')) picid = request.form.get('picid') sort = int(request.form.get('sort')) print(picid) print(oldpicid) # 增加一个旧图片id 再增加一个新图片id 如果两个id相同则不修改。如果不一样则删除旧id的图片和库 if picid == '': uppicid = oldpicid db_session.query(Silder).filter(Silder.id == id).update({ Silder.title: title, Silder.url: url, Silder.picid: uppicid, Silder.sort: sort, }) elif picid != oldpicid and picid != '': uppicid = picid db_session.query(Silder).filter(Silder.id == id).update({ Silder.title: title, Silder.url: url, Silder.picid: uppicid, Silder.sort: sort, }) deli = db_session.query(Images).filter( Images.id == oldpicid).first() imgurl = deli.picurl imgurl = actros_split(imgurl) delImage(imgurl) db_session.delete(deli) db_session.commit() db_session.close() flash("修改成功,<span id='time'>3</span>秒后自动跳转管理页。") return redirect('/manage/edit_silder') return render_template("edit_silder.html", pagename='silder', this=this, picurl=picurl, form=form)
def remove_by_id(cls, t_id): user = db_session.query(User).filter(User.id == t_id).first() db_session.delete(user) db_session.commit() return user
def edit_recommend(): this = 'edit' getid = request.args.get('id') recommendData = db_session.query(Recommend).filter(Recommend.id == getid).\ with_entities(Recommend.titles, Recommend.icon, Recommend.sort, Recommend.id).first() form = EditrecommendForm() if recommendData: form.id.data = recommendData.id form.titles.data = recommendData.titles form.oldicon.data = recommendData.icon form.sort.data = recommendData.sort db_session.close() if form.validate_on_submit(): id = request.form.get('id') titles = request.form.get('titles') icon = request.form.get('icon') oldpicid = request.form.get('oldicon') sort = request.form.get('sort') # 增加一个旧图片id 再增加一个新图片id 如果两个id相同则不修改。如果不一样则删除旧id的图片和库 if icon == '': uppicid = oldpicid db_session.query(Recommend).filter(Recommend.id == id).update({ Recommend.titles: titles, Recommend.icon: uppicid, Recommend.sort: sort }) elif icon != oldpicid and icon != '': uppicid = icon db_session.query(Recommend).filter(Recommend.id == id).update({ Recommend.titles: titles, Recommend.icon: uppicid, Recommend.sort: sort }) if oldpicid != '' and oldpicid != None and oldpicid != '0': deli = db_session.query(Images).filter( Images.id == oldpicid).first() imgurl = deli.picurl imgurl = actros_split(imgurl) delImage(imgurl) db_session.delete(deli) try: db_session.commit() # 记录日志 actions = ('%s%s%s' % ('修改推荐类型', ':', titles)) savelog(actions) db_session.close() except: flash("数据库错误!") return redirect('/manage/edit_recommend') flash("修改成功,<span id='time'>3</span>秒后自动跳转管理页。") return redirect('/manage/edit_recommend') iconurl = db_session.query(Recommend).\ filter(Recommend.id == getid).first() return render_template("edit_recommend.html", pagename='manage_recommend', this=this, iconurl=iconurl, form=form)
def del_product(): if request.method == "POST": getid = request.form.getlist('id') if len(getid) == 1: # 如果只选择了一项 getid = request.form.get('id') delproduct = Product.query.filter(Product.proid == getid).first() delproduct.display = 3 try: db_session.add(delproduct) db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) likes = UserLike.query.filter_by(like_porid = getid).all() if likes: try: db_session.delete(likes) db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) usercart = UserCart.query.filter_by(proid = getid).all() if usercart: try: db_session.delete(usercart) db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) ''' 颜色保留 delcolor = delproduct.colors.all() 这里改成更新产品状态是消失,并删除用户购物车和喜欢的产品列表 调用单独删除产品图片函数 del_onlypro_pic(delproduct,delcolor) ''' else: # 如果选择了多项 # delproduct = db_session.query(Product).filter(Product.proid.in_((getid))).all() ''' 删除产品时删除颜色及图片的代码。用不到了 for color in delproduct: colors = color.colors.all() for pic in colors: colorpics = pic.colorpic.all() for picurl in colorpics: imgurl = picurl.picurl #获得图片物理地址 imgurl = actros_split(imgurl) delImage(imgurl) #删除物理图片 try: [db_session.delete(n) for n in colorpics] db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) try: [db_session.delete(n) for n in colors] db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) ''' for i in range(len(getid)): try: disproduct = db_session.query(Product).\ filter(Product.proid == getid[i]).\ update({Product.display : 3}) db_session.commit() except: return jsonify({"state":"数据库错误"}) else: # 直接提交 getid = request.args.get('id') delproduct = db_session.query(Product).filter(Product.proid == getid).first() delproduct.display = 3 try: db_session.add(delproduct) db_session.commit() except Exception as e: print (e) db_session.rollback() return jsonify({"state":"数据库错误"}) ''' 删除产品时删除颜色及图片的代码。用不到了 delcolor = delproduct.colors.all() # 调用单独删除产品图片函数 del_onlypro_pic(delproduct,delcolor) ''' return jsonify({"state":'ok'})
def edit_product(): this = 'edit' getid = request.args.get('id') washlist = Wash.wash_check().all() sizelist = Size.size_check().all() recommend = Recommend.recommend_check().all() towclass = [] for cls in recommend: towclass.append({'id':cls.id, 'topid':cls.topid, 'titles':cls.titles}) recommend = json.dumps(get_Children(0,towclass)) classify = Classify.classify_check().all() towclass = [] for cls in classify: towclass.append({'id':cls.classid, 'text':cls.classname, 'topid':cls.topid}) classifylist = json.dumps(getaChildren(0,towclass)) form = EditProductForm() productData = Product.query.filter_by(proid = getid).first() pid = productData.pid if productData: form.proid.data = productData.proid form.pid.data = productData.pid form.new_p.data = productData.new_p form.covers.data = productData.covers form.oldcovers.data = productData.covers form.oldpid.data = productData.oldpid form.creatorid.data = productData.creatorid form.teamid.data = productData.teamid form.proname.data = productData.proname form.price.data = productData.price form.model_height.data = productData.model_height form.fabric.data = productData.fabric form.lining.data = productData.lining form.size_table.data = productData.size_table form.weights.data = productData.weights form.the_net.data = productData.the_net form.first_order.data = productData.first_order form.again_order.data = productData.again_order form.shipping.data = productData.shipping form.flying.data = productData.flying form.place.data = productData.place form.size.data = productData.size form.colorid.data = productData.colorid form.display.data = productData.display form.text_centont.data = productData.text_centont if form.validate_on_submit(): productData.proid = int(request.form.get('proid')) productData.pid = int(request.form.get('pid')) productData.oldpid = int(request.form.get('oldpid')) productData.new_p = int(request.form.get('new_p')) productData.creatorid = int(request.form.get('creatorid')) productData.teamid = int(request.form.get('teamid')) productData.proname = request.form.get('proname') productData.price = request.form.get('price') productData.model_height = request.form.get('model_height') productData.fabric = request.form.get('fabric') productData.lining = request.form.get('lining') productData.wash = request.form.get('wash') productData.size_table = request.form.get('size_table') productData.weights = request.form.get('weights') productData.the_net = request.form.get('the_net') productData.first_order = request.form.get('first_order') productData.again_order = request.form.get('again_order') productData.shipping = request.form.get('shipping') productData.flying = request.form.get('flying') productData.place = request.form.get('place') productData.size = request.form.get('size') productData.colorid = request.form.get('colorid') productData.display = request.form.get('display') html_parser = HTMLParser.HTMLParser() html_con = request.form.get('text_centont') productData.text_centont = html_parser.unescape(html_con) # 处理封面图片 getcovers = request.form.get('covers') oldcovers = request.form.get('oldcovers') print (getcovers,oldcovers) if getcovers == '': productData.covers = oldcovers try: db_session.add(productData) db_session.commit() except: flash("数据库错误!") return redirect('%s%s' %('/manage/add_product?pid=',pid)) if getcovers != oldcovers and getcovers != '': productData.covers = getcovers try: db_session.add(productData) db_session.commit() except: flash("数据库错误!") return redirect('%s%s' %('/manage/add_product?pid=',pid)) if oldcovers != '' and oldcovers != None and oldcovers != '0': deli = db_session.query(Images).filter(Images.id == oldcovers).first(); imgurl = deli.picurl imgurl = actros_split(imgurl) delImage(imgurl) db_session.delete(deli) db_session.commit() proid = int(request.form.get('proid')) color_check = productData.colors.all() # 颜色部分 colortitle = request.form.getlist('colortitle') color = request.form.getlist('color') number = request.form.getlist('number') picurl = request.form.getlist('picid') cover = request.form.getlist('cover') if len(color_check) == len(color) : for i in range(len(color_check)): color_check[i].colortitle = colortitle[i] color_check[i].color = color[i] color_check[i].number = number[i] color_check[i].picurl = picurl[i] color_check[i].cover = cover[i] elif len(color_check) < len(color) : for i in range(len(color_check)): color_check[i].colortitle = colortitle[i] color_check[i].color = color[i] color_check[i].number = number[i] color_check[i].picurl = picurl[i] color_check[i].cover = cover[i] color_list = [ProColor( colortitle = str(colortitle[i]), color = str(color[i]), number = str(number[i]), cover = cover[i], proid = proid ) for i in range(len(color_check),len(color))] db_session.add_all(color_list) db_session.commit() db_session.flush() ''' 调用图片排序添加proid函数 因为是增加了新的颜色组,所以第一个参数使用 update 最后一个参数加入新添加的数据 color_list ''' give_picid('update',picurl,color_check,color_list) #调用图片排序添加proid函数 db_session.commit() db_session.flush() give_picid('up',picurl,color_check,None) #调用图片排序添加proid函数 db_session.commit() db_session.close() flash("添加成功,<span id='time'>3</span>秒后自动跳转管理页。") return redirect('%s%s' %('/manage/add_product?pid=',pid)) return render_template( "edit_product.html", this = this, pid = pid, thdata = productData, washlist = washlist, sizelist = sizelist, recommend= recommend, classifylist=classifylist, pagename='product', form=form)
def post_order(): userid = g.current_user.id userphone = g.current_user.phone orderitems = request.get_json().get('orderitems') addressid = request.get_json().get('addressid') teamid = g.current_user.teamid # 设计订单编号 nowTime = datetime.datetime.now().strftime("%Y%m%d%H%M") #生成当前时间 randomNum = random.randint(10000, 100000) #生成的随机5位整数n,其中1000<=n<=10000 phnumber = str(userphone)[-4:] ordernumber = '%s%s%s%s' % (int(nowTime), int(phnumber), int(teamid), int(randomNum)) # 订单类型 order_type = orderitems[0]['order_type'] # 计算订单总金额 和 图片真实地址 和 购物车id cartid = [] all_total = 0 if 'cartid' not in orderitems[0]: all_total = orderitems[0]['color_total'] else: for i in range(len(orderitems)): # 计算订单总金额 all_total += orderitems[i]['color_total'] # 得到购物车id cartid.append(orderitems[i]['cartid']) if len(orderitems) > 0: addorder = Order(number=ordernumber, userid=userid, teamid=teamid, addressid=addressid, state=0, order_total=all_total, order_type=order_type, addtime=datetime.datetime.now()) try: db_session.add(addorder) db_session.commit() # 获取刚加添加的id db_session.flush() order_id = addorder.id order_item = [ OrderDetailed(proid=int(orderitems[i]['proid']), pronumber=orderitems[i]['pronumber'], size=orderitems[i]['size'], color=orderitems[i]['color'], unit=int(orderitems[i]['unit']), price=int(float(orderitems[i]['price'])), color_total=int(orderitems[i]['color_total']), order_id=int(order_id)) for i in range(len(orderitems)) ] try: db_session.add_all(order_item) db_session.commit() except Exception as e: print(e) db_session.rollback() return jsonify({'code': 3, 'message': '数据库错误'}) except Exception as e: print(e) db_session.rollback() return jsonify({'code': 3, 'message': '数据库错误'}) # 删除购物车 delcart = db_session.query(UserCart).filter(UserCart.id.in_( (cartid))).all() try: [db_session.delete(n) for n in delcart] db_session.commit() db_session.close() except Exception as e: print(e) db_session.rollback() return jsonify({'code': 3, 'message': '数据库错误'}) return jsonify({'code': 1, 'message': '下单成功'})
def edit_classify(): this = 'edit' getid = request.args.get('classid') classifyData = db_session.query(Classify).filter(Classify.classid == getid).\ with_entities(Classify.classname, Classify.icon, Classify.sort, Classify.classid, Classify.display).first() form = EditclassifyForm() if classifyData: form.classid.data = classifyData.classid form.classname.data = classifyData.classname form.oldicon.data = classifyData.icon form.sort.data = classifyData.sort form.display.data = classifyData.display db_session.close() if form.validate_on_submit(): classid = request.form.get('classid') classname = request.form.get('classname') icon = request.form.get('icon') oldpicid = request.form.get('oldicon') sort = request.form.get('sort') display = request.form.get('display') # 增加一个旧图片id 再增加一个新图片id 如果两个id相同则不修改。如果不一样则删除旧id的图片和库 if icon == '': uppicid = oldpicid db_session.query(Classify).filter( Classify.classid == classid).update({ Classify.classname: classname, Classify.icon: uppicid, Classify.sort: sort, Classify.display: display }) elif icon != oldpicid and icon != '': uppicid = icon db_session.query(Classify).filter( Classify.classid == classid).update({ Classify.classname: classname, Classify.icon: uppicid, Classify.sort: sort, Classify.display: display }) if oldpicid != '' and oldpicid != None and oldpicid != '0': deli = db_session.query(Images).filter( Images.id == oldpicid).first() imgurl = deli.picurl imgurl = actros_split(imgurl) delImage(imgurl) db_session.delete(deli) try: db_session.commit() # 记录日志 actions = ('%s%s%s' % ('修改分类', ':', classname)) savelog(actions) db_session.close() except: flash("数据库错误!") return redirect('/manage/edit_classify') flash("修改成功,<span id='time'>3</span>秒后自动跳转管理页。") return redirect('/manage/edit_classify') iconurl = db_session.query(Classify).\ filter(Classify.classid == getid).first() return render_template("edit_classify.html", pagename='manage_classify', this=this, iconurl=iconurl, form=form)
def remove_by_user_id(cls, user_id): participant = db_session.query(Participant).filter( Participant.user_id == user_id).first() db_session.delete(participant) db_session.commit() return participant