123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- from django.conf import settings
- from django_logit import logit
- from django_response import response
- from TimeConvert import TimeConvert as tc
- from apps.contract.models import LensmanContributionContractInfo
- from apps.lensman.activity.models import LensmanContributionActivityIncomeExpensesInfo
- from account.models import LensmanInfo
- from member.models import MemberActivityContributionInfo
- @logit(res=True)
- def get_contribtion_contract_api(request):
- user_id = request.POST.get('user_id', '')
- lensman_id = request.POST.get('lensman_id', '')
- activity_id = request.POST.get('activity_id', '')
- contribtuon_id = request.POST.get('contribtuon_id', '')
- lensman = LensmanInfo.objects.get(lensman_id=lensman_id)
- contract, _ = LensmanContributionContractInfo.objects.update_or_create(
- user_id=user_id, lensman_id=lensman_id, activity_id=activity_id, contribtuon_id=contribtuon_id)
- file_ids = upload_contribution_images(contribtuon_id)
- operator = {
- "UserId": settings.CONTRACT_LENSMAN_CONTRIBUTION_OPERATOR_ID
- }
- flow_id = create_contribution_contract_flow(lensman, operator)
- contract.flow_id = flow_id
- contract.save()
-
- document_id, fields = create_contribution_contract_document(lensman, file_ids, flow_id, operator)
- contract.contract_content_fields = fields
- contract.document_id = document_id
- contract.save()
-
-
- start_contribution_contract_flow(flow_id, operator)
- scheme_url = get_contribtion_contract_sign_mppath(operator, lensman, flow_id)
- return response(200, data={
- 'contract': contract.mpdata,
- 'scheme_url': scheme_url
- })
- def upload_contribution_images(contribtuon_id):
-
-
- contribtuon = MemberActivityContributionInfo.objects.get(contribtuon_id=contribtuon_id)
-
- return []
- def create_contribution_contract_flow(lensman, Operator):
-
-
-
- FlowName = lensman.identity_card_name + "的投稿合同" + tc.local_string(format='%Y%m%d')
- FlowType = '活动投稿授权书'
- Approvers = [{
- "ApproverType": "1",
- "Required": "true",
- "NotifyType": "none",
- "ApproverMobile": lensman.phone,
- "ApproverName": lensman.identity_card_name,
- "ApproverIdCardNumber": lensman.identity_card_number,
- }]
-
-
- return ''
- def create_contribution_contract_document(lensman, contribtuon_id, file_ids, FlowId, Operator):
-
- income = LensmanContributionActivityIncomeExpensesInfo.objects.get(contribtuon_id=contribtuon_id, lensman_id=lensman.lensman_id)
-
- TemplateId = settings.CONTRACT_LENSMAN_CONTRIBUTION_TEMPLATE_ID
- FormFields = [{
- "ComponentName": "ComponentId_0",
- "ComponentValue": lensman.identity_card_name
- }, {
- "ComponentName": "ComponentId_1",
- "ComponentValue": lensman.identity_card_number,
- }, {
- "ComponentName": "ComponentId_2",
- "ComponentValue": income.amount,
- }, {
- "ComponentName": "ComponentId_3",
- "ComponentValue": "",
- }]
- for i, file_id in enumerate(file_ids):
- FormFields.append({
- "ComponentName": "ComponentId_" + str(37 + i),
- "ComponentValue": file_id,
- })
-
- return '', FormFields
- def start_contribution_contract_flow(FlowId, Operator):
-
-
-
- return ''
- def get_contribtion_contract_sign_mppath(Operator, lensman, FlowId):
-
- Name = lensman.identity_card_name
- Mobile = lensman.phone
- IdCardType = 'ID_CARD'
- IdCardNumber = lensman.identity_card_number
- EndPoint = 'APP'
- PathType = '1'
- AutoJumpBack = 'true'
-
- return ''
|