def syncCP4DB(request): if request.method == "POST": # 清空表 PersonModel.objects.all().delete() ReporterModel.objects.all().delete() AssignModel.objects.all().delete() CaseBugModel.objects.all().delete() NoCaseBugModel.objects.all().delete() ServerBugModel.objects.all().delete() ClientBugModel.objects.all().delete() SOABugModel.objects.all().delete() InterfaceModel.objects.all().delete() ass_result = [] rep_result = [] nocasebug_result = [] interface_result = [] # 获取远程数据库数据 util = myUtil() # 所有组内成员 sql = "SELECT cu.lower_display_name,cu.lower_user_name FROM cwd_user cu LEFT JOIN cwd_membership cms ON cu.ID = cms.child_id where cms.parent_id = 29988;" result = util.getQueryResult(sql) ass1_sql = util.getSQLStatement('static/SQL/assignee1.sql') ass2_sql = util.getSQLStatement('static/SQL/assignee2.sql') ass3_sql = util.getSQLStatement('static/SQL/assignee3.sql') rep1_sql = util.getSQLStatement('static/SQL/reporter1.sql') rep2_sql = util.getSQLStatement('static/SQL/reporter2.sql') rep3_sql = util.getSQLStatement('static/SQL/reporter3.sql') nocasebug1_sql = util.getSQLStatement('static/SQL/nocasebug1.sql') nocasebug2_sql = util.getSQLStatement('static/SQL/nocasebug2.sql') nocasebug3_sql = util.getSQLStatement('static/SQL/nocasebug3.sql') interface_sql1 = util.getSQLStatement('static/SQL/interface_bug1.sql') interface_sql2 = util.getSQLStatement('static/SQL/interface_bug2.sql') interface_sql3 = util.getSQLStatement('static/SQL/interface_bug3.sql') ass1_result = util.getQueryResult(ass1_sql) rep1_result = util.getQueryResult(rep1_sql) ass2_result = util.getQueryResult(ass2_sql) ass3_result = util.getQueryResult(ass3_sql) rep2_result = util.getQueryResult(rep2_sql) rep3_result = util.getQueryResult(rep3_sql) interface1_result = util.getQueryResult(interface_sql1) interface2_result = util.getQueryResult(interface_sql2) interface3_result = util.getQueryResult(interface_sql3) # =================================================================== # no case bug nocasebug1_result = util.getQueryResult(nocasebug1_sql) nocasebug2_result = util.getQueryResult(nocasebug2_sql) nocasebug3_result = util.getQueryResult(nocasebug3_sql) for i in range(len(interface1_result)): interface_result.append(interface1_result[i]) for i in range(len(interface2_result)): interface_result.append(interface2_result[i]) for i in range(len(interface3_result)): interface_result.append(interface3_result[i]) for i in range(len(interface_result)): interface = InterfaceModel( projectName=interface_result[i]['projectName'], issuekey=interface_result[i]['issuekey'], SUMMARY=interface_result[i]['SUMMARY'], REPORTER=interface_result[i]['REPORTER'], ASSIGNEE=interface_result[i]['ASSIGNEE'], PRIORITY=interface_result[i]['PRIORITY'], status=interface_result[i]['status'], resolution=interface_result[i]['resolution'], CREATED=interface_result[i]['CREATED'], UPDATED=interface_result[i]['UPDATED'], ) interface.save() for i in range(len(nocasebug1_result)): nocasebug_result.append(nocasebug1_result[i]) for i in range(len(nocasebug2_result)): nocasebug_result.append(nocasebug2_result[i]) for i in range(len(nocasebug3_result)): nocasebug_result.append(nocasebug3_result[i]) for i in range(len(nocasebug_result)): no = NoCaseBugModel( projectName=nocasebug_result[i]['projectName'], issuekey=nocasebug_result[i]['issuekey'], SUMMARY=nocasebug_result[i]['SUMMARY'], REPORTER=nocasebug_result[i]['REPORTER'], ASSIGNEE=nocasebug_result[i]['ASSIGNEE'], PRIORITY=nocasebug_result[i]['PRIORITY'], status=nocasebug_result[i]['status'], resolution=nocasebug_result[i]['resolution'], CREATED=nocasebug_result[i]['CREATED'], UPDATED=nocasebug_result[i]['UPDATED'], ) no.save() # =================================================================== for i in range(len(ass1_result)): ass_result.append(ass1_result[i]) for i in range(len(ass2_result)): ass_result.append(ass2_result[i]) for i in range(len(ass3_result)): ass_result.append(ass3_result[i]) for i in range(len(rep1_result)): rep_result.append(rep1_result[i]) for i in range(len(rep2_result)): rep_result.append(rep2_result[i]) for i in range(len(rep3_result)): rep_result.append(rep3_result[i]) # 落地本地数据库 for i in range(len(result)): p = PersonModel(lower_display_name=result[i]['lower_display_name'], lower_user_name=result[i]['lower_user_name']) p.save() for i in range(len(ass_result)): ass = AssignModel( projectName=ass_result[i]['projectName'], issuekey=ass_result[i]['issuekey'], SUMMARY=ass_result[i]['SUMMARY'], REPORTER=ass_result[i]['REPORTER'], ASSIGNEE=ass_result[i]['ASSIGNEE'], PRIORITY=ass_result[i]['PRIORITY'], status=ass_result[i]['status'], resolution=ass_result[i]['resolution'], CREATED=ass_result[i]['CREATED'], UPDATED=ass_result[i]['UPDATED'], ) ass.save() for i in range(len(rep_result)): rep = ReporterModel( projectName=rep_result[i]['projectName'], issuekey=rep_result[i]['issuekey'], SUMMARY=rep_result[i]['SUMMARY'], REPORTER=rep_result[i]['REPORTER'], ASSIGNEE=rep_result[i]['ASSIGNEE'], PRIORITY=rep_result[i]['PRIORITY'], status=rep_result[i]['status'], resolution=rep_result[i]['resolution'], CREATED=rep_result[i]['CREATED'], UPDATED=rep_result[i]['UPDATED'], ) rep.save() return HttpResponse("同步完成!!") else: return HttpResponse('没有权限!')
def index(request): proInfo = {} personInfo = {} util = myUtil() sql = util.getSQLStatement('static/SQL/cpm.sql') sql_cpms = util.getSQLStatement('static/SQL/cpms.sql') sql_nocpm = util.getSQLStatement('static/SQL/nocpm.sql') result = util.getQueryResult(sql) result_cpms = util.getQueryResult(sql_cpms) result_nocpm = util.getQueryResult(sql_nocpm) # 三种SQL情况下的所有issue状态为BUG的放入一个列表中 if result_cpms: for i in range(len(result_cpms)): result.append(result_cpms[i]) if result_nocpm: for j in range(len(result_nocpm)): result.append(result_nocpm[j]) # 获取所有项目名 pName = util.getProName(result) # 获取状态以及各状态BUG数量 allBugNum = 0 inprogessNum = 0 openBugNum = 0 closedBugNum = 0 resolvedBugNum = 0 todayOpenBugNum = 0 todayReopenBugNum = 0 todayCloseBugNum = 0 for i in range(len(pName)): status = util.getProStatus(result, pName[i]) proInfo[pName[i]] = status # 所有项目的所有BUG总数 allBugNum += status['total'] openBugNum += status['Open'] inprogessNum += status['InProgress'] closedBugNum += status['Closed'] resolvedBugNum += status['Resolved'] todayOpenBugNum += status['todayOpen'] todayReopenBugNum += status['todayReopen'] todayCloseBugNum += status['todayClose'] # status.append(util.getProStatus(result,pName[i])) # 个人BUG各状态数量 allStatusNum = openStatusNum = closeStatusNum = resolvedStatusNum = inprogessStatusNum = 0 sql_getperson = util.getSQLStatement('static/SQL/getPerson.sql') result_getperson = util.getQueryResult(sql_getperson) personName = util.getPerson(result_getperson) for k in range(len(personName)): status = util.getBugStatus(result_getperson, personName[k]) personInfo[personName[k]] = status allStatusNum += status['total'] openStatusNum += status['open'] closeStatusNum += status['closed'] resolvedStatusNum += status['resolved'] inprogessStatusNum += status['inprogess'] # return render_to_response( 'index.html', { 'proInfo': proInfo, 'allBugNum': allBugNum, 'openBugNum': openBugNum, 'inprogressNum': inprogessNum, 'closedBugNum': closedBugNum, 'resolvedBugNum': resolvedBugNum, 'todayOpenBugNum': todayOpenBugNum, 'todayReopenBugNum': todayReopenBugNum, 'todayCloseBugNum': todayCloseBugNum, 'personInfo': personInfo, 'allStatusNum': allStatusNum, 'openStatusNum': openStatusNum, 'closeStatusNum': closeStatusNum, 'resolvedStatusNum': resolvedStatusNum, 'inprogessStatusNum': inprogessStatusNum, })
def sync_CP4_db(request): if request.method == 'POST': Person.objects.all().delete() Products.objects.all().delete() Projects.objects.all().delete() AllIssues.objects.all().delete() AllReopenBugs.objects.all().delete() # 获取远程数据库数据 util = myUtil() for re in util.getQueryResult( util.getSQLStatement('static/sql/main.sql')): main = AllIssues( productID=re['productID'], productName=re['productName'], projectID=re['projectID'], projectName=re['projectName'], MAIN_STATE=re['MAIN_STATE'], issuekey=re['issuekey'], issueID=re['ID'], SUMMARY=re['SUMMARY'], REPORTER=re['REPORTER'], ASSIGNEE=re['ASSIGNEE'], PRIORITY=re['PRIORITY'], issuestatus=re['issuestatus'], resolution=re['RESOLUTION'], CREATED=re['CREATED'], UPDATED=re['UPDATED'], ) main.save() for re in util.getQueryResult( util.getSQLStatement('static/sql/Products.sql')): products = Products( product_id=re['ID'], product_name=re['pname'], product_key=re['pkey'], ) products.save() for re in util.getQueryResult( util.getSQLStatement('static/sql/Projects.sql')): projects = Projects( project_name=re['NAME'], project_target=re['TARGET'], project_scope=re['SCOPE'], project_level=re['LEVEL'], project_type=re['TYPE'], project_main_state=re['MAIN_STATE'], project_id=re['JIRA_PROJECT_ID'], project_state=re['STATE'], ) projects.save() for re in util.getQueryResult( util.getSQLStatement('static/sql/user_in_group.sql')): users = Person( lower_display_name=re['lower_display_name'], lower_user_name=re['lower_user_name'], ) users.save() for re in util.getQueryResult( util.getSQLStatement('static/sql/bug_reopen_nums.sql')): reopens = AllReopenBugs( issueID=re['issueId'], reopenNum=re['reopenNum'], ) reopens.save() set_pro_bug_reopen_nums() return HttpResponse( simplejson.dumps({ 'success': True, 'message': '同步成功!', }, ensure_ascii=False)) else: return HttpResponse( simplejson.dumps({ 'success': False, 'message': '请求错误!', }, ensure_ascii=False))
def sync_CP4_db(request): if request.method == 'POST': Person.objects.all().delete() Products.objects.all().delete() Projects.objects.all().delete() AllIssues.objects.all().delete() AllReopenBugs.objects.all().delete() # 获取远程数据库数据 util = myUtil() for re in util.getQueryResult(util.getSQLStatement('static/sql/main.sql')): main = AllIssues( productID = re['productID'], productName = re['productName'], projectID = re['projectID'], projectName = re['projectName'], MAIN_STATE = re['MAIN_STATE'], issuekey = re['issuekey'], issueID = re['ID'], SUMMARY = re['SUMMARY'], REPORTER = re['REPORTER'], ASSIGNEE = re['ASSIGNEE'], PRIORITY = re['PRIORITY'], issuestatus = re['issuestatus'], resolution = re['RESOLUTION'], CREATED = re['CREATED'], UPDATED = re['UPDATED'], ) main.save() for re in util.getQueryResult(util.getSQLStatement('static/sql/Products.sql')): products = Products( product_id = re['ID'], product_name = re['pname'], product_key = re['pkey'], ) products.save() for re in util.getQueryResult(util.getSQLStatement('static/sql/Projects.sql')): projects = Projects( project_name = re['NAME'], project_target = re['TARGET'], project_scope = re['SCOPE'], project_level = re['LEVEL'], project_type = re['TYPE'], project_main_state = re['MAIN_STATE'], project_id = re['JIRA_PROJECT_ID'], project_state = re['STATE'], ) projects.save() for re in util.getQueryResult(util.getSQLStatement('static/sql/user_in_group.sql')): users = Person( lower_display_name = re['lower_display_name'], lower_user_name = re['lower_user_name'], ) users.save() for re in util.getQueryResult(util.getSQLStatement('static/sql/bug_reopen_nums.sql')): reopens = AllReopenBugs( issueID = re['issueId'], reopenNum = re['reopenNum'], ) reopens.save() set_pro_bug_reopen_nums() return HttpResponse(simplejson.dumps( { 'success':True, 'message':'同步成功!', },ensure_ascii=False) ) else: return HttpResponse(simplejson.dumps( { 'success':False, 'message':'请求错误!', },ensure_ascii=False) )
def syncCP4DB(request): if request.method=="POST": # 清空表 PersonModel.objects.all().delete() ReporterModel.objects.all().delete() AssignModel.objects.all().delete() CaseBugModel.objects.all().delete() NoCaseBugModel.objects.all().delete() ServerBugModel.objects.all().delete() ClientBugModel.objects.all().delete() SOABugModel.objects.all().delete() InterfaceModel.objects.all().delete() ass_result = [] rep_result = [] nocasebug_result = [] interface_result = [] # 获取远程数据库数据 util = myUtil() # 所有组内成员 sql = "SELECT cu.lower_display_name,cu.lower_user_name FROM cwd_user cu LEFT JOIN cwd_membership cms ON cu.ID = cms.child_id where cms.parent_id = 29988;" result = util.getQueryResult(sql) ass1_sql = util.getSQLStatement('static/SQL/assignee1.sql') ass2_sql = util.getSQLStatement('static/SQL/assignee2.sql') ass3_sql = util.getSQLStatement('static/SQL/assignee3.sql') rep1_sql = util.getSQLStatement('static/SQL/reporter1.sql') rep2_sql = util.getSQLStatement('static/SQL/reporter2.sql') rep3_sql = util.getSQLStatement('static/SQL/reporter3.sql') nocasebug1_sql = util.getSQLStatement('static/SQL/nocasebug1.sql') nocasebug2_sql = util.getSQLStatement('static/SQL/nocasebug2.sql') nocasebug3_sql = util.getSQLStatement('static/SQL/nocasebug3.sql') interface_sql1 = util.getSQLStatement('static/SQL/interface_bug1.sql') interface_sql2 = util.getSQLStatement('static/SQL/interface_bug2.sql') interface_sql3 = util.getSQLStatement('static/SQL/interface_bug3.sql') ass1_result = util.getQueryResult(ass1_sql) rep1_result = util.getQueryResult(rep1_sql) ass2_result = util.getQueryResult(ass2_sql) ass3_result = util.getQueryResult(ass3_sql) rep2_result = util.getQueryResult(rep2_sql) rep3_result = util.getQueryResult(rep3_sql) interface1_result = util.getQueryResult(interface_sql1) interface2_result = util.getQueryResult(interface_sql2) interface3_result = util.getQueryResult(interface_sql3) # =================================================================== # no case bug nocasebug1_result = util.getQueryResult(nocasebug1_sql) nocasebug2_result = util.getQueryResult(nocasebug2_sql) nocasebug3_result = util.getQueryResult(nocasebug3_sql) for i in range(len(interface1_result)): interface_result.append(interface1_result[i]) for i in range(len(interface2_result)): interface_result.append(interface2_result[i]) for i in range(len(interface3_result)): interface_result.append(interface3_result[i]) for i in range(len(interface_result)): interface = InterfaceModel( projectName = interface_result[i]['projectName'], issuekey = interface_result[i]['issuekey'], SUMMARY = interface_result[i]['SUMMARY'], REPORTER = interface_result[i]['REPORTER'], ASSIGNEE = interface_result[i]['ASSIGNEE'], PRIORITY = interface_result[i]['PRIORITY'], status = interface_result[i]['status'], resolution = interface_result[i]['resolution'], CREATED = interface_result[i]['CREATED'], UPDATED = interface_result[i]['UPDATED'], ) interface.save() for i in range(len(nocasebug1_result)): nocasebug_result.append(nocasebug1_result[i]) for i in range(len(nocasebug2_result)): nocasebug_result.append(nocasebug2_result[i]) for i in range(len(nocasebug3_result)): nocasebug_result.append(nocasebug3_result[i]) for i in range(len(nocasebug_result)): no = NoCaseBugModel( projectName = nocasebug_result[i]['projectName'], issuekey = nocasebug_result[i]['issuekey'], SUMMARY = nocasebug_result[i]['SUMMARY'], REPORTER = nocasebug_result[i]['REPORTER'], ASSIGNEE = nocasebug_result[i]['ASSIGNEE'], PRIORITY = nocasebug_result[i]['PRIORITY'], status = nocasebug_result[i]['status'], resolution = nocasebug_result[i]['resolution'], CREATED = nocasebug_result[i]['CREATED'], UPDATED = nocasebug_result[i]['UPDATED'], ) no.save() # =================================================================== for i in range(len(ass1_result)): ass_result.append(ass1_result[i]) for i in range(len(ass2_result)): ass_result.append(ass2_result[i]) for i in range(len(ass3_result)): ass_result.append(ass3_result[i]) for i in range(len(rep1_result)): rep_result.append(rep1_result[i]) for i in range(len(rep2_result)): rep_result.append(rep2_result[i]) for i in range(len(rep3_result)): rep_result.append(rep3_result[i]) # 落地本地数据库 for i in range(len(result)): p = PersonModel( lower_display_name = result[i]['lower_display_name'], lower_user_name = result[i]['lower_user_name'] ) p.save() for i in range(len(ass_result)): ass = AssignModel( projectName = ass_result[i]['projectName'], issuekey = ass_result[i]['issuekey'], SUMMARY = ass_result[i]['SUMMARY'], REPORTER = ass_result[i]['REPORTER'], ASSIGNEE = ass_result[i]['ASSIGNEE'], PRIORITY = ass_result[i]['PRIORITY'], status = ass_result[i]['status'], resolution = ass_result[i]['resolution'], CREATED = ass_result[i]['CREATED'], UPDATED = ass_result[i]['UPDATED'], ) ass.save() for i in range(len(rep_result)): rep = ReporterModel( projectName = rep_result[i]['projectName'], issuekey = rep_result[i]['issuekey'], SUMMARY = rep_result[i]['SUMMARY'], REPORTER = rep_result[i]['REPORTER'], ASSIGNEE = rep_result[i]['ASSIGNEE'], PRIORITY = rep_result[i]['PRIORITY'], status = rep_result[i]['status'], resolution = rep_result[i]['resolution'], CREATED = rep_result[i]['CREATED'], UPDATED = rep_result[i]['UPDATED'], ) rep.save() return HttpResponse("同步完成!!") else: return HttpResponse('没有权限!')
def index(request): proInfo = {} personInfo = {} util = myUtil() sql = util.getSQLStatement('static/SQL/cpm.sql') sql_cpms = util.getSQLStatement('static/SQL/cpms.sql') sql_nocpm = util.getSQLStatement('static/SQL/nocpm.sql') result = util.getQueryResult(sql) result_cpms = util.getQueryResult(sql_cpms) result_nocpm = util.getQueryResult(sql_nocpm) # 三种SQL情况下的所有issue状态为BUG的放入一个列表中 if result_cpms: for i in range(len(result_cpms)): result.append(result_cpms[i]) if result_nocpm: for j in range(len(result_nocpm)): result.append(result_nocpm[j]) # 获取所有项目名 pName = util.getProName(result) # 获取状态以及各状态BUG数量 allBugNum = 0 inprogessNum = 0 openBugNum = 0 closedBugNum = 0 resolvedBugNum = 0 todayOpenBugNum = 0 todayReopenBugNum =0 todayCloseBugNum = 0 for i in range(len(pName)): status = util.getProStatus(result,pName[i]) proInfo[pName[i]] = status # 所有项目的所有BUG总数 allBugNum += status['total'] openBugNum += status['Open'] inprogessNum += status['InProgress'] closedBugNum += status['Closed'] resolvedBugNum += status['Resolved'] todayOpenBugNum += status['todayOpen'] todayReopenBugNum += status['todayReopen'] todayCloseBugNum += status['todayClose'] # status.append(util.getProStatus(result,pName[i])) # 个人BUG各状态数量 allStatusNum = openStatusNum = closeStatusNum = resolvedStatusNum = inprogessStatusNum = 0 sql_getperson = util.getSQLStatement('static/SQL/getPerson.sql') result_getperson = util.getQueryResult(sql_getperson) personName = util.getPerson(result_getperson) for k in range(len(personName)): status = util.getBugStatus(result_getperson,personName[k]) personInfo[personName[k]] = status allStatusNum += status['total'] openStatusNum += status['open'] closeStatusNum += status['closed'] resolvedStatusNum += status['resolved'] inprogessStatusNum += status['inprogess'] # return render_to_response('index.html',{ 'proInfo':proInfo, 'allBugNum':allBugNum, 'openBugNum':openBugNum, 'inprogressNum':inprogessNum, 'closedBugNum':closedBugNum, 'resolvedBugNum':resolvedBugNum, 'todayOpenBugNum':todayOpenBugNum, 'todayReopenBugNum':todayReopenBugNum, 'todayCloseBugNum':todayCloseBugNum, 'personInfo':personInfo, 'allStatusNum':allStatusNum, 'openStatusNum':openStatusNum, 'closeStatusNum':closeStatusNum, 'resolvedStatusNum':resolvedStatusNum, 'inprogessStatusNum':inprogessStatusNum, })