|
@@ -1,60 +1,62 @@
|
|
|
# from . import DataHandler #此时是导入文件
|
|
|
-from . DataStream import DataWriteStream,MchPosmap,day_stamp
|
|
|
+from .DataStream import DataWriteStream, MchPosmap, day_stamp
|
|
|
import numpy as np
|
|
|
|
|
|
__all__ = ['MerchantWriter']
|
|
|
|
|
|
+
|
|
|
class MerchantWriter(DataWriteStream, MchPosmap):
|
|
|
- def write(self,method,params):
|
|
|
+ def write(self, method, params):
|
|
|
if method == 'refill_submit':
|
|
|
self._onSubmit(params)
|
|
|
elif method == 'refill_succ':
|
|
|
self._onSucc(params)
|
|
|
- else:
|
|
|
+ elif method == 'refill_fail':
|
|
|
self._onFail(params)
|
|
|
- pass
|
|
|
+ else:
|
|
|
+ pass
|
|
|
|
|
|
- def _onSubmit(self,params):
|
|
|
+ def _onSubmit(self, params):
|
|
|
def parse(input):
|
|
|
- return params['mchid'],params['time'],params['spec'],params['card_type'],params['mch_amount']
|
|
|
+ return params['mchid'], params['time'], params['spec'], params['card_type'], params['mch_amount']
|
|
|
|
|
|
- mchid,time,spec,card_type,mch_amount = parse(params)
|
|
|
- path,pos = self.path_pos(mchid,time,spec,card_type)
|
|
|
+ mchid, time, spec, card_type, mch_amount = parse(params)
|
|
|
+ path, pos = self.path_pos(mchid, time, spec, card_type)
|
|
|
|
|
|
- self.file[path][self.pos_map['submit_count'],pos] += 1
|
|
|
- self.file[path][self.pos_map['submit_amounts'],pos] += mch_amount
|
|
|
+ self.file[path][self._pos_map['submit_count'], pos] += 1
|
|
|
+ self.file[path][self._pos_map['submit_amounts'], pos] += mch_amount
|
|
|
pass
|
|
|
|
|
|
- def _onSucc(self,params):
|
|
|
+ def _onSucc(self, params):
|
|
|
def parse(input):
|
|
|
- return params['mchid'],params['time'],params['spec'],params['card_type'],params['mch_amount'],params['channel_amount']
|
|
|
+ return params['mchid'], params['time'], params['spec'], params['card_type'], params['mch_amount'], params['channel_amount']
|
|
|
|
|
|
- mchid,time,spec,card_type,mch_amount,channel_amount = parse(params)
|
|
|
- path,pos = self.path_pos(mchid,time,spec,card_type)
|
|
|
+ mchid, time, spec, card_type, mch_amount, channel_amount = parse(params)
|
|
|
+ path, pos = self.path_pos(mchid, time, spec, card_type)
|
|
|
|
|
|
- self.file[path][self.pos_map['succ_count'],pos] += 1
|
|
|
- self.file[path][self.pos_map['succ_mch_amounts'],pos] += mch_amount
|
|
|
- self.file[path][self.pos_map['succ_ch_amounts'],pos] += channel_amount
|
|
|
+ self.file[path][self._pos_map['succ_count'], pos] += 1
|
|
|
+ self.file[path][self._pos_map['succ_mch_amounts'], pos] += mch_amount
|
|
|
+ self.file[path][self._pos_map['succ_ch_amounts'], pos] += channel_amount
|
|
|
pass
|
|
|
|
|
|
- def _onFail(self,params):
|
|
|
+ def _onFail(self, params):
|
|
|
def parse(input):
|
|
|
- return params['mchid'],params['time'],params['spec'],params['card_type'],params['mch_amount']
|
|
|
+ return params['mchid'], params['time'], params['spec'], params['card_type'], params['mch_amount']
|
|
|
|
|
|
- mchid,time,spec,card_type,mch_amount = parse(params)
|
|
|
- path,pos = self.path_pos(mchid,time,spec,card_type)
|
|
|
+ mchid, time, spec, card_type, mch_amount = parse(params)
|
|
|
+ path, pos = self.path_pos(mchid, time, spec, card_type)
|
|
|
|
|
|
- self.file[path][self.pos_map['fail_count'],pos] += 1
|
|
|
- self.file[path][self.pos_map['fail_mch_amounts'],pos] += mch_amount
|
|
|
+ self.file[path][self._pos_map['fail_count'], pos] += 1
|
|
|
+ self.file[path][self._pos_map['fail_mch_amounts'], pos] += mch_amount
|
|
|
pass
|
|
|
|
|
|
- def path_pos(self,mchid,time,spec,card_type):
|
|
|
+ def path_pos(self, mchid, time, spec, card_type):
|
|
|
today = day_stamp(time)
|
|
|
- path = f'/{today}/{mchid}/{card_type}/{spec}'
|
|
|
+ path = f'/{self._version}/{today}/{mchid}/{card_type}/{spec}'
|
|
|
|
|
|
hfive = self.file
|
|
|
if path not in hfive:
|
|
|
- dim = len(self.pos_map)
|
|
|
+ dim = len(self._pos_map)
|
|
|
hfive[path] = np.zeros((dim, 86400))
|
|
|
|
|
|
- return path, time - today
|
|
|
+ return path, time - today
|