Esempio n. 1
0
def get_all_indents_docs(limit=None, snos=None):
    if snos is None:
        return docstore.get_docs_list_for_sno_doctype(
            serialno=None, doctype='INVENTORY INDENT', limit=limit)
    else:
        rval = []
        for sno in snos:
            rval.extend(
                docstore.get_docs_list_for_sno_doctype(
                    serialno=sno, doctype='INVENTORY INDENT', limit=None))
        return rval
Esempio n. 2
0
def get_all_indents_docs(limit=None, snos=None):
    if snos is None:
        return docstore.get_docs_list_for_sno_doctype(
            serialno=None, doctype='INVENTORY INDENT', limit=limit
        )
    else:
        rval = []
        for sno in snos:
            rval.extend(docstore.get_docs_list_for_sno_doctype(
                serialno=sno, doctype='INVENTORY INDENT', limit=None
            ))
        return rval
Esempio n. 3
0
def get_production_order_manifest_set(serialno):
    workspace = temp_fs.makeopendir(get_tempname())
    children = serialnos.get_child_serialnos(sno=serialno)
    manifests = []
    for child in children:
        files = []

        am = docstore.get_docs_list_for_sno_doctype(serialno=child,
                                                    doctype='ASSEMBLY MANIFEST')
        if len(am) == 1:
            uam = am[0]
            copyfile(uam.fs, uam.path, workspace, uam.filename, overwrite=True)
            files = [workspace.getsyspath(uam.filename)]
        elif len(am) > 1:
            raise ValueError(
                    "Found {0} manifests for {2}".format(len(am), child)
            )

        dms = docstore.get_docs_list_for_sno_doctype(
                serialno=child, doctype='DELTA ASSEMBLY MANIFEST'
        )
        if len(dms):
            for dm in dms:
                copyfile(dm.fs, dm.path, workspace, dm.filename,
                         overwrite=True)
                files.append(workspace.getsyspath(dm.filename))

        if len(files) > 1:
            wdmfile = merge_pdf(
                files,
                os.path.join(workspace.getsyspath('/'),
                             os.path.splitext(am[0].filename)[0] + '-wdm.pdf'),
                remove_sources=True
            )
            manifests.append(wdmfile)
        elif len(files) == 1:
            manifests.append(files[0])

    if len(manifests):
        output = merge_pdf(
            manifests,
            os.path.join(workspace.getsyspath('/'), serialno + '.pdf'),
            remove_sources=True
        )
        return output
    return None
Esempio n. 4
0
def get_production_order_manifest_set(serialno):
    workspace = temp_fs.makeopendir(get_tempname())
    children = serialnos.get_child_serialnos(sno=serialno)
    manifests = []
    for child in children:
        files = []

        am = docstore.get_docs_list_for_sno_doctype(
            serialno=child, doctype='ASSEMBLY MANIFEST')
        if len(am) == 1:
            uam = am[0]
            copyfile(uam.fs, uam.path, workspace, uam.filename, overwrite=True)
            files = [workspace.getsyspath(uam.filename)]
        elif len(am) > 1:
            raise ValueError("Found {0} manifests for {2}".format(
                len(am), child))

        dms = docstore.get_docs_list_for_sno_doctype(
            serialno=child, doctype='DELTA ASSEMBLY MANIFEST')
        if len(dms):
            for dm in dms:
                copyfile(dm.fs,
                         dm.path,
                         workspace,
                         dm.filename,
                         overwrite=True)
                files.append(workspace.getsyspath(dm.filename))

        if len(files) > 1:
            wdmfile = merge_pdf(
                files,
                os.path.join(workspace.getsyspath('/'),
                             os.path.splitext(am[0].filename)[0] + '-wdm.pdf'),
                remove_sources=True)
            manifests.append(wdmfile)
        elif len(files) == 1:
            manifests.append(files[0])

    if len(manifests):
        output = merge_pdf(manifests,
                           os.path.join(workspace.getsyspath('/'),
                                        serialno + '.pdf'),
                           remove_sources=True)
        return output
    return None
Esempio n. 5
0
def get_latest_test_report(serialno=None):
    return docstore.get_docs_list_for_sno_doctype(serialno=serialno,
                                                  doctype='TEST-RESULT',
                                                  limit=1)
Esempio n. 6
0
def get_all_test_reports(limit=None):
    return docstore.get_docs_list_for_sno_doctype(serialno=None,
                                                  doctype='TEST-RESULT',
                                                  limit=limit)
Esempio n. 7
0
def get_all_production_orders_docs(limit=None):
    return docstore.get_docs_list_for_sno_doctype(serialno=None,
                                                  doctype='PRODUCTION ORDER',
                                                  limit=limit)
Esempio n. 8
0
def get_latest_test_report(serialno=None):
    return docstore.get_docs_list_for_sno_doctype(serialno=serialno,
                                                  doctype='TEST-RESULT',
                                                  limit=1)
Esempio n. 9
0
def get_all_test_reports(limit=None):
    return docstore.get_docs_list_for_sno_doctype(serialno=None,
                                                  doctype='TEST-RESULT',
                                                  limit=limit)
Esempio n. 10
0
def get_all_production_orders_docs(limit=None):
    return docstore.get_docs_list_for_sno_doctype(
        serialno=None, doctype='PRODUCTION ORDER', limit=limit
    )