d_product.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. const mysql = require('./mysql');
  2. const {searchSql,limitSql} = require("../tools/searchSql");
  3. const log = require("../logger").logger("d_product","info")
  4. function loadProducts(key, page, limit) {
  5. let sql = ``;
  6. let values = [];
  7. sql += `SELECT
  8. p.proid as id,p.remark,p.name,p.image,p.source,p.sourceType
  9. FROM
  10. hfy_product as p ,
  11. hfy_product_type as p_type
  12. WHERE
  13. p.type_id = p_type.type_id
  14. and p_type.type_key = ?`;
  15. values = [key];
  16. let _limitSql = limitSql(limit,page);
  17. sql += _limitSql.sql;
  18. values.push(..._limitSql.values);
  19. return mysql.pq(sql, values);
  20. }
  21. function getProductInfo(id) {
  22. let sql = ``;
  23. let values = [];
  24. sql += `SELECT
  25. p.*
  26. FROM
  27. hfy_product as p
  28. WHERE
  29. p.proid = ?`;
  30. values = [id];
  31. return mysql.pq(sql, values);
  32. }
  33. function searchProducts(type='array',searchParam,page,limit){
  34. let sql = ``;
  35. let values = [];
  36. if(type === 'count'){
  37. sql = `select count(*) as total `;
  38. }else{
  39. sql = `select
  40. p.proid as id,
  41. p.remark,p.name,
  42. p.image,p.source,
  43. p.sourceType,
  44. p_type.type_key
  45. `;
  46. }
  47. sql += `
  48. from
  49. hfy_product as p,
  50. hfy_product_type as p_type
  51. `
  52. sql += `where p.type_id = p_type.type_id`
  53. if(searchParam.key){
  54. sql += ` and p.name like '%${searchParam.key}%'`
  55. }
  56. if(searchParam.type){
  57. sql += ` and p_type.type_key = ?`
  58. values.push(searchParam.type)
  59. }
  60. return searchSql(mysql.pq,type,sql,values,limit,page);
  61. }
  62. module.exports = {
  63. loadProducts,
  64. getProductInfo,
  65. searchProducts
  66. }