iorder-cli
v2.0.3
Published
Make order more automatical.
Downloads
2
Readme
iorder-cli (2.0.3)
功能介绍
此命令行工具用于创建、配置、打包交付接单项目。
功能:
- 创建单子文件夹
此命令会在当前工作目录下创建 tb666888 文件夹,并在其下创建一个初始 order.config.json 文件,其单子编号code和name字段值为 tb666888 -order create tb666888
- 在当前工作目录初始化单子项目
order init # 以默认配置初始化一个单子
order init -w 100 # 初始化一个总价为 100(无须指定货币单位)的单子
- 在当前工作目录打包单子
order make # 输出一个 zip 文件用于交付,详见下
快速开始
进入单子目录,初始化 order 项目
order init
此操作会在该目录下创建 order.config.json 文件
可选项:
-c [code] # 指定单子代号 (code) -n [name] # 指定单子名称 (name) -w [money] # 指定该单子全款 (wealth.total)
在当前目录下运行
mkdir style script touch style/index.sass index.html script/index.ts tsconfig.json npm i typescript sass -D npx tsc npx sass style/index.sass:style/index.css
然后编写
order.config.json
将字段make.includes
按照如下方式编写{ "make": { "includes": [ "./**/*", "!node_modules", "!./**/*.js", "!./**/*.css", "!./**/*.map" ] } }
然后运行
order make
顺利的话,将会生成一个 dist.zip 文件,试着解压看看!
命令
init
功能
在当前目录初始化一个 order 项目
选项
-c [code]
配置 order 项目的 编号,会写入 order.config.json
的 code
字段中
-n [name]
配置 order 项目的 名称,会写入 order.config.json
的 name
字段中
-w [money]
配置 order 项目的总价,会写入 order.config.json
的 wealth.total
字段值
用法示例
order init
order init -c tb888323 -n Python题目
order init -n 前端作业 -w 300
make
功能
根据 order.config.json
的 make
配置打包项目
打包内容由 make.includes
指定,它实现了C语言fnmatch
兼容的路径匹配,包括通配符等。所使用的库是 globby
打包输出文件默认为 zip
类型,打包输出文件相对路径由 make.delivery
指定。
选项
无
用法示例
order make
create
功能
创建一个 order 项目文件夹,并以该文件夹名设置相关配置,初始化该项目。
需要指定文件夹名,这样order
才知道你要创建的文件夹叫什么。
选项
无
用法示例
order create tb133144
相当于运行
mkdir tb133144
cd tb133144
order init -c tb133144 -n tb133144
deli
delivery 的简写,即交付
功能
在项目的 order.config.json
的 flow.actual
字段添加一条提交记录,值为配置在 /home/.order/order.ini
的 timeFormat.actual
字段作为格式字符串的程序启动时间。
选项
无
用法示例
order deli
pay
看似是 pay,实则是 gain
功能
在 order.config.json
的 wealth.payTimes
中添加一条以 /home/.order/order.ini
的 timeFormat.pay
为格式的 程序启动时间字符串的pay 记录。
该记录为一个对象,其time
属性即为格式化时间字符串,money
属性,当指定了该命令的参数时即为该命令行参数,否则为 wealth.total
乘以(/home/.order/order.ini
中的 defaultPay
(必须为 0~1 的小数).默认值为 0.5.即默认 pay 得 0.5倍的总价
选项
无
用法示例
order pay # 若wealth.total 为 200,一般情况下将在 wealth.payTImes 中添加一条 { "time": [launchTime], "money": 100 },除非在 /home/.order/order.ini 中指定默认 pay 率 defaultPay
order pay 300 # 不管 wealth.total 为多少,都会直接在 wealth.payTImes 中添加一条 { "time": [launchTIme], "money": 300 }
config
/home/.order/order.ini
子命令
目前 config 命令仅能搭配子命令 init 使用,且没有选项没有命令行参数
init
功能
创建 /home/.order/order.ini
并写入默认配置
全局配置信息文档
order.ini
该配置文件类似于 pip.conf,为ini文件类型,作用为指定一些全局的配置信息
orderConfigFilePath
每个项目的 order 配置文件名. 默认为 order.config.json
defaultPay
应指定一个 0~1 之间的小数(用 parseFloat
转换),否则取默认值0,作用为运行 order pay
的时候默认 pay得的金额数占 wealth.total
的比率
timeFormat
时间格式字符串,详细文档参见 dayjs
beginTf
在 flow.begin
中用到的时间格式字符串
dueTf
在 flow.due
中用到的时间格式字符串
actual
在 flow.actual
中用到的时间格式字符串
pay
在 wealth.payTimes
中用到的时间格式字符串
order项目配置信息文档
order.config.json
此文件包含打包提交一起其他有意思的单子项目配置。
code
项目编号,可以为任意字符串
name
项目名称,可以为任意字符串
flow
工作流
begin
项目开始时间字符串,其格式见 /home/.order/order.ini,运行 order config init
以查看该 ini 文件具体位置,该ini配置文档见下
due
项目最后期限时间字符串
actual
包含项目每次交付的时间字符串的数组。运行 order deli
交付项目。
techTags
包含项目用到的技术的标签的数组,元素可以为任何字符串,其意义通常表达一系列该项目使用到的技术
wealth
项目为你带来的¥¥财富¥¥
total
总共钱款数字,单位为人民币(¥)
payTimes
包含每次结得款项的时间字符串以及金额数目信息的数组
time
结款时间字符串
money
结款金额数字,单位为人民币(¥)
make
打包输出配置,输出为一个压缩文件。目前仅支持 zip 类型
includes
所要打包的所有本地文件资源的路径字符串数组,默认为空
delivery
输出的压缩文件相对路径
archiveType
指示压缩方式,目前仅支持 ".zip",即使用 zip 压缩算法