files.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. import connection from './base.js';
  2. export async function files_insert({
  3. name = '',
  4. mimetype = '',
  5. size = '',
  6. md5 = '',
  7. create_time = '',
  8. update_time = '',
  9. }) {
  10. return new Promise(async (resolve, reject) => {
  11. try {
  12. const sql = `
  13. INSERT INTO files (name, mimetype, size, md5, create_time, update_time)
  14. VALUES (?, ?, ?, ?, ?, ?)
  15. `;
  16. const values = [name, mimetype, size, md5, create_time, update_time];
  17. // 直接接收 execute 返回的内容
  18. const result = await connection.execute(sql, values);
  19. // console.log("Record inserted successfully:", result);
  20. return resolve(result);
  21. } catch (err) {
  22. // console.error("Error inserting data:", err);
  23. // throw err;
  24. return resolve(false);
  25. }
  26. })
  27. }
  28. // 是否存在重复的数据
  29. export function ishaveFileBymd5(md5Str) {
  30. return new Promise((resolve, reject) => {
  31. connection.query(`SELECT * FROM files WHERE md5 = ?`, [md5Str], (err, rows) => {
  32. if (err) {
  33. // reject(err);
  34. resolve(false); // 如果存在记录,则返回 true,否则返回 false
  35. } else {
  36. resolve(rows.length > 0); // 如果存在记录,则返回 true,否则返回 false
  37. }
  38. });
  39. });
  40. }
  41. // 查询图片信息
  42. export function getFileBymd5(md5Str) {
  43. return new Promise((resolve, reject) => {
  44. connection.query(`SELECT * FROM files WHERE md5 = ?`, [md5Str], (err, rows) => {
  45. if (err) {
  46. resolve(false); // 如果存在记录,则返回 true,否则返回 false
  47. } else {
  48. resolve(rows[0]); // 如果存在记录,则返回 true,否则返回 false
  49. }
  50. });
  51. });
  52. }
  53. // 删除图片
  54. export function delFileBymd5(md5Str) {
  55. return new Promise((resolve, reject) => {
  56. connection.query(`update files SET is_del = 1 WHERE md5=?`, [md5Str], (err, rows) => {
  57. if (err) {
  58. resolve(false); // 如果存在记录,则返回 true,否则返回 false
  59. } else {
  60. resolve(true); // 如果存在记录,则返回 true,否则返回 false
  61. }
  62. });
  63. });
  64. }
  65. // 映射数据与文件数据
  66. export function addFileByRecordId({
  67. file_id = '',
  68. record_id = '',
  69. book_id = '',
  70. author_id = '',
  71. create_time = '',
  72. update_time = '',
  73. }) {
  74. return new Promise(async (resolve, reject) => {
  75. try {
  76. const sql = `
  77. INSERT INTO record_files (file_id, record_id, book_id, author_id, create_time, update_time)
  78. VALUES (?, ?, ?, ?, ?, ?)
  79. `;
  80. const values = [file_id, record_id, book_id, author_id, create_time, update_time];
  81. // 直接接收 execute 返回的内容
  82. const result = await connection.execute(sql, values);
  83. // console.log("Record inserted successfully:", result);
  84. return resolve(result);
  85. } catch (err) {
  86. // console.error("Error inserting data:", err);
  87. // throw err;
  88. return resolve(false);
  89. }
  90. })
  91. }
  92. // 根据id获取files
  93. export function getFileByRecordId(record_id) {
  94. return new Promise((resolve, reject) => {
  95. connection.query(`SELECT * FROM record_files WHERE record_id = ?`, [record_id], (err, rows) => {
  96. if (err) {
  97. resolve(false); // 如果存在记录,则返回 true,否则返回 false
  98. } else {
  99. resolve(rows); // 如果存在记录,则返回 true,否则返回 false
  100. }
  101. });
  102. });
  103. }