d_base.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. const mysql = require('./mysql');
  2. const {searchSql,limitSql} = require("../tools/searchSql");
  3. const {isEmpty} = require("../tools/typeTool_cjs");
  4. const log = require("../logger").logger("d_base","info");
  5. /**
  6. * table carousel
  7. * id 主键
  8. * sort 排序
  9. * image 图片地址
  10. * type 1: 文章 2: 产品 3: 直接链接
  11. * link 文章id 产品id 链接
  12. */
  13. /**
  14. * 获取轮播图
  15. * @returns {Promise | Promise<unknown>}
  16. */
  17. function getCarousel(searchParam = {}){
  18. let sql = `SELECT c.*,f.filePath,f.fileType,f.fileId
  19. FROM
  20. hfy_carousel as c,
  21. hfy_files as f
  22. WHERE c.fileId = f.fileId`;
  23. let values = [];
  24. if(!isEmpty(searchParam.state)){
  25. sql += ` and c.state = ?`;
  26. values.push(searchParam.state);
  27. }
  28. sql += ` order by c.sort asc`
  29. return mysql.pq(sql,values);
  30. }
  31. function getCarouselById(id){
  32. let sql = `SELECT c.*,f.filePath,f.fileType,f.fileId
  33. FROM
  34. hfy_carousel as c,
  35. hfy_files as f
  36. WHERE
  37. c.fileId = f.fileId
  38. and c.id = ?
  39. `;
  40. let values = [id];
  41. return mysql.pq(sql,values);
  42. }
  43. function addCarousel(sort,fileId,type,value,valueShowText,updateTime){
  44. let sql = `INSERT INTO hfy_carousel (sort, fileId, type, value, valueShowText, updateTime)
  45. VALUES (?,?,?,?,?,?)`;
  46. return mysql.pq(sql,[sort,fileId,type,value,valueShowText,updateTime]);
  47. }
  48. function deleteCarousel(id){
  49. let sql = `DELETE FROM hfy_carousel WHERE id = ?`;
  50. return mysql.pq(sql,[id]);
  51. }
  52. function updateCarousel(id,updateParam,time){
  53. let sql = `UPDATE hfy_carousel SET `;
  54. let values = [];
  55. if(!isEmpty(updateParam.sort)){
  56. sql += ` sort = ?,`;
  57. values.push(updateParam.sort);
  58. }
  59. if(updateParam.fileId){
  60. sql += ` fileId = ?,`;
  61. values.push(updateParam.fileId);
  62. }
  63. if(!isEmpty(updateParam.type)){
  64. sql += ` type = ?,`;
  65. values.push(updateParam.type);
  66. }
  67. if(updateParam.value && updateParam.valueShowText){
  68. sql += ` value = ?,`;
  69. values.push(updateParam.value);
  70. sql += ` valueShowText = ?,`;
  71. values.push(updateParam.valueShowText);
  72. }
  73. if(!isEmpty(updateParam.state)){
  74. sql += ` state = ?,`;
  75. values.push(updateParam.state);
  76. }
  77. sql += ` updateTime = ?`;
  78. values.push(time);
  79. sql += ` WHERE id = ? limit 1`;
  80. values.push(id);
  81. console.log(sql);
  82. console.log(values);
  83. return mysql.pq(sql,values);
  84. }
  85. function uploadFiles(type,fileNameArr,uploadTime){
  86. let sql = `INSERT INTO hfy_files (fileType, filePath, uploadTime)
  87. VALUES ${fileNameArr.map(f=>`(?,?,?)`).join(',')}`;
  88. let values = [];
  89. for(let fileName of fileNameArr){
  90. values.push(type);
  91. values.push(fileName);
  92. values.push(`${uploadTime}`);
  93. }
  94. console.log(sql);
  95. console.log(values);
  96. return mysql.pq(sql,values);
  97. }
  98. /**
  99. * 搜索文件数据
  100. * @param type
  101. * @param _params
  102. * @param sort
  103. * @param p
  104. * @param l
  105. * @returns {*}
  106. */
  107. function loadFiles(type = 'array',_params,sort,p,l){
  108. let sql = ``;
  109. let values = [];
  110. if(isEmpty(_params)){
  111. _params = {};
  112. }
  113. if(type === 'count'){
  114. sql = `select count(*) as total `;
  115. }else {
  116. sql = `select * `;
  117. }
  118. sql += `from hfy_files as f
  119. where 1 = 1
  120. `
  121. if(_params.key){
  122. sql += ` and ( f.name like '%${_params.key}% or f.tags like '%${_params.key}%' )`
  123. }
  124. if(_params.type){
  125. sql += ` and f.fileType = ? `;
  126. values.push(_params.type - 1);
  127. }
  128. sql += ` order by f.uploadTime desc `;
  129. return searchSql(mysql.pq,type,sql,values,l,p);
  130. }
  131. function getFileById(fileId){
  132. let sql = `select * from hfy_files where fileId = ?`;
  133. return mysql.pq(sql,[fileId]);
  134. }
  135. function deleteFile(fileId){
  136. let sql = `delete from hfy_files where fileId = ? limit 1`;
  137. return mysql.pq(sql,[fileId]);
  138. }
  139. module.exports = {
  140. getCarousel,
  141. getCarouselById,
  142. addCarousel,
  143. deleteCarousel,
  144. updateCarousel,
  145. uploadFiles,
  146. loadFiles,
  147. getFileById,
  148. deleteFile,
  149. }