// 构造发送包,传入参数nowData和resendData // nowData为当前数据段,resendData为重发数据段 // nowData和resendData都为数组,数组元素的内容为:信息类型编号 + 信息内容长度 + 信息内容 module.exports = (app, nowData, resendData) => { const utils = app.middleware.utils; utils.intrinsic.packageNumber++; let now = new Date(); let sendTime = utils.packageItem(2, now.getFullYear()) + utils.packageItem(1, now.getMonth() + 1) + utils.packageItem(1, now.getDate()); let packageMsg = utils.packageItem(2, app.config.socketClient.id) + utils.packageItem(2, app.config.socketClient.destination) + utils.packageItem(4, utils.intrinsic.packageNumber) + utils.packageItem(1, nowData.length) + utils.packageItem(2, utils.arrItemLength(nowData)) + (resendData ? '01' : '00') + (resendData ? utils.packageItem(1, resendData.length) : '00') + (resendData ? utils.packageItem(2, utils.arrItemLength(resendData)) : '0000') + sendTime + utils.arrTotalItem(nowData) + (resendData ? sendTime : '') + (resendData ? utils.arrTotalItem(resendData) : '') + utils.intrinsic.separateIdentifiers; const buffer = Buffer.from(packageMsg, 'hex'); return buffer; };