def clock_emps_get_all(self, cr, uid, clock_id, ret_dict=False, pwd=False, finger_print=False, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get('hr.clock').read(cr, uid, clock_id, ['ip', 'port'], context=context) clock_util.clock_connect(clock, clock_data['ip'], clock_data['port']) #get all employees on clock clock_emps = clock_util.clock_user_get_all(clock, ret_dict=ret_dict, pwd=pwd, finger_print=finger_print) clock_util.clock_disconnect(clock) return clock_emps
def clock_emps_delete_exec(self, cr, uid, clock_ids, emp_ids, context=None): ''' Accept the clock_ids and emp_ids parameter to delete on hr clock machine @param clock_ids: the list that contains the clock id of int/long or browse_record @param emp_ids: the list that contains employee id of int/long or browse_record that will be delte, the ''' if not clock_ids or not emp_ids: return False for clock_id in clock_ids: if isinstance(clock_id, (int, long)): clock_id = self.pool.get('hr.clock').browse(cr, uid, clock_id, context=context) #update data to clock clock = clock_util.clock_obj() clock_util.clock_connect(clock, clock_id.ip, clock_id.port) for emp_id in emp_ids: if isinstance(emp_id, (int, long)): emp_id = self.pool.get('hr.employee').browse( cr, uid, emp_id, context=context) #delete all clock user data, including base info, finger print, password clock_util.clock_user_delete(clock, emp_id.emp_code) #disconnect clock clock.RefreshData(1) clock_util.clock_disconnect(clock) return True
def clock_emps_get(self, cr, uid, clock_id, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get('hr.clock').read(cr, uid, clock_id, ['ip','port'], context=context) clock_util.clock_connect(clock, clock_data['ip'], clock_data['port']) #get all employees on clock clock_emps = clock_util.clock_user_get_all(clock) return clock_emps
def clock_emps_set(self, cr, uid, order_data, context=None): if not order_data: return False #store the password and finger print to update emps_fp_pwd = {} if order_data.sync_opt_pwd or order_data.sync_opt_fp: emp_codes = [emp.emp_code for emp in order_data.emp_ids_sync] emp_obj = self.pool.get('hr.employee') emp_ids = emp_obj.search(cr, uid, [('emp_code', 'in', emp_codes)], context=context) read_flds = ['emp_code'] if order_data.sync_opt_pwd: read_flds += ['clock_pwd'] if order_data.sync_opt_fp: read_flds += [ 'clock_fp1', 'clock_fp2', 'clock_fp3', 'clock_fp4', 'clock_fp5', 'clock_fp6', 'clock_fp7', 'clock_fp8', 'clock_fp9', 'clock_fp10', ] emps = emp_obj.read(cr, uid, emp_ids, read_flds, context=context) for emp in emps: emps_fp_pwd[emp['emp_code']] = emp #update data to clock clock = clock_util.clock_obj() clock_util.clock_connect(clock, order_data.clock_id.ip, order_data.clock_id.port) for emp_sync in order_data.emp_ids_sync: new_clock_pwd = False new_clock_fps = [] if order_data.sync_opt_pwd or order_data.sync_opt_fp: fp_pwd = emps_fp_pwd[emp_sync.emp_code] if order_data.sync_opt_pwd: new_clock_pwd += fp_pwd['clock_pwd'] if order_data.sync_opt_fp: for i in range(1, 11): new_clock_fps.append(fp_pwd['clock_fp%s' % (i, )]) #set clock user data clock_util.clock_user_set(clock, emp_sync, order_data.sync_opt_pwd, new_clock_pwd, order_data.sync_opt_fp, new_clock_fps) #disconnect clock clock.RefreshData(1) clock_util.clock_disconnect(clock) return True
def clock_emps_get_all(self, cr, uid, clock_id, ret_dict=False, pwd=False, finger_print=False, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get("hr.clock").read(cr, uid, clock_id, ["ip", "port"], context=context) clock_util.clock_connect(clock, clock_data["ip"], clock_data["port"]) # get all employees on clock clock_emps = clock_util.clock_user_get_all(clock, ret_dict=ret_dict, pwd=pwd, finger_print=finger_print) clock_util.clock_disconnect(clock) return clock_emps
def clock_emps_set(self, cr, uid, order_data, context=None): if not order_data: return False # store the password and finger print to update emps_fp_pwd = {} if order_data.sync_opt_pwd or order_data.sync_opt_fp: emp_codes = [emp.emp_code for emp in order_data.emp_ids_sync] emp_obj = self.pool.get("hr.employee") emp_ids = emp_obj.search(cr, uid, [("emp_code", "in", emp_codes)], context=context) read_flds = ["emp_code"] if order_data.sync_opt_pwd: read_flds += ["clock_pwd"] if order_data.sync_opt_fp: read_flds += [ "clock_fp1", "clock_fp2", "clock_fp3", "clock_fp4", "clock_fp5", "clock_fp6", "clock_fp7", "clock_fp8", "clock_fp9", "clock_fp10", ] emps = emp_obj.read(cr, uid, emp_ids, read_flds, context=context) for emp in emps: emps_fp_pwd[emp["emp_code"]] = emp # update data to clock clock = clock_util.clock_obj() clock_util.clock_connect(clock, order_data.clock_id.ip, order_data.clock_id.port) for emp_sync in order_data.emp_ids_sync: new_clock_pwd = False new_clock_fps = [] if order_data.sync_opt_pwd or order_data.sync_opt_fp: fp_pwd = emps_fp_pwd[emp_sync.emp_code] if order_data.sync_opt_pwd: new_clock_pwd += fp_pwd["clock_pwd"] if order_data.sync_opt_fp: for i in range(1, 11): new_clock_fps.append(fp_pwd["clock_fp%s" % (i,)]) # set clock user data clock_util.clock_user_set( clock, emp_sync, order_data.sync_opt_pwd, new_clock_pwd, order_data.sync_opt_fp, new_clock_fps ) # disconnect clock clock.RefreshData(1) clock_util.clock_disconnect(clock) return True
def clock_emps_get(self, cr, uid, clock_id, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get('hr.clock').read(cr, uid, clock_id, ['ip', 'port'], context=context) clock_util.clock_connect(clock, clock_data['ip'], clock_data['port']) #get all employees on clock clock_emps = clock_util.clock_user_get_all(clock) return clock_emps
def clock_emps_get(self, cr, uid, clock_id, emp_codes, ret_dict=False, pwd=False, finger_print=False, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get("hr.clock").read(cr, uid, clock_id, ["ip", "port"], context=context) clock_util.clock_connect(clock, clock_data["ip"], clock_data["port"]) # get all employees on clock emps_clock = [] if ret_dict: emps_clock = {} for emp_code in emp_codes: emp_clock = clock_util.clock_user_get(clock, emp_code, pwd=pwd, finger_print=finger_print) if emp_clock: if ret_dict: emps_clock[emp_code] = emp_clock else: emps_clock.append(emp_clock) clock_util.clock_disconnect(clock) return emps_clock
def clock_emps_delete_exec(self, cr, uid, clock_ids, emp_ids, context=None): """ Accept the clock_ids and emp_ids parameter to delete on hr clock machine @param clock_ids: the list that contains the clock id of int/long or browse_record @param emp_ids: the list that contains employee id of int/long or browse_record that will be delte, the """ if not clock_ids or not emp_ids: return False for clock_id in clock_ids: if isinstance(clock_id, (int, long)): clock_id = self.pool.get("hr.clock").browse(cr, uid, clock_id, context=context) # update data to clock clock = clock_util.clock_obj() clock_util.clock_connect(clock, clock_id.ip, clock_id.port) for emp_id in emp_ids: if isinstance(emp_id, (int, long)): emp_id = self.pool.get("hr.employee").browse(cr, uid, emp_id, context=context) # delete all clock user data, including base info, finger print, password clock_util.clock_user_delete(clock, emp_id.emp_code) # disconnect clock clock.RefreshData(1) clock_util.clock_disconnect(clock) return True
def clock_emps_get(self, cr, uid, clock_id, emp_codes, ret_dict=False, pwd=False, finger_print=False, context=None): if not clock_id: return [] clock = clock_util.clock_obj() clock_data = self.pool.get('hr.clock').read(cr, uid, clock_id, ['ip', 'port'], context=context) clock_util.clock_connect(clock, clock_data['ip'], clock_data['port']) #get all employees on clock emps_clock = [] if ret_dict: emps_clock = {} for emp_code in emp_codes: emp_clock = clock_util.clock_user_get(clock, emp_code, pwd=pwd, finger_print=finger_print) if emp_clock: if ret_dict: emps_clock[emp_code] = emp_clock else: emps_clock.append(emp_clock) clock_util.clock_disconnect(clock) return emps_clock