Exemplo n.º 1
0
    def post(self, request):
        json_data = json.loads(request.body)
        user = request.user
        company_obj = get_object_or_none(
            Company,
            user=user,
        )
        form = CompanyForm(json_data) if not company_obj else CompanyForm(
            json_data, instance=company_obj)

        if form.is_valid():
            company = form.save(commit=False)
            company.user = user
            company.save()
            form.save_m2m()
            redirect_url = '' if FeedUtils.has_use_feed(
                user) else reverse('feed-add-new')
            return JsonResponse({
                "status": "ok",
                "id": company.id,
                'msg': 'ok',
                'redirect_url': redirect_url,
            })
        else:
            return JsonResponse({
                'status': 'form_error',
                'msg': form.get_first_errors(),
                'data': {
                    'errors': form.errors,
                }
            })
Exemplo n.º 2
0
    def get(self, request):
        user = request.user

        company = Company.objects.select_related(
            'category',
        ).filter(
            user=user
        )
        company_card_dict = {}
        jobs_arr = []
        companycard_css = 'curr'
        company_category = []
        if len(company) >= 1:
            company = company[0]
            company.desc = company.desc.strip()
            company_json = model_to_dict(company)
            company_card_dict['company'] = company_json
            jobs = Job.objects.filter(company=company, deleted=False)
            for job in jobs:
                job_json = model_to_dict(job)
                jobs_arr.append(job_json)
            company_card_dict['jobs'] = jobs_arr
            company_category = company.category.all()
            company_card_dict['select_category'] = [
                {
                    'category': c.category,
                    'id': c.id,
                }
                for c in company_category
            ]

        all_company_category = CompanyCategory.objects.filter(
            display=True,
        ).order_by(
            '-sort',
        )

        select_id_list = [c.id for c in company_category]
        company_card_dict['all_company_category'] = [
            {
                'category': c.category,
                'id': c.id,
                'select': True if c.id in select_id_list else False
            }
            for c in all_company_category
        ]
        company_card_dict['show_mission'] = True if (
            not FeedUtils.has_use_feed(user)
            and VipRoleUtils.get_current_vip(user)
        ) else False
        company_card_json = json.dumps(company_card_dict)
        return render(
            request,
            self.template_name,
            {
                'company_json': company_card_json,
                'companycard_css': companycard_css,
            },
        )