def finger_tpl_save(self): index = Utils.parse_int(self.param("index")) tpl = self.param("tpl") archives_id = Utils.parse_int(self.param("archives_id")) sf = SessionFactory.new() obj = sf.query(ValidWorkFingerTemplate) \ .filter(ValidWorkFingerTemplate.archives_id == archives_id) \ .filter(ValidWorkFingerTemplate.finger_index == index).limit(1).scalar() machines_sn = sf.query(ValidWorkMachine.sn).all() machines_sn = [sn[0] for sn in machines_sn] name = sf.query(Archives.name).filter(Archives.id == archives_id).limit(1).scalar() for sn in machines_sn: ValidWorkHelper.push_user_fp_to_machine(sn, archives_id, name, index, tpl) if obj: obj.tpl = tpl sf.commit() return ["success"] else: if archives_id: sf = SessionFactory.new() obj = ValidWorkFingerTemplate() obj.card_no = "" obj.finger_index = index obj.tpl = tpl obj.archives_id = archives_id sf.add(obj) sf.commit() return ["success"] return ["failure"]
def push_finger_tpl_to_machine(self): sf = SessionFactory.new() sn = sf.query(ValidWorkMachine.sn) \ .filter(ValidWorkMachine.id == Utils.parse_int(self.param("machine_id"))).limit(1).scalar() peoples = sf.query(ValidWorkFingerTemplate.archives_id, Archives.name, ValidWorkFingerTemplate.finger_index, ValidWorkFingerTemplate.tpl) \ .join((Archives, ValidWorkFingerTemplate.archives)).all() finger_tpl_list = list() for p in peoples: finger_tpl_list.append(p) ValidWorkHelper.push_users_fp_to_machine(sn, finger_tpl_list) return ["success"]