@minato-bot/plugin-wxjsxy 2.0.2 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +5 -5
- package/dist/index.mjs +1 -1
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Plugin } from "@atri-bot/core";
|
|
2
2
|
import { TextSegment } from "node-napcat-ts";
|
|
3
|
-
import * as yargs
|
|
3
|
+
import * as _$yargs from "yargs";
|
|
4
4
|
//#region src/api.d.ts
|
|
5
5
|
interface LoginToCasReq {
|
|
6
6
|
username: string;
|
|
@@ -22,20 +22,20 @@ interface WxjsxyPluginConfig {
|
|
|
22
22
|
offset: number;
|
|
23
23
|
}>;
|
|
24
24
|
}
|
|
25
|
-
declare const AddAccountCommander: yargs
|
|
25
|
+
declare const AddAccountCommander: _$yargs.Argv<{
|
|
26
26
|
username: string;
|
|
27
27
|
} & {
|
|
28
28
|
password: string;
|
|
29
29
|
}>;
|
|
30
|
-
declare const startProcessCommander: yargs
|
|
30
|
+
declare const startProcessCommander: _$yargs.Argv<{
|
|
31
31
|
offset: number;
|
|
32
32
|
}>;
|
|
33
|
-
declare const getProcessListCommander: yargs
|
|
33
|
+
declare const getProcessListCommander: _$yargs.Argv<{
|
|
34
34
|
page: number;
|
|
35
35
|
} & {
|
|
36
36
|
size: number;
|
|
37
37
|
}>;
|
|
38
|
-
declare const setCronProcessCommander: yargs
|
|
38
|
+
declare const setCronProcessCommander: _$yargs.Argv<{
|
|
39
39
|
cron: string;
|
|
40
40
|
} & {
|
|
41
41
|
offset: number;
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{Plugin as e}from"@atri-bot/core";import{useCron as t}from"@atri-bot/lib-cron";import n from"dayjs";import{Structs as r}from"node-napcat-ts";import i from"yargs";import a from"node:crypto";import o from"ky";var s=`@minato-bot/plugin-wxjsxy`,c=16,l=c,u=65536,d=u>>>1,f=u*u,p=u-1,m,h,g,_;function v(e){m=e,h=Array(m);for(var t=0;t<h.length;t++)h[t]=0;g=new y,_=new y,_.digits[0]=1}v(20),x(0x38d7ea4c68000);function y(e){typeof e==`boolean`&&e==1?this.digits=null:this.digits=h.slice(0),this.isNeg=!1}function b(e){var t=new y(!0);return t.digits=e.digits.slice(0),t.isNeg=e.isNeg,t}function x(e){var t=new y;t.isNeg=e<0,e=Math.abs(e);for(var n=0;e>0;)t.digits[n++]=e&p,e>>=c;return t}function S(e){for(var t=``,n=e.length-1;n>-1;--n)t+=e.charAt(n);return t}var C=`0123456789abcdefghijklmnopqrstuvwxyz`.split(``);function w(e,t){var n=new y;n.digits[0]=t;for(var r=H(e,n),i=C[r[1].digits[0]];V(r[0],g)==1;)r=H(r[0],n),digit=r[1].digits[0],i+=C[r[1].digits[0]];return(e.isNeg?`-`:``)+S(i)}var T=[`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`a`,`b`,`c`,`d`,`e`,`f`];function E(e){for(var t=15,n=``,r=0;r<4;++r)n+=T[e&t],e>>>=4;return S(n)}function ee(e){var t=``;M(e);for(var n=M(e);n>-1;--n)t+=E(e.digits[n]);return t}function D(e){var t=48,n=t+9,r=97,i=r+25,a=65;return e>=t&&e<=n?e-t:e>=a&&e<=90?10+e-a:e>=r&&e<=i?10+e-r:0}function te(e){for(var t=0,n=Math.min(e.length,4),r=0;r<n;++r)t<<=4,t|=D(e.charCodeAt(r));return t}function O(e){for(var t=new y,n=e.length,r=0;n>0;n-=4,++r)t.digits[r]=te(e.substr(Math.max(n-4,0),Math.min(n,4)));return t}function k(e){for(var t=``,n=M(e);n>-1;--n)t+=ne(e.digits[n]);return t}function ne(e){var t=String.fromCharCode(e&255);return e>>>=8,String.fromCharCode(e&255)+t}function A(e,t){var n;if(e.isNeg!=t.isNeg)t.isNeg=!t.isNeg,n=j(e,t),t.isNeg=!t.isNeg;else{n=new y;for(var r=0,i,a=0;a<e.digits.length;++a)i=e.digits[a]+t.digits[a]+r,n.digits[a]=i&65535,r=Number(i>=u);n.isNeg=e.isNeg}return n}function j(e,t){var n;if(e.isNeg!=t.isNeg)t.isNeg=!t.isNeg,n=A(e,t),t.isNeg=!t.isNeg;else{n=new y;for(var r,i=0,a=0;a<e.digits.length;++a)r=e.digits[a]-t.digits[a]+i,n.digits[a]=r&65535,n.digits[a]<0&&(n.digits[a]+=u),i=0-Number(r<0);if(i==-1){i=0;for(var a=0;a<e.digits.length;++a)r=0-n.digits[a]+i,n.digits[a]=r&65535,n.digits[a]<0&&(n.digits[a]+=u),i=0-Number(r<0);n.isNeg=!e.isNeg}else n.isNeg=e.isNeg}return n}function M(e){for(var t=e.digits.length-1;t>0&&e.digits[t]==0;)--t;return t}function N(e){var t=M(e),n=e.digits[t],r=(t+1)*l,i;for(i=r;i>r-l&&!(n&32768);--i)n<<=1;return i}function P(e,t){for(var n=new y,r,i=M(e),a=M(t),o,s,l=0;l<=a;++l){r=0,s=l;for(var u=0;u<=i;++u,++s)o=n.digits[s]+e.digits[u]*t.digits[l]+r,n.digits[s]=o&p,r=o>>>c;n.digits[l+i+1]=r}return n.isNeg=e.isNeg!=t.isNeg,n}function re(e,t){var n,r,i,a=new y;n=M(e),r=0;for(var o=0;o<=n;++o)i=a.digits[o]+e.digits[o]*t+r,a.digits[o]=i&p,r=i>>>c;return a.digits[1+n]=r,a}function F(e,t,n,r,i){for(var a=Math.min(t+i,e.length),o=t,s=r;o<a;++o,++s)n[s]=e[o]}var ie=[0,32768,49152,57344,61440,63488,64512,65024,65280,65408,65472,65504,65520,65528,65532,65534,65535];function I(e,t){var n=Math.floor(t/l),r=new y;F(e.digits,0,r.digits,n,r.digits.length-n);for(var i=t%l,a=l-i,o=r.digits.length-1,s=o-1;o>0;--o,--s)r.digits[o]=r.digits[o]<<i&p|(r.digits[s]&ie[i])>>>a;return r.digits[0]=r.digits[o]<<i&p,r.isNeg=e.isNeg,r}var ae=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535];function L(e,t){var n=Math.floor(t/l),r=new y;F(e.digits,n,r.digits,0,e.digits.length-n);for(var i=t%l,a=l-i,o=0,s=o+1;o<r.digits.length-1;++o,++s)r.digits[o]=r.digits[o]>>>i|(r.digits[s]&ae[i])<<a;return r.digits[r.digits.length-1]>>>=i,r.isNeg=e.isNeg,r}function R(e,t){var n=new y;return F(e.digits,0,n.digits,t,n.digits.length-t),n}function z(e,t){var n=new y;return F(e.digits,t,n.digits,0,n.digits.length-t),n}function B(e,t){var n=new y;return F(e.digits,0,n.digits,0,t),n}function V(e,t){if(e.isNeg!=t.isNeg)return 1-2*Number(e.isNeg);for(var n=e.digits.length-1;n>=0;--n)if(e.digits[n]!=t.digits[n])return e.isNeg?1-2*Number(e.digits[n]>t.digits[n]):1-2*Number(e.digits[n]<t.digits[n]);return 0}function H(e,t){var n=N(e),r=N(t),i=t.isNeg,a,o;if(n<r)return e.isNeg?(a=b(_),a.isNeg=!t.isNeg,e.isNeg=!1,t.isNeg=!1,o=j(t,e),e.isNeg=!0,t.isNeg=i):(a=new y,o=b(e)),[a,o];a=new y,o=e;for(var s=Math.ceil(r/l)-1,c=0;t.digits[s]<d;)t=I(t,1),++c,++r,s=Math.ceil(r/l)-1;o=I(o,c),n+=c;for(var m=Math.ceil(n/l)-1,h=R(t,m-s);V(o,h)!=-1;)++a.digits[m-s],o=j(o,h);for(var g=m;g>s;--g){var v=g>=o.digits.length?0:o.digits[g],x=g-1>=o.digits.length?0:o.digits[g-1],S=g-2>=o.digits.length?0:o.digits[g-2],C=s>=t.digits.length?0:t.digits[s],w=s-1>=t.digits.length?0:t.digits[s-1];v==C?a.digits[g-s-1]=p:a.digits[g-s-1]=Math.floor((v*u+x)/C);for(var T=a.digits[g-s-1]*(C*u+w),E=v*f+(x*u+S);T>E;)--a.digits[g-s-1],T=a.digits[g-s-1]*(C*u|w),E=v*u*u+(x*u+S);h=R(t,g-s-1),o=j(o,re(h,a.digits[g-s-1])),o.isNeg&&(o=A(o,h),--a.digits[g-s-1])}return o=L(o,c),a.isNeg=e.isNeg!=i,e.isNeg&&(a=i?A(a,_):j(a,_),t=L(t,c),o=j(t,o)),o.digits[0]==0&&M(o)==0&&(o.isNeg=!1),[a,o]}function oe(e,t){return H(e,t)[0]}function se(e){this.modulus=b(e),this.k=M(this.modulus)+1;var t=new y;t.digits[2*this.k]=1,this.mu=oe(t,this.modulus),this.bkplus1=new y,this.bkplus1.digits[this.k+1]=1,this.modulo=ce,this.multiplyMod=le,this.powMod=ue}function ce(e){var t=z(P(z(e,this.k-1),this.mu),this.k+1),n=j(B(e,this.k+1),B(P(t,this.modulus),this.k+1));n.isNeg&&(n=A(n,this.bkplus1));for(var r=V(n,this.modulus)>=0;r;)n=j(n,this.modulus),r=V(n,this.modulus)>=0;return n}function le(e,t){var n=P(e,t);return this.modulo(n)}function ue(e,t){var n=new y;n.digits[0]=1;for(var r=e,i=t;i.digits[0]&1&&(n=this.multiplyMod(n,r)),i=L(i,1),!(i.digits[0]==0&&M(i)==0);)r=this.multiplyMod(r,r);return n}var U={};U.NoPadding=`NoPadding`,U.PKCS1Padding=`PKCS1Padding`,U.RawEncoding=`RawEncoding`,U.NumericEncoding=`NumericEncoding`;function de(e,t,n,r){this.e=O(e),this.d=O(t),this.m=O(n),typeof r==`number`?this.chunkSize=r/8:this.chunkSize=2*M(this.m),this.radix=16,this.barrett=new se(this.m)}function fe(e,t,n,r){var i=[],a=t.length,o,s,c,l,u,d,f,p=``,m,h,g;for(l=typeof n==`string`?n==U.NoPadding?1:n==U.PKCS1Padding?2:0:0,u=typeof r==`string`&&r==U.RawEncoding?1:0,l==1?a>e.chunkSize&&(a=e.chunkSize):l==2&&a>e.chunkSize-11&&(a=e.chunkSize-11),o=0,s=l==2?a-1:e.chunkSize-1;o<a;)l?i[s]=t.charCodeAt(o):i[o]=t.charCodeAt(o),o++,s--;for(l==1&&(o=0),s=e.chunkSize-a%e.chunkSize;s>0;){if(l==2){for(d=Math.floor(Math.random()*256);!d;)d=Math.floor(Math.random()*256);i[o]=d}else i[o]=0;o++,s--}for(l==2&&(i[a]=0,i[e.chunkSize-2]=2,i[e.chunkSize-1]=0),f=i.length,o=0;o<f;o+=e.chunkSize){for(m=new y,s=0,c=o;c<o+e.chunkSize;++s)m.digits[s]=i[c++],m.digits[s]+=i[c++]<<8;h=e.barrett.powMod(m,e.e),g=u==1?k(h):e.radix==16?ee(h):w(h,e.radix),p+=g}return p}v(131);const pe=new de(`010001`,``,`00b5eeb166e069920e80bebd1fea4829d3d1f3216f2aabe79b6c47a3c18dcee5fd22c2e7ac519cab59198ece036dcf289ea8201e2a0b9ded307f8fb704136eaeb670286f5ad44e691005ba9ea5af04ada5367cd724b5a26fdb5120cc95b6431604bd219c6b7d83a6f8f24b43918ea988a76f93c333aa5a20991493d4eb1117e7b1`),W=o.create({throwHttpErrors:!1,headers:{"User-Agent":`Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36`,Accept:`application/json, text/plain, */*`,"Content-Type":`application/x-www-form-urlencoded`,"sec-ch-ua-platform":`"Windows"`}});async function G(e){let{username:t,password:n}=e;return await W.post(`https://cas.wxjsxy.com.cn/lyuapServer/v1/tickets`,{body:new URLSearchParams({username:t,password:fe(pe,n),service:`https://portal.wxjsxy.com.cn/`,loginType:``,id:``,code:``,otpcode:``})}).json()}async function me(e){let t=await W.post(`https://cas.wxjsxy.com.cn/lyuapServer/v1/tickets/${e}`,{body:new URLSearchParams({service:`https://dy.wxjsxy.com.cn/prdapi/wxjsxyapp/cas/index`,loginToken:`loginToken`})}).text();return[t.startsWith(`ST-`),t]}async function he(e){let t=(await W.get(`https://dy.wxjsxy.com.cn/prdapi/wxjsxyapp/cas/index?ticket=${e}`,{redirect:`manual`})).headers.getSetCookie();return t.length===0?null:t.map(e=>`${e.split(`;`)[0]};`).join(``)}async function ge(e){return await W.get(`https://dy.wxjsxy.com.cn/prdapi/wxjsxyapp/cas/indexData`,{headers:{cookie:e}}).json()}async function _e(e,t){let n={...t,processDefinitionKey:`studentApply`},r=a.createHash(`md5`).update(`myappsecret${JSON.stringify(n)}myappsecret`).digest(`hex`);return await o.post(`https://dy.wxjsxy.com.cn/prdapi/activiti/processInstance/startProcess?user_info_query_json=${encodeURIComponent(JSON.stringify(n))}&sign=${r}`,{json:n,headers:{token:e,mode:`wxa`,sign:r,timestamp:Date.now(),"Content-Type":`application/json`}}).json()}async function ve(e,t={pageNo:1,pageSize:1}){let n=a.createHash(`md5`).update(`myappsecret${JSON.stringify(t)}myappsecret`).digest(`hex`);return await o.post(`https://dy.wxjsxy.com.cn/prdapi/activiti/task/myapply?user_info_query_json=${encodeURIComponent(JSON.stringify(t))}&sign=${n}`,{json:t,headers:{token:e,mode:`wxa`,sign:n,timestamp:Date.now(),"Content-Type":`application/json`}}).json()}async function ye(e,t){let n={instanceId:t},r=a.createHash(`md5`).update(`myappsecret${JSON.stringify(n)}myappsecret`).digest(`hex`);return await o.post(`https://dy.wxjsxy.com.cn/prdapi/activiti/task/done/info/byInstanceId?user_info_query_json=${encodeURIComponent(JSON.stringify(n))}&sign=${r}`,{json:n,headers:{token:e,mode:`wxa`,sign:r,timestamp:Date.now(),"Content-Type":`application/json`}}).json()}const K=i().option(`username`,{alias:`u`,type:`string`,description:`账号`,demandOption:!0}).option(`password`,{alias:`p`,type:`string`,description:`密码`,demandOption:!0}),q=i().option(`offset`,{alias:`o`,type:`number`,description:`请假日期相对于今天的偏移,默认为0即请假当天`,default:0}),J=i().option(`page`,{alias:`p`,type:`number`,description:`页码`,default:1}).option(`size`,{alias:`s`,type:`number`,description:`每页数量`,default:1}),Y=i().option(`cron`,{alias:`c`,type:`string`,description:`cron表达式`,demandOption:!0}).option(`offset`,{alias:`o`,type:`number`,description:`请假日期相对于今天的偏移,默认为0即请假当天`,default:0});async function X(e){let t=await G(e);if(!(`ticket`in t))return[r.text(`请假失败, 登陆账号失败: ${JSON.stringify(t)}`)];let[n,i]=await me(t.tgt);if(!n)return[r.text(`请假失败, 获取CasToken失败: ${i}`)];let a=await he(i);if(!a)return[r.text(`请假失败, 获取DyCookie失败`)];let o=await ge(a);return o.token?o.token:[r.text(`请假失败, 获取DyToken失败: ${JSON.stringify(o)}`)]}async function Z(e,t=0){let i=await X(e);if(Array.isArray(i))return i;let a=await _e(i,{beginTime:n().add(t,`day`).hour(6).minute(30).format(`YYYY-MM-DD HH:mm`),endTime:n().add(t,`day`).hour(20).minute(50).format(`YYYY-MM-DD HH:mm`),leaveSchool:`是`,backDormitory:`是`,askedType:`事假`,reason:`集训`});return a.code===200?[r.text(`请假成功, 返回信息: \n ${JSON.stringify(a)}`)]:[r.text(`请假失败, 提交请假申请失败: ${JSON.stringify(a)}`)]}async function Q(e,t){let n=await X(e);if(Array.isArray(n))return n;let i=await ve(n,t);if(i.code!==200)return[r.text(`获取请假情况失败, 错误信息: ${JSON.stringify(i)}`)];let a=await Promise.all(i.rows.map(e=>ye(n,e.instanceId)));return a.some(e=>e.code!==200)?[r.text(`获取请假详情失败, 错误信息: ${JSON.stringify(a)}`)]:[r.text(`请假情况:
|
|
2
2
|
`),r.text(i.rows.map((e,t)=>{let n=[`- 申请时间: ${e.processStartTime}`,` 审核状态: ${e.approvaState}`],r=a[t];return r.code===200?(n.push(` 申请时间: ${r.rows.hisTasks[1].processStartTime}`,...r.rows.hisTasks[1].formSchema.formProperties.map(e=>` ${e.name}: ${e.value}`)),n.join(`
|
|
3
3
|
`)):(n.push(` 获取详情失败: ${JSON.stringify(r)}`),n.join(`
|
|
4
|
-
`))}).join(``))]}function $(e,t){return e.accounts[t]?null:[r.text(`请先添加账号,使用命令:wxjsxy添加账号 -u <用户名> -p <密码>`)]}const be=new e(s).setDefaultConfig({accounts:{},crons:{}}).onInstall(async({event:e,config:n,atri:i,bot:a,saveConfig:o})=>{let s=t(i);async function c(){for(let[e,t]of Object.entries(n.crons)){let r=Number.parseFloat(e);s.getCronJob(`wxjsxy_cron_${r}`)&&s.removeCronJob(`wxjsxy_cron_${r}`),s.addCronJob({name:`wxjsxy_cron_${r}`,cronTime:t.cron,onTick:async()=>{if(!$(n,r)){delete n.crons[r],await o();return}let e=await Z(n.accounts[r],t.offset);await a.sendMsg({message_type:`private`,user_id:r},e)}})}}await c(),e.regCommandEvent({trigger:`wxjsxy添加账号`,commander:K,callback:async({context:e,options:t})=>{if(n.accounts[e.user_id]){await a.sendMsg(e,[r.text(`账号已存在,无需重复添加`)]);return}let i=await G({username:t.username,password:t.password});if(!(`ticket`in i)){await a.sendMsg(e,[r.text(`登录失败,请检查账号密码是否正确: \n ${JSON.stringify(i)}`)]);return}await a.sendMsg(e,[r.text(`登录成功, 返回信息: \n ${JSON.stringify(i)}`)]),n.accounts[e.user_id]={username:t.username,password:t.password},await o()}}),e.regCommandEvent({trigger:`wxjsxy删除账号`,callback:async({context:e})=>{let t=$(n,e.user_id);if(t){await a.sendMsg(e,t);return}delete n.accounts[e.user_id],delete n.crons[e.user_id],s.removeCronJob(`wxjsxy_cron_${e.user_id}`),await o(),await a.sendMsg(e,[r.text(`账号删除成功`)])}}),e.regCommandEvent({trigger:`wxjsxy请假`,commander:q,callback:async({context:e,options:t})=>{let r=$(n,e.user_id);if(r){await a.sendMsg(e,r);return}let i=await Z(n.accounts[e.user_id],t.offset);await a.sendMsg(e,i)}}),e.regCommandEvent({trigger:`wxjsxy请假情况`,commander:J,callback:async({context:e,options:t})=>{let r=$(n,e.user_id);if(r){await a.sendMsg(e,r);return}let i=await Q(n.accounts[e.user_id],{pageNo:t.page,pageSize:t.size});await a.sendMsg(e,i)}}),e.regCommandEvent({trigger:`wxjsxy定时请假`,commander:Y,callback:async({context:e,options:t})=>{let i=$(n,e.user_id);if(i){await a.sendMsg(e,i);return}if(n.crons[e.user_id]){await a.sendMsg(e,[r.text(`已存在定时请假任务,正在覆盖原有任务`)]);return}if(t.cron.split(` `).length!==
|
|
4
|
+
`))}).join(``))]}function $(e,t){return e.accounts[t]?null:[r.text(`请先添加账号,使用命令:wxjsxy添加账号 -u <用户名> -p <密码>`)]}const be=new e(s).setDefaultConfig({accounts:{},crons:{}}).onInstall(async({event:e,config:n,atri:i,bot:a,saveConfig:o})=>{let s=t(i);async function c(){for(let[e,t]of Object.entries(n.crons)){let r=Number.parseFloat(e);s.getCronJob(`wxjsxy_cron_${r}`)&&s.removeCronJob(`wxjsxy_cron_${r}`),s.addCronJob({name:`wxjsxy_cron_${r}`,cronTime:t.cron,onTick:async()=>{if(!$(n,r)){delete n.crons[r],await o();return}let e=await Z(n.accounts[r],t.offset);await a.sendMsg({message_type:`private`,user_id:r},e)}})}}await c(),e.regCommandEvent({trigger:`wxjsxy添加账号`,commander:K,callback:async({context:e,options:t})=>{if(n.accounts[e.user_id]){await a.sendMsg(e,[r.text(`账号已存在,无需重复添加`)]);return}let i=await G({username:t.username,password:t.password});if(!(`ticket`in i)){await a.sendMsg(e,[r.text(`登录失败,请检查账号密码是否正确: \n ${JSON.stringify(i)}`)]);return}await a.sendMsg(e,[r.text(`登录成功, 返回信息: \n ${JSON.stringify(i)}`)]),n.accounts[e.user_id]={username:t.username,password:t.password},await o()}}),e.regCommandEvent({trigger:`wxjsxy删除账号`,callback:async({context:e})=>{let t=$(n,e.user_id);if(t){await a.sendMsg(e,t);return}delete n.accounts[e.user_id],delete n.crons[e.user_id],s.removeCronJob(`wxjsxy_cron_${e.user_id}`),await o(),await a.sendMsg(e,[r.text(`账号删除成功`)])}}),e.regCommandEvent({trigger:`wxjsxy请假`,commander:q,callback:async({context:e,options:t})=>{let r=$(n,e.user_id);if(r){await a.sendMsg(e,r);return}let i=await Z(n.accounts[e.user_id],t.offset);await a.sendMsg(e,i)}}),e.regCommandEvent({trigger:`wxjsxy请假情况`,commander:J,callback:async({context:e,options:t})=>{let r=$(n,e.user_id);if(r){await a.sendMsg(e,r);return}let i=await Q(n.accounts[e.user_id],{pageNo:t.page,pageSize:t.size});await a.sendMsg(e,i)}}),e.regCommandEvent({trigger:`wxjsxy定时请假`,commander:Y,callback:async({context:e,options:t})=>{let i=$(n,e.user_id);if(i){await a.sendMsg(e,i);return}if(n.crons[e.user_id]){await a.sendMsg(e,[r.text(`已存在定时请假任务,正在覆盖原有任务`)]);return}if(t.cron.split(` `).length!==6){await a.sendMsg(e,[r.text(`cron表达式格式错误,请提供6段表达式, 示例: 0 30 6 * * * 表示每天6点30分`)]);return}if(!await a.isFriend({user_id:e.user_id})){await a.sendMsg(e,[r.text(`请先添加好友,才能设置定时请假哦`)]);return}n.crons[e.user_id]={cron:t.cron,offset:t.offset},await o(),await c(),await a.sendMsg(e,[r.text(`定时请假设置成功`)])}}),e.regCommandEvent({trigger:`wxjsxy取消定时请假`,callback:async({context:e})=>{let t=$(n,e.user_id);if(t){await a.sendMsg(e,t);return}if(!n.crons[e.user_id]){await a.sendMsg(e,[r.text(`没有定时请假任务可供取消`)]);return}delete n.crons[e.user_id],await o(),await c(),await a.sendMsg(e,[r.text(`定时请假取消成功`)])}})}).onUninstall(({atri:e})=>{let n=t(e),r=Object.entries(n.getCronJobs());for(let[e,t]of r)e.startsWith(`wxjsxy_cron_`)&&n.removeCronJob(e)});export{K as AddAccountCommander,$ as checkHaveAccount,X as getDyTokenByCas,Q as getProcessList,J as getProcessListCommander,be as plugin,Y as setCronProcessCommander,Z as startProcess,q as startProcessCommander};
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@minato-bot/plugin-wxjsxy",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.4",
|
|
5
5
|
"description": "wxjsxy for atri framework",
|
|
6
6
|
"author": "huan_kong",
|
|
7
7
|
"license": "MIT",
|
|
8
|
-
"main": "./dist/index.
|
|
9
|
-
"types": "./dist/index.d.
|
|
8
|
+
"main": "./dist/index.mjs",
|
|
9
|
+
"types": "./dist/index.d.mts",
|
|
10
10
|
"files": [
|
|
11
11
|
"./dist/**/*"
|
|
12
12
|
],
|