This commit is contained in:
bcomsugi 2023-11-09 00:57:42 +07:00
parent 13d140e9e9
commit c723c7bd62
4 changed files with 21 additions and 6 deletions

View File

@ -8,7 +8,9 @@ from datetime import date
import timeit
import os
import pythoncom
# from icecream import ic
ic.configureOutput(includeContext=True, )
class SalesOrderQuery:
def __init__(self, **kwargs) -> None:
# print(f'kwargs:{kwargs}')
@ -260,7 +262,7 @@ class SalesOrderQuery:
def _get_sales_order_header(self, response_string):
print('_get_sales_order_header')
# print(f'responsestring:{response_string}')
ic(f'responsestring:{response_string}')
QBXML = ET.fromstring(response_string)
datadict = {}
SalesOrderdict = {}
@ -279,12 +281,18 @@ class SalesOrderQuery:
SalesOrderdict = {'RefNumber':RefNumber, 'CustomerFullName':CustomerFullName, 'TxnID':TxnID,
'TotalAmount':TotalAmount, 'IsFullyInvoiced':IsFullyInvoiced, 'IsManuallyClosed':IsManuallyClosed, 'SalesOrderLineRet':[]}
SalesOrderLineRet = SalesOrderRet.findall('SalesOrderLineRet')
# print(len(SalesOrderLineRet))
ic(len(SalesOrderLineRet))
if len(SalesOrderLineRet) > 0:
disc_amount=0
for SalesOrderLineRet in SalesOrderLineRet:
TxnLineID = SalesOrderLineRet.find('TxnLineID').text
ItemFullName = SalesOrderLineRet.find('ItemRef/FullName').text
ItemFullName = SalesOrderLineRet.find('ItemRef/FullName')
if ItemFullName is None:
ic("no itemfullname")
break
else:
ItemFullName=ItemFullName.text
ic(ItemFullName)
Quantity = SalesOrderLineRet.find('Quantity').text
UnitOfMeasure = SalesOrderLineRet.find('UnitOfMeasure').text
Rate = float(SalesOrderLineRet.find('Rate').text)
@ -293,7 +301,7 @@ class SalesOrderQuery:
# if self.SPPriceLevelName:
if self.Customer[2]:
# print(Rate, (Rate - self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.SPPriceLevelName)].values.tolist()[0][2]))
print(Quantity, Rate, (Rate - self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2]))
ic(Quantity, Rate, (Rate - self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2]))
disc_amount += float(Quantity) * (Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2])
# disc_amount+=float(Quantity)*2000 #testing only
Invoiced = SalesOrderLineRet.find('Invoiced').text

View File

@ -1,6 +1,7 @@
from django.urls import path
from . import views
from icecream import install
install()
app_name = "Invoice"
urlpatterns = [

View File

@ -14,6 +14,9 @@ from django.contrib import messages
import os
import pandas as pd
from django.conf import settings
from icecream import ic
ic.configureOutput(includeContext= True)
def get_SalesOrderQuery(customer_name):
try:
@ -26,7 +29,7 @@ def get_SalesOrderQuery(customer_name):
print("except")
print(sys.path)
from SO_to_Inv.readSO import SalesOrderQuery
print("salesorderquery imported")
# print(os.getcwd())
# parentdir = os.path.dirname(os.getcwd())
# print(parentdir)

View File

@ -2,6 +2,9 @@
"""Django's command-line utility for administrative tasks."""
import os
import sys
from icecream import install
install()
def main():