Fan.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. namespace catchAdmin\wind\controller;
  3. use catcher\base\CatchRequest as Request;
  4. use catcher\CatchResponse;
  5. use catcher\base\CatchController;
  6. use catchAdmin\wind\model\Fan as fanModel;
  7. use catcher\base\CatchRequest;
  8. use think\facade\Db;
  9. class Fan extends CatchController
  10. {
  11. protected $fanModel;
  12. public function __construct(FanModel $fanModel)
  13. {
  14. $this->fanModel = $fanModel;
  15. }
  16. /**
  17. * 列表
  18. * @time 2022年04月28日 19:53
  19. * @param Request $request
  20. */
  21. public function index(Request $request) : \think\Response
  22. {
  23. return CatchResponse::paginate($this->fanModel->getList());
  24. }
  25. /**
  26. *根据风场的id获取风机的列表
  27. *
  28. * @param Request $request
  29. * @return void
  30. */
  31. public function getList(Request $request)
  32. {
  33. $datalist = $this->fanModel->field('id,number')->select();
  34. return CatchResponse::success($datalist);
  35. }
  36. /**
  37. * 保存信息
  38. * @time 2022年04月28日 19:53
  39. * @param Request $request
  40. */
  41. public function save(Request $request) : \think\Response
  42. {
  43. $data = $request->post();
  44. $save_data=array(
  45. 'wind_id'=>$data['wind_id'],
  46. 'fan_model'=>$data['fan_model'],
  47. 'info'=>$data['info'],
  48. 'creator_id' => $data['creator_id'],
  49. 'created_at' => time(),
  50. );
  51. $add_fans=array();
  52. if($data['mul_number']){
  53. $numArr=explode(',',$data['mul_number']);
  54. foreach($numArr as $value) {
  55. $save_data['number']=$value;
  56. array_push($add_fans, $save_data);
  57. }
  58. }
  59. $rule_data=$data['rule_data'];
  60. if($rule_data['number_length'] && $rule_data['start_number']){
  61. $start=$rule_data['start_number'];
  62. $length=$rule_data['start_number']+$rule_data['number_length'];
  63. for($i=$start; $i<$length;$i++){
  64. if($rule_data['zero_fill']){
  65. $number=str_pad($i,$rule_data['zero_length'],'0',STR_PAD_LEFT );
  66. }else{
  67. $number=$i;
  68. }
  69. $save_data['number']=$rule_data['number_first'].$number.$rule_data['number_last'];
  70. array_push($add_fans, $save_data);
  71. }
  72. }
  73. $count1 = $this->fanModel->limit(100)->insertAll($add_fans);
  74. return CatchResponse::success('添加成功,共' . $count1 . '条');
  75. // return CatchResponse::success($this->fanModel->storeBy($data));
  76. }
  77. /**
  78. * 读取
  79. * @time 2022年04月28日 19:53
  80. * @param $id
  81. */
  82. public function read($id) : \think\Response
  83. {
  84. return CatchResponse::success($this->fanModel->findBy($id));
  85. }
  86. /**
  87. * 更新
  88. * @time 2022年04月28日 19:53
  89. * @param Request $request
  90. * @param $id
  91. */
  92. public function update(Request $request, $id) : \think\Response
  93. { $data = $request->post();
  94. return CatchResponse::success($this->fanModel->updateBy($id, $data));
  95. }
  96. /**
  97. * 删除
  98. * @time 2022年04月28日 19:53
  99. * @param $id
  100. */
  101. public function delete($id) : \think\Response
  102. {
  103. return CatchResponse::success($this->fanModel->deleteBy($id,true));
  104. }
  105. }