예제 #1
0
    def create(self, e):
        ### If already exists with the same name, enable it ###
        if e.id == 0:
            existingId = self.getIdByName(e)
            if existingId > 0:
                e.id = existingId
                return self.update(e)

        ### If the element does not already exists, we create it ###
        sql = (
            "INSERT INTO partner "
            "(name, reg_number, bank_account, head_city, head_zip, head_address, is_customer, is_supplier, remark, is_enabled) "
            "VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)")
        data = (e.name, e.reg_number, e.bank_account, e.head_city, e.head_zip,
                e.head_address, e.is_customer, e.is_supplier, e.remark, 1)

        self.execute(sql, data)
        e.id = self._cursor.lastrowid

        for person in e.contacts:
            PersonManager.getInstance().create(person)

        self._db.conn.commit()

        return e
예제 #2
0
    def read(self, pid):
        e = Partner()
        sql = (
            'SELECT id, name, reg_number, bank_account, head_city, head_zip, head_address, is_customer, is_supplier, remark '
            'FROM partner WHERE is_enabled=1 AND id = %s')

        self.execute(sql, (pid, ))
        res = self._cursor.fetchall()

        for (id, name, reg_number, bank_account, head_city, head_zip,
             head_address, customer, supplier, remark) in res:
            e.id = id
            e.name = name
            e.reg_number = reg_number
            e.bank_account = bank_account
            e.head_city = head_city
            e.head_zip = head_zip
            e.head_address = head_address
            e.is_customer = customer
            e.is_supplier = supplier
            e.remark = remark
            break

        e.contacts = PersonManager.getInstance().readAllByPartner(e)

        return e
예제 #3
0
    def update(self, e):
        sql = (
            "UPDATE partner SET name=%s, reg_number=%s, bank_account=%s, head_city=%s, "
            "head_zip=%s, head_address=%s, is_customer=%s, is_supplier=%s, "
            "remark=%s, is_enabled=1 "
            "WHERE id=%s")
        data = (e.name, e.reg_number, e.bank_account, e.head_city, e.head_zip,
                e.head_address, e.is_customer, e.is_supplier, e.remark, e.id)

        self.execute(sql, data)

        PersonManager.getInstance().deleteAllForPartner(e)
        for person in e.contacts:
            PersonManager.getInstance().create(person)

        self._db.conn.commit()

        return e
예제 #4
0
 def update(self, e):        
     sql = ("UPDATE partner SET name=%s, reg_number=%s, bank_account=%s, head_city=%s, "
            "head_zip=%s, head_address=%s, is_customer=%s, is_supplier=%s, "
            "remark=%s, is_enabled=1 "
            "WHERE id=%s")
     data = (e.name, e.reg_number, e.bank_account,
             e.head_city, e.head_zip, e.head_address,
             e.is_customer, e.is_supplier, e.remark,
             e.id)
     
     self.execute(sql, data)
     
     PersonManager.getInstance().deleteAllForPartner(e)
     for person in e.contacts:
         PersonManager.getInstance().create(person)
     
     self._db.conn.commit()
     
     return e
예제 #5
0
    def create(self, e):
        ### If already exists with the same name, enable it ###
        if e.id == 0:
            existingId = self.getIdByName(e)
            if existingId > 0:
                e.id = existingId
                return self.update(e)
        
        ### If the element does not already exists, we create it ###
        sql = ("INSERT INTO partner "
               "(name, reg_number, bank_account, head_city, head_zip, head_address, is_customer, is_supplier, remark, is_enabled) "
               "VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)")
        data = (e.name, e.reg_number, e.bank_account, e.head_city, e.head_zip, e.head_address, e.is_customer, e.is_supplier, e.remark, 1)
        
        self.execute(sql, data)
        e.id = self._cursor.lastrowid
        
        for person in e.contacts:
            PersonManager.getInstance().create(person)
         
        self._db.conn.commit()

        return e
예제 #6
0
 def read(self, pid):       
     e = Partner()
     sql = ('SELECT id, name, reg_number, bank_account, head_city, head_zip, head_address, is_customer, is_supplier, remark '
            'FROM partner WHERE is_enabled=1 AND id = %s')
     
     self.execute(sql, (pid,))
     res = self._cursor.fetchall()
     
     for (id, name, reg_number, bank_account, head_city, head_zip, head_address, customer, supplier, remark) in res:
         e.id = id 
         e.name = name
         e.reg_number = reg_number
         e.bank_account = bank_account
         e.head_city = head_city
         e.head_zip = head_zip
         e.head_address = head_address
         e.is_customer = customer
         e.is_supplier = supplier
         e.remark = remark
         break
     
     e.contacts = PersonManager.getInstance().readAllByPartner(e)
     
     return e
예제 #7
0
 def delete(person):
     return PersonManager.getInstance().delete(person)
예제 #8
0
 def create(person):
     return PersonManager.getInstance().create(person)
예제 #9
0
 def update(person):
     return PersonManager.getInstance().update(person)
예제 #10
0
 def new():
     return PersonManager.getInstance().new()
예제 #11
0
 def get(elementId):
     return PersonManager.getInstance().read(elementId)
예제 #12
0
 def getListItems():
     return PersonManager.getInstance().readAllNameIdPairs()
예제 #13
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def get(elementId):
     return PersonManager.getInstance().read(elementId)
예제 #14
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def new():
     return PersonManager.getInstance().new()
예제 #15
0
 def serialize(person):
     return PersonManager.getInstance().serialize(person)
예제 #16
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def update(person):
     return PersonManager.getInstance().update(person)
예제 #17
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def unserialize(data):
     return PersonManager.getInstance().unserialize(data)
예제 #18
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def serialize(person):
     return PersonManager.getInstance().serialize(person)
예제 #19
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def delete(person):
     return PersonManager.getInstance().delete(person)
예제 #20
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def create(person):
     return PersonManager.getInstance().create(person)
예제 #21
0
 def unserialize(data):
     return PersonManager.getInstance().unserialize(data)
예제 #22
0
파일: Person.py 프로젝트: FeZoli/ProdMaster
 def getListItems():
     return PersonManager.getInstance().readAllNameIdPairs()