models.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # coding=utf-8
  2. from django.db import models
  3. from utils.exceptions import CustomError
  4. from apps.images.models import Images
  5. class Shop(models.Model):
  6. name = models.CharField(max_length=100, verbose_name=u"名称")
  7. addr = models.CharField(max_length=1000, verbose_name=u'地址')
  8. tel = models.CharField(max_length=50, verbose_name=u'电话')
  9. longitude = models.FloatField(verbose_name=u"经度")
  10. latitude = models.FloatField(verbose_name=u"纬度")
  11. img = models.ForeignKey(Images, verbose_name=u'图片', on_delete=models.PROTECT, null=True)
  12. sort = models.PositiveSmallIntegerField(verbose_name=u'排序', help_text=u'越小越靠前', default=0)
  13. enabled = models.BooleanField(verbose_name=u"在用", default=True)
  14. is_xgj = models.BooleanField(verbose_name=u'销管佳公司', default=False, editable=False)
  15. xgj_id = models.IntegerField(verbose_name=u'销管佳id', null=True)
  16. delete = models.BooleanField(verbose_name=u'删除', default=False, editable=False)
  17. class Meta:
  18. db_table = "shop"
  19. verbose_name = u"门店管理"
  20. ordering = ['sort', '-id']
  21. index_together = (
  22. 'name',
  23. 'tel',
  24. )
  25. default_permissions = ()
  26. @staticmethod
  27. def getById(id):
  28. try:
  29. id = int(id)
  30. except:
  31. raise CustomError(u'无效的门店ID')
  32. instance = Shop.objects.filter(pk=id).first()
  33. if not instance:
  34. raise CustomError(u'未找到相应的门店信息')
  35. return instance