CarRecord.php 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?php
  2. namespace app\common\model;
  3. use app\hander\HelpHander;
  4. use think\Db;
  5. use think\Model;
  6. use think\response\Json;
  7. class CarRecord extends Model
  8. {
  9. public function add(){
  10. $data = [
  11. 'id' => input('id/d',0),
  12. 'start' => input('start/d',0),
  13. 'end' => input('end/d',0),
  14. 'car_id' => input('carId/d',0),
  15. 'driver' => input('driver','','trim'),
  16. ];
  17. $endTime = input('endTime','','trim');
  18. if($endTime){
  19. $data['end_time'] = date('Y-m-d H:i:s',strtotime($endTime));
  20. }
  21. $result = validate('CarRecord')->check($data,[],'');
  22. if(true !== $result){
  23. HelpHander::error(validate('CarRecord')->getError());
  24. }
  25. $id = $data['id'];
  26. unset($data['id']);
  27. $data['update_time'] = date('Y-m-d H:i:s');
  28. $ret = $this->allowField(true)->save($data,['id'=>$id]);
  29. if(!$ret){
  30. HelpHander::error('操作失败');
  31. }
  32. return true;
  33. }
  34. public function advancedStartCarRecord($id,$orgId,$userId,$formJson,$extra){
  35. $formJson = json_decode($formJson,true);
  36. $data = [
  37. 'org_id' => $orgId,
  38. 'user_id' => $userId,
  39. 'apply_id' => $id,
  40. 'dep_id' => $extra['depId'],
  41. 'create_time' => date('Y-m-d H:i:s'),
  42. 'status' => 0,
  43. ];
  44. foreach ($formJson as $k=>$v){
  45. if($v['componentName'] == 'ddcarfield'){
  46. foreach ($v['components'] as $key=>$val){
  47. $val['values2'] = isset($val['values2'])?$val['values2']:[];
  48. $val['values'] = isset($val['values'])?$val['values']:'';
  49. switch ($val['idx']){
  50. case '0':
  51. $data['reason'] = isset($val['values'])?$val['values']:'';
  52. break;
  53. case '1':
  54. $data['address'] = isset($val['values'])?$val['values']:'';
  55. break;
  56. case '2':
  57. $data['start_time'] = date('Y-m-d H:i:s',strtotime($val['values']));
  58. break;
  59. case '3':
  60. $data['driver'] = isset($val['values'])?$val['values']:'';
  61. break;
  62. case '4':
  63. if($val['values']){
  64. $d = json_decode($val['values'],true);
  65. $data['car_id'] = $d['id'];
  66. }else{
  67. $data['car_id'] = 0;
  68. }
  69. break;
  70. case '5':
  71. if($val['values']){
  72. $data['end_time'] = date('Y-m-d H:i:s',strtotime($val['values']));
  73. }
  74. break;
  75. }
  76. }
  77. break;
  78. }
  79. }
  80. trace('car:');
  81. trace($data);
  82. $ret = Db::name('car_record')->insert($data);
  83. return $ret?true:false;
  84. }
  85. public function advancedEndCarRecord($id,$orgId,$userId,$formJson){
  86. $data = [
  87. 'update_time' => date('Y-m-d H:i:s'),
  88. 'status' => 1
  89. ];
  90. $ret = Db::name('car_record')->where('apply_id',$id)->update($data);
  91. return $ret?true:false;
  92. }
  93. public function advancedDisagreeCarRecord($id){
  94. $data = [
  95. 'update_time' => date('Y-m-d H:i:s'),
  96. 'status' => 2
  97. ];
  98. $ret = Db::name('car_record')->where('apply_id',$id)->update($data);
  99. return $ret?true:false;
  100. }
  101. }