Files
biz_xfj_cloud/lib/common/services/database/dao/face_dao.dart
T

88 lines
1.9 KiB
Dart

import 'package:floor/floor.dart';
import 'package:pj_supermarket_cloud/common/index.dart';
// face
@dao
abstract class FaceDao {
@insert
Future<int?> save(FaceEntity entity);
@insert
Future<void> batchSave(List<FaceEntity> entitys);
@delete
Future<void> del(FaceEntity entity);
@Query(""" DELETE FROM face """)
Future<void> delAll();
@Query('''
DELETE FROM face WHERE id = :id
''')
Future<void> delById(int id);
@Query('''
DELETE FROM face WHERE userId = :userId
''')
Future<void> delByUserId(String userId);
@Query('''
DELETE FROM face WHERE sampleId = :sampleId
''')
Future<void> delBySampleId(String sampleId);
@delete
Future<void> batchDel(List<FaceEntity> entitys);
@update
Future<void> edit(FaceEntity entity);
@update
Future<void> batchEdit(List<FaceEntity> entitys);
@Query("""
SELECT DISTINCT COUNT(0) FROM face
WHERE
(:userName = '-1' OR userName LIKE '%' || :userName || '%')
""")
Future<int?> findCount(String userName);
@Query('''
SELECT * FROM face WHERE id = :id
''')
Future<FaceEntity?> getById(int id);
@Query('''
SELECT * FROM face WHERE sampleId = :sampleId
''')
Future<FaceEntity?> findBySampleId(String sampleId);
@Query('''
SELECT * FROM face WHERE userId = :userId
''')
Future<List<FaceEntity>?> findByUserId(String userId);
@Query('''
SELECT * FROM face
WHERE
(:userName = '-1' OR userName LIKE '%' || :userName || '%')
LIMIT :pageSize OFFSET :offset
''')
Future<List<FaceEntity>> findAll(
String userName,
int pageSize,
int offset,
);
@Query('''
SELECT DISTINCT a.deptId FROM face a WHERE a.deptId IS NOT NULL
''')
Future<List<String>> findAllUserIds();
@Query('''
SELECT * FROM face WHERE faceModel = '' OR faceModel IS NULL
''')
Future<List<FaceEntity>?> getEmptyFaceList();
}