OracleDOCASNHeader.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App;
  3. use App\Traits\ModelTimeFormat;
  4. use Illuminate\Database\Eloquent\Model;
  5. use App\Traits\ModelLogChanging;
  6. use Illuminate\Database\Eloquent\Relations\HasMany;
  7. use Illuminate\Database\Eloquent\Relations\HasOne;
  8. class OracleDOCASNHeader extends Model
  9. {
  10. use ModelLogChanging;
  11. use ModelTimeFormat;
  12. protected $connection="oracle";
  13. protected $table="Doc_ASN_Header";
  14. protected $primaryKey="ASNNO";
  15. function getIncrementing()
  16. {
  17. return false;
  18. }
  19. public function asnType(): HasOne
  20. {
  21. return $this->hasOne(OracleBasCode::class,'code','asntype')
  22. ->where('codeid','ASN_TYP');
  23. }
  24. public function asnStatus(): HasOne
  25. {
  26. return $this->hasOne(OracleBasCode::class,'code','asnstatus')
  27. ->where('codeid','ASN_STS');
  28. }
  29. public function basCustomer(): HasOne
  30. {
  31. return $this->hasOne(OracleBasCustomer::class,'customerid','customerid')
  32. ->where('customer_type','OW');
  33. }
  34. public function asnDetails(): HasMany
  35. {
  36. return $this->hasMany(OracleDOCASNDetail::class,'asnno','asnno')
  37. ->select('asnno','asnlineno','customerid','sku','skudescrc','linestatus','lotatt08','lotatt05','receivedqty','receivedqty_each','expectedqty','addtime','edittime');
  38. }
  39. }