EnergyDeviceElectricityRecord.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace app\common\model;
  3. use app\common\util\AppAuth;
  4. use think\Db;
  5. use think\Exception;
  6. class EnergyDeviceElectricityRecord extends Base {
  7. public function updates($userId){
  8. $data = request()->post();
  9. $data['org_id'] = cur_org_id();
  10. $result = validate('EnergyDeviceElectricityRecord')->check($data,[],'');
  11. if(true !== $result){
  12. $this->error = validate('EnergyDeviceElectricityRecord')->getError();
  13. return false;
  14. }
  15. $id = $data['id'];
  16. unset($data['id']);
  17. $data['read_yyyy'] = date('Y',strtotime($data['read_time']));
  18. $data['read_yyyymm'] = date('Ym',strtotime($data['read_time']));
  19. $data['read_yyyymmdd'] = date('Ymd',strtotime($data['read_time']));
  20. if($id > 0){
  21. $data['update_time'] = date('Y-m-d H:i:s');
  22. $ret = $this->allowField(true)->save($data,['id'=>$id]);
  23. }else{
  24. // 查询上次录入
  25. $re = $this->where('sn',$data['sn'])
  26. ->order('read_time','desc')
  27. ->where('del',0)
  28. ->limit(1)
  29. ->find();
  30. if ($re){
  31. if (intval($data['degree']) < intval($re['degree'])){
  32. $this->error ='本次抄表度数小于上次录入数据,请检查后重新录入';
  33. return false;
  34. }
  35. }
  36. $warning =model('EnergyElectricityRecord')->warning('energy_device_electricity_record',$data);
  37. $data['create_time'] = date('Y-m-d H:i:s');
  38. $data['user_id'] = $userId;
  39. $ret = $this->allowField(true)->save($data);
  40. }
  41. if(!$ret){
  42. $this->error = '操作失败';
  43. return false;
  44. }
  45. return true;
  46. }
  47. }