unify-external-plugin-platform 0.0.3-22 → 0.0.3-25

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.
@@ -84679,9 +84679,9 @@ class eloam_plugin_service_ELoamPassService {
84679
84679
  const res = await eloam_plugin_service_ELoamPassService.read(eloam_plugin_service_ELoamMethodCode.ReadIDCard_Base64);
84680
84680
  var readData = res.IDCardInfo;
84681
84681
  // Agency 发证机关,外国人永居证时,该值为中文名
84682
- var name = readData.name;
84683
- var enname = readData.enname;
84684
- var cnname = readData.cnname;
84682
+ var name = (readData.name ?? '').trim();
84683
+ var enname = (readData.enname ?? '').trim();
84684
+ var cnname = (readData.cnname ?? '').trim();
84685
84685
  var sex = readData.sex;
84686
84686
  var birthday = readData.birthday;
84687
84687
  var address = readData.address;
@@ -84739,6 +84739,7 @@ _defineProperty(eloam_plugin_service_ELoamPassService, "_isLinux", String(naviga
84739
84739
  * @description:common-message
84740
84740
  */
84741
84741
  const SCANNER_CAMERA_REFRESH_PHOTO_EVENT = 'scanner-camera-refresh-photo-event';
84742
+ const SIGN_PHOTO_EVENT = 'sign-photo-event';
84742
84743
  class ScannerCameraRefreshPhotoEvent extends Event {
84743
84744
  constructor(url) {
84744
84745
  super(SCANNER_CAMERA_REFRESH_PHOTO_EVENT);
@@ -84746,6 +84747,13 @@ class ScannerCameraRefreshPhotoEvent extends Event {
84746
84747
  this.scannerResultUrl = url;
84747
84748
  }
84748
84749
  }
84750
+ class SignResultEvent extends Event {
84751
+ constructor(url) {
84752
+ super(SIGN_PHOTO_EVENT);
84753
+ _defineProperty(this, "signResultUrl", '');
84754
+ this.signResultUrl = url;
84755
+ }
84756
+ }
84749
84757
  ;// CONCATENATED MODULE: ./packages/utils/idCard-common-utils.ts
84750
84758
  /**
84751
84759
  * 根据身份证号码获取指定数据
@@ -86444,8 +86452,8 @@ id_card_reader_eloam.install = Vue => {
86444
86452
  Vue.component(id_card_reader_eloam.name, id_card_reader_eloam);
86445
86453
  };
86446
86454
  /* harmony default export */ var id_card_reader_id_card_reader_eloam = (id_card_reader_eloam);
86447
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/id-card-reader/id-card-reader-button/src/id-card-reader-button.vue?vue&type=template&id=2d5fb948&scoped=true&
86448
- var id_card_reader_buttonvue_type_template_id_2d5fb948_scoped_true_render = function render() {
86455
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/id-card-reader/id-card-reader-button/src/id-card-reader-button.vue?vue&type=template&id=6154d436&scoped=true&
86456
+ var id_card_reader_buttonvue_type_template_id_6154d436_scoped_true_render = function render() {
86449
86457
  var _vm = this,
86450
86458
  _c = _vm._self._c;
86451
86459
  return _vm.tip ? _c('el-tooltip', {
@@ -86522,7 +86530,7 @@ var id_card_reader_buttonvue_type_template_id_2d5fb948_scoped_true_render = func
86522
86530
  }
86523
86531
  })], 2);
86524
86532
  };
86525
- var id_card_reader_buttonvue_type_template_id_2d5fb948_scoped_true_staticRenderFns = [];
86533
+ var id_card_reader_buttonvue_type_template_id_6154d436_scoped_true_staticRenderFns = [];
86526
86534
 
86527
86535
  ;// CONCATENATED MODULE: ./packages/service/external-plugins/default-plugin-socket.service.ts
86528
86536
 
@@ -89444,6 +89452,247 @@ class PuTianPluginService {
89444
89452
  _defineProperty(PuTianPluginService, "idCardWebSocketUrl", 'http://127.0.0.1:10012');
89445
89453
  _defineProperty(PuTianPluginService, "ws", void 0);
89446
89454
  _defineProperty(PuTianPluginService, "requestStore", []);
89455
+ ;// CONCATENATED MODULE: ./packages/service/external-plugins/jing-lun-plugin.service.ts
89456
+
89457
+ /**
89458
+ * @author: lvcy
89459
+ * @date: 2025-04-28 14:17
89460
+ * @description:精伦读卡器
89461
+ */
89462
+
89463
+ class JingLunPluginService {
89464
+ static async read(method) {
89465
+ let url = '';
89466
+ switch (method) {
89467
+ case 'ReadIDCard_Base64':
89468
+ url = this.idCardWebSocketUrl + '/api/readCard';
89469
+ break;
89470
+ }
89471
+ let res = await custom_axios_CustomAxios.post(url, {});
89472
+ return res;
89473
+ }
89474
+ static async idCardRead() {
89475
+ const readData = await JingLunPluginService.read('ReadIDCard_Base64');
89476
+ if (readData.resultFlag === 0) {
89477
+ let data = readData.resultContent;
89478
+ let type = '1',
89479
+ name = data.partyName,
89480
+ sex = data.gender === 1 ? '男' : '女',
89481
+ nation = data.nation,
89482
+ nationality = '中国',
89483
+ birthday = data.bornDay,
89484
+ address = data.certAddress,
89485
+ cardId = data.certNumber,
89486
+ police = data.certOrg,
89487
+ validStart = data.effDate,
89488
+ validEnd = data.expDate,
89489
+ base64_ID = data.identityPic;
89490
+ const IDCardData = {
89491
+ info: {
89492
+ cardType: type,
89493
+ nationality,
89494
+ name,
89495
+ sex,
89496
+ birthday,
89497
+ address,
89498
+ cardId,
89499
+ nation,
89500
+ police,
89501
+ validStart,
89502
+ validEnd
89503
+ },
89504
+ headImage: base64_ID
89505
+ };
89506
+ console.log(IDCardData);
89507
+ return IDCardData;
89508
+ } else {
89509
+ throw Error('未匹配可用的读卡器');
89510
+ }
89511
+ }
89512
+ }
89513
+ _defineProperty(JingLunPluginService, "idCardWebSocketUrl", 'http://127.0.0.1:18889');
89514
+ ;// CONCATENATED MODULE: ./packages/service/external-plugins/han-wang-plugin.service.ts
89515
+
89516
+
89517
+ /**
89518
+ * @author: lvcy
89519
+ * @date: 2025-04-24 10:55
89520
+ * @description:汉王签字板
89521
+ */
89522
+
89523
+
89524
+ var HanWangMethodCode;
89525
+ (function (HanWangMethodCode) {
89526
+ // 初始化
89527
+ HanWangMethodCode["Init"] = "init";
89528
+ // 打开设备(开始签名)
89529
+ HanWangMethodCode["StartSignName"] = "startSignName";
89530
+ // 关闭设备
89531
+ HanWangMethodCode["Close"] = "close";
89532
+ // 重新签名
89533
+ HanWangMethodCode["SignNameAgain"] = "signNameAgain";
89534
+ // 获取签名图片
89535
+ HanWangMethodCode["GetSign"] = "GetSign";
89536
+ })(HanWangMethodCode || (HanWangMethodCode = {}));
89537
+ class HanWangPluginService {
89538
+ static startConnect() {
89539
+ if (this.ws && this.ws.readyState === WebSocket.OPEN) {
89540
+ return this;
89541
+ }
89542
+ const ws = new WebSocket(this.linuxWebServiceUrl);
89543
+ let resolved;
89544
+ const onConnect = new Promise(resolve => {
89545
+ resolved = resolve;
89546
+ });
89547
+ ws.onopen = () => {
89548
+ resolved(true);
89549
+ };
89550
+ ws.onmessage = event => {
89551
+ this.handleMessage(event);
89552
+ };
89553
+ ws.onclose = () => this.handleClose();
89554
+ ws.onerror = e => this.handleError(e);
89555
+ this.ws = ws;
89556
+ return onConnect;
89557
+ }
89558
+ static handleMessage(msg) {
89559
+ let data = {};
89560
+ try {
89561
+ data = JSON.parse(msg.data);
89562
+ } catch (e) {
89563
+ data = {};
89564
+ }
89565
+ console.log('message=>', data);
89566
+ if (data.HWPenSign === 'HWGetSign' && data.msgID == '0') {
89567
+ const event = new SignResultEvent(data.message);
89568
+ return window.dispatchEvent(event);
89569
+ }
89570
+ this.requestStore.forEach(({
89571
+ resolve
89572
+ }) => {
89573
+ resolve(data);
89574
+ });
89575
+ this.requestStore = [];
89576
+ // this.ws.close();
89577
+ }
89578
+
89579
+ static handleError(e) {
89580
+ for (const type in this.requestStore) {
89581
+ this.requestStore.forEach(({
89582
+ reject
89583
+ }) => {
89584
+ reject('handleError');
89585
+ });
89586
+ }
89587
+ }
89588
+ static handleClose() {
89589
+ for (const type in this.requestStore) {
89590
+ this.requestStore.forEach(({
89591
+ reject
89592
+ }) => {
89593
+ reject('close');
89594
+ });
89595
+ }
89596
+ }
89597
+ static async read(method) {
89598
+ let url = '',
89599
+ data = {};
89600
+ switch (method) {
89601
+ case HanWangMethodCode.StartSignName:
89602
+ data = {
89603
+ nLogo: "? ",
89604
+ nPenwidth: "2",
89605
+ nOrgX: "100",
89606
+ nOrgY: "200",
89607
+ width: "500",
89608
+ height: "300",
89609
+ fingerFap: "2",
89610
+ key: "4A05564228DF2C64AF2E137B71A4E7A3"
89611
+ };
89612
+ url = this.windowsWebServiceUrl + '/HWPenSign/HWInitialize';
89613
+ break;
89614
+ case HanWangMethodCode.GetSign:
89615
+ data = {
89616
+ nImageType: "3",
89617
+ nImageWidth: "500",
89618
+ nImageHeight: "300"
89619
+ };
89620
+ url = this.windowsWebServiceUrl + '/HWPenSign/HWGetSign';
89621
+ break;
89622
+ }
89623
+ let res = await custom_axios_CustomAxios.get(url);
89624
+ return res;
89625
+ }
89626
+ static async readInLinux(methodCode) {
89627
+ await this.startConnect();
89628
+ if (this.ws.readyState === 1) {
89629
+ let param = '';
89630
+ switch (methodCode) {
89631
+ case HanWangMethodCode.Init:
89632
+ param = JSON.stringify({
89633
+ HWPenSign: 'HWGetDeviceStatus'
89634
+ });
89635
+ break;
89636
+ case HanWangMethodCode.StartSignName:
89637
+ param = JSON.stringify({
89638
+ nOrgX: 400,
89639
+ nOrgY: 350,
89640
+ nWidth: 600,
89641
+ nHeight: 400,
89642
+ showDialog: 1,
89643
+ nImageWidth: 250,
89644
+ nImageHeight: 150,
89645
+ nConfirmTimeout: 30,
89646
+ fingerCap: 1
89647
+ });
89648
+ break;
89649
+ }
89650
+ this.ws.send(param);
89651
+ return new Promise((resolve, reject) => {
89652
+ if (!this.requestStore) {
89653
+ this.requestStore = [];
89654
+ }
89655
+ this.requestStore.push({
89656
+ resolve,
89657
+ reject
89658
+ });
89659
+ });
89660
+ }
89661
+ }
89662
+ static async signNameRead() {
89663
+ return new Promise(async resolve => {
89664
+ if (this._isLinux) {
89665
+ // 国产环境
89666
+ let res = await HanWangPluginService.readInLinux(HanWangMethodCode.Init);
89667
+ console.log('初始化=>', res);
89668
+ if (res.msgID == 0) {
89669
+ let signRes = await HanWangPluginService.readInLinux(HanWangMethodCode.StartSignName);
89670
+ console.log('签字=>', signRes);
89671
+ if (signRes.msgID == 0) {}
89672
+ } else {
89673
+ throw Error('统一插件平台设备未准备完成');
89674
+ }
89675
+ } else {
89676
+ // windows
89677
+ let res = await HanWangPluginService.read(HanWangMethodCode.StartSignName);
89678
+ console.log(res);
89679
+ let timer = setInterval(async () => {
89680
+ let signRes = await HanWangPluginService.read(HanWangMethodCode.GetSign);
89681
+ if (signRes.msgID === '0') {
89682
+ clearInterval(timer);
89683
+ console.log(signRes.message);
89684
+ resolve(signRes.message.replace('data:image/png;base64,', ''));
89685
+ }
89686
+ }, 2000);
89687
+ }
89688
+ });
89689
+ }
89690
+ }
89691
+ _defineProperty(HanWangPluginService, "windowsWebServiceUrl", 'http://127.0.0.1:29999');
89692
+ _defineProperty(HanWangPluginService, "linuxWebServiceUrl", 'ws://127.0.0.1:29999');
89693
+ _defineProperty(HanWangPluginService, "ws", void 0);
89694
+ _defineProperty(HanWangPluginService, "requestStore", []);
89695
+ _defineProperty(HanWangPluginService, "_isLinux", String(navigator.platform).indexOf("Linux") > -1);
89447
89696
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./packages/id-card-reader/id-card-reader-button/src/id-card-reader-button.vue?vue&type=script&lang=js&
89448
89697
 
89449
89698
 
@@ -89462,6 +89711,9 @@ _defineProperty(PuTianPluginService, "requestStore", []);
89462
89711
 
89463
89712
 
89464
89713
 
89714
+
89715
+
89716
+
89465
89717
  /* harmony default export */ var id_card_reader_buttonvue_type_script_lang_js_ = ({
89466
89718
  name: 'id-card-reader-button',
89467
89719
  props: {
@@ -89682,6 +89934,11 @@ _defineProperty(PuTianPluginService, "requestStore", []);
89682
89934
  idcardInfo = await PuTianPluginService.idCardRead();
89683
89935
  this.$emit('click', idcardInfo);
89684
89936
  break;
89937
+ case 13:
89938
+ // 精伦
89939
+ idcardInfo = await JingLunPluginService.idCardRead();
89940
+ this.$emit('click', idcardInfo);
89941
+ break;
89685
89942
  default:
89686
89943
  this.$message.warning('请在首页右上角我的设备中设置读卡器选项!');
89687
89944
  break;
@@ -89810,6 +90067,19 @@ _defineProperty(PuTianPluginService, "requestStore", []);
89810
90067
  // 维融国产一体机
89811
90068
  userSignature = await WeiRongPluginService.signNameRead();
89812
90069
  break;
90070
+ case 6:
90071
+ // if (HanWangPluginService._isLinux) {
90072
+ // window.addEventListener(SIGN_PHOTO_EVENT, (message) => {
90073
+ // if (message.type === SIGN_PHOTO_EVENT) {
90074
+ // userSignature = message.signResultUrl;
90075
+ // }
90076
+ // })
90077
+ // await HanWangPluginService.signNameRead();
90078
+ //
90079
+ // } else {
90080
+ userSignature = await HanWangPluginService.signNameRead();
90081
+ // }
90082
+ break;
89813
90083
  default:
89814
90084
  this.$message.warning('请在首页右上角我的设备中设置签字板选项!');
89815
90085
  break;
@@ -89943,11 +90213,11 @@ _defineProperty(PuTianPluginService, "requestStore", []);
89943
90213
  ;
89944
90214
  var id_card_reader_button_component = normalizeComponent(
89945
90215
  src_id_card_reader_buttonvue_type_script_lang_js_,
89946
- id_card_reader_buttonvue_type_template_id_2d5fb948_scoped_true_render,
89947
- id_card_reader_buttonvue_type_template_id_2d5fb948_scoped_true_staticRenderFns,
90216
+ id_card_reader_buttonvue_type_template_id_6154d436_scoped_true_render,
90217
+ id_card_reader_buttonvue_type_template_id_6154d436_scoped_true_staticRenderFns,
89948
90218
  false,
89949
90219
  null,
89950
- "2d5fb948",
90220
+ "6154d436",
89951
90221
  null
89952
90222
 
89953
90223
  )