示例#1
0
文件: views.py 项目: KGPython/scm2
def update_pwd(request):
    rs = {}
    ucode = request.POST.get('ucode')
    passwd = request.POST.get('passwd')
    try:
        user = BasUser.objects.get(ucode=ucode)
        user.password = mtu.md5(passwd)
        user.save()
        rs["status"] = "0"
    except Exception as e:
        rs["status"] = "1"
        print(e)
    return HttpResponse(json.dumps(rs))
示例#2
0
文件: views.py 项目: KGPython/scm
def update_pwd(request):
    rs = {}
    ucode = request.POST.get('ucode')
    passwd = request.POST.get('passwd')
    try:
        user = BasUser.objects.get(ucode=ucode)
        user.password =  mtu.md5(passwd)
        user.save()
        rs["status"] = "0"
    except Exception as e:
        rs["status"] = "1"
        print(e)
    return HttpResponse(json.dumps(rs))
示例#3
0
def uppwd(request):
    data = {}
    flag = mtu.getReqVal(request, "flag")
    #修改
    if flag == "1":
        user = request.session.get("s_user", None)
        ucode = user["ucode"]
    elif flag == "2":
        ucode = mtu.getReqVal(request, "ucode")

    data["result"] = "1"
    try:
        newPwd = mtu.getReqVal(request, "newPwd", "")
        pwd = mtu.md5(newPwd)
        BasUser.objects.filter(ucode=ucode).update(password=pwd)

        data["result"] = "0"
    except Exception as e:
        print(e)

    return HttpResponse(json.dumps(data))
示例#4
0
文件: views.py 项目: KGPython/scm
def uppwd(request):
    data = {}
    flag = mtu.getReqVal(request,"flag")
    #修改
    if flag=="1":
        user = request.session.get("s_user",None)
        ucode = user["ucode"]
    elif flag=="2":
        ucode = mtu.getReqVal(request,"ucode")

    data["result"] = "1"
    try:
        newPwd = mtu.getReqVal(request,"newPwd","")
        pwd = mtu.md5(newPwd)
        BasUser.objects.filter(ucode=ucode).update(password=pwd)

        data["result"] = "0"
    except Exception as e:
        print(e)

    return HttpResponse(json.dumps(data))
示例#5
0
def login(request):
    ucode = mtu.getReqVal(request, "ucode", "")
    password = mtu.getReqVal(request, "password", "")
    vcode = mtu.getReqVal(request, "vcode", "")
    try:
        olduser = request.session.get("s_user", default=None)
        vcode2 = request.session["s_vcode"]
    except:
        olduser = []
        vcode2 = ""

    response_data = {}
    try:
        #判断是否过期:过期后不显示业务菜单,只显示首页、退出,提醒已经过期。
        if not olduser:
            if vcode == vcode2:
                #查询用户信息
                user = BasUser.objects.get(ucode=ucode)
                if user:
                    upwd = user.password
                    password = mtu.md5(password)
                    if upwd == password:
                        request.session["s_user"] = user.toDict()
                        request.session["s_ucode"] = user.ucode
                        request.session["s_uname"] = user.nm
                        request.session["s_utype"] = user.utype
                        request.session["menu_type"] = user.utype
                        #根据grpcode查询grpname:
                        #   如果utype==3,登录用户为报表系统用户
                        #   如果utype==2,登录用户为供应商则grpname为供应商名称
                        #   如果utype==1,登录用户为零售商则grpname为零售商名称
                        if user.utype == "3":
                            getRbacRole(request, ucode)
                            response_data[
                                'homeurl'] = Constants.URL_REPORT_HOME
                        else:
                            if user.utype == "2":  #供应商
                                grpcode = findGrpCodeBySuppCode(user.grpcode)
                                request.session["s_grpcode"] = grpcode
                                try:
                                    fee = BasFee.objects.get(
                                        suppcode=user.grpcode,
                                        grpcode=grpcode,
                                        ucode=ucode)
                                    request.session["s_fee"] = fee.toDict()
                                except Exception as e:
                                    print(e)
                                    request.session["s_fee"] = {"status": "N"}
                                request.session["s_suppcode"] = user.grpcode

                                supp = findGrpNameByCode(
                                    user.grpcode, user.utype)
                                request.session["s_suppname"] = supp.chnm
                                request.session[
                                    "s_contracttype"] = supp.contracttype
                                request.session["s_paytypeid"] = supp.paytypeid
                                request.session["s_bank"] = supp.bank
                                request.session["s_accountno"] = supp.accountno

                                grp = findGrpNameByCode(grpcode, "1")
                                request.session["s_grpname"] = grp.grpnm

                                response_data[
                                    'homeurl'] = Constants.URL_SUPPLIER_HOME

                            if user.utype == "1":  #零售商
                                request.session["s_grpcode"] = user.grpcode

                                grp = findGrpNameByCode(
                                    user.grpcode, user.utype)
                                request.session["s_grpname"] = grp.grpnm
                                request.session["s_fee"] = {}
                                response_data[
                                    'homeurl'] = Constants.URL_RETAILER_HOME

                            request.session["homeurl"] = response_data[
                                'homeurl']
                            #查询角色,多个角色用“,”分割
                            urs = findRoleByUcode(user.ucode)
                            if urs:
                                urole = urs[0]
                                #查询菜单权限
                                purlist = findPurByRcode(urs[2])
                                request.session["s_rcodes"] = urs[1]
                                request.session["isadmin"] = urs[3]
                                request.session["s_urole"] = urole
                                request.session["s_umenu"] = getMenu(purlist)
                                response_data['status'] = "0"

                                #添加登录日志
                                if user.utype == "2":
                                    lastlandtime = datetime.date.today(
                                    ).strftime("%Y-%m-%d")
                                    slist = BasSuppLand.objects.filter(
                                        suppcode=user.grpcode,
                                        lastlandtime__gte=
                                        "{lastlandtime} 00:00:00".format(
                                            lastlandtime=lastlandtime)).values(
                                                "landcs")
                                    if slist and slist[0]:
                                        sland = slist[0]
                                        landcs = sland["landcs"] + 1
                                        BasSuppLand.objects.filter(
                                            suppcode=user.grpcode,
                                            lastlandtime__gte=
                                            "{lastlandtime} 00:00:00".format(
                                                lastlandtime=lastlandtime
                                            )).update(landcs=landcs,
                                                      lastlandtime=datetime.
                                                      datetime.today())
                                    else:
                                        fee = request.session.get("s_fee")
                                        if fee:
                                            status = fee["status"]
                                        else:
                                            status = "N"
                                        suppname = request.session.get(
                                            "s_suppname")
                                        lastLand = BasSuppLand.objects.values(
                                            "allcs").latest("allcs")
                                        if lastLand:
                                            allcs = lastLand["allcs"] + 1
                                        else:
                                            allcs = 1

                                        bs = BasSuppLand()
                                        bs.grpcode = "00069"
                                        bs.utype = "2"
                                        bs.suppcode = user.grpcode
                                        bs.landcs = 1
                                        bs.lastlandtime = datetime.date.today()
                                        bs.status = status
                                        bs.supname = suppname
                                        bs.remark = ""
                                        bs.ylzd1 = ""
                                        bs.ylzd2 = ""
                                        bs.allcs = allcs
                                        bs.save()

                            else:
                                response_data['status'] = "4"
                    else:
                        response_data['status'] = "2"
                else:
                    response_data['status'] = "1"
            else:
                response_data['status'] = "3"
        else:
            response_data['status'] = "0"
            if olduser["utype"] == "1":
                response_data['homeurl'] = Constants.URL_RETAILER_HOME
            elif olduser["utype"] == "3":
                response_data['homeurl'] = Constants.URL_REPORT_HOME
            else:
                response_data['homeurl'] = Constants.URL_SUPPLIER_HOME
    except Exception as e:
        print(e)

    return HttpResponse(json.dumps(response_data),
                        content_type="application/json")
示例#6
0
文件: home.py 项目: KGPython/scm2
def index(request):

    user = request.session.get("s_user", None)
    suppcode = request.session.get("s_suppcode")
    s_grpcode = request.session.get("s_grpcode")
    paytypeid = request.session.get("s_paytypeid")
    contracttype = request.session.get("s_contracttype")
    if user:
        pubList = findPubInfoAllByCon(user)
    else:
        pubList = []

    pageNum = int(request.GET.get("pageNum", 1))

    page = Paginator(pubList,
                     __EACH_PAGE_SHOW_NUMBER,
                     allow_empty_first_page=True).page(pageNum)

    upwd = user["password"]
    pwd = mtu.md5(suppcode)
    pwdInit = False
    if upwd == pwd:
        pwdInit = True

    #查询对账日期
    ritemList = ReconcilItem.objects.filter(pid=paytypeid).values("rid")
    rdays = []
    tdays = []
    rlist = []
    if ritemList:
        for ritem in ritemList:
            rid = ritem["rid"]
            reconcil = Reconcil.objects.filter(id=rid, status=1).values(
                "rname", "beginday", "endday")
            if reconcil:
                row = reconcil[0]
                rlist.append(dict(row))

    rlist = sorted(rlist, key=lambda row: row["beginday"])
    rds = ""
    tds = ""
    if rlist:
        for rw in rlist:
            begin = rw["beginday"]
            end = rw["endday"]

            rdays.append("{begin}-{end}".format(begin=begin, end=end))
            if "随时" in rw["rname"]:
                tdays.append("{begin}-{end}".format(begin=begin, end=end))
            else:
                if begin <= 15:
                    tdays.append("1-{begin}".format(begin=begin - 1))
                else:
                    tdays.append("16-{begin}".format(begin=begin - 1))
        rds = ",".join(rdays)
        tds = ",".join(tdays)

    endDate = ""
    try:
        fee = BasFee.objects.get(suppcode=suppcode,
                                 grpcode=s_grpcode,
                                 ucode=user["ucode"])
        if fee:
            endDate = fee.enddate

        conn = mtu.get_MssqlConn()
        #供应商结算方式
        pdict = findPayType(2)
        if pdict and paytypeid:
            payTypeName = pdict[str(int(paytypeid))]
        else:
            payTypeName = ""
        #g-购销 l-联营 d-代销  z-租赁
        pstart, pend, cstart, cend = getStartAndEndDate(
            contracttype, payTypeName)
        #查询单据信息(动态查询)
        rdict = findBillItem(conn, suppcode, pstart, pend, cstart, cend, None,
                             contracttype)
        if rdict and rdict["blist"]:
            blist = rdict["blist"]
            blen = len(blist)
            request.session["s_rdict"] = blen
        else:
            request.session["s_rdict"] = 0
        conn.close()
    except Exception as e:
        print(e)

    return render(
        request, "index.html", {
            "page": page,
            "pageNum": pageNum,
            "pwdInit": pwdInit,
            "rdays": rds,
            "tdays": tds,
            "endDate": endDate,
            "payTypeName": payTypeName
        })
示例#7
0
文件: views.py 项目: KGPython/scm2
def index(request):
    grpcode = request.session.get('s_grpcode', '')
    utype = request.session.get("s_utype")
    page = mtu.getReqVal(request, "page", "1")

    action = mtu.getReqVal(request, "action")

    nm = mtu.getReqVal(request, "nm")
    ucode = mtu.getReqVal(request, "ucode")
    pwd = mtu.getReqVal(request, "pwd")
    dept = mtu.getReqVal(request, "dept")
    status = mtu.getReqVal(request, "status")
    remark = mtu.getReqVal(request, "remark")

    user = BasUser()
    if action != "new":
        try:
            user = BasUser.objects.get(ucode=ucode)
        except:
            user = None

        if action == "save":
            if not user:
                user = BasUser()
                user.ucode = ucode
                user.budate = datetime.date.today()

            user.password = mtu.md5(pwd)
            user.nm = nm
            user.dept = dept
            user.utype = utype
            user.status = status
            user.remark = remark
            user.grpcode = grpcode
            user.save()

            ke = BasKe()
            ke.kbcode = user.ucode
            ke.kbname = user.nm
            ke.save()
        elif action == "del":
            try:
                ke = BasKe.objects.get(kbcode=ucode)
                if ke:
                    ke.delete()
            except Exception as e:
                print(e)
            if user:
                user.delete()
            user = BasUser()

    retUserList = BasUser.objects.values('ucode', 'nm', 'password', 'dept',
                                         'depttype', 'utype', 'status',
                                         'grpcode').filter(grpcode=grpcode)
    paginator = Paginator(retUserList, LIMIT)
    try:
        retUserList = paginator.page(int(page))
    except Exception as e:
        print(e)
        retUserList = []

    pageCount = paginator.num_pages
    pageList = []
    for index in range(1, pageCount + 1):
        pageList.append(index)
    usertype = (str(utype), Constants.USER_TYPE.get(utype))

    rs = {}
    rs["page"] = page
    rs["usertype"] = usertype
    rs["retUserList"] = retUserList
    rs["pageList"] = pageList
    rs["grpcode"] = grpcode
    rs["user"] = user
    return render(request, 'admin/sysConf_retail_admin.html', rs)
示例#8
0
文件: views.py 项目: KGPython/scm
def index(request):
    grpcode = request.session.get('s_grpcode','')
    utype = request.session.get("s_utype")
    page = mtu.getReqVal(request,"page","1")

    action = mtu.getReqVal(request,"action")

    nm = mtu.getReqVal(request,"nm")
    ucode = mtu.getReqVal(request,"ucode")
    pwd = mtu.getReqVal(request,"pwd")
    dept = mtu.getReqVal(request,"dept")
    status = mtu.getReqVal(request,"status")
    remark = mtu.getReqVal(request,"remark")

    user = BasUser()
    if action!="new":
        try:
            user = BasUser.objects.get(ucode=ucode)
        except:
           user = None

        if action == "save":
            if not user:
                user = BasUser()
                user.ucode = ucode
                user.budate = datetime.date.today()

            user.password = mtu.md5(pwd)
            user.nm = nm
            user.dept = dept
            user.utype = utype
            user.status = status
            user.remark = remark
            user.grpcode = grpcode
            user.save()

            ke = BasKe()
            ke.kbcode = user.ucode
            ke.kbname = user.nm
            ke.save()
        elif action == "del":
            try:
                ke = BasKe.objects.get(kbcode=ucode)
                if ke:
                    ke.delete()
            except Exception as e:
               print(e)
            if user:
                user.delete()
            user = BasUser()

    retUserList = BasUser.objects.values('ucode','nm','password','dept','depttype','utype','status','grpcode').filter(grpcode=grpcode)
    paginator = Paginator(retUserList,LIMIT)
    try:
        retUserList = paginator.page(int(page))
    except Exception as e:
        print(e)
        retUserList = []

    pageCount = paginator.num_pages
    pageList = []
    for index in range(1,pageCount+1):
        pageList.append(index)
    usertype = (str(utype),Constants.USER_TYPE.get(utype))

    rs = {}
    rs["page"] = page
    rs["usertype"] = usertype
    rs["retUserList"] = retUserList
    rs["pageList"] = pageList
    rs["grpcode"] = grpcode
    rs["user"] = user
    return render(request,'admin/sysConf_retail_admin.html',rs)
示例#9
0
文件: views.py 项目: KGPython/scm
def login(request):
    ucode = mtu.getReqVal(request,"ucode","")
    password = mtu.getReqVal(request,"password","")
    vcode = mtu.getReqVal(request,"vcode","")
    try:
        olduser = request.session.get("s_user",default=None)
        vcode2 = request.session["s_vcode"]
    except:
        olduser = []
        vcode2 = ""

    response_data = {}
    try:
        #判断是否过期:过期后不显示业务菜单,只显示首页、退出,提醒已经过期。
        if not olduser:
            if vcode==vcode2:
                #查询用户信息
                user = BasUser.objects.get(ucode=ucode)
                if user:
                    upwd = user.password
                    password = mtu.md5(password)
                    if upwd==password:
                        request.session["s_user"] = user.toDict()
                        request.session["s_ucode"] = user.ucode
                        request.session["s_uname"] = user.nm
                        request.session["s_utype"] = user.utype
                        request.session["menu_type"] = user.utype
                        #根据grpcode查询grpname:
                        #   如果utype==2,登录用户为供应商则grpname为供应商名称
                        #   如果utype==1,登录用户为零售商则grpname为零售商名称
                        if user.utype == "2":    #供应商
                            grpcode = findGrpCodeBySuppCode(user.grpcode)
                            request.session["s_grpcode"] = grpcode
                            try:
                                fee =  BasFee.objects.get(suppcode=user.grpcode,grpcode=grpcode,ucode=ucode)
                                request.session["s_fee"] = fee.toDict()
                            except Exception as e:
                                print(e)
                                request.session["s_fee"] = {"status":"N"}
                            request.session["s_suppcode"] = user.grpcode

                            supp = findGrpNameByCode(user.grpcode,user.utype)
                            request.session["s_suppname"] = supp.chnm
                            request.session["s_contracttype"] = supp.contracttype
                            request.session["s_paytypeid"] = supp.paytypeid
                            request.session["s_bank"] = supp.bank
                            request.session["s_accountno"] = supp.accountno

                            grp = findGrpNameByCode(grpcode,"1")
                            request.session["s_grpname"] = grp.grpnm

                            response_data['homeurl'] = Constants.URL_SUPPLIER_HOME

                        else:    #零售商
                            request.session["s_grpcode"] = user.grpcode

                            grp = findGrpNameByCode(user.grpcode,user.utype)
                            request.session["s_grpname"] = grp.grpnm
                            request.session["s_fee"] = {}
                            response_data['homeurl'] = Constants.URL_RETAILER_HOME

                        request.session["homeurl"] = response_data['homeurl']
                        #查询角色,多个角色用“,”分割
                        urs = findRoleByUcode(user.ucode)
                        if urs:
                            urole = urs[0]
                            #查询菜单权限
                            purlist = findPurByRcode(urs[2])
                            request.session["s_rcodes"] = urs[1]
                            request.session["isadmin"] = urs[3]
                            request.session["s_urole"] = urole
                            request.session["s_umenu"] = getMenu(purlist)
                            response_data['status'] = "0"

                            #添加登录日志
                            if user.utype=="2":
                                lastlandtime = datetime.date.today().strftime("%Y-%m-%d")
                                slist = BasSuppLand.objects.filter(suppcode=user.grpcode,lastlandtime__gte="{lastlandtime} 00:00:00".format(lastlandtime=lastlandtime)).values("landcs")
                                if slist and slist[0]:
                                    sland = slist[0]
                                    landcs=sland["landcs"]+1
                                    BasSuppLand.objects.filter(suppcode=user.grpcode,lastlandtime__gte="{lastlandtime} 00:00:00".format(lastlandtime=lastlandtime)).update(landcs=landcs,lastlandtime=datetime.datetime.today())
                                else:
                                    fee =  request.session.get("s_fee")
                                    if fee:
                                        status = fee["status"]
                                    else:
                                        status = "N"
                                    suppname =  request.session.get("s_suppname")
                                    lastLand = BasSuppLand.objects.values("allcs").latest("allcs")
                                    if lastLand:
                                        allcs = lastLand["allcs"]+1
                                    else:
                                        allcs = 1

                                    bs =  BasSuppLand()
                                    bs.grpcode = "00069"
                                    bs.utype = "2"
                                    bs.suppcode = user.grpcode
                                    bs.landcs = 1
                                    bs.lastlandtime = datetime.date.today()
                                    bs.status = status
                                    bs.supname = suppname
                                    bs.remark=""
                                    bs.ylzd1=""
                                    bs.ylzd2=""
                                    bs.allcs= allcs
                                    bs.save()

                        else:
                            response_data['status'] = "4"
                    else:
                        response_data['status'] = "2"
                else:
                    response_data['status'] = "1"
            else:
                response_data['status'] = "3"
        else:
            response_data['status'] = "0"
            if olduser["utype"] == "1":
                response_data['homeurl'] = Constants.URL_RETAILER_HOME
            else:
                response_data['homeurl'] = Constants.URL_SUPPLIER_HOME
    except Exception as e:
        print(e)

    return HttpResponse(json.dumps(response_data), content_type="application/json")