1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- # coding=utf-8
- from django.db import models
- from django.conf import settings
- from PIL import Image
- from apps.tenant.models import Tenant
- from utils.file_operation import UploadFile, DeleteFile
- config_file = 'config/'
- class Config(models.Model):
- KEY_REPAIRS_PERSON = 'repairs_person' #报修人员
- KEY_SEND_ORDER_TYPE = 'send_order_type' #派单方式
- WXAPP_HOME_IMG = 'wxapp_home_img' #小程序首页图片
- tenant = models.ForeignKey(Tenant, verbose_name=u'租户', on_delete=models.PROTECT, editable=False)
- property = models.CharField(max_length=100, verbose_name=u'属性')
- value = models.TextField(verbose_name=u'值')
- class Meta:
- db_table = "system_config"
- verbose_name = u"基础设置"
- index_together = (
- 'property',
- )
- default_permissions = ()
- permissions = [
- ('browse_config', u'查看'),
- ('set_config', u'设置'),
- ]
- @staticmethod
- def getRepairsPerson(tenant_id):
- try:
- row = Config.objects.get(property=Config.KEY_REPAIRS_PERSON, tenant_id=tenant_id)
- return row.value
- except:
- return ''
- @staticmethod
- def getSendOrderType(tenant_id):
- try:
- row = Config.objects.get(property=Config.KEY_SEND_ORDER_TYPE, tenant_id=tenant_id)
- return row.value
- except:
- return ''
- @staticmethod
- def add_img(employee, property, file):
- path = '{0}{1}/{2}/'.format(config_file,property,employee.user.id)
- filename = UploadFile(file, path)
- fullname = "%s/%s" % (settings.MEDIA_ROOT, filename)
- try:
- img = Image.open(fullname)
- x, y = img.size
- if x > 1440:
- img = img.resize((1440, int((y / x) * 1440)), Image.ANTIALIAS)
- img.save(fullname)
- except:
- pass
- return filename
- @staticmethod
- def del_images(instance):
- picture = instance.value
- instance.delete()
- DeleteFile(picture)
|