ydb-components-material 0.1.22 → 0.1.23

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.
Files changed (43) hide show
  1. package/build/docs/404.html +3 -3
  2. package/build/docs/_demos/:uuid +3 -3
  3. package/build/docs/colorful-button.html +3 -3
  4. package/build/docs/colorful-input.html +3 -3
  5. package/build/docs/index.html +3 -3
  6. package/build/docs/umi.d170f160.js +1 -0
  7. package/build/docs/{umi.1ef21448.css → umi.e536bfab.css} +1 -1
  8. package/build/docs/~demos/:uuid.html +3 -3
  9. package/build/docs/~demos/colorful-button-demo.html +3 -3
  10. package/build/docs/~demos/colorful-input-demo.html +3 -3
  11. package/build/lowcode/assets-daily.json +11 -11
  12. package/build/lowcode/assets-dev.json +2 -2
  13. package/build/lowcode/assets-prod.json +11 -11
  14. package/build/lowcode/index.js +1 -1
  15. package/build/lowcode/meta.js +1 -1
  16. package/build/lowcode/preview.js +6 -6
  17. package/build/lowcode/render/default/view.css +1 -1
  18. package/build/lowcode/render/default/view.js +1 -1
  19. package/build/lowcode/view.css +1 -1
  20. package/build/lowcode/view.js +1 -1
  21. package/dist/BizComps.css +1 -1
  22. package/dist/BizComps.js +1 -1
  23. package/dist/BizComps.js.map +1 -1
  24. package/es/api.js +8 -1
  25. package/es/components/file-item/file.js +62 -1
  26. package/es/components/file-item/index.d.ts +1 -2
  27. package/es/components/file-item/index.js +217 -15
  28. package/es/components/file-item/index.scss +4 -2
  29. package/es/components/file-item/seal.js +63 -22
  30. package/es/components/file-item/sealUtil.js +2 -1
  31. package/es/utils.js +0 -0
  32. package/lib/api.js +9 -2
  33. package/lib/components/file-item/file.js +63 -1
  34. package/lib/components/file-item/index.d.ts +1 -2
  35. package/lib/components/file-item/index.js +218 -16
  36. package/lib/components/file-item/index.scss +4 -2
  37. package/lib/components/file-item/seal.js +60 -19
  38. package/lib/components/file-item/sealUtil.js +2 -1
  39. package/lib/utils.js +1 -0
  40. package/lowcode_es/meta.js +1 -1
  41. package/lowcode_lib/meta.js +1 -1
  42. package/package.json +3 -3
  43. package/build/docs/umi.0ec80fbb.js +0 -1
@@ -4,6 +4,7 @@ exports.__esModule = true;
4
4
  exports.dataURLtoBlob = dataURLtoBlob;
5
5
  exports.getBlob = getBlob;
6
6
  exports.getFileExtension = getFileExtension;
7
+ exports.initFormat = void 0;
7
8
  exports.upload = upload;
8
9
  exports.uploadFilePromise = uploadFilePromise;
9
10
  // import apiConfig from '@/config/api.cofig'
@@ -168,4 +169,65 @@ function uploadFilePromise(url, baseUrl, token) {
168
169
  // }
169
170
  // })
170
171
  });
171
- }
172
+ }
173
+
174
+ // 初始化材料格式 [方法]
175
+ var initFormat = exports.initFormat = function initFormat(materialSpec) {
176
+ var materialSpecArr = materialSpec.split(',');
177
+ var arr = [{
178
+ key: '1',
179
+ value: 'doc'
180
+ }, {
181
+ key: '2',
182
+ value: 'docx'
183
+ }, {
184
+ key: '3',
185
+ value: 'pdf'
186
+ }, {
187
+ key: '4',
188
+ value: 'ofd'
189
+ }, {
190
+ key: '5',
191
+ value: 'xlsx'
192
+ }, {
193
+ key: '6',
194
+ value: 'xls'
195
+ }, {
196
+ key: '7',
197
+ value: 'png'
198
+ }, {
199
+ key: '8',
200
+ value: 'jpg'
201
+ }, {
202
+ key: '9',
203
+ value: 'jpeg'
204
+ }, {
205
+ key: '10',
206
+ value: 'gif'
207
+ }, {
208
+ key: '11',
209
+ value: 'bmp'
210
+ }, {
211
+ key: '12',
212
+ value: 'zip'
213
+ }, {
214
+ key: '13',
215
+ value: 'rar'
216
+ }, {
217
+ key: '14',
218
+ value: 'mp3'
219
+ }, {
220
+ key: '15',
221
+ value: 'mp4'
222
+ }, {
223
+ key: '16',
224
+ value: 'xml'
225
+ }];
226
+ var formatArr = [];
227
+ arr.forEach(function (ele) {
228
+ if (materialSpecArr.includes(ele.key)) {
229
+ formatArr.push(ele.value);
230
+ }
231
+ });
232
+ return formatArr;
233
+ };
@@ -18,13 +18,12 @@ export interface FileItemProps {
18
18
  isSealed: boolean;
19
19
  materialList: any[];
20
20
  maxFileSize: number;
21
+ spec: string;
21
22
  isInValid: boolean;
22
23
  isShowLib: boolean;
23
24
  userInfo: any;
24
25
  baseUrl: string;
25
26
  del: () => void;
26
- handleSeal: () => void;
27
- handleSign: () => void;
28
27
  valChange: (value: any) => void;
29
28
  download: (value: any) => void;
30
29
  }
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  exports.__esModule = true;
5
5
  exports["default"] = void 0;
6
6
  var _icon = _interopRequireDefault(require("@alifd/next/lib/icon"));
7
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
+ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
8
  var _message = _interopRequireDefault(require("@alifd/next/lib/message"));
9
9
  var _radio = _interopRequireDefault(require("@alifd/next/lib/radio"));
10
10
  var _react = _interopRequireWildcard(require("react"));
@@ -19,6 +19,8 @@ var _upload = _interopRequireDefault(require("./icon/upload.svg"));
19
19
  var _close = _interopRequireDefault(require("./icon/close.svg"));
20
20
  var _sign = _interopRequireDefault(require("./sign"));
21
21
  var _seal = _interopRequireDefault(require("./seal"));
22
+ var _api = require("../../api");
23
+ var _file2 = require("./file.js");
22
24
  require("./index.scss");
23
25
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
24
26
  var RadioGroup = _radio["default"].Group;
@@ -33,6 +35,7 @@ var FileItem = function FileItem(_ref) {
33
35
  isSealed = _ref.isSealed,
34
36
  materialList = _ref.materialList,
35
37
  maxFileSize = _ref.maxFileSize,
38
+ spec = _ref.spec,
36
39
  isInValid = _ref.isInValid,
37
40
  isShowLib = _ref.isShowLib,
38
41
  userInfo = _ref.userInfo,
@@ -54,8 +57,8 @@ var FileItem = function FileItem(_ref) {
54
57
  isShowMaterialLib = _useState3[0],
55
58
  setIsShowMaterialLib = _useState3[1];
56
59
  var _useState4 = (0, _react.useState)(),
57
- material = _useState4[0],
58
- setMaterial = _useState4[1];
60
+ materialId = _useState4[0],
61
+ setMaterial = _useState4[1]; // 在材料库中的材料
59
62
  var _useState5 = (0, _react.useState)(false),
60
63
  isShowSignPage = _useState5[0],
61
64
  setIsShowSignPage = _useState5[1];
@@ -68,6 +71,53 @@ var FileItem = function FileItem(_ref) {
68
71
  var _useState8 = (0, _react.useState)(''),
69
72
  previewIframeUrl = _useState8[0],
70
73
  setPreviewIframeUrl = _useState8[1];
74
+ var _useState9 = (0, _react.useState)({}),
75
+ materialUrlMap = _useState9[0],
76
+ setMaterialUrlMap = _useState9[1];
77
+ var _useState0 = (0, _react.useState)(''),
78
+ materialPreviewUrl = _useState0[0],
79
+ setMaterialPreviewUrl = _useState0[1];
80
+ var _useState1 = (0, _react.useState)(false),
81
+ isShowMaterialPreview = _useState1[0],
82
+ setIsShowMaterialPreview = _useState1[1];
83
+ var _useState10 = (0, _react.useState)([{
84
+ "fileId": "1753419199903092737",
85
+ "fileName": "javaScript.jpg",
86
+ "uploadTime": "2024-02-03 17:09:34",
87
+ "type": 0,
88
+ "innerFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419199903092737/javaScript.jpg",
89
+ "internetFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419199903092737/javaScript.jpg"
90
+ }, {
91
+ "fileId": "1753419376331853826",
92
+ "fileName": "LQ_z-fynmzrs7874917.jpg",
93
+ "uploadTime": "2024-02-03 17:09:34",
94
+ "type": 0,
95
+ "innerFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419376331853826/LQ_z-fynmzrs7874917.jpg",
96
+ "internetFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419376331853826/LQ_z-fynmzrs7874917.jpg"
97
+ }, {
98
+ "fileId": "1753419180202446850",
99
+ "fileName": "mayun.jpg",
100
+ "uploadTime": "2024-02-03 17:09:34",
101
+ "type": 0,
102
+ "innerFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419180202446850/mayun.jpg",
103
+ "internetFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419180202446850/mayun.jpg"
104
+ }, {
105
+ "fileId": "1753419356975140866",
106
+ "fileName": "find.png",
107
+ "uploadTime": "2024-02-03 17:09:33",
108
+ "type": 0,
109
+ "innerFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419356975140866/find.png",
110
+ "internetFileUrl": "https://zwfwpt.sxzwfw.gov.cn/FS//18a78d3d407-true/master/18b4752f107/2024/2/1753419356975140866/find.png"
111
+ }]),
112
+ materialLib = _useState10[0],
113
+ setMaterialLib = _useState10[1];
114
+ // const [materialLib, setMaterialLib] = useState([]);
115
+ var _useState11 = (0, _react.useState)(''),
116
+ guideurl = _useState11[0],
117
+ setGuideurl = _useState11[1];
118
+ var _useState12 = (0, _react.useState)(false),
119
+ isShowGuide = _useState12[0],
120
+ setIsShowGuide = _useState12[1];
71
121
  var list = materialList || [{
72
122
  name: '图片1',
73
123
  value: 1
@@ -101,6 +151,13 @@ var FileItem = function FileItem(_ref) {
101
151
  _message["default"].notice("\u6587\u4EF6 \"" + fileData.name + "\" \u8D85\u8FC7" + maxFileSize + "MB\u9650\u5236");
102
152
  return;
103
153
  }
154
+ if (spec) {
155
+ var type = (0, _file2.getFileExtension)(fileData.name);
156
+ if (!(0, _file2.initFormat)(spec).includes(type)) {
157
+ _message["default"].notice("\u6587\u4EF6 \"" + fileData.name + "\" \u683C\u5F0F\u4E0D\u6B63\u786E");
158
+ return;
159
+ }
160
+ }
104
161
  var formData = new FormData();
105
162
  formData.append('file', fileData);
106
163
  formData.append('open', true);
@@ -113,7 +170,7 @@ var FileItem = function FileItem(_ref) {
113
170
  document.body.removeChild(inputEl);
114
171
  if (res.fileId) {
115
172
  console.log('--------res', res);
116
- valChange((0, _extends2["default"])({}, res, {
173
+ valChange((0, _extends3["default"])({}, res, {
117
174
  name: fileData.name,
118
175
  type: fileData.type
119
176
  }));
@@ -126,8 +183,14 @@ var FileItem = function FileItem(_ref) {
126
183
  });
127
184
  });
128
185
  };
186
+
187
+ // 预览材料
129
188
  var preview = function preview() {
130
189
  if (!fileUrl) return;
190
+ if (previewIframeUrl) {
191
+ setIsShowPreview(true);
192
+ return;
193
+ }
131
194
  fetch(baseUrl + "/declaration/material/onlinePreview?url=" + fileUrl, {
132
195
  method: 'GET'
133
196
  }).then(function (response) {
@@ -137,13 +200,37 @@ var FileItem = function FileItem(_ref) {
137
200
  setIsShowPreview(true);
138
201
  });
139
202
  };
203
+
204
+ // 预览材料中的材料
205
+ var previewMaterial = function previewMaterial(id, url) {
206
+ if (materialUrlMap[id]) {
207
+ setIsShowMaterialPreview(true);
208
+ setMaterialPreviewUrl(materialUrlMap[id]);
209
+ return;
210
+ }
211
+ fetch(baseUrl + "/declaration/material/onlinePreview?url=" + url, {
212
+ method: 'GET'
213
+ }).then(function (response) {
214
+ return response.json();
215
+ }).then(function (res) {
216
+ var _extends2;
217
+ setMaterialPreviewUrl(res.url);
218
+ setIsShowMaterialPreview(true);
219
+ setMaterialUrlMap((0, _extends3["default"])({}, materialUrlMap, (_extends2 = {}, _extends2[id] = res.url, _extends2)));
220
+ });
221
+ };
222
+
223
+ // 手写签批
140
224
  var sign = function sign() {
141
225
  // handleSign()
142
226
  setIsShowSignPage(true);
143
227
  };
228
+
229
+ // 签章
144
230
  var seal = function seal() {
145
231
  console.log('fileType', fileType);
146
- if (fileType !== 'application/pdf') {
232
+ var type = (0, _file2.getFileExtension)(fileName);
233
+ if (type !== 'pdf') {
147
234
  _message["default"].notice('只有pdf文件才能使用电子签章');
148
235
  return;
149
236
  }
@@ -158,6 +245,86 @@ var FileItem = function FileItem(_ref) {
158
245
  console.log('sealval---', val);
159
246
  valChange(val);
160
247
  };
248
+ var queryFileLibs = function queryFileLibs() {
249
+ console.log('queryFileLibs');
250
+ var certNo = userInfo.certNo,
251
+ certificateSno = userInfo.certificateSno,
252
+ acctType = userInfo.acctType;
253
+ var params = {
254
+ // cardno: acctType === '10' ? certNo : certificateSno, // 个人传身份证号、法人传社会统一信用代码
255
+ cardno: '140110199504131013',
256
+ // 个人传身份证号、法人传社会统一信用代码
257
+ type: acctType === '10' ? '11' : '21',
258
+ pageNum: 1,
259
+ pageSize: 10
260
+ };
261
+ (0, _api.getMaterialLib)(params, {
262
+ token: token
263
+ }).then(function (res) {
264
+ if (res.code === 200) {
265
+ var records = res.data.records;
266
+ setMaterialLib(records);
267
+ }
268
+ // if (+total === this.fileList.length) {
269
+ // this.loadStatus = 'nomore'
270
+ // } else {
271
+ // this.loadStatus = 'loadmore'
272
+ // }
273
+ })["catch"](function () {
274
+ // this.loadStatus = 'nomore'
275
+ });
276
+ };
277
+ var showGuide = function showGuide() {
278
+ if (!guideImg) return;
279
+ if (guideurl) {
280
+ setIsShowGuide(true);
281
+ return;
282
+ }
283
+ fetch(baseUrl + "/declaration/material/file/files/api/presigned-url?id=" + guideImg + "&effectiveTime=3600000", {
284
+ method: 'GET'
285
+ }).then(function (response) {
286
+ return response.json();
287
+ }).then(function (res) {
288
+ if (res.presignedUrl) {
289
+ setGuideurl(res.presignedUrl);
290
+ setIsShowGuide(true);
291
+ }
292
+ });
293
+ };
294
+ var selectMaterialOk = function selectMaterialOk() {
295
+ console.log('val', materialId);
296
+ var selectedMaterial = materialLib.find(function (item) {
297
+ return item.fileId === materialId;
298
+ });
299
+ console.log('selectedMaterial', selectedMaterial);
300
+ if (spec) {
301
+ var arr = selectedMaterial.fileName.split('.'); //
302
+ var fileFormat = arr[arr.length - 1]; // 获取当前材料库材料的文件类型
303
+ console.log(fileFormat, '材料库当前选择的文件格式');
304
+ var formatFinal = (0, _file2.initFormat)(spec); // 限制的文件类型
305
+ console.log(formatFinal, '限制的格式最后');
306
+ if (!formatFinal.includes(fileFormat)) {
307
+ _message["default"].notice("\u8BE5\u6750\u6599\u4E0D\u652F\u6301\u4E0A\u4F20\u3010" + fileFormat + "\u3011\u683C\u5F0F\u7684\u6587\u4EF6");
308
+ return;
309
+ }
310
+ }
311
+ if (selectedMaterial.type === 1) {
312
+ _message["default"].notice('该文件为旧文件, 请先下载后手动上传');
313
+ return;
314
+ }
315
+ var m = (0, _extends3["default"])({}, selectedMaterial, {
316
+ fileUrl: selectedMaterial.innerFileUrl
317
+ });
318
+ console.log('m', m);
319
+ valChange(m);
320
+ setIsShowMaterialLib(false);
321
+ };
322
+ (0, _react.useEffect)(function () {
323
+ if (userInfo) {
324
+ console.log('userInfo', userInfo);
325
+ queryFileLibs();
326
+ }
327
+ }, [userInfo]);
161
328
  return /*#__PURE__*/_react["default"].createElement("div", {
162
329
  className: "file_item"
163
330
  }, /*#__PURE__*/_react["default"].createElement("div", {
@@ -173,7 +340,10 @@ var FileItem = function FileItem(_ref) {
173
340
  }), "\u6587\u4EF6", /*#__PURE__*/_react["default"].createElement("img", {
174
341
  className: "del",
175
342
  src: _del["default"],
176
- alt: ""
343
+ alt: "",
344
+ onClick: function onClick() {
345
+ return del();
346
+ }
177
347
  }), isInValid && /*#__PURE__*/_react["default"].createElement("img", {
178
348
  className: "error_msg",
179
349
  src: _icon_errorMsg["default"],
@@ -211,7 +381,7 @@ var FileItem = function FileItem(_ref) {
211
381
  }, guideImg && /*#__PURE__*/_react["default"].createElement("div", {
212
382
  className: "img_btn",
213
383
  onClick: function onClick() {
214
- return showViewImg(guideImg);
384
+ return showGuide(guideImg);
215
385
  }
216
386
  }, "\u7B7E\u7AE0\u5F15\u5BFC"), checkImg && /*#__PURE__*/_react["default"].createElement("div", {
217
387
  className: "img_btn",
@@ -234,7 +404,7 @@ var FileItem = function FileItem(_ref) {
234
404
  onClick: seal
235
405
  }, isSealed ? '重新签章' : '电子签章')) :
236
406
  // 展示材料库
237
- isShowLib && /*#__PURE__*/_react["default"].createElement("div", {
407
+ isShowLib && !!materialLib.length && /*#__PURE__*/_react["default"].createElement("div", {
238
408
  className: "operation_btn",
239
409
  style: {
240
410
  marginTop: '20px'
@@ -283,19 +453,22 @@ var FileItem = function FileItem(_ref) {
283
453
  alt: ""
284
454
  }), "\u4E3A\u907F\u514D\u529E\u4EF6\u4E0D\u901A\u8FC7\uFF0C\u9009\u62E9\u6750\u6599\u65F6\uFF0C\u8BF7\u60A8\u6CE8\u610F\u6750\u6599\u6709\u6548\u671F\uFF01"), /*#__PURE__*/_react["default"].createElement(RadioGroup, {
285
455
  className: "list",
286
- value: material,
456
+ value: materialId,
287
457
  onChange: function onChange(val) {
288
458
  return setMaterial(val);
289
459
  }
290
- }, list.map(function (item) {
460
+ }, materialLib.map(function (item) {
291
461
  return /*#__PURE__*/_react["default"].createElement("div", {
292
462
  className: "item",
293
- key: item.value
463
+ key: item.fileId
294
464
  }, /*#__PURE__*/_react["default"].createElement(_radio["default"], {
295
- id: item.value,
296
- value: item.value
297
- }, item.name), /*#__PURE__*/_react["default"].createElement("div", {
298
- className: "preview_icon"
465
+ id: item.fileId,
466
+ value: item.fileId
467
+ }, item.fileName), /*#__PURE__*/_react["default"].createElement("div", {
468
+ className: "preview_icon",
469
+ onClick: function onClick() {
470
+ return previewMaterial(item.fileId, item.innerFileUrl);
471
+ }
299
472
  }, /*#__PURE__*/_react["default"].createElement("img", {
300
473
  src: _preview["default"],
301
474
  alt: ""
@@ -308,7 +481,8 @@ var FileItem = function FileItem(_ref) {
308
481
  return setIsShowMaterialLib(false);
309
482
  }
310
483
  }, "\u53D6\u6D88"), /*#__PURE__*/_react["default"].createElement("div", {
311
- className: "btn ok"
484
+ className: "btn ok",
485
+ onClick: selectMaterialOk
312
486
  }, "\u786E\u5B9A")))), isShowSignPage && /*#__PURE__*/_react["default"].createElement(_sign["default"], {
313
487
  isShowSignPage: isShowSignPage,
314
488
  userInfo: userInfo,
@@ -353,6 +527,34 @@ var FileItem = function FileItem(_ref) {
353
527
  frameborder: "0",
354
528
  height: "500px",
355
529
  width: "100%"
530
+ })), isShowMaterialPreview && /*#__PURE__*/_react["default"].createElement("div", {
531
+ className: "preview"
532
+ }, /*#__PURE__*/_react["default"].createElement("img", {
533
+ className: "close",
534
+ src: _close["default"],
535
+ alt: "",
536
+ onClick: function onClick() {
537
+ return setIsShowMaterialPreview(false);
538
+ }
539
+ }), /*#__PURE__*/_react["default"].createElement("iframe", {
540
+ src: materialPreviewUrl,
541
+ frameborder: "0",
542
+ height: "90%",
543
+ width: "100%"
544
+ })), isShowGuide && /*#__PURE__*/_react["default"].createElement("div", {
545
+ className: "preview"
546
+ }, /*#__PURE__*/_react["default"].createElement("img", {
547
+ className: "close",
548
+ src: _close["default"],
549
+ alt: "",
550
+ onClick: function onClick() {
551
+ return setIsShowGuide(false);
552
+ }
553
+ }), /*#__PURE__*/_react["default"].createElement("iframe", {
554
+ src: guideurl,
555
+ frameborder: "0",
556
+ height: "90%",
557
+ width: "100%"
356
558
  })));
357
559
  };
358
560
  FileItem.displayName = 'FileItem';
@@ -100,6 +100,7 @@
100
100
  .btn {
101
101
  display: flex;
102
102
  flex-direction: row;
103
+ justify-content: end;
103
104
 
104
105
  .img_btn {
105
106
  margin-left: 8px;
@@ -195,7 +196,7 @@
195
196
  position: absolute;
196
197
  top: 0;
197
198
  left: 0;
198
- z-index: 999;
199
+ z-index: 88;
199
200
  background-color: rgba(0, 0, 0, 0.5);
200
201
 
201
202
  .material_lib_content {
@@ -307,7 +308,7 @@
307
308
  display: flex;
308
309
  justify-content: center;
309
310
  align-items: center;
310
-
311
+ z-index: 99;
311
312
  .close {
312
313
  position: absolute;
313
314
  top: 20px;
@@ -333,4 +334,5 @@
333
334
  z-index: 99;
334
335
  background: rgba(0, 0, 0, 0.5);
335
336
  }
337
+
336
338
  }
@@ -22,9 +22,13 @@ function SealPage(props) {
22
22
  var _useState = (0, _react.useState)(''),
23
23
  srcUrl = _useState[0],
24
24
  setSrcUrl = _useState[1];
25
+ var _useState2 = (0, _react.useState)(''),
26
+ orderId = _useState2[0],
27
+ setOrderId = _useState2[1];
28
+ var timerRef = (0, _react.useRef)(null);
25
29
  var handleRes = /*#__PURE__*/function () {
26
30
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
27
- var res, pageUrl;
31
+ var res, pageUrl, orderIdVal;
28
32
  return _regenerator["default"].wrap(function (_context) {
29
33
  while (1) switch (_context.prev = _context.next) {
30
34
  case 0:
@@ -33,9 +37,10 @@ function SealPage(props) {
33
37
  return (0, _sealUtil.initSealPageMethod)(file, userInfo, token, accessToken, baseUrl);
34
38
  case 1:
35
39
  res = _context.sent;
36
- pageUrl = res.pageUrl;
40
+ pageUrl = res.pageUrl, orderIdVal = res.orderId;
37
41
  console.log('pageUrl', pageUrl);
38
42
  setSrcUrl(pageUrl);
43
+ setOrderId(orderIdVal);
39
44
  // console.log(res)
40
45
  case 2:
41
46
  case "end":
@@ -51,21 +56,20 @@ function SealPage(props) {
51
56
  // 将返回的文件重新上传
52
57
  var uploadNewFile = /*#__PURE__*/function () {
53
58
  var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(fileData) {
54
- var uploadedFileObj, finalFile;
59
+ var blob, uploadedFileObj, finalFile;
55
60
  return _regenerator["default"].wrap(function (_context2) {
56
61
  while (1) switch (_context2.prev = _context2.next) {
57
62
  case 0:
63
+ blob = (0, _file.dataURLtoBlob)('data:application/pdf;base64,' + fileData);
58
64
  _context2.next = 1;
59
- return (0, _file.uploadFilePromise)('data:application/pdf;base64,' + fileData, baseUrl, token);
65
+ return (0, _file.uploadFilePromise)(blob, baseUrl, token);
60
66
  case 1:
61
67
  uploadedFileObj = _context2.sent;
62
68
  console.log('重新上传的文件', uploadedFileObj);
63
69
  handleClose();
64
70
  finalFile = (0, _extends2["default"])({
65
71
  name: file.name,
66
- url: uploadedFileObj.fileUrlList[0],
67
- status: 'success',
68
- message: '上传成功'
72
+ url: uploadedFileObj.fileUrl
69
73
  }, uploadedFileObj);
70
74
  getSealRes(finalFile);
71
75
  case 2:
@@ -83,25 +87,62 @@ function SealPage(props) {
83
87
  var signFileDown = function signFileDown(filePath) {
84
88
  (0, _api.signFileDownApi)({
85
89
  fileUrl: filePath
90
+ }, {
91
+ baseUrl: baseUrl,
92
+ token: token
86
93
  }).then(function (res) {
87
- uploadNewFile(res);
94
+ if (res.code === 200) {
95
+ uploadNewFile(res.data);
96
+ }
88
97
  });
89
98
  };
90
- // 监听子页面数据
91
- var getMessage = function getMessage(e) {
92
- console.log('子页面数据', e);
93
- if (e.data.type === 'signal' && e.data.data && e.data.data.length) {
94
- console.log(e.data.data[0]); // 文件路径
95
- var filePath = e.data.data[0];
96
- signFileDown(filePath);
97
- }
99
+
100
+ // 电子签章-移动端签批 获取移动端签章结果(文件地址)
101
+ var getSignFileFun = function getSignFileFun() {
102
+ // uni.showLoading({ title: '加载中' })
103
+
104
+ var params = {
105
+ orderId: orderId
106
+ };
107
+ (0, _api.getSignFileApi)(params, {
108
+ baseUrl: baseUrl,
109
+ token: token
110
+ }).then(function (res) {
111
+ if (!res) {
112
+ return;
113
+ }
114
+ console.log(res, '签章之后的数据');
115
+ var _res$data = res.data,
116
+ signStatus = _res$data.signStatus,
117
+ signFiles = _res$data.signFiles;
118
+ if (signStatus === 6) {
119
+ // 签署成功
120
+ handleClearInterval();
121
+ if (signFiles && signFiles.length) {
122
+ // 下载该文件
123
+ signFileDown(signFiles[0].filePath);
124
+ }
125
+ }
126
+ // uni.hideLoading()
127
+ })["catch"](function (err) {
128
+ console.log(err);
129
+ });
130
+ };
131
+ var handleClearInterval = function handleClearInterval() {
132
+ clearInterval(timerRef.current);
133
+ timerRef.current = null;
98
134
  };
99
135
  (0, _react.useEffect)(function () {
100
- window.addEventListener('message', getMessage);
136
+ if (orderId) {
137
+ handleClearInterval();
138
+ timerRef.current = setInterval(function () {
139
+ getSignFileFun();
140
+ }, 3000);
141
+ }
101
142
  return function () {
102
- window.removeEventListener('message', getMessage);
143
+ handleClearInterval();
103
144
  };
104
- }, []);
145
+ }, [orderId]);
105
146
  (0, _react.useEffect)(function () {
106
147
  handleRes();
107
148
  }, [userInfo, file, token, accessToken, baseUrl]);
@@ -63,7 +63,8 @@ function _initSealPageMethod() {
63
63
  // 将 电子签章地址/文件名称 返回
64
64
  params = {
65
65
  pageUrl: pageUrl,
66
- name: name
66
+ name: name,
67
+ orderId: orderId
67
68
  };
68
69
  return _context.abrupt("return", params);
69
70
  case 8:
package/lib/utils.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";
@@ -89,7 +89,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
89
89
  packageName = 'ydb-components-material';
90
90
  }
91
91
  if (version === void 0) {
92
- version = '0.1.22';
92
+ version = '0.1.23';
93
93
  }
94
94
  if (basicLibraryVersion === void 0) {
95
95
  basicLibraryVersion = {
@@ -94,7 +94,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
94
94
  packageName = 'ydb-components-material';
95
95
  }
96
96
  if (version === void 0) {
97
- version = '0.1.22';
97
+ version = '0.1.23';
98
98
  }
99
99
  if (basicLibraryVersion === void 0) {
100
100
  basicLibraryVersion = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ydb-components-material",
3
- "version": "0.1.22",
3
+ "version": "0.1.23",
4
4
  "description": "ydb-components-material",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -95,10 +95,10 @@
95
95
  },
96
96
  "componentConfig": {
97
97
  "isComponentLibrary": true,
98
- "materialSchema": "https://unpkg.com/ydb-components-material@0.1.22/build/lowcode/assets-prod.json"
98
+ "materialSchema": "https://unpkg.com/ydb-components-material@0.1.23/build/lowcode/assets-prod.json"
99
99
  },
100
100
  "lcMeta": {
101
101
  "type": "component"
102
102
  },
103
- "homepage": "https://unpkg.com/ydb-components-material@0.1.22/build/index.html"
103
+ "homepage": "https://unpkg.com/ydb-components-material@0.1.23/build/index.html"
104
104
  }