|
@@ -17,7 +17,8 @@ class PatentearlyService extends CrudService {
|
|
|
}
|
|
|
async query(query, { skip = 0, limit = 0 }) {
|
|
|
const newquery = await this.resetCode(query);
|
|
|
- const res = await this.model.find(newquery).skip(parseInt(skip)).limit(parseInt(limit)).sort({ 'meta.createdAt': -1 });
|
|
|
+ const res = await this.model.find(newquery).skip(parseInt(skip)).limit(parseInt(limit))
|
|
|
+ .sort({ 'meta.createdAt': -1 });
|
|
|
return res;
|
|
|
}
|
|
|
async count(query) {
|
|
@@ -33,13 +34,13 @@ class PatentearlyService extends CrudService {
|
|
|
let ids = [];
|
|
|
if (code) {
|
|
|
const plist = await this.personalModel.find({ code });
|
|
|
- ids = plist.map((i) => i._id);
|
|
|
+ ids = plist.map(i => i._id);
|
|
|
if (ids.length > 0) {
|
|
|
newquery.user_id = { $elemMatch: { $in: ids } };
|
|
|
delete newquery.code;
|
|
|
}
|
|
|
} else if (user_id) {
|
|
|
- newquery.user_id = { $elemMatch: { $in: [ObjectId(user_id)] } };
|
|
|
+ newquery.user_id = { $elemMatch: { $in: [ ObjectId(user_id) ] } };
|
|
|
}
|
|
|
|
|
|
return newquery;
|
|
@@ -49,9 +50,10 @@ class PatentearlyService extends CrudService {
|
|
|
assert(code, '缺少机构信息');
|
|
|
let pids = await this.personalModel.find({ code }, { _id: 1 });
|
|
|
if (pids.length <= 0) return { data: [], total: 0 };
|
|
|
- pids = pids.map((i) => i._id);
|
|
|
+ pids = pids.map(i => i._id);
|
|
|
const query = { user_id: { $elemMatch: { $in: pids } } };
|
|
|
- const data = await this.model.find(query).skip(parseInt(skip)).limit(parseInt(limit)).sort({ 'meta.createdAt': -1 });
|
|
|
+ const data = await this.model.find(query).skip(parseInt(skip)).limit(parseInt(limit))
|
|
|
+ .sort({ 'meta.createdAt': -1 });
|
|
|
const total = await this.model.count(query);
|
|
|
return { data, total };
|
|
|
}
|
|
@@ -85,7 +87,7 @@ class PatentearlyService extends CrudService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- *
|
|
|
+ *
|
|
|
* @param {Array} data 处理数据
|
|
|
*/
|
|
|
async dealData(data) {
|
|
@@ -94,18 +96,16 @@ class PatentearlyService extends CrudService {
|
|
|
for (const i of data) {
|
|
|
try {
|
|
|
const { create_date } = i;
|
|
|
- // 取专利日期
|
|
|
- const month = moment(create_date).format('MM-DD');
|
|
|
- // // 取得当前年份
|
|
|
- const nowYear = moment(new Date()).format('YYYY');
|
|
|
- // // 当前年份+一年
|
|
|
- const afterYear = moment(nowYear).add(1, 'year').format('YYYY');
|
|
|
- // // 开始时间(先组合日期,减去三个月)
|
|
|
- const nowDate = afterYear + '-' + month;
|
|
|
- const start = moment(nowDate).subtract(limitMonth, 'months').format('YYYY-MM-DD');
|
|
|
- // 结束时间
|
|
|
- const end = afterYear + '-' + month;
|
|
|
+ // 当前年份
|
|
|
+ const now_year = moment(new Date()).format('YYYY');
|
|
|
+ // 专利日期
|
|
|
+ const patent_month = moment(create_date).format('MM-DD');
|
|
|
+ // 专利到期日期
|
|
|
+ const end = now_year + '-' + patent_month;
|
|
|
+ // 专利到期前一天
|
|
|
const endbeforeone = moment(end).subtract(1, 'd').format('YYYY-MM-DD');
|
|
|
+ // 专利到期日期减去三个月
|
|
|
+ const start = moment(end).subtract(limitMonth, 'months').format('YYYY-MM-DD');
|
|
|
const r = moment().isBetween(start, end, null, '[]');
|
|
|
if (r) {
|
|
|
// 2021-11-08 第一天/最后一天/相差天数被10整出的天数(并不算是严格的每隔10天) 发送消息
|
|
@@ -123,14 +123,14 @@ class PatentearlyService extends CrudService {
|
|
|
}
|
|
|
// 不发就继续
|
|
|
if (!dr) continue;
|
|
|
- const { user_id, name } = i;
|
|
|
+ const { user_id } = i;
|
|
|
// 2021-11-04 修改,因为inventor修改为发明人[Object],所以发明人需要处理成字符串
|
|
|
- const users = user_id.map((i) => i.user_id);
|
|
|
+ const users = user_id.map(i => i.user_id);
|
|
|
// // const inventorNameString = inventor.map(i => i.name).join(';');
|
|
|
// // const content = `发明人 【${inventorNameString}】 的已授权专利 【${name}】 即将失效,避免专利失效过期,请用户及时查看消息并处理! `;
|
|
|
const content = '您可能需缴年费了,具体以缴费通知书为准 ';
|
|
|
const nobj = {
|
|
|
- ..._.omit(i, ['_id', 'id', 'users']),
|
|
|
+ ..._.omit(i, [ '_id', 'id', 'users' ]),
|
|
|
content,
|
|
|
parent_id: i._id,
|
|
|
user_id: users,
|