示例#1
0
def bom_detail(req):
    if req.method == "GET":
        record_id = req.GET.get("id", None)
        bomName = req.GET.get("bomName", None)
        bomVersion = req.GET.get("bomVersion", None)
        bom = None
        if record_id:
            bom = models.Bom.objects.filter(id=record_id)
            if bom.exists():
                return render(
                    req, "bom/bom_detail.html", {
                        "bom": bom[0],
                        "bom_list": json.dumps(bom[0].bomContext),
                        "cur_user": views_auth.getCurUser(req)
                    })
        elif bomName and bomVersion:
            #            print(bomName, bomVersion)
            bom = models.Bom.objects.filter(bomName=bomName,
                                            bomVersion=bomVersion)
            if bom.exists():
                return render(
                    req, "bom/bom_detail.html", {
                        "bom": bom[0],
                        "bom_list": json.dumps(bom[0].bomContext),
                        "cur_user": views_auth.getCurUser(req)
                    })
        return HttpResponse(views.ErrorInfo.no_exists_bom)
示例#2
0
def paper_update(req):    
    if req.method == "GET":
        record_id=req.GET.get('id', None)
        item = models.Paper.objects.filter(id=record_id)
 
        if item.exists():
            item = item[0]
    return render(req,"paper/paper_update.html", {"paper_item":item , "cur_user": views_auth.getCurUser(req)})
示例#3
0
def product(req):
    product_table = models.Product.objects.all().order_by("productName")
    return render(
        req, "product/product_list.html", {
            "product_list": product_table,
            "table": models.Product._meta.verbose_name,
            "cur_user": views_auth.getCurUser(req)
        })
示例#4
0
def bom(req):
    bom_table = models.Bom.objects.all().order_by("bomName")
    return render(
        req, "bom/bom_list.html", {
            "bom_list": bom_table,
            "table": models.Bom._meta.verbose_name,
            "cur_user": views_auth.getCurUser(req)
        })
示例#5
0
def product_add(req):
    bom_item = []
    if req.method == "GET":
        boms = models.Bom.objects.all()
        for i in boms:
            bom_item.append(str(i))

    return render(req, "product/product_add.html", {
        "bom_item": bom_item,
        "cur_user": views_auth.getCurUser(req)
    })
示例#6
0
def history(req):
    result = []
    
    if req.method == "GET":
        tableName = req.GET.get("table")
        recordId = req.GET.get("id")

        if tableName and recordId:
            result = models.DataHistory.objects.filter(tableName=tableName, recordId=recordId)
    return render(req,"history.html", {"history":result, "cur_user": views_auth.getCurUser(req)})

        
        
示例#7
0
def paper_add(req):
#     item_name={}
#     item_verbose_name=[]
#     message = ""
# 
#     for item in models.Paper._meta.get_fields():       
#         if not item.auto_created:
#             item_name[item.verbose_name] = item.name
#             item_verbose_name.append(item.verbose_name)
#             
#     if req.method == "GET":
#         return render(req,"paper/paper_add.html", {"item_name":item_name, "cur_user": views_auth.getCurUser(req), 'msg': message})
    
    return render(req,"paper/paper_add.html", {"cur_user": views_auth.getCurUser(req)})  
示例#8
0
def bom_update(req):
    if req.method == "GET":
        record_id = req.GET.get("id", None)

        if not record_id:
            return HttpResponse("无法找到Bom信息")

        bom = models.Bom.objects.filter(id=record_id)
        if bom.exists():
            return render(
                req, "bom/bom_update.html", {
                    "bom": bom[0],
                    "bom_Context": json.dumps(bom[0].bomContext),
                    "cur_user": views_auth.getCurUser(req)
                })

    return HttpResponse("无法找到Bom信息")
示例#9
0
def product_update(req):
    bom_item = []
    item = None
    if req.method == "GET":
        record_id = req.GET.get('id', None)
        item = models.Product.objects.filter(id=record_id)

        if item.exists():
            item = item[0]
            boms = models.Bom.objects.all()
            for i in boms:
                bom_item.append(str(i))

    return render(
        req, "product/product_update.html", {
            "product": item,
            "bom_item": bom_item,
            "cur_user": views_auth.getCurUser(req)
        })
示例#10
0
def bom_clone(req):
    if req.method == "GET":
        bomName = req.GET.get("bomName", None)
        bomVersion = req.GET.get("bomVersion", None)

        if not bomName or not bomVersion:
            return HttpResponse("无法找到Bom信息")

        bom = models.Bom.objects.filter(bomName=bomName, bomVersion=bomVersion)
        if bom.exists():
            return render(
                req, "bom/bom_add.html", {
                    "bomName": bomName,
                    "bomVersion": bomVersion,
                    "bom_list": json.dumps(bom[0].bomContext),
                    "bom_action": "clone",
                    "cur_user": views_auth.getCurUser(req)
                })

    return HttpResponse("无法找到Bom信息")
示例#11
0
def paper(req):
    paper_list = []
    if req.method == "GET":
        paperName = req.GET.get("paperName","")
        paperVersion = req.GET.get("paperVersion", "")
        if paperName == "" or paperVersion == "":
            paper_table = models.Paper.objects.all().order_by("paperName")
            for item in paper_table:
                paper_list.append({'paperName':item.paperName, "paperVersion":item.paperVersion, "paperDiscrib":item.paperDiscrib, "paperAddr":item.paperAddr, "id":item.id})
        else:
            item = models.Paper.objects.filter(paperName=paperName, paperVersion=paperVersion)
            if item.exists():
                paper_list.append({'paperName':item[0].paperName, "paperVersion":item[0].paperVersion, "paperDiscrib":item[0].paperDiscrib, "paperAddr":item[0].paperAddr, "id":item[0].id})
    
    return render(req,"paper/paper_list.html", {"paper_list":paper_list, "table":models.Paper._meta.verbose_name,"cur_user": views_auth.getCurUser(req)})
示例#12
0
def paper_search(req):
    if req.method == "GET":
        record_id = req.GET.get("id",None)
        if not record_id:
            return HttpResponse("图纸输入有误")
    else:
        HttpResponse("图纸输入有误")
    
    bom_table = models.Bom.objects.all()
    if not bom_table.exists():
        HttpResponse("无法查到BOM信息")
    
    bom_name=[]
    for item in bom_table:
        bom_name.append((item.bomName,item.bomVersion))
    
    paper_s = models.Paper.objects.filter(id=record_id)[0]
    bomTable = getBomInBom(bom_name)
    bom_dict = paperSearchBom(bomTable, paper_s.paperName, paper_s.paperVersion)
    
    paper_item = []
    papers =  models.Paper.objects.all()
    for i in papers:
        paper_item.append(str(i))      
            
    return  render(req,"paper/paper_search.html", {"bom_dict":bom_dict,"paper_item":paper_item,"paperName":paper_s.paperName, "paperVersion":paper_s.paperVersion, "cur_user": views_auth.getCurUser(req)})
示例#13
0
def paper_edit(req):
    response_dict = {'status': True, 'error': None, 'data': None}
    is_login = req.session.get('is_login')
    if not is_login:
        response_dict['status'] = False
        response_dict['error'] = "errLogin"
        response_dict['data'] = "?next="+req.path
     
        return HttpResponse(json.dumps(response_dict))
       
    if req.method == "POST":   
        action = req.POST.get('action')
        if action.lower() == "delete":
            record_id=req.POST.get('id', None)
            if record_id:
                data_item = models.Paper.objects.filter(id=record_id)[0]
                models.DataBaseLog.objects.create(
                           log_user   =   views_auth.getCurUser(req),
                           log_table  =   models.Paper._meta.verbose_name,
                           log_action =   "delete %s" %(str(data_item))
                        )    
                # 变更为删除状态
                models.DataHistory.objects.create(
                        user       =   views_auth.getCurUser(req),
                        recordId   =   data_item.id,
                        tableName  =   models.Paper._meta.verbose_name,
                        history    =   "删除 [%s]" %(str(data_item)),
                        historyAction = data_item.status
                )   
                
                models.Paper.objects.filter(id=record_id).delete() 
                                        
            else:
                response_dict['status'] = False
                response_dict['error'] = "errData"
                response_dict['data']   = views.ErrorInfo.data_error
                
        elif action.lower() == "add":
            value = json.loads(req.POST.get("value"))

            if value:
                try:
                    data_item = models.Paper.objects.create( 
                        status=models.DataStatus.objects.filter(statusName="新规")[0],
                        owner = views_auth.getCurUser(req),   
                        **value)
                except Exception:
                    response_dict['status'] = False
                    response_dict['data']   = views.ErrorInfo.exists_error
                else:
                    models.DataBaseLog.objects.create(
                        log_user   =   views_auth.getCurUser(req),
                        log_table  =   models.Paper._meta.verbose_name,
                        log_action =   "add %s" %(value)
                    )      
                       
                    # 变更为新规状态
                    models.DataHistory.objects.create(
                        user       =   views_auth.getCurUser(req),
                        recordId   =   data_item.id,
                        tableName  =   models.Paper._meta.verbose_name,
                        history    =   "新规 [%s]" %(str(data_item)),
                        historyAction = data_item.status
                    )  
            else:
                response_dict['status'] = False
                response_dict['data']   = views.ErrorInfo.data_error   
                
        elif action.lower() == "update":
            value = json.loads(req.POST.get("value"))
            record_id = req.POST.get("id")           

            if not value:
                response_dict['status'] = False
                response_dict['data']   = views.ErrorInfo.data_error
            elif value[0] == value[1]:
                response_dict['status'] = False
                response_dict['data']   = views.ErrorInfo.nochange_error
            else:
                try:
                    models.Paper.objects.filter(id=record_id).update(                       
                        status=models.DataStatus.objects.filter(statusName="变更")[0],
                        owner = views_auth.getCurUser(req),
                        **value[1])       
                except Exception: 
                    response_dict['status'] = False
                    response_dict['data']   = views.ErrorInfo.update_error
                else:
                    models.DataBaseLog.objects.create(
                        log_user   =   views_auth.getCurUser(req),
                        log_table  =   models.Paper._meta.verbose_name,
                        log_action =   "update %s to %s" %(value[0], value[1])
                    )   
                                       
                    # 变更为变更状态
                    data_item = models.Paper.objects.filter(id=record_id)[0]
                    modify_list = []
                    for k in value[0].keys():
                        if (value[0][k] != value[1][k]):
                            modify_list.append("%s->%s" %(value[0][k], value[1][k]))
                            
                    models.DataHistory.objects.create(
                        user       =   views_auth.getCurUser(req),
                        recordId   =   data_item.id,
                        tableName  =   models.Paper._meta.verbose_name,
                        history    =   "变更 %s" %(modify_list),
                        historyAction = data_item.status
                    )                       
                    syndata.synchPaper(value[0], value[1], req)
                    
        elif action.lower() == "modify":
            item_value = json.loads(req.POST.get("data"))
 
            paperName = None
            paperVersion = None
            papers =  models.Paper.objects.all().filter()
            for item in papers:
                if str(item) == item_value[0]["paper_new"]:
                    paperName =  item.paperName
                    paperVersion = item.paperVersion
                    break
            
            syndata.synchPaperModify(paperName, paperVersion, *item_value)
            
    return HttpResponse(json.dumps(response_dict))
示例#14
0
def index(req):
    return render(req,"index.html", {"cur_user": views_auth.getCurUser(req)})
示例#15
0
def product_edit(req):
    response_dict = {'status': True, 'error': None, 'data': None}
    is_login = req.session.get('is_login')
    if not is_login:
        response_dict['status'] = False
        response_dict['error'] = "errLogin"
        response_dict['data'] = "?next=" + req.path

        return HttpResponse(json.dumps(response_dict))

    if req.method == "POST":
        action = req.POST.get('action')
        if action.lower() == "delete":
            record_id = req.POST.get('id', None)
            if record_id:
                data_item = models.Product.objects.filter(id=record_id)[0]

                models.DataBaseLog.objects.create(
                    log_user=views_auth.getCurUser(req),
                    log_table=models.Product._meta.verbose_name,
                    log_action="delete %s" % (str(data_item)))

                # 变更为删除状态
                models.DataHistory.objects.create(
                    user=views_auth.getCurUser(req),
                    recordId=data_item.id,
                    tableName=models.Product._meta.verbose_name,
                    history="删除 [%s]" % (str(data_item)),
                    historyAction=data_item.status)

                models.Product.objects.filter(id=record_id).delete()
            else:
                response_dict['status'] = False
                response_dict['error'] = "errData"
                response_dict['data'] = views.ErrorInfo.data_error

        elif action.lower() == "add":
            value = json.loads(req.POST.get("value"))
            if value:
                try:
                    data_item = models.Product.objects.create(
                        productName=value["productName"],
                        bom=list(
                            filter(lambda x: str(x) == value["bomName"],
                                   models.Bom.objects.all()))[0],
                        status=models.DataStatus.objects.filter(
                            statusName="新规")[0],
                        owner=views_auth.getCurUser(req))
                except Exception as e:
                    response_dict['status'] = False
                    response_dict['data'] = views.ErrorInfo.exists_error
                else:
                    models.DataBaseLog.objects.create(
                        log_user=views_auth.getCurUser(req),
                        log_table=models.Product._meta.verbose_name,
                        log_action="add %s" % (value["productName"]))
                    # 变更为新规状态
                    models.DataHistory.objects.create(
                        user=views_auth.getCurUser(req),
                        recordId=data_item.id,
                        tableName=models.Product._meta.verbose_name,
                        history="新规 [%s]" % (str(data_item)),
                        historyAction=data_item.status)
            else:
                response_dict['status'] = False
                response_dict['data'] = views.ErrorInfo.data_error

        elif action.lower() == "update":
            value = json.loads(req.POST.get("value"))
            record_id = req.POST.get("id")

            if not value:
                response_dict['status'] = False
                response_dict['data'] = views.ErrorInfo.data_error
            elif value[0] == value[1]:
                response_dict['status'] = False
                response_dict['data'] = views.ErrorInfo.nochange_error
            else:
                try:
                    models.Product.objects.filter(id=record_id).update(
                        productName=value[1]["productName"],
                        bom=list(
                            filter(lambda x: str(x) == value[1]["bomName"],
                                   models.Bom.objects.all()))[0],
                        status=models.DataStatus.objects.filter(
                            statusName="变更")[0],
                        owner=views_auth.getCurUser(req))

                except Exception as e:
                    print(e)
                    response_dict['status'] = False
                    response_dict['data'] = views.ErrorInfo.update_error
                else:
                    models.DataBaseLog.objects.create(
                        log_user=views_auth.getCurUser(req),
                        log_table=models.Product._meta.verbose_name,
                        log_action="update %s->%s" % (value[0], value[1]))

                    # 变更为变更状态
                    data_item = models.Product.objects.filter(id=record_id)[0]
                    modify_list = []
                    for k in value[0].keys():
                        if (value[0][k] != value[1][k]):
                            modify_list.append("%s->%s" %
                                               (value[0][k], value[1][k]))

                    models.DataHistory.objects.create(
                        user=views_auth.getCurUser(req),
                        recordId=data_item.id,
                        tableName=models.Product._meta.verbose_name,
                        history="变更 %s" % (modify_list),
                        historyAction=data_item.status)

    return HttpResponse(json.dumps(response_dict))
示例#16
0
def bom_add(req):
    return render(req, "bom/bom_add.html",
                  {"cur_user": views_auth.getCurUser(req)})