def branch_export(request): export = request.GET.get("export", '') branch_id_list = request.GET.getlist("id", '') if export == "part": if branch_id_list: branch_find = [] for branch_id in branch_id_list: branch_item = Branch.objects.get(id=branch_id) if branch_item: branch_find.append(branch_item) if export == "all": branch_find = Branch.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'monster_branch_' + now + '.csv' response['Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([ str2gb(u'机构名称'), str2gb(u'机构地址'), str2gb(u'负责人'), str2gb(u'电话'), str2gb(u'说明'), ]) for p in branch_find: writer.writerow([ str2gb(p.name), str2gb(p.address), p.owner, p.telphone, str2gb(p.owner) ]) return response
def create_asset_excel(export, asset_id_all): if export == "true": if asset_id_all: asset_find = [] for asset_id in asset_id_all: asset_item = get_object(Host, id=asset_id) if asset_item: asset_find.append(asset_item) response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_cmdb_' + now + '.csv' response[ 'Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([ str2gb(u'主机名'), str2gb(u'IP地址'), str2gb(u'其它IP'), str2gb(u'所在机房'), str2gb(u'资产编号'), str2gb(u'设备类型'), str2gb(u'设备状态'), str2gb(u'操作系统'), str2gb(u'设备厂商'), str2gb(u'CPU型号'), str2gb(u'CPU核数'), str2gb(u'内存大小'), str2gb(u'硬盘信息'), str2gb(u'SN号码'), str2gb(u'所在位置'), str2gb(u'备注信息') ]) for h in asset_find: if h.asset_type: at_num = int(h.asset_type) a_type = ASSET_TYPE[at_num - 1][1] else: a_type = "" if h.status: at_as = int(h.status) a_status = ASSET_STATUS[at_as - 1][1] else: a_status = "" writer.writerow([ str2gb(h.hostname), h.ip, h.other_ip, str2gb(h.idc), str2gb(h.asset_no), str2gb(a_type), str2gb(a_status), str2gb(h.os), str2gb(h.vendor), str2gb(h.cpu_model), str2gb(h.cpu_num), str2gb(h.memory), str2gb(h.disk), str2gb(h.sn), str2gb(h.position), str2gb(h.memo) ]) return response if export == "all": host = Host.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_cmdb_' + now + '.csv' response['Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([ str2gb('主机名'), str2gb('IP地址'), str2gb('其它IP'), str2gb('所在机房'), str2gb('资产编号'), str2gb('设备类型'), str2gb('设备状态'), str2gb('操作系统'), str2gb('设备厂商'), str2gb('CPU型号'), str2gb('CPU核数'), str2gb('内存大小'), str2gb('硬盘信息'), str2gb('SN号码'), str2gb('所在位置'), str2gb('备注信息') ]) for h in host: if h.asset_type: at_num = int(h.asset_type) a_type = ASSET_TYPE[at_num - 1][1] else: a_type = "" if h.status: at_as = int(h.status) a_status = ASSET_STATUS[at_as - 1][1] else: a_status = "" writer.writerow([ str2gb(h.hostname), h.ip, h.other_ip, str2gb(h.idc), str2gb(h.asset_no), str2gb(a_type), str2gb(a_status), str2gb(h.os), str2gb(h.vendor), str2gb(h.cpu_model), str2gb(h.cpu_num), str2gb(h.memory), str2gb(h.disk), str2gb(h.sn), str2gb(h.position), str2gb(h.memo) ]) return response
def resource_export(request): export = request.GET.get("export", '') resource_id_list = request.GET.getlist("id", '') if export == "part": if resource_id_list: resource_find = [] for resource_id in resource_id_list: resource_item = Resource.objects.get(id=resource_id) if resource_item: resource_find.append(resource_item) if export == "all": resource_find = Resource.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_resource_' + now + '.csv' response['Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([ str2gb(u'资源名称'), str2gb(u'资源规格'), str2gb(u'预算金额'), str2gb(u'合同金额'), str2gb(u'合同编号'), str2gb(u'合同开始'), str2gb(u'合同结束'), str2gb(u'供应商名'), str2gb(u'服务电话'), str2gb(u'所属机构'), str2gb(u'备注说明') ]) for p in resource_find: writer.writerow([ str2gb(p.name), str2gb(p.spec), str2gb(p.budget), str2gb(p.paid), str2gb(p.contract), str2gb(p.contract_start), str2gb(p.contract_end), str2gb(p.suppier), str2gb(p.service_phone), str2gb(p.branch), str2gb(p.description) ]) return response
def resource_export(request): resource = Resource.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_resource_' + now + '.csv' response['Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([ str2gb('行政区域'), str2gb('分支机构'), str2gb('资源编码'), str2gb('资源名称'), str2gb('资源规格'), str2gb('预算资金'), str2gb('合同资金'), str2gb('合同编号'), str2gb('合同开始'), str2gb('合同结束'), str2gb('供应商名'), str2gb('服务电话'), str2gb('客户经理'), str2gb('联系电话'), str2gb('备注说明') ]) for r in resource: if r.branch: br = Branch.objects.get(name=r.branch) else: br = "" writer.writerow([ str2gb(br.region.name), str2gb(r.branch.name), r.sn, str2gb(r.name), str2gb(r.spec), str2gb(r.budget), str2gb(r.paid), str2gb(r.contract), str2gb(r.contract_start), str2gb(r.contract_end), str2gb(r.supplier), str2gb(r.service_phone), str2gb(r.owner), str2gb(r.owner.phone), str2gb(r.description) ]) return response
def project_export(request): export = request.GET.get("export", '') project_id_list = request.GET.getlist("id", '') if export == "part": if project_id_list: project_find = [] for project_id in project_id_list: project_item = Project.objects.get(id=project_id) if project_item: project_find.append(project_item) if export == "all": project_find = Project.objects.all() response = HttpResponse(content_type='text/csv') now = timezone.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_project_' + now + '.csv' response['Content-Disposition'] = "attachment; filename="+file_name writer = csv.writer(response) writer.writerow([str2gb(u'项目名称'), str2gb(u'项目描述'), str2gb(u'语言类型'), str2gb(u'程序类型'), str2gb(u'服务器类型'), str2gb(u'程序框架'), str2gb(u'源类型'), str2gb(u'源地址'), str2gb(u'程序部署路径'), str2gb(u'配置文件路径'), str2gb(u'所属产品线'), str2gb(u'项目负责人'), str2gb(u'服务器')]) for p in project_find: server_array = p.serverList server_result = "" for server in p.serverList.all(): server_result += server.hostname+"\n" writer.writerow([str2gb(p.name), str2gb(p.description), p.language_type, p.app_type, p.server_type, p.app_arch, p.source_type, p.source_address, p.appPath, p.configPath, str2gb(p.product), str2gb(p.owner), str2gb(server_result)]) return response
def project_export(request): export = request.GET.get("export", '') project_id_list = request.GET.getlist("id", '') if export == "part": if project_id_list: project_find = [] for project_id in project_id_list: project_item = Project.objects.get(id=project_id) if project_item: project_find.append(project_item) if export == "all": project_find = Project.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_project_' + now + '.csv' response['Content-Disposition'] = "attachment; filename="+file_name writer = csv.writer(response) writer.writerow([str2gb(u'项目名称'), str2gb(u'项目描述'), str2gb(u'语言类型'), str2gb(u'程序类型'), str2gb(u'服务器类型'), str2gb(u'程序框架'), str2gb(u'源类型'), str2gb(u'源地址'), str2gb(u'程序部署路径'), str2gb(u'配置文件路径'), str2gb(u'所属产品线'), str2gb(u'项目负责人'), str2gb(u'服务器')]) for p in project_find: server_array = p.serverList server_result = "" for server in p.serverList.all(): server_result += server.hostname+"\n" writer.writerow([str2gb(p.name), str2gb(p.description), p.language_type, p.app_type, p.server_type, p.app_arch, p.source_type, p.source_address, p.appPath, p.configPath, str2gb(p.product), str2gb(p.owner), str2gb(server_result)]) return response
def create_asset_excel(export, asset_id_all): if export == "true": if asset_id_all: asset_find = [] for asset_id in asset_id_all: asset_item = get_object(Host, id=asset_id) if asset_item: asset_find.append(asset_item) response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_cmdb_' + now + '.csv' response['Content-Disposition'] = "attachment; filename="+file_name writer = csv.writer(response) writer.writerow([str2gb(u'主机名'), str2gb(u'IP地址'), str2gb(u'其它IP'), str2gb(u'主机组'), str2gb(u'资产编号'), str2gb(u'设备类型'), str2gb(u'设备状态'), str2gb(u'操作系统'), str2gb(u'设备厂商'), str2gb(u'CPU型号'), str2gb(u'CPU核数'), str2gb(u'内存大小'), str2gb(u'硬盘信息'), str2gb(u'SN号码'), str2gb(u'所在机房'), str2gb(u'所在位置'), str2gb(u'备注信息')]) for h in asset_find: if h.asset_type: at_num = int(h.asset_type) a_type = ASSET_TYPE[at_num-1][1] else: a_type = "" if h.status: at_as = int(h.status) a_status = ASSET_STATUS[at_as-1][1] else: a_status = "" writer.writerow([str2gb(h.hostname), h.ip, h.other_ip, str2gb(h.group), str2gb(h.asset_no), str2gb(a_type), str2gb(a_status), str2gb(h.os), str2gb(h.vendor), str2gb(h.cpu_model), str2gb(h.cpu_num), str2gb(h.memory), str2gb(h.disk), str2gb(h.sn), str2gb(h.idc), str2gb(h.position), str2gb(h.memo)]) return response if export == "all": host = Host.objects.all() response = HttpResponse(content_type='text/csv') now = datetime.datetime.now().strftime('%Y_%m_%d_%H_%M') file_name = 'adminset_cmdb_' + now + '.csv' response['Content-Disposition'] = "attachment; filename=" + file_name writer = csv.writer(response) writer.writerow([str2gb('主机名'), str2gb('IP地址'), str2gb('其它IP'), str2gb('主机组'), str2gb('资产编号'), str2gb('设备类型'), str2gb('设备状态'), str2gb('操作系统'), str2gb('设备厂商'), str2gb('CPU型号'), str2gb('CPU核数'), str2gb('内存大小'), str2gb('硬盘信息'), str2gb('SN号码'), str2gb('所在机房'), str2gb('所在位置'), str2gb('备注信息')]) for h in host: if h.asset_type: at_num = int(h.asset_type) a_type = ASSET_TYPE[at_num-1][1] else: a_type = "" if h.status: at_as = int(h.status) a_status = ASSET_STATUS[at_as-1][1] else: a_status = "" writer.writerow([str2gb(h.hostname), h.ip, h.other_ip, str2gb(h.group), str2gb(h.asset_no), str2gb(a_type), str2gb(a_status), str2gb(h.os), str2gb(h.vendor), str2gb(h.cpu_model), str2gb(h.cpu_num), str2gb(h.memory), str2gb(h.disk), str2gb(h.sn), str2gb(h.idc), str2gb(h.position), str2gb(h.memo)]) return response