Skip to content

Instantly share code, notes, and snippets.

@mimosz
mimosz / gist:4052906
Created November 10, 2012 23:12
用户购买宝贝列表
user = User.all[1]
date = '2012-11-11'.to_date
range = date.beginning_of_day..date.end_of_day
trades = user.trades.where(created: range, status: 'WAIT_SELLER_SEND_GOODS')
buyers = {}
trades.each do |trade|
buyers[trade.buyer_nick] = {} unless buyers.has_key?(trade.buyer_nick)
buyer = buyers[trade.buyer_nick]
trade.orders.each do |order|
buyer[order.num_iid] = {} unless buyer.has_key?(order.num_iid)
@mimosz
mimosz / gist:4052924
Created November 10, 2012 23:16
催付
user = User.all[1]
date = '2012-11-11'.to_date
range = date.beginning_of_day..date.end_of_day
trades = user.trades.where(created: range, status: 'WAIT_BUYER_PAY')
CSV.open("#{date.to_s}-trades.csv", "wb:GB18030", col_sep: ',') do |csv|
trades.each do |trade|
row = [
trade.tid,
trade.payment,
trade.buyer_nick,
@mimosz
mimosz / gist:4053835
Created November 11, 2012 05:32
买家购买金额
user = User.all[1]
date = '2012-11-11'.to_date
range = date.beginning_of_day..Time.parse('2012-11-11 11:00') # date.end_of_day
buyers = {}
user.trades.where(created: range, :pay_time.ne => nil).each do |trade|
buyers[trade.buyer_nick] = { city: trade.receiver_city, payment: 0, items: [] } unless buyers.has_key?(trade.buyer_nick)
buyer = buyers[trade.buyer_nick]
trade.orders.each do |order|
buyer[:payment] += order.payment
buyer[:items] << order.num_iid
@mimosz
mimosz / gist:4058187
Created November 12, 2012 08:39
销售统计
user = User.all[1]
date = '2012-11-11'.to_date
range = date.beginning_of_day..date.end_of_day
trades = user.trades.where(created: range).sales.sold.norefund
trades = trades.only(:payment, :num)
payment = 0
num = 0
nulls = []
trades.each do |trade|
if trade.payment && trade.num
@mimosz
mimosz / gist:4070722
Created November 14, 2012 06:54
超买计算
user = User.all[1]
date = '2012-11-11'.to_date
user.trades_sync(date)
user.orders_sync
skus_data = CSV.read('all_items.csv', 'rb:GB18030:UTF-8', headers: true, col_sep: ',')
items = {}
skus_data.each do |sku|
items[sku['SKU']] = 0 unless items.has_key?(sku['SKU'])
items[sku['SKU']] += sku['库存'].to_i
@mimosz
mimosz / 1111.rb
Created November 14, 2012 19:29
超卖补货,部分依旧缺货。
user = User.last
# 订单列表
trades = CSV.read('trades.csv', 'rb:GB18030:UTF-8', headers: true, col_sep: ';')
trade_ids = []
@items = {}
trades.each do |trade|
trade_ids << trade['TID']
@items[trade['SKU']] = 0 unless @items.has_key?(trade['SKU'])
end
trade_ids.uniq!
@mimosz
mimosz / gist:4193799
Last active October 13, 2015 12:08
Sidekiq相关
uri = [
# 运动
"http://arcteryxjrh.tmall.com",
"http://sanfo.tmall.com",
"http://skomart.tmall.com",
"http://newbalance.tmall.com",
"http://thenorthface.tmall.com",
"http://asics.tmall.com",
"http://adidas.tmall.com",
"http://salomon.tmall.com",
@mimosz
mimosz / gist:4303448
Created December 16, 2012 04:58
粗放的监测代理是否有效~~
# 未知的
unkown_list = [
"219.130.39.9:3128",
"122.225.22.22:8080",
"202.103.215.199:80",
"59.46.173.75:80",
"218.23.49.155:80",
"218.76.157.98:8001",
"218.84.126.82:3128"
]
@mimosz
mimosz / gist:4372383
Created December 25, 2012 09:00
Ubuntu 下配置文件。
#! /bin/sh
### BEGIN INIT INFO
# Provides: nginx
# Required-Start: $syslog $remote_fs
# Required-Stop: $syslog $remote_fs
# Should-Start: $local_fs
# Should-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: nginx - Persistent key-value db
# 获取购买记录
def get_trades(crawler, item_id, seller_id, item_sbn, page=1)
start_at = Date.yesterday.beginning_of_day.to_i * 1000
end_at = Date.yesterday.end_of_day.to_i * 1000
# 购买列表