This commit is contained in:
Mr Swift
2024-10-01 15:31:05 +03:30
parent 283ba25a9d
commit 418ca4e0cf
12 changed files with 361 additions and 318 deletions
+140 -147
View File
@@ -173,155 +173,148 @@ module.exports.add_representation = [
checkValidations(validationResult),
async (req, res) => {
const { user_id } = req
const userData = await User.findById(user_id)
if (!userData || !userData.confirmed){
res.status(400).json({msg:'اول شماره تلفن و ایمیل خود را تایید کنید'})
}else{
const {
representation_type,
full_name,
birth_date,
id_number,
place_of_issue,
national_code,
fathers_name,
education_level,
military_status,
certificates,
store_name,
province_name,
province_id,
city_name,
city_id,
postal_code,
mobile_number,
tel_number,
fax_number,
economic_code,
email,
address,
business_license,
ownership_type,
total_area,
repair_area,
stock_area,
customer_reference_floor,
place_location,
geo_location,
banner_info,
repair_technicians,
repair_masters,
office_workers,
bike_deliveries,
computer_repair_exp,
multimedia_repair_exp,
business_exp,
know_asanServ_from,
introducer_info,
asanServ_products_knowledge,
computer_saling_exp,
computer_saling_description,
other_representations,
more_descriptions
} = req.body
const data = {
user_id,
representation_type,
full_name,
birth_date,
id_number,
place_of_issue,
national_code,
fathers_name,
education_level,
military_status,
certificates,
store_name,
province_name,
province_id,
city_name,
city_id,
postal_code,
mobile_number,
tel_number,
fax_number,
economic_code,
email,
address,
business_license,
ownership_type,
total_area,
repair_area,
stock_area,
customer_reference_floor,
place_location,
geo_location,
banner_info,
repair_technicians,
repair_masters,
office_workers,
bike_deliveries,
computer_repair_exp,
multimedia_repair_exp,
business_exp,
know_asanServ_from,
introducer_info,
asanServ_products_knowledge,
computer_saling_exp,
computer_saling_description,
other_representations,
more_descriptions
}
try {
const checkUserRepresentations = await Representation.find({ user_id, archived: false })
if (checkUserRepresentations.length)
return res406(res, 'تا زمانی که درخواست قبلی توسط کارشناسان تعیین وضعیت نشود نمیتوانید درخواست جدیدی ثبت کنید.')
const allRepresentations = await Representation.find()
const representation_code =
'ASAREP' +
moment(Date.now()).format('jMMM').toUpperCase() +
allRepresentations.length.toString().padStart(4, '0')
data.representation_code = representation_code
const representation = new Representation(data)
const user = await User.findById(user_id)
if(!user){
res404(res,"آین کاربر در دیتای ما وجود ندارد")
}else{
await representation.save()
}
user.askedForRepresentation = true
user.representation_code = representation_code
await user.save()
const smsMessage = [
' متقاضی گرامی درخواست شما با کد پیگیری ',
representation_code,
' در تاریخ ',
SmsDateFormat(Date.now()),
' در سامانه ثبت شد. ',
'\n',
' بعد از بررسی مدارک توسط کارشناسان نتیجه از طریق پیامک برای شما ارسال خواهد شد، همچنین میتوانید با کد پیگیری از طریق نشانی زیر وضعیت درخواست خود را بررسی کند. ',
'\n',
'https://asan-service.com/representation',
'\n',
phrases.signature
]
const responseMsg = ['درخواست شما باموفقیت ثبت شد.', '\n', ' کد پیگیری: ', representation_code]
SMS([mobile_number], smsMessage.join(''))
notifyAdmin('updateNewRepresentations')
return res.json({ message: responseMsg.join('') })
} catch (e) {
return res500(res, e)
}
if (!user_id) throw new Error('invalid user id')
const {
representation_type,
full_name,
birth_date,
id_number,
place_of_issue,
national_code,
fathers_name,
education_level,
military_status,
certificates,
store_name,
province_name,
province_id,
city_name,
city_id,
postal_code,
mobile_number,
tel_number,
fax_number,
economic_code,
email,
address,
business_license,
ownership_type,
total_area,
repair_area,
stock_area,
customer_reference_floor,
place_location,
geo_location,
banner_info,
repair_technicians,
repair_masters,
office_workers,
bike_deliveries,
computer_repair_exp,
multimedia_repair_exp,
business_exp,
know_asanServ_from,
introducer_info,
asanServ_products_knowledge,
computer_saling_exp,
computer_saling_description,
other_representations,
more_descriptions
} = req.body
const data = {
user_id,
representation_type,
full_name,
birth_date,
id_number,
place_of_issue,
national_code,
fathers_name,
education_level,
military_status,
certificates,
store_name,
province_name,
province_id,
city_name,
city_id,
postal_code,
mobile_number,
tel_number,
fax_number,
economic_code,
email,
address,
business_license,
ownership_type,
total_area,
repair_area,
stock_area,
customer_reference_floor,
place_location,
geo_location,
banner_info,
repair_technicians,
repair_masters,
office_workers,
bike_deliveries,
computer_repair_exp,
multimedia_repair_exp,
business_exp,
know_asanServ_from,
introducer_info,
asanServ_products_knowledge,
computer_saling_exp,
computer_saling_description,
other_representations,
more_descriptions
}
try {
const checkUserRepresentations = await Representation.find({ user_id, archived: false })
if (checkUserRepresentations.length)
return res406(res, 'تا زمانی که درخواست قبلی توسط کارشناسان تعیین وضعیت نشود نمیتوانید درخواست جدیدی ثبت کنید.')
const allRepresentations = await Representation.find()
const representation_code =
'ASAREP' +
moment(Date.now()).format('jMMM').toUpperCase() +
allRepresentations.length.toString().padStart(4, '0')
data.representation_code = representation_code
const representation = new Representation(data)
const user = await User.findById(user_id)
if(!user){
res404(res,"آین کاربر در دیتای ما وجود ندارد")
}else{
await representation.save()
}
user.askedForRepresentation = true
user.representation_code = representation_code
await user.save()
const smsMessage = [
' متقاضی گرامی درخواست شما با کد پیگیری ',
representation_code,
' در تاریخ ',
SmsDateFormat(Date.now()),
' در سامانه ثبت شد. ',
'\n',
' بعد از بررسی مدارک توسط کارشناسان نتیجه از طریق پیامک برای شما ارسال خواهد شد، همچنین میتوانید با کد پیگیری از طریق نشانی زیر وضعیت درخواست خود را بررسی کند. ',
'\n',
'https://asan-service.com/representation',
'\n',
phrases.signature
]
const responseMsg = ['درخواست شما باموفقیت ثبت شد.', '\n', ' کد پیگیری: ', representation_code]
SMS([mobile_number], smsMessage.join(''))
notifyAdmin('updateNewRepresentations')
return res.json({ message: responseMsg.join('') })
} catch (e) {
return res500(res, e)
}
}
]