rapid-spreadjs 1.0.151 → 1.0.153

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.esm.js CHANGED
@@ -552,8 +552,9 @@ const SheetUtils = {
552
552
  col: 0
553
553
  }]
554
554
  * @param isAutoSize 是否自适应单元格大小(默认为:true)
555
+ * @param isRange 是否为范围选择(默认为:false,如果设置为true,则显示的格式为2026-05-06至2026-05-08【如果选择的范围内只有1天,则显示的格式为2026-05-06】)
555
556
  */
556
- setSheetCellDate: (GC, sheet, cells, isAutoSize = true) => {
557
+ setSheetCellDate: (GC, sheet, cells, isAutoSize = true, isRange = false) => {
557
558
  cells.forEach((item, index) => {
558
559
  // 先获取单元格样式,否则设置控件后样式会丢失
559
560
  let cellStyle = sheet.getStyle(item.row, item.col);
@@ -574,11 +575,13 @@ const SheetUtils = {
574
575
  type: GC.Spread.Sheets.DropDownType.dateTimePicker,
575
576
  option: {
576
577
  showTime: false,
577
- showDateRange: false,
578
+ showDateRange: isRange,
578
579
  },
579
580
  },
580
581
  ];
581
- cellStyle.formatter = item.dateFormat;
582
+ cellStyle.formatter = !isRange
583
+ ? item.dateFormat
584
+ : '=IF(ISBLANK(@), "", IF(TEXT(@.start, "yyyy-mm-dd")=TEXT(@.end, "yyyy-mm-dd"), TEXT(@.start, "yyyy-mm-dd"), TEXT(@.start, "yyyy-mm-dd")&"至"&TEXT(@.end, "yyyy-mm-dd")))';
582
585
  // 是否缩小以适应
583
586
  cellStyle.shrinkToFit = isAutoSize;
584
587
  // 设置单元格样式
@@ -16257,24 +16260,25 @@ const FormulaUtils = {
16257
16260
  // console.log(retData);
16258
16261
  // console.log(jsyq);
16259
16262
  // console.log(syjglist);
16260
- let kk = '合格';
16261
- if (jsyq == symbol || jsyq == '/' || jsyq == '' || syjglist.some((item) => item == '无效') || syjglist.length == 0) {
16262
- return symbol;
16263
+ var kk = '合格';
16264
+ if (jsyq == '/' || jsyq == '' || syjglist.some((item) => item == '无效')) {
16265
+ return '/';
16263
16266
  }
16264
- for (let i = 0; i < syjglist.length; i++) {
16265
- let k1 = syjglist[i];
16266
- if (jsyq.indexOf('<') != -1 || jsyq.indexOf('>') != -1 || jsyq.indexOf('<') != -1 || jsyq.indexOf('>') != -1) {
16267
- jsyq = jsyq.replace('<', '<');
16268
- jsyq = jsyq.replace('', '>');
16269
- if (jsyq.indexOf(',') != -1) {
16270
- let r1;
16271
- let r2;
16272
- if (jsyq.indexOf(',') != -1) {
16273
- r1 = jsyq.split(',')[0];
16274
- r2 = jsyq.split(',')[1];
16267
+ for (var i = 0; i < syjglist.length; i++) {
16268
+ var k1 = syjglist[i];
16269
+ var k2 = jsyq;
16270
+ if (k2.indexOf('<') != -1 || k2.indexOf('>') != -1 || k2.indexOf('<') != -1 || k2.indexOf('') != -1) {
16271
+ k2 = k2.replace('', '<');
16272
+ k2 = k2.replace('>', '>');
16273
+ if (k2.indexOf(',') != -1) {
16274
+ var r1;
16275
+ var r2;
16276
+ if (k2.indexOf(',') != -1) {
16277
+ r1 = k2.split(',')[0];
16278
+ r2 = k2.split(',')[1];
16275
16279
  if (r1.indexOf('>') != -1 || r1.indexOf('<') != -1) {
16276
- r1 = jsyq.split(',')[0].replace('>', '');
16277
- r2 = jsyq.split(',')[1].replace('<', '');
16280
+ r1 = k2.split(',')[0].replace('>', '');
16281
+ r2 = k2.split(',')[1].replace('<', '');
16278
16282
  }
16279
16283
  if (k1 * 1 > r1 * 1 && k1 < r2 * 1) {
16280
16284
  kk = '合格';
@@ -16284,20 +16288,56 @@ const FormulaUtils = {
16284
16288
  }
16285
16289
  }
16286
16290
  }
16291
+ else if (k2.indexOf(':') != -1 || k1.indexOf(':') != -1) {
16292
+ if (k2.indexOf('>') != -1) {
16293
+ var r1 = k2.replace('>', '');
16294
+ var t1 = r1.split(':');
16295
+ var h1 = parseInt(t1[0], 10);
16296
+ var m1 = parseInt(t1[1], 10);
16297
+ var t2 = k1.split(':');
16298
+ var h2 = parseInt(t2[0], 10);
16299
+ var m2 = parseInt(t2[1], 10);
16300
+ k2 = h1 * 3600 + m1 * 60;
16301
+ k1 = h2 * 3600 + m2 * 60;
16302
+ if (k1 * 1 > k2 * 1) {
16303
+ kk = '合格';
16304
+ }
16305
+ else {
16306
+ kk = '不合格';
16307
+ }
16308
+ }
16309
+ else {
16310
+ var r1 = k2.replace('<', '');
16311
+ var t1 = r1.split(':');
16312
+ var h1 = parseInt(t1[0], 10);
16313
+ var m1 = parseInt(t1[1], 10);
16314
+ var t2 = k1.split(':');
16315
+ var h2 = parseInt(t2[0], 10);
16316
+ var m2 = parseInt(t2[1], 10);
16317
+ k2 = h1 * 3600 + m1 * 60;
16318
+ k1 = h2 * 3600 + m2 * 60;
16319
+ if (k1 * 1 < k2 * 1) {
16320
+ kk = '合格';
16321
+ }
16322
+ else {
16323
+ kk = '不合格';
16324
+ }
16325
+ }
16326
+ }
16287
16327
  else {
16288
- kk = eval(k1 + jsyq) ? '合格' : '不合格';
16328
+ kk = eval(k1 + k2) ? '合格' : '不合格';
16289
16329
  }
16290
16330
  }
16291
- else if (jsyq.indexOf('≥') != -1 || jsyq.indexOf('不小于') != -1 || jsyq.indexOf('≮') != -1) {
16292
- if (jsyq.indexOf(',') != -1) {
16293
- let r1;
16294
- let r2;
16295
- if (jsyq.indexOf(',') != -1) {
16296
- r1 = jsyq.split(',')[0];
16297
- r2 = jsyq.split(',')[1];
16331
+ else if (k2.indexOf('≥') != -1 || k2.indexOf('不小于') != -1 || k2.indexOf('≮') != -1) {
16332
+ if (k2.indexOf(',') != -1) {
16333
+ var r1;
16334
+ var r2;
16335
+ if (k2.indexOf(',') != -1) {
16336
+ r1 = k2.split(',')[0];
16337
+ r2 = k2.split(',')[1];
16298
16338
  if (r1.indexOf('≥') != -1 || r1.indexOf('≤') != -1) {
16299
- r1 = jsyq.split(',')[0].replace('≥', '');
16300
- r2 = jsyq.split(',')[1].replace('≤', '');
16339
+ r1 = k2.split(',')[0].replace('≥', '');
16340
+ r2 = k2.split(',')[1].replace('≤', '');
16301
16341
  }
16302
16342
  if (k1 * 1 >= r1 * 1 && k1 <= r2 * 1) {
16303
16343
  kk = '合格';
@@ -16307,9 +16347,26 @@ const FormulaUtils = {
16307
16347
  }
16308
16348
  }
16309
16349
  }
16350
+ else if (k2.indexOf(':') != -1 || k1.indexOf(':') != -1) {
16351
+ var r1 = k2.replace('≥', '');
16352
+ var t1 = r1.split(':');
16353
+ var h1 = parseInt(t1[0], 10);
16354
+ var m1 = parseInt(t1[1], 10);
16355
+ var t2 = k1.split(':');
16356
+ var h2 = parseInt(t2[0], 10);
16357
+ var m2 = parseInt(t2[1], 10);
16358
+ k2 = h1 * 3600 + m1 * 60;
16359
+ k1 = h2 * 3600 + m2 * 60;
16360
+ if (k1 * 1 >= k2 * 1) {
16361
+ kk = '合格';
16362
+ }
16363
+ else {
16364
+ kk = '不合格';
16365
+ }
16366
+ }
16310
16367
  else {
16311
- let num = jsyq.replace('≥', '').replace('不小于', '').replace('≮', '') * 1;
16312
- if (FormulaUtils.commFun.isNumber(k1)) {
16368
+ var num = k2.replace('≥', '').replace('不小于', '').replace('≮', '') * 1;
16369
+ if (IsNumber(k1)) {
16313
16370
  if (k1 > num || k1 == num) {
16314
16371
  kk = '合格';
16315
16372
  }
@@ -16319,7 +16376,7 @@ const FormulaUtils = {
16319
16376
  }
16320
16377
  else {
16321
16378
  if (k1.indexOf('大于') != -1) {
16322
- if (k1.replace('大于', '') == jsyq.replace('≮', '')) {
16379
+ if (k1.replace('大于', '') == k2.replace('≮', '')) {
16323
16380
  kk = '合格';
16324
16381
  }
16325
16382
  else {
@@ -16340,17 +16397,36 @@ const FormulaUtils = {
16340
16397
  }
16341
16398
  }
16342
16399
  }
16343
- else if (jsyq.indexOf('≤') != -1 || jsyq.indexOf('不大于') != -1 || jsyq.indexOf('≯') != -1) {
16344
- let num = jsyq.replace('≤', '').replace('不大于', '').replace('≯', '') * 1;
16345
- if (k1 < num || k1 == num) {
16346
- kk = '合格';
16400
+ else if (k2.indexOf('≤') != -1 || k2.indexOf('不大于') != -1 || k2.indexOf('≯') != -1) {
16401
+ var num = k2.replace('≤', '').replace('不大于', '').replace('≯', '') * 1;
16402
+ if (k2.indexOf(':') != -1 || k1.indexOf(':') != -1) {
16403
+ var r1 = k2.replace('', '');
16404
+ var t1 = r1.split(':');
16405
+ var h1 = parseInt(t1[0], 10);
16406
+ var m1 = parseInt(t1[1], 10);
16407
+ var t2 = k1.split(':');
16408
+ var h2 = parseInt(t2[0], 10);
16409
+ var m2 = parseInt(t2[1], 10);
16410
+ k2 = h1 * 3600 + m1 * 60;
16411
+ k1 = h2 * 3600 + m2 * 60;
16412
+ if (k1 * 1 <= k2 * 1) {
16413
+ kk = '合格';
16414
+ }
16415
+ else {
16416
+ kk = '不合格';
16417
+ }
16347
16418
  }
16348
16419
  else {
16349
- kk = '不合格';
16420
+ if (k1 < num || k1 == num) {
16421
+ kk = '合格';
16422
+ }
16423
+ else {
16424
+ kk = '不合格';
16425
+ }
16350
16426
  }
16351
16427
  }
16352
- else if (jsyq.indexOf('≠') != -1) {
16353
- let num = jsyq.replace('≠', '') * 1;
16428
+ else if (k2.indexOf('≠') != -1) {
16429
+ var num = k2.replace('≠', '') * 1;
16354
16430
  if (k1 != num) {
16355
16431
  kk = '合格';
16356
16432
  }
@@ -16358,17 +16434,17 @@ const FormulaUtils = {
16358
16434
  kk = '不合格';
16359
16435
  }
16360
16436
  }
16361
- else if (jsyq.indexOf('~') != -1 || jsyq.indexOf(',') != -1 || jsyq.indexOf('~') != -1) {
16362
- let r1;
16363
- let r2;
16364
- if (jsyq.indexOf('~') != -1) {
16365
- r1 = jsyq.split('~')[0];
16366
- r2 = jsyq.split('~')[1];
16437
+ else if (k2.indexOf('~') != -1 || k2.indexOf(',') != -1 || k2.indexOf('~') != -1) {
16438
+ var r1;
16439
+ var r2;
16440
+ if (k2.indexOf('~') != -1) {
16441
+ r1 = k2.split('~')[0];
16442
+ r2 = k2.split('~')[1];
16367
16443
  }
16368
- else if (jsyq.indexOf('~') != -1) {
16369
- if (jsyq.split('~')[0].indexOf('+') != -1) {
16370
- r1 = jsyq.split('~')[1];
16371
- r2 = jsyq.split('~')[0];
16444
+ else if (k2.indexOf('~') != -1) {
16445
+ if (k2.split('~')[0].indexOf('+') != -1) {
16446
+ r1 = k2.split('~')[1];
16447
+ r2 = k2.split('~')[0];
16372
16448
  if (k1.toString().indexOf('+') != -1) {
16373
16449
  if (k1 * 1 <= r2) {
16374
16450
  kk = '合格';
@@ -16387,14 +16463,14 @@ const FormulaUtils = {
16387
16463
  }
16388
16464
  }
16389
16465
  else {
16390
- r1 = jsyq.split('~')[0];
16391
- r2 = jsyq.split('~')[1];
16466
+ r1 = k2.split('~')[0];
16467
+ r2 = k2.split('~')[1];
16392
16468
  }
16393
16469
  }
16394
- else if (jsyq.indexOf(',') != -1) {
16395
- if (jsyq.split(',')[0].indexOf('+') != -1) {
16396
- r1 = jsyq.split(',')[1];
16397
- r2 = jsyq.split(',')[0];
16470
+ else if (k2.indexOf(',') != -1) {
16471
+ if (k2.split(',')[0].indexOf('+') != -1) {
16472
+ r1 = k2.split(',')[1];
16473
+ r2 = k2.split(',')[0];
16398
16474
  if (k1.toString().indexOf('+') != -1) {
16399
16475
  if (k1 * 1 <= r2) {
16400
16476
  kk = '合格';
@@ -16413,8 +16489,8 @@ const FormulaUtils = {
16413
16489
  }
16414
16490
  }
16415
16491
  else {
16416
- r1 = jsyq.split(',')[0];
16417
- r2 = jsyq.split(',')[1];
16492
+ r1 = k2.split(',')[0];
16493
+ r2 = k2.split(',')[1];
16418
16494
  }
16419
16495
  }
16420
16496
  if (k1 * 1 >= r1 * 1 && k1 <= r2 * 1) {
@@ -16424,11 +16500,11 @@ const FormulaUtils = {
16424
16500
  kk = '不合格';
16425
16501
  }
16426
16502
  }
16427
- else if (jsyq.indexOf('±') != -1) {
16428
- let r1 = jsyq.split('±')[0];
16429
- let r2 = jsyq.split('±')[1];
16430
- let min = r1 * 1 - r2 * 1;
16431
- let max = r1 * 1 + r2 * 1;
16503
+ else if (k2.indexOf('±') != -1) {
16504
+ var r1 = k2.split('±')[0];
16505
+ var r2 = k2.split('±')[1];
16506
+ var min = r1 * 1 - r2 * 1;
16507
+ var max = r1 * 1 + r2 * 1;
16432
16508
  if (k1 >= min && k1 <= max) {
16433
16509
  kk = '合格';
16434
16510
  }
@@ -16437,9 +16513,9 @@ const FormulaUtils = {
16437
16513
  }
16438
16514
  }
16439
16515
  else {
16440
- if (FormulaUtils.commFun.isNumber(jsyq))
16441
- jsyq = jsyq * 1;
16442
- if (k1 >= jsyq) {
16516
+ if (IsNumber(k2))
16517
+ k2 = k2 * 1;
16518
+ if (k1 >= k2) {
16443
16519
  kk = '合格';
16444
16520
  }
16445
16521
  else {