Example #1
0
 def entercorporation(self, user_url_number):
     from accounts.models import Student
     user = Student.objects(url_number=user_url_number).get()
     from relations.models import S_C_Card
     if self.get_user_admin():
         if S_C_Card.objects(user=user, corporation=self):
             S_C_Card.objects(user=user, corporation=self).update(
                 set__is_active=True,
                 set__is_admin=False,
                 set__creat_time=datetime.datetime.now())
         else:
             S_C_Card(user=user,
                      corporation=self,
                      is_active=True,
                      is_admin=False,
                      creat_time=datetime.datetime.now()).save()
     else:
         if S_C_Card.objects(user=user, corporation=self):
             S_C_Card.objects(user=user, corporation=self).update(
                 set__is_active=True,
                 set__is_admin=True,
                 set__creat_time=datetime.datetime.now())
         else:
             S_C_Card(user=user,
                      corporation=self,
                      is_active=True,
                      is_admin=True,
                      creat_time=datetime.datetime.now()).save()
Example #2
0
def visit_corporation_structure(request, url_number):
    corporation = Corporation.objects(url_number=url_number).get()
    if request.method == "POST":
        form = NewAskForm(request.POST)
        if form.is_valid():
            content = form.cleaned_data['content']
            creator = [
                a[0] for a in [
                    S_S_Card.objects.get_or_create(user=request.user,
                                                   target=admin)
                    for admin in corporation.get_user_admin()
                ]
            ]
            url_number = len(Sitemail.objects) + 1
            mail = Sitemail(title='入社申请',
                            content=content,
                            creator=creator,
                            creat_time=datetime.datetime.now(),
                            is_readed=False,
                            url_number=url_number).save()
            S_C_Card(user=request.user,
                     corporation=corporation,
                     is_active=False,
                     is_admin=False).save()
            return HttpResponse('success')

    else:
        form = NewAskForm()
        return render_to_response('corporation/corporation_structure.html', {
            'form': form,
            'current_user': request.user,
            'url_number': url_number,
            'corporation': corporation,
            'STATIC_URL': STATIC_URL
        },
                                  context_instance=RequestContext(request))
Example #3
0
def creat_corporation(request):
    if request.method == "POST":
        form = CreatCorporationForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            introduction = form.cleaned_data['introduction']
            birthyear = form.cleaned_data['birthyear']
            school = form.cleaned_data['school']
            corporation = Corporation(name=name,
                                      introduction=introduction,
                                      school=school,
                                      birthyear=birthyear,
                                      logo=STATIC_URL + 'img/face.png',
                                      thumbnail=STATIC_URL + 'img/face.png')
            url_number = len(Corporation.objects) + 1
            corporation.url_number = url_number
            corporation.creat_time = datetime.datetime.now()
            if request.FILES:
                path = 'img/corporation/' + str(url_number)
                if not os.path.exists(MEDIA_ROOT + path):
                    os.makedirs(MEDIA_ROOT + path)

                img = Image.open(request.FILES['logo'])
                if img.mode == 'RGB':
                    filename = 'logo.jpg'
                    filename_thumbnail = 'thumbnail.jpg'
                elif img.mode == 'P':
                    filename = 'logo.png'
                    filename_thumbnail = 'thumbnail.png'
                filepath = '%s/%s' % (path, filename)
                filepath_thumbnail = '%s/%s' % (path, filename_thumbnail)
                # 获得图像的宽度和高度
                width, height = img.size
                # 计算宽高
                ratio = 1.0 * height / width
                # 计算新的高度
                new_height = int(288 * ratio)
                new_size = (288, new_height)
                # 缩放图像
                if new_height >= 288:
                    thumbnail_size = (0, 0, 288, 288)
                else:
                    thumbnail_size = (0, 0, new_height, new_height)

                out = img.resize(new_size, Image.ANTIALIAS)
                thumbnail = out.crop(thumbnail_size)
                thumbnail.save(MEDIA_ROOT + filepath_thumbnail)
                corporation.thumbnail = MEDIA_URL + filepath_thumbnail
                out.save(MEDIA_ROOT + filepath)
                corporation.logo = MEDIA_URL + filepath

            corporation.save()
            sccard = S_C_Card(user=request.user,
                              corporation=corporation,
                              is_active=True,
                              is_admin=True,
                              creat_time=datetime.datetime.now())
            sccard.save()
            return HttpResponseRedirect('/corporation/' + str(url_number) +
                                        '/')

        else:
            return HttpResponseNotFound("出错了。。。。。")

    else:
        form = CreatCorporationForm()
        return render_to_response('corporation/creat_corporation.html', {
            'form': form,
            'STATIC_URL': STATIC_URL,
            'current_user': request.user
        },
                                  context_instance=RequestContext(request))