feat: sms module

This commit is contained in:
mahyargdz
2025-07-09 11:55:58 +03:30
parent 43e49f96f7
commit ac1391f9ce
15 changed files with 1175 additions and 464 deletions
+6 -49
View File
@@ -9,7 +9,7 @@ const {
checkValidations,
generateRandomDigits
} = require('../plugins/controllersHelperFunctions')
const { SMS } = require('../plugins/SMS_Module')
const sms = require('../plugins/SMS_Module')
// const { phrases } = require('../plugins/SMS_Phrases')
// const { notifyAgent } = require('../WebSocket/controllers/agent_EventsController')
const { notifyAdmin } = require('../WebSocket/controllers/admin_EventsController')
@@ -20,10 +20,6 @@ function ArpaDateFormat(date) {
return moment(date).format('YYYY-MM-DD HH:mm:ss')
}
function SmsDateFormat(date) {
return moment(date).format('jYYYY/jMM/jDD')
}
/// ///////////////// agent
module.exports.add_buffer_request = [
async (req, res) => {
@@ -172,15 +168,7 @@ module.exports.change_br_status_to_sent_by_agent = [
br.sendDate = ArpaDateFormat(thisTime)
// send sms for agent
const smsMsg = [
' نماینده گرامی درخواست کالای بافر شما در تاریخ ',
SmsDateFormat(thisTime),
' با کد پیگیری ',
trackingCode,
' برای شرکت ارسال شد. '
]
SMS([br.agent_id.mobile_number], smsMsg.join(''))
await sms.bufferRequest.sent(br.agent_id.mobile_number, trackingCode, thisTime)
await br.save()
notifyAdmin('updateNewBufferRequests')
@@ -244,15 +232,7 @@ module.exports.get_one_br_for_admin = [
br.statusHistory.push({ status: 'ongoing', date: thisTime })
await br.save()
const smsMsg = [
' نماینده گرامی درخواست کالای بافر شما با کد پیگیری ',
br.trackingCode,
' در تاریخ ',
SmsDateFormat(thisTime),
' در دست اقدام قرار گرفت. '
]
SMS([br.agent_id.mobile_number], smsMsg.join(''))
await sms.bufferRequest.ongoing(br.agent_id.mobile_number, br.trackingCode, thisTime)
notifyAdmin('updateNewBufferRequests')
}
return res.json(br)
@@ -294,38 +274,15 @@ module.exports.change_br_status_by_admin = [
br.status = status
br.statusHistory.push({ status, date: thisTime })
let smsMessage
// differenet status methods
// different status methods
if (status === 'waiting') {
smsMessage = [
' نماینده گرامی درخواست کالای بافر شما با کد پیگیری ',
br.trackingCode,
' در تاریخ ',
SmsDateFormat(thisTime),
' در انتظار قطعه میباشد. '
]
await sms.bufferRequest.waiting(br.agent_id.mobile_number, br.trackingCode, thisTime)
}
if (status === 'delivered') {
if (deliveryCode) br.deliveryCode = deliveryCode
function deliveryCodePhrase() {
if (deliveryCode.length) return `کد پیگیری مرسوله: ${deliveryCode}` + '\n'
else return ''
}
smsMessage = [
' نماینده گرامی درخواست کالای بافر شما با کد پیگیری ',
br.trackingCode,
' در تاریخ ',
SmsDateFormat(thisTime),
' تحویل شد. ',
'\n',
deliveryCodePhrase()
]
await sms.bufferRequest.delivered(br.agent_id.mobile_number, br.trackingCode, deliveryCode, thisTime)
}
await SMS([br.agent_id.mobile_number], smsMessage.join(''))
await br.save()
return res.json({ message: _faSr.response.success_save })
} catch (e) {