Upload files to "import_data"
This commit is contained in:
parent
18db5b6fbc
commit
26a283cc16
171
import_data/qavanin480_dataset.py
Normal file
171
import_data/qavanin480_dataset.py
Normal file
|
@ -0,0 +1,171 @@
|
|||
from decimal import Decimal
|
||||
import requests
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
TOKEN = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MTg0NTE3MTUsImp0aSI6InNWaDljNkdlRWdEK0IzM1N2UHNzbXkybkxUK0tWWnBjIiwiaXNzIjoiaHR0cHM6XC9cL2NwLnRhdmFzaS5pciIsImV4cCI6MTcxOTc1MTcxNCwiYXVkIjoiaHR0cHM6XC9cL2NwLnRhdmFzaS5pciIsImRhdGEiOnsiaWQiOjQwLCJmaXJzdF9uYW1lIjoiXHUwNjM5XHUwNjQ1XHUwNjI3XHUwNjMxIiwibGFzdF9uYW1lIjoiXHUwNjJjXHUwNjQ4XHUwNmE5XHUwNjI3XHUwNjMxIiwiZW1haWwiOiJham9rYXI5MUB5YWhvby5jb20iLCJ1c2VybmFtZSI6ImFqb2thciIsInVzZXJfbGV2ZWwiOjF9fQ.frkLaR1HYyfZ8sFhLtiuEZaBPwDPWKSxKDQpql6aOZc'
|
||||
ACCEPT = "application/json"
|
||||
HEADERS = {"Authorization": TOKEN, "Accept": ACCEPT}
|
||||
|
||||
url = "https://api.tavasi.ir/repo/dataset/multi/add/qasection/ner"
|
||||
headers = HEADERS
|
||||
|
||||
address = os.getcwd()
|
||||
if 'impoert_data' in address:
|
||||
address += '/data/qavanin_dataset.txt'
|
||||
else:
|
||||
address += '/impoert_data/data/qavanin_dataset.txt'
|
||||
# باز کردن فایل متنی
|
||||
with open(address, 'r', encoding='utf-8') as file:
|
||||
input_text = file.read()
|
||||
|
||||
# تبدیل متن به لیستی از خطوط
|
||||
lines = input_text.strip().split('\n')
|
||||
|
||||
key = ''
|
||||
begin = -1
|
||||
end = -1
|
||||
tokenNumber = -1
|
||||
content = ''
|
||||
result_token = []
|
||||
|
||||
class JSONEncoder(json.JSONEncoder):
|
||||
def default(self, obj):
|
||||
if isinstance(obj, Decimal):
|
||||
return float(obj)
|
||||
return json.JSONEncoder.default(self, obj)
|
||||
|
||||
# def createIndex(content, result_token):
|
||||
# output = {
|
||||
# "content": content,
|
||||
# "domain": "پیکره قوانین 480",
|
||||
# "ref_id": "",
|
||||
# "ref_url": "",
|
||||
# "result_token": result_token,
|
||||
# }
|
||||
# # print(output)
|
||||
# # print(json.dumps(output, indent=4, ensure_ascii=False))
|
||||
# return output
|
||||
|
||||
def createIndex(content, result_token):
|
||||
result_objects = [{
|
||||
"task":"ner",
|
||||
"key":"qavanin_ner",
|
||||
"label":"خروجی تیم همتا",
|
||||
"values":result_token
|
||||
} ]
|
||||
output ={
|
||||
"content": content,
|
||||
"domain": "پیکره قوانین 480",
|
||||
"ref_id": "",
|
||||
"ref_url": "",
|
||||
"result_objects": result_objects,
|
||||
}
|
||||
# print(output)
|
||||
# print(json.dumps(output, indent=4, ensure_ascii=False))
|
||||
return output
|
||||
|
||||
def appendResultToken(text, key, begin, tokenNumber, result_token):
|
||||
end = -1
|
||||
# if key == 'HALFREFERENCE' :
|
||||
# key = 'H_REF'
|
||||
# elif key == 'REFERENCE' :
|
||||
# key = 'REF'
|
||||
if key:
|
||||
# if key == 'org' :
|
||||
# key = 'ORG'
|
||||
# elif key == 'loc' :
|
||||
# key = 'LOC'
|
||||
# elif key == 'Facility' :
|
||||
# key = 'fac'
|
||||
# elif key == 'event' :
|
||||
# key = 'EVENT'
|
||||
# elif key == 'pro' :
|
||||
# key = 'PRO'
|
||||
# elif key == 'pers' :
|
||||
# key = 'PER'
|
||||
|
||||
end = tokenNumber -1
|
||||
result_token.append({
|
||||
"begin": begin,
|
||||
"end": end,
|
||||
"result_key": key,
|
||||
"text" : text
|
||||
})
|
||||
begin = -1
|
||||
end = -1
|
||||
key = ''
|
||||
return key, begin, end, result_token
|
||||
|
||||
bulk_data = []
|
||||
bulk_count = 1
|
||||
count = 0
|
||||
text = ''
|
||||
|
||||
for i, line in enumerate(lines):
|
||||
print('line: ' + str(i))
|
||||
count += 1
|
||||
tokenNumber = tokenNumber + 1
|
||||
|
||||
if line.strip() == '' :
|
||||
key, begin, end, result_token = appendResultToken(text, key, begin, tokenNumber, result_token)
|
||||
|
||||
data = createIndex(content, result_token)
|
||||
tokenNumber = -1
|
||||
content = ''
|
||||
result_token = []
|
||||
|
||||
bulk_data.append(data)
|
||||
bulk_count +=1
|
||||
if bulk_data.__len__() > 100:
|
||||
print('=' * 30 )
|
||||
print('count ' + str(count))
|
||||
payload = json.dumps(bulk_data, cls=JSONEncoder) #Works!
|
||||
response = requests.request("POST", url, headers=headers, data=payload)
|
||||
print(response)
|
||||
bulk_data = []
|
||||
bulk_count = 1
|
||||
|
||||
continue
|
||||
|
||||
|
||||
|
||||
parts = line.split()
|
||||
if len(parts) != 2:
|
||||
continue
|
||||
|
||||
content += ' ' + parts[0]
|
||||
|
||||
result_key = parts[1]
|
||||
if result_key.startswith('I-'):
|
||||
text += ' ' + parts[0]
|
||||
continue
|
||||
|
||||
if result_key == 'O' :
|
||||
key, begin, end, result_token = appendResultToken(text, key, begin, tokenNumber, result_token)
|
||||
|
||||
if result_key.startswith('B-'):
|
||||
key, begin, end, result_token = appendResultToken(text, key, begin, tokenNumber, result_token)
|
||||
|
||||
text = parts[0]
|
||||
begin = tokenNumber
|
||||
end = -1
|
||||
key = result_key.replace('B-', '')
|
||||
|
||||
|
||||
if content != '' :
|
||||
key, begin, end, result_token = appendResultToken(text, key, begin, tokenNumber, result_token)
|
||||
data = createIndex(content, result_token)
|
||||
bulk_data.append(data)
|
||||
bulk_count +=1
|
||||
|
||||
|
||||
if bulk_data.__len__() > 0:
|
||||
print(bulk_count)
|
||||
payload = json.dumps(bulk_data, cls=JSONEncoder) #Works!
|
||||
response = requests.request("POST", url, headers=headers, data=payload)
|
||||
print(response.text)
|
||||
|
||||
# نمایش دیکشنری خروجی به صورت JSON
|
||||
print("***************** end ")
|
67
import_data/remove_html_tags.py
Normal file
67
import_data/remove_html_tags.py
Normal file
|
@ -0,0 +1,67 @@
|
|||
from docx import Document
|
||||
from bs4 import BeautifulSoup
|
||||
import re
|
||||
|
||||
tableTag=["table","tr", "th", "tc"]
|
||||
mark1 = r'#\[#'
|
||||
mark2 = r'#\]#'
|
||||
hTag1 = r'<'
|
||||
hTag2 = r'>'
|
||||
strTable = ''
|
||||
for tag in tableTag:
|
||||
if strTable != '':
|
||||
strTable += '|'
|
||||
strTable += '('+tag+')'
|
||||
regTable = r'<(?P<slash>/)*(?P<tag>'+strTable+')(?P<class>[^>]+)*>'
|
||||
regTableReplace = r'#[#\g<slash>\g<tag>\g<class>#]#'
|
||||
|
||||
def removeHtmlNoTableTag(html):
|
||||
html = re.sub(regTable, regTableReplace, html)
|
||||
soup = BeautifulSoup(html, "html.parser")
|
||||
text = soup.get_text("\n", strip=True)
|
||||
text = re.sub(mark1, hTag1, text)
|
||||
text = re.sub(mark2, hTag2, text)
|
||||
return text
|
||||
|
||||
def removeHtmlTags(html, exceptionTags=[]):
|
||||
if len(exceptionTags):
|
||||
exceptTags = ''
|
||||
for tag in exceptionTags:
|
||||
if exceptTags != '':
|
||||
exceptTags += '|'
|
||||
exceptTags += '(' + tag + ')'
|
||||
reg1 = r'<(?P<slash>/)*(?P<tag>' + exceptTags + ')(?P<class>[^>]+)*>'
|
||||
html = re.sub(reg1, regTableReplace, html)
|
||||
|
||||
soup = BeautifulSoup(html, "html.parser")
|
||||
text = soup.get_text("\n", strip=True)
|
||||
|
||||
if len(exceptionTags):
|
||||
text = re.sub(mark1, hTag1, text)
|
||||
text = re.sub(mark2, hTag2, text)
|
||||
|
||||
return text
|
||||
|
||||
def read_docx(file_path):
|
||||
doc = Document(file_path)
|
||||
full_text = []
|
||||
for para in doc.paragraphs:
|
||||
full_text.append(para.text)
|
||||
return '\n'.join(full_text)
|
||||
|
||||
def write_docx(text, output_path):
|
||||
doc = Document()
|
||||
for line in text.split('\n'):
|
||||
doc.add_paragraph(line)
|
||||
doc.save(output_path)
|
||||
|
||||
input_path = 'qavanin.docx'
|
||||
output_path = 'output.docx'
|
||||
|
||||
html_content = read_docx(input_path)
|
||||
|
||||
clean_text = removeHtmlTags(html_content, exceptionTags=[])
|
||||
|
||||
write_docx(clean_text, output_path)
|
||||
|
||||
print("تگهای HTML با موفقیت حذف شدند و نتیجه در فایل جدید ذخیره شد.")
|
105
import_data/result_objects.py
Normal file
105
import_data/result_objects.py
Normal file
|
@ -0,0 +1,105 @@
|
|||
import json
|
||||
import requests
|
||||
from decimal import Decimal
|
||||
|
||||
TOKEN = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3MTg3ODk5OTEsImp0aSI6IlNGaWVOcWIxeEFzZ252QmtvUkxXWU9UbXR2VTNvT3R6IiwiaXNzIjoiaHR0cHM6XC9cL2NwLnRhdmFzaS5pciIsImV4cCI6MTcyMDA4OTk5MCwiYXVkIjoiaHR0cHM6XC9cL2NwLnRhdmFzaS5pciIsImRhdGEiOnsiaWQiOjEsImZpcnN0X25hbWUiOiJcdTA2MjhcdTA2MzFcdTA2NDZcdTA2MjdcdTA2NDVcdTA2NDcgXHUwNjQ2XHUwNjQ4XHUwNmNjXHUwNjMzIiwibGFzdF9uYW1lIjoiXHUwNjQxXHUwNjQ2XHUwNmNjIiwiZW1haWwiOiJkZXZAZ21haWwuY29tIiwidXNlcm5hbWUiOiJkZXYiLCJ1c2VyX2xldmVsIjoyfX0.7DzFqHLee3ZI7EnZYjy5ChtVWhT3QJvBNUbLUdPssSo'
|
||||
ACCEPT = "application/json"
|
||||
HEADERS = {"Authorization": TOKEN, "Accept": ACCEPT}
|
||||
|
||||
url = "https://api.tavasi.ir/repo/dataset/multi/add/qasection/keyword"
|
||||
headers = HEADERS
|
||||
|
||||
|
||||
# # باز کردن فایل متنی
|
||||
# file_path = 'G:/_majles/ner_law_dataset.txt'
|
||||
# with open(file_path, 'r', encoding='utf-8') as file:
|
||||
# input_text = file.read()
|
||||
|
||||
# # تبدیل متن به لیستی از خطوط
|
||||
# lines = input_text.strip().split('\n')
|
||||
|
||||
|
||||
file_address = './new_law_excel.xlsx'
|
||||
# output_file_address = './output/keywords_law_excel.xlsx'
|
||||
column_name = "content"
|
||||
|
||||
contents = read_from_excel(file_address, column_name)
|
||||
|
||||
contents_list = []
|
||||
for index, section in enumerate(contents):
|
||||
#ner_values = inference_main(model, section)
|
||||
contents_list.append(section)
|
||||
# contents_list = contents_list + section + '\n********************\n'
|
||||
|
||||
new_column_name = 'content_keywords'
|
||||
|
||||
|
||||
|
||||
key = ''
|
||||
begin = -1
|
||||
end = -1
|
||||
tokenNumber = -1
|
||||
content = ''
|
||||
result_token = []
|
||||
|
||||
class JSONEncoder(json.JSONEncoder):
|
||||
def default(self, obj):
|
||||
if isinstance(obj, Decimal):
|
||||
return float(obj)
|
||||
return json.JSONEncoder.default(self, obj)
|
||||
|
||||
|
||||
|
||||
# content : main text/content
|
||||
# results : keywords list
|
||||
def createIndex(content, extracted_keywords):
|
||||
result_objects = [{
|
||||
"task":"keyword",
|
||||
"key":"lama3-8b",
|
||||
"label":"لاما3 فارسی شده",
|
||||
"values":extracted_keywords
|
||||
} ]
|
||||
output ={
|
||||
"content": content,
|
||||
"domain": "مقررات",
|
||||
"ref_id": "",
|
||||
"ref_url": "",
|
||||
"result_objects": result_objects,
|
||||
}
|
||||
# print(output)
|
||||
# print(json.dumps(output, indent=4, ensure_ascii=False))
|
||||
return output
|
||||
|
||||
bulk_data = []
|
||||
bulk_count = 1
|
||||
count = 0
|
||||
|
||||
for mentry in contents_list:
|
||||
count += 1
|
||||
tokenNumber = tokenNumber + 1
|
||||
|
||||
|
||||
extracted_keywords = []
|
||||
|
||||
data=createIndex(mentry, extracted_keywords)
|
||||
bulk_data.append(data)
|
||||
bulk_count +=1
|
||||
if bulk_data.__len__() > 10:
|
||||
print('=' * 10 )
|
||||
print('count' + str(count))
|
||||
payload = json.dumps(bulk_data, cls=JSONEncoder) #Works!
|
||||
response = requests.request("POST", url, headers=headers, data=payload)
|
||||
print(response.text)
|
||||
bulk_data = []
|
||||
bulk_count = 1
|
||||
|
||||
|
||||
if bulk_data.__len__() > 0:
|
||||
print(bulk_count)
|
||||
payload = json.dumps(bulk_data, cls=JSONEncoder) #Works!
|
||||
response = requests.request("POST", url, headers=headers, data=payload)
|
||||
print(response.text)
|
||||
|
||||
|
||||
# نمایش دیکشنری خروجی به صورت JSON
|
||||
print("***************** end ")
|
97
import_data/section_topic_dataset.py
Normal file
97
import_data/section_topic_dataset.py
Normal file
|
@ -0,0 +1,97 @@
|
|||
import json
|
||||
import requests
|
||||
from config_base import *
|
||||
import requests
|
||||
from bs4 import BeautifulSoup
|
||||
from html import escape
|
||||
import json
|
||||
from decimal import Decimal
|
||||
import datetime
|
||||
|
||||
|
||||
from config_base import *
|
||||
from general_functions import *
|
||||
from funcs import write_to_json
|
||||
|
||||
# موقت
|
||||
# این برنامه موقتا بخاطر اصلاح داده اجرا شد، اگر از ابتدا انتقال داده انجام شود این بخش خودکار انجام خواهد شد
|
||||
|
||||
cursor, cnxn = create_cursor()
|
||||
|
||||
# Does quasi the same things as json.loads from here: https://pypi.org/project/dynamodb-json/
|
||||
class JSONEncoder(json.JSONEncoder):
|
||||
def default(self, obj):
|
||||
if isinstance(obj, Decimal):
|
||||
return float(obj)
|
||||
return json.JSONEncoder.default(self, obj)
|
||||
|
||||
#نکته : برای مقررات هیچ موردی نبود که جدولی باشد
|
||||
query = '''SELECT [ID],[CODE],[CAPTION]
|
||||
FROM [Qavanin].[dbo].[lwTopic]
|
||||
'''
|
||||
|
||||
cursor.execute(query)
|
||||
|
||||
headers = HEADERS
|
||||
|
||||
t1= datetime.datetime.now()
|
||||
print("start time: " + str(t1))
|
||||
i = 0
|
||||
topic_list = []
|
||||
while 1:
|
||||
|
||||
i += 1
|
||||
row = cursor.fetchone()
|
||||
if not row:
|
||||
break
|
||||
topic_id = int(row.ID)
|
||||
caption = str(row.CAPTION)
|
||||
topic_code = str(row.CODE).strip()
|
||||
|
||||
caption = normalize_content(caption)
|
||||
|
||||
if topic_id == 96:
|
||||
topic_id = 68,
|
||||
topic_code = "426"
|
||||
caption = "آمار و سرشماری"
|
||||
if topic_id == 61:
|
||||
topic_id = 60,
|
||||
topic_code = "418",
|
||||
caption = "بورس اوراق بهادار و اسناد خزانه "
|
||||
if topic_id == 126:
|
||||
topic_id = 149,
|
||||
topic_code = "104/51",
|
||||
caption = "وظایف وزارت جهاد کشاورزی"
|
||||
|
||||
if topic_id == 122:
|
||||
topic_id = 150,
|
||||
topic_code = "104/52",
|
||||
caption = "وظایف صنایع و معادن"
|
||||
|
||||
if topic_id == 41:
|
||||
topic_id= 185,
|
||||
topic_code= "304/1",
|
||||
caption= "اتومبیل های دولتی"
|
||||
|
||||
topic_list.append({
|
||||
"topic_id" : topic_id,
|
||||
"topic_code": topic_code,
|
||||
"caption" : caption,
|
||||
})
|
||||
cursor.close()
|
||||
cnxn.close()
|
||||
|
||||
address = "./impoert_data/data/section_topic.json"
|
||||
result = write_to_json(topic_list, address)
|
||||
|
||||
if result:
|
||||
print("all done correctly!")
|
||||
else:
|
||||
print("operation failed!")
|
||||
print()
|
||||
t2= datetime.datetime.now()
|
||||
print("update rows count: " + str(i))
|
||||
print("finished time: " + str(t2))
|
||||
print("process time: " + str(t2-t1))
|
||||
print('*********** end success ***********')
|
||||
|
268
import_data/test_dataset.txt
Normal file
268
import_data/test_dataset.txt
Normal file
|
@ -0,0 +1,268 @@
|
|||
بانک B-ORG
|
||||
مرکزی I-ORG
|
||||
جمهوری I-ORG
|
||||
اسلامی I-ORG
|
||||
ایران I-ORG
|
||||
موظف O
|
||||
است O
|
||||
بازپرداخت O
|
||||
تعهدات O
|
||||
ارزی O
|
||||
را O
|
||||
کسر O
|
||||
نماید. O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
3 I-HALFREFERENCE
|
||||
به O
|
||||
سازمان B-ORG
|
||||
مدیریت I-ORG
|
||||
و I-ORG
|
||||
برنامه I-ORG
|
||||
ریزی I-ORG
|
||||
کشور I-ORG
|
||||
اجازه O
|
||||
داده O
|
||||
می O
|
||||
شود O
|
||||
به O
|
||||
منظور O
|
||||
تامین O
|
||||
هزینه O
|
||||
های O
|
||||
انجام O
|
||||
داوری O
|
||||
توسط O
|
||||
شورای O
|
||||
عالی O
|
||||
فنی O
|
||||
از O
|
||||
متقاضیان O
|
||||
داوری O
|
||||
در O
|
||||
مورد O
|
||||
طرحهای O
|
||||
عمرانی O
|
||||
هزینه O
|
||||
های O
|
||||
مربوط O
|
||||
را O
|
||||
بر O
|
||||
اساس O
|
||||
تعرفه O
|
||||
ای O
|
||||
که O
|
||||
به O
|
||||
تصویب O
|
||||
هیات O
|
||||
وزیران O
|
||||
می O
|
||||
رسد O
|
||||
اخذ O
|
||||
و O
|
||||
به O
|
||||
حساب O
|
||||
درآمد O
|
||||
عمومی O
|
||||
واریز O
|
||||
نماید. O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
5 I-HALFREFERENCE
|
||||
عملیات O
|
||||
تامین O
|
||||
منابع O
|
||||
ارزی O
|
||||
و O
|
||||
متن O
|
||||
و O
|
||||
شرایط O
|
||||
قراردادهای O
|
||||
مالی O
|
||||
از O
|
||||
جمله O
|
||||
زمان O
|
||||
بندی O
|
||||
بازپرداخت O
|
||||
کلیه O
|
||||
قراردادهای O
|
||||
دستگاههای O
|
||||
اجرایی O
|
||||
باید O
|
||||
با O
|
||||
هماهنگی O
|
||||
بانک O
|
||||
مرکزی O
|
||||
جمهوری O
|
||||
اسلامی O
|
||||
ایران O
|
||||
صورت O
|
||||
گیرد. O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
6 I-HALFREFERENCE
|
||||
در O
|
||||
اجرای O
|
||||
قانون B-REFERENCE
|
||||
تشویق I-REFERENCE
|
||||
و I-REFERENCE
|
||||
حمایت I-REFERENCE
|
||||
سرمایه I-REFERENCE
|
||||
گذاری I-REFERENCE
|
||||
خارجی I-REFERENCE
|
||||
مصوب O
|
||||
19 B-DATE2
|
||||
/12 I-DATE2
|
||||
/1380 I-DATE2
|
||||
به O
|
||||
منظور O
|
||||
جلب O
|
||||
سرمایه O
|
||||
گذاری O
|
||||
خارجی O
|
||||
به O
|
||||
دولت O
|
||||
اجازه O
|
||||
داده O
|
||||
می O
|
||||
شود O
|
||||
در O
|
||||
چارچوب O
|
||||
قانون B-REFERENCE
|
||||
تشویق I-REFERENCE
|
||||
و I-REFERENCE
|
||||
حمایت I-REFERENCE
|
||||
سرمایه I-REFERENCE
|
||||
گذاری I-REFERENCE
|
||||
خارجی I-REFERENCE
|
||||
مصوب O
|
||||
19 B-DATE2
|
||||
/12 I-DATE2
|
||||
/1380: I-DATE2
|
||||
اقدام O
|
||||
نماید O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
8 I-HALFREFERENCE
|
||||
دولت O
|
||||
مکلف O
|
||||
است O
|
||||
در O
|
||||
خصوص O
|
||||
بهینه O
|
||||
سازی O
|
||||
مصرف O
|
||||
انرژی O
|
||||
به O
|
||||
کشاورزانی O
|
||||
که O
|
||||
برای O
|
||||
برقی O
|
||||
کردن O
|
||||
موتور O
|
||||
پمپ O
|
||||
چاههای O
|
||||
کشاورزی O
|
||||
خود O
|
||||
اقدام O
|
||||
می O
|
||||
نمایند O
|
||||
از O
|
||||
طریق O
|
||||
بانک O
|
||||
کشاورزی O
|
||||
تسهیلات O
|
||||
لازم O
|
||||
را O
|
||||
در O
|
||||
اختیارشان O
|
||||
قرار O
|
||||
دهد. O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
13 I-HALFREFERENCE
|
||||
در O
|
||||
اجرای O
|
||||
بند O
|
||||
(ح) O
|
||||
ماده B-HALFREFERENCE
|
||||
(33) I-HALFREFERENCE
|
||||
قانون B-REFERENCE
|
||||
برنامه I-REFERENCE
|
||||
چهارم I-REFERENCE
|
||||
توسعه I-REFERENCE
|
||||
اقتصادی I-REFERENCE
|
||||
اجتماعی I-REFERENCE
|
||||
و I-REFERENCE
|
||||
فرهنگی I-REFERENCE
|
||||
جمهوری I-REFERENCE
|
||||
اسلامی I-REFERENCE
|
||||
ایران I-REFERENCE
|
||||
به O
|
||||
دولت O
|
||||
اجازه O
|
||||
داده O
|
||||
می O
|
||||
شود O
|
||||
به O
|
||||
پیشنهاد O
|
||||
وزیر O
|
||||
صنعت O
|
||||
معدن O
|
||||
و O
|
||||
تجارت O
|
||||
به O
|
||||
شرح O
|
||||
زیر O
|
||||
اقدام O
|
||||
نماید: O
|
||||
|
||||
1 O
|
||||
از O
|
||||
محصولات O
|
||||
خارجی O
|
||||
که O
|
||||
با O
|
||||
قیمت O
|
||||
غیرمتعارف O
|
||||
و O
|
||||
یا O
|
||||
تسهیلات O
|
||||
غیرعادی O
|
||||
به O
|
||||
کشور O
|
||||
وارد O
|
||||
می O
|
||||
شوند O
|
||||
مابه O
|
||||
التفاوت O
|
||||
اخذ O
|
||||
نماید. O
|
||||
|
||||
ماده B-HALFREFERENCE
|
||||
16 I-HALFREFERENCE
|
||||
در O
|
||||
ماده B-HALFREFERENCE
|
||||
(92) I-HALFREFERENCE
|
||||
قانون B-REFERENCE
|
||||
تنظیم I-REFERENCE
|
||||
بخشی I-REFERENCE
|
||||
از I-REFERENCE
|
||||
مقررات I-REFERENCE
|
||||
مالی I-REFERENCE
|
||||
دولت I-REFERENCE
|
||||
مصوب O
|
||||
27 B-DATE2
|
||||
/11 I-DATE2
|
||||
/1380 I-DATE2
|
||||
عبارت O
|
||||
«درآمد O
|
||||
عمومی» O
|
||||
به O
|
||||
عبارت O
|
||||
«درآمد O
|
||||
اختصاصی» O
|
||||
اصلاح O
|
||||
می O
|
||||
گردد. O
|
||||
|
Loading…
Reference in New Issue
Block a user