Ejemplo n.º 1
0
def Yesupdate(request):
    newname = request.POST.get('fbname')
    oldname = request.POST.get('oldname')
    cabname = request.POST.get('cab')
    acap = request.POST.get('acap')
    bcap = request.POST.get('bcap')
    apos = request.POST.get('apos')
    bpos = request.POST.get('bpos')
    aport = request.POST.get('aport')
    bport = request.POST.get('bport')
    man = request.POST.get('man')
    bk = request.POST.get('bk')
    date = request.POST.get('date')
    state = request.POST.get('state')

    if oldname == newname:
        if state != None:
            fibre = Fibre.objects.filter(FibreName=oldname)
            fibre.update(FibreName=newname, Acap=acap, Aposition=apos, Aport=aport, Bcap=bcap,
                         Bposition=bpos, Bport=bport, MainMan=man, BkMan=bk, StartData=date, STATE=state)
            logprint.loge("光纤修改", request.user.username, "修改"+newname, "update")
            return render(request, 'polls/ok.html')
        else:
            fibre = Fibre.objects.filter(FibreName=oldname)
            fibre.update(FibreName=newname, Acap=acap, Aposition=apos, Aport=aport, Bcap=bcap,
                         Bposition=bpos, Bport=bport, MainMan=man, BkMan=bk, StartData=date)
            logprint.loge("光纤修改", request.user.username, "修改"+newname, "update")
            return render(request, 'polls/ok.html')
Ejemplo n.º 2
0
def upFirbe(request):
    myFile = request.FILES.get("file", None)
    if myFile != None:
        Filename = myFile.name
        if Filename.endswith('.xlsx') and "光纤" in Filename:
            time = timezone.localtime(timezone.now()).strftime("%Y-%m-%d %H-%I-%S")
            Ftime = time + "-" + Filename

            with open(BASE_DIR + Ftime, 'wb+') as destination:
                for chunk in myFile.chunks():
                    destination.write(chunk)
                destination.close()
                print("成功")
            errorlis = Save(request, Ftime)
            number = len(errorlis)
            if number == 0:
                logprint.loge("导入光纤路由成功", request.user.username, "", "up")
                return render(request, "polls/ok.html")
            else:
                logprint.loge("导入光纤路由有错误", request.user.username, "", "up")
                return render(request, 'polls/okk.html', {"error": errorlis, "num": number})
        else:
            return render(request, 'polls/no.html')
    else:
        return render(request, 'polls/nono.html')
Ejemplo n.º 3
0
def deluser(request):
    name = request.GET.get('id')
    fibre = User.objects.get(username=name)
    fibre.delete()
    resp = {'code': 100, 'detail': 'Get success'}
    logprint.loge("删除用户", request.user.username, "用户名" + name, "deleteUser")
    return HttpResponse(json.dumps(resp), content_type="application/json")
Ejemplo n.º 4
0
def cabdeletfirbe(request):
    name = request.GET.get('id')
    fibre = Cable.objects.filter(Cablename=name)
    fibre.delete()
    resp = {'code': 100, 'detail': 'Get success'}
    logprint.loge("删除光缆", request.user.username, "编号" + name, "deleteCab")
    return HttpResponse(json.dumps(resp), content_type="application/json")
Ejemplo n.º 5
0
def FibeView(request):
    Fb = Fibre.objects.all()
    size=len(Fb)
    ok = len(Fb.filter(STATE="已使用"))
    nook = len(Fb.filter(STATE="未分配"))
    eoor = len(Fb.filter(STATE="故障"))
    logprint.loge("查看光纤".encode("utf-8"), request.user.username, "", "query")
    return render(request, 'polls/FibeView.html', {"ok": ok, "nook": nook, "eoor": eoor, "size": size})
Ejemplo n.º 6
0
def Wetfirbe(request):
    name = request.GET.get('id')
    fibre = ChanelRoute.objects.get(ChanelRouteNumber=name)
    fibre.ChanelNumber.clear
    fibre.delete()
    resp = {'code': 100, 'detail': 'Get success'}
    logprint.loge("删除波道路由", request.user.username, "编号" + name, "deleteWsr")
    return HttpResponse(json.dumps(resp), content_type="application/json")
Ejemplo n.º 7
0
def QureyChannel(request):
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('pagesize', 10))
    channel = request.GET.get('channel')
    Firbenumber = request.GET.get('Firbenumber')
    pro = request.GET.get('pro')
    state = request.GET.get('state')
    # 查询条件字典
    querydict = {}
    # 查询条件判断
    if channel:
        querydict['Channelname__icontains'] = channel
    # 查询条件判断

    if pro:
        querydict['Mainman__icontains'] = pro
    if state:
        querydict['STATE__icontains'] = state
    if Firbenumber:
        querydict['Firbenumber__icontains'] = Firbenumber
    # 查询结果集
    result = Channel.objects.filter(
        **querydict).order_by("Channelname")[(page - 1) * pagesize:page *
                                             pagesize]
    # 存储查询到的变量值的列表
    Modellist = []
    # 如果有查询结果
    if result:
        map = math.ceil(len(Channel.objects.filter(**querydict)) / pagesize)
        for ResultChild in result:
            # 临时存储单个结果的字典
            dictchid = {}
            dictchid['Channelname'] = ResultChild.Channelname
            dictchid['Mainman'] = ResultChild.Mainman
            dictchid['Business'] = ResultChild.Business
            dictchid['Firbenumber'] = ResultChild.Firbenumber
            dictchid['STATE'] = ResultChild.STATE
            Modellist.append(dictchid)
        logprint.loge("波道查询", request.user.username, "OK", "query")
        return HttpResponse(json.dumps({
            "   mo": Modellist,
            "map": map
        }),
                            content_type="application/json")

    else:
        # 没有查到结果则返回未找到
        Errorlist = []
        dictchid = {}
        dictchid['Channelname'] = "未找到"
        dictchid['Mainman'] = "未找到"
        dictchid['Business'] = "未找到"
        dictchid['Firbenumber'] = "未找到"
        Errorlist.append(dictchid)
        logprint.loge("波道查询", request.user.username, "未找到", "query")
        return HttpResponse(json.dumps({"mo": Errorlist}),
                            content_type="application/json")
Ejemplo n.º 8
0
def userdate(request):
    username = request.POST.get('username')
    password = request.POST.get('password')
    if password!="":
        fibre = User.objects.get(username=username)
        fibre.set_password(password)
        fibre.save()
        logprint.loge("更新密码", username, "普通用户:" + username, "updateuser")
        return render(request, 'polls/ok.html')
    else:
        return render(request, 'polls/eoor.html')
Ejemplo n.º 9
0
def Queryfirbe(request):
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('pagesize', 10))
    fire = request.GET.get('firenumber')
    pro = request.GET.get('protect')
    cab = request.GET.get('cab')
    state = request.GET.get('state')
    querydict = {}

    # 条件搜索区域
    if fire:
        # 单个查询条件
        querydict['FibreName__icontains'] = fire
    if pro:
        querydict['MainMan__icontains'] = pro
    if cab:
        querydict['Cable__Cablename__icontains'] = cab
    if state:
        querydict['STATE__icontains'] = state

    # 获得总页数
    size = math.ceil(len(Fibre.objects.filter(**querydict)) / pagesize)
    # 准备一个列表
    Modellist = []
    # 分页查询结果集
    result = Fibre.objects.filter(**querydict)[(page - 1) * pagesize:page *
                                               pagesize]
    if result:
        # 遍历结果
        for fix in result:
            dictchid = {}
            # 把结果封装到字典里
            dictchid['FibreName'] = fix.FibreName
            dictchid['Cable'] = fix.Cable.Cablename
            dictchid['MainMan'] = fix.MainMan
            dictchid['StartData'] = fix.StartData
            dictchid['STATE'] = fix.STATE
            dictchid['map'] = size
            Modellist.append(dictchid)
        logprint.loge("光纤查询", request.user.username, "成功查询", "query")
        return HttpResponse(json.dumps(Modellist),
                            content_type="application/json")
    else:
        dictchid = {}
        dictchid['FibreName'] = "未找到"
        dictchid['Cable'] = "未找到"
        dictchid['MainMan'] = "未找到"
        dictchid['StartData'] = "未找到"

        Modellist.append(dictchid)
        logprint.loge("光纤查询", request.user.username, "未找到", "query")

        return HttpResponse(json.dumps(Modellist),
                            content_type="application/json")
Ejemplo n.º 10
0
def updatepassword(request):
    us = request.GET.get('username')
    old=request.GET.get('oldpassword')
    new =request.GET.get('newpassword')
    use=User.objects.get(username=us)
    if use.check_password(old):
        use.set_password(new)
        use.groups.add()
        use.save()
        logprint.loge("修改密码", us, "普通:" + us+"-修改了密码", "updateuser")
        return HttpResponse(json.dumps({"yes": "修改成功"}), content_type="application/json")
    else:
        return HttpResponse(json.dumps({"yes": "修改失败,旧密码错误"}), content_type="application/json")
Ejemplo n.º 11
0
def Cabview(request):
    Fb = Cable.objects.all()
    paginator = Paginator(Fb, 8)  # 每页显示25条

    page = request.GET.get('page')
    try:
        contacts = paginator.page(page)
    except PageNotAnInteger:
        # 如果请求的页数不是整数,返回第一页。
        contacts = paginator.page(1)
    except EmptyPage:
        # 如果请求的页数不在合法的页数范围内,返回结果的最后一页。
        contacts = paginator.page(paginator.num_pages)
    logprint.loge("查看光缆".encode("utf-8"), request.user.username, "", "query")
    return render(request, 'polls/CableView.html', {"c": contacts})
Ejemplo n.º 12
0
def login(request):
    username = request.POST.get('username')
    password = request.POST.get('password')

    if password and username:
        user = authenticate(username=username, password=password)
        if user is not None:
            auth.login(request, user)
            ip = request.META.get("REMOTE_ADDR", None)
            logprint.loge("登录", username, "IP:"+ip, "login")
            return HttpResponseRedirect("index")
        else:
            return render(request, 'polls/loginerror.html')
    else:
         return render(request, 'polls/loginerror.html')
Ejemplo n.º 13
0
def newuser(request):
    us = request.GET.get('username')
    pa = request.GET.get('password')
    admin=request.GET.get('admin')
    if len(User.objects.filter(username=us)) != 0:
        return HttpResponse(json.dumps({"yes": "用户已存在!"}), content_type="application/json")

    else:
        if admin=="true":
            user = User.objects.create_superuser(us,"*****@*****.**",pa)
            user.save()
            logprint.loge("新增用户", request.user.username, "普通用户:"+us, "adduser")
            return HttpResponse(json.dumps({"yes": "注册成功"}), content_type="application/json")
        else:
            user = User.objects.create_user(us)
            user.set_password(pa)
            user.save()
            logprint.loge("新增用户", request.user.username, "管理员:"+us, "adduser")
            return HttpResponse(json.dumps({"yes": "注册成功"}), content_type="application/json")
Ejemplo n.º 14
0
def channelupdate(request):
    newname = request.POST.get('Channelname')
    acap = request.POST.get('acap')
    bcap = request.POST.get('bcap')
    apos = request.POST.get('Aposition')
    bpos = request.POST.get('Bposition')
    man = request.POST.get('Mainman')
    AChannel = request.POST.get('AChannel')
    BChannel = request.POST.get('BChannel')
    Aequipment = request.POST.get('Aequipment')
    Business = request.POST.get('Business')
    Bequipment = request.POST.get('Bequipment')
    Aassets = request.POST.get('Aassets')
    Bassets = request.POST.get('Bassets')
    Businesss = request.POST.get('Business')
    Customer = request.POST.get('Customer')
    bk = request.POST.get('BkMan')
    state = request.POST.get('STATE')
    if state != None:
        fibre = Channel.objects.filter(Channelname=newname)
        fibre.update(Business=Business.strip(), Customer=Customer.strip(),
                     Channelname=newname.strip(), Acap=acap,
                     Bcap=bcap,
                     Aposition=apos,
                     Bposition=bpos, Aequipment=Aequipment, Bequipment=Bequipment, AChannel=AChannel, BChannel=BChannel,
                     STATE=state,
                     Aassets=Aassets, Bassets=Bassets, Mainman=man,
                     BkMan=bk.strip())
        logprint.loge("修改波道", request.user.username, "波道:" + newname, "upadtechannel")
        return render(request, 'polls/ok.html')
    else:
        fibre = Channel.objects.filter(Channelname=newname)
        fibre.update(Business=Business.strip(), Customer=Customer.strip(),
                     Channelname=newname.strip(), Acap=acap,
                     Bcap=bcap,
                     Aposition=apos,
                     Bposition=bpos, Aequipment=Aequipment, Bequipment=Bequipment, AChannel=AChannel, BChannel=BChannel,

                     Aassets=Aassets, Bassets=Bassets, Mainman=man,
                     BkMan=bk.strip())
        logprint.loge("修改波道", request.user.username, "波道:" + newname, "upadtechannel")
        return render(request, 'polls/ok.html')
Ejemplo n.º 15
0
def ChannelView(request):
    logprint.loge("查看波道".encode("utf-8"), request.user.username, "", "query")

    return render(request, 'polls/Channel.html')\
Ejemplo n.º 16
0
def Wsr(request):
    logprint.loge("查看路由", request.user.username, "", "query")
    return render(request, 'polls/WsRou.html')
Ejemplo n.º 17
0
def QureyWs(request):
    page = int(request.GET.get('page', 1))
    pagesize = int(request.GET.get('pagesize', 5))
    ChanelRouteNumber = request.GET.get('channelname')
    fir = request.GET.get('firenumber')
    # 查询条件字典
    querydict = {}
    if ChanelRouteNumber:
        querydict['ChanelNumber__Channelname__icontains'] = ChanelRouteNumber
    # 查询条件判断
    if fir:
        querydict['ChanelNumber__Firbes__FibreName__icontains'] = fir
    Modellist = []
    result = ChanelRoute.objects.filter(**querydict)[(page - 1) *
                                                     pagesize:page * pagesize]
    if result:
        exist = []

        for ResultChild in result:
            Fibeset = set()
            chanset = set()
            if ResultChild.pk in exist:
                continue
            else:
                exist.append(ResultChild.pk)
            # 临时存储单个结果的字典
            dictchid = {}
            str = ""
            dictchid['Business'] = ResultChild.Business
            dictchid['Mainman'] = ResultChild.Mainman
            Call = ResultChild.ChanelNumber.all()
            for cv in Call:
                fall = cv.Channelname
                chanset.add(fall + "_")
            for cls in Call:
                fall = cls.Firbenumber.strip()
                if fall in Fibeset:
                    continue
                else:
                    Fibeset.add(fall)
            dictchid['ChanelRouteNumber'] = ResultChild.ChanelRouteNumber
            sccc = str.join(Fibeset)
            dictchid['FibreName'] = sccc
            dictchid['ChanelNumbers'] = "".join(chanset)
            Modellist.append(dictchid)
        map = math.ceil(
            len(ChanelRoute.objects.filter(**querydict)) / pagesize)
        return HttpResponse(json.dumps({
            "mo": Modellist,
            "map": map
        }),
                            content_type="application/json")
    else:
        # 没有查到结果则返回未找到
        Errorlist = []
        dictchid = {}
        dictchid['ChanelNumbers'] = "未找到"
        dictchid['Business'] = "未找到"
        dictchid['Mainman'] = "未找到"
        dictchid['ChanelRouteNumber'] = "未找到"
        Errorlist.append(dictchid)
        map = 1
        logprint.loge("光缆查询", request.user.username, "失败", "query")
        return HttpResponse(json.dumps({
            "mo": Modellist,
            "map": map
        }),
                            content_type="application/json")
Ejemplo n.º 18
0
def Uses(request):
    if request.user.is_superuser:
        logprint.loge("查看用户".encode("utf-8"), request.user.username, "", "query")
        return render(request, 'polls/User.html')
    else:
        return render(request, 'polls/Channel.html')
Ejemplo n.º 19
0
def loginout(request):
    logprint.loge("退出登录", request.user.username, "用户:"+request.user.username, "loginout")
    auth.logout(request)
    return HttpResponseRedirect("login")