CdssDisease.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace app\model;
  3. use think\facade\Db;
  4. use think\Model;
  5. class CdssDisease extends Model
  6. {
  7. protected $table = "jm_cdss_xy_disease";
  8. /**
  9. * 组装知识库详情返回
  10. */
  11. public static function jointZskDetailFieds($table , $model , $field , $value)
  12. {
  13. /**
  14. * 获取表结构
  15. */
  16. $sql ="show full columns from {$table}";
  17. $res = Db::query($sql);
  18. if (is_array($value)){
  19. $detail=[];
  20. foreach ($value as $k=>$v){
  21. $detail[] = $model::where($field , $v)->find();
  22. }
  23. if (!empty($detail)){
  24. foreach ($res as $val) {
  25. foreach ($detail as $k=>$v){
  26. $v[$val['Field']] = [
  27. 'name' => $val['Comment'] ,
  28. 'text' => $v[$val['Field']] ?? ''
  29. ];
  30. unset($v['id']);
  31. unset($v['productionEnterprise']);
  32. }
  33. }
  34. }
  35. return $detail;
  36. }else{
  37. if ($field == 'zhonglian_name'){
  38. $detail = $model::whereRaw('FIND_IN_SET(?, zhonglian_name)', [$value])->find();
  39. //$detail = $model::where($field ,'like' ,"%$value%")->find();
  40. }else{
  41. $detail = $model::where($field , $value)->find();
  42. }
  43. }
  44. /**
  45. * 组装返回格式
  46. */
  47. foreach ($res as $val) {
  48. $detail[$val['Field']] = [
  49. 'name' => $val['Comment'] ,
  50. 'text' => $detail[$val['Field']] ?? ''
  51. ];
  52. }
  53. unset($detail['id']);
  54. return $detail;
  55. }
  56. }