def modifyMemo(request, projectId): ''' 修改上线备忘 ''' plistModel = Project.objects.get(pk=projectId) memoList = Memo.objects.filter(project=plistModel).all() # 判断是显示页面还是插入数据 if request.method == 'POST': #修改数据操作 typeList = request.POST.getlist('type') contentList = request.POST.getlist('content') memoIdList = request.POST.getlist('memoId') #删除删掉的数据 for delMemo in memoList: if str(delMemo.pk) not in memoIdList: delMemo.delete() #循环插入数据 branch_info = BranchInfo.objects.filter(title = plistModel.name) for bi in branch_info: bi.if_jockjs = 0 bi.if_pages = 0 bi.desc = "" bi.save() for (offset, item) in enumerate(typeList): # if len(memoIdList) < offset: #对数据进行更新 if memoIdList[offset]: # 对数据进行更新 memo = Memo(pk=memoIdList[offset], project=plistModel, type=item, content=contentList[offset], done=0) else: # 新增数据 memo = Memo(project=plistModel, type=item, content=contentList[offset], done=0) for bi in branch_info: if str(item) == '7': bi.if_jockjs = 1 if str(item) == '8': bi.if_pages = 1 if str(item) == '13': bi.desc = contentList[offset] bi.save() memo.save() return redirect("/project/detail/%s/" % projectId) else: # 显示页面 if not memoList: form = MemoForm() else: form = [] for m in memoList: memo = MemoForm({'type': m.type, 'content': m.content, 'memoId': m.pk}) form.append(memo) return { 'form': form, 'id': projectId, 'nullform': MemoForm() }
def createMemo(request, projectId): ''' 创建上线备忘 ''' # 判断该项目是否存在 如过不存在 跳转到404页面 try: plistModel = Project.objects.get(pk=projectId) except Project.DoesNotExist: return render(request, 'global/nofound.html') # 判断是显示页面还是插入数据 if request.method == 'POST': # 插入数据操作 typeList = request.POST.getlist('type') contentList = request.POST.getlist('content') # 循环插入数据 branch_info = BranchInfo.objects.filter(title = plistModel.name) for (offset, item) in enumerate(typeList): if contentList[offset]: memo = Memo(project=plistModel, type=item, content=contentList[offset], done=0) memo.save() for bi in branch_info: if str(item) == '7': bi.if_jockjs = 1 if str(item) == '8': bi.if_pages = 1 if str(item) == '13': bi.desc = contentList[offset] bi.save() return redirect("/project/detail/%s/" % projectId) else: # 显示页面 return { 'form': MemoForm(), 'id': projectId, }
def migrate_memo(): from projectl.models import Memo as Ml from projectl.models import User as Ul from project.models import Memo as Mm from project.models import User as Um for i in Ml.query.all(): user_id = Um.query.filter(Um.username==i.created_by).first().id u = Mm() u.id = i.id u.vendor_id = i.vendor_id u.user_id = int(user_id) u.reference_no = i.reference_no u.ref_no_old = i.ref_no_old u.contract_no = i.contract_no u.counter = i.counter u.type_of_doc = i.type_of_doc u.status = i.status u.subject = i.subject u.memo_date = i.memo_date u.remarks = i.remarks u.signed_by = i.signed_by u.waiting_date = i.waiting_date u.path = i.path u.destination = i.destination u.filename = i.filename u.technology = i.technology u.received_from = i.received_from u.end_user = i.end_user u.reply_flag = i.reply_flag u.reserve_flag = i.reserve_flag db.session.add(u) db.session.commit()