From 80e0c5eb7648e77cae844e4628b433704e0fb865 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 22 二月 2023 00:21:07 +0800
Subject: [PATCH] 2023-02-22

---
 src/utils/utils-datamanage.js                                   |   10 +++
 src/menu/components/card/double-data-card/options.jsx           |   13 ----
 src/menu/components/card/doublecardcomponent/options.jsx        |    2 
 src/tabviews/custom/components/card/double-data-card/index.scss |   35 ++++++-----
 src/tabviews/custom/components/card/double-data-card/index.jsx  |   17 ++---
 src/menu/datasource/verifycard/settingform/index.jsx            |    2 
 src/menu/components/card/double-data-card/index.jsx             |   12 +++
 src/menu/components/card/doublecardcomponent/index.scss         |    3 
 src/menu/components/card/cardcomponent/index.jsx                |    4 
 public/options.json                                             |   10 +-
 src/menu/components/share/actioncomponent/dragaction/index.jsx  |    2 
 src/menu/components/card/double-data-card/index.scss            |   43 ++++++++------
 src/menu/datasource/verifycard/index.jsx                        |   19 ++++++
 13 files changed, 102 insertions(+), 70 deletions(-)

diff --git a/public/options.json b/public/options.json
index 4e405d0..bedcbee 100644
--- a/public/options.json
+++ b/public/options.json
@@ -1,12 +1,12 @@
 {
-  "appId": "201912040924165801464FF1788654BC5AC73",
-  "appkey": "20191106103859640976D6E924E464D029CF0",
+  "appId": "202108312122504607B107A83F55B40C98CCF",
+  "appkey": "20210831212235413F287EC3BF489424496C8",
   "mainSystemApi": "http://sso.mk9h.cn/cloud/webapi/dostars",
   "systemType": "",
   "externalDatabase": "",
   "lineColor": "",
   "filter": "false",
-  "defaultApp": "mk",
+  "defaultApp": "mkindustry",
   "defaultLang": "zh-CN",
   "WXAppID": "",
   "WXminiAppID": "",
@@ -17,6 +17,6 @@
   "transfer": "false",
   "keepPassword": "true",
   "platforms": ["H5", "wechat", "android", "ios", "wxMiniProgram"],
-  "host": "http://qingqiumarket.cn",
-  "service": "MKWMS/"
+  "host": "http://demo.mk9h.cn",
+  "service": "erp_new/"
 }
\ No newline at end of file
diff --git a/src/menu/components/card/cardcomponent/index.jsx b/src/menu/components/card/cardcomponent/index.jsx
index 0af4f55..a7efb6a 100644
--- a/src/menu/components/card/cardcomponent/index.jsx
+++ b/src/menu/components/card/cardcomponent/index.jsx
@@ -313,9 +313,9 @@
 
     let checkAll = ''
     if ((cards.subtype === 'datacard' || cards.subtype === 'dualdatacard') && card.$cardType === 'extendCard') {
-      checkAll = card.setting.checkAll === 'show' ? ' mk-checkable' : ''
+      checkAll = card.setting.checkAll === 'show' ? ' mk-checkable mk-extend-card' : ''
       if (checkAll && cards.wrap.selStyle === 'check square') {
-        checkAll = ' mk-checkable square'
+        checkAll = ' mk-checkable square mk-extend-card'
       }
     } else if (cards.subtype === 'datacard') {
       if (cards.wrap.selStyle === 'check') {
diff --git a/src/menu/components/card/double-data-card/index.jsx b/src/menu/components/card/double-data-card/index.jsx
index 98cddef..32dd303 100644
--- a/src/menu/components/card/double-data-card/index.jsx
+++ b/src/menu/components/card/double-data-card/index.jsx
@@ -82,7 +82,7 @@
             borderRightWidth: '1px', borderRightColor: '#e8e8e8',
             borderBottomWidth: '1px', borderBottomColor: '#e8e8e8',
             paddingTop: '15px', paddingBottom: '15px', paddingLeft: '15px', paddingRight: '15px',
-            marginLeft: '8px', marginRight: '8px', marginBottom: '8px'
+            marginLeft: '8px', marginRight: '8px'
           },
           backElements: [{
             uuid: Utils.getuuid(),
@@ -584,6 +584,14 @@
 
     let _style = resetStyle(card.style)
 
+    let extraName = ''
+    card.subcards.forEach(subcard => {
+      if (subcard.$cardType === 'extendCard') return
+      if (subcard.setting.controlIcon === 'left') {
+        extraName = ' mk-control-icon'
+      }
+    })
+
     return (
       <div className={'menu-double-data-card-edit-box ' + appType} style={_style} onClick={this.clickComponent} id={card.uuid}>
         <NormalHeader config={card} updateComponent={this.updateComponent}/>
@@ -607,7 +615,7 @@
           <ToolOutlined />
         </Popover>
         <ActionComponent config={card} setSubConfig={this.setSubConfig} updateaction={this.updateComponent}/>
-        <div className={'float-' + (card.wrap.cardFloat || 'left') + ' select-' + card.wrap.selStyle}>
+        <div className={'select-' + card.wrap.selStyle + extraName}>
           {card.subcards.map(subcard => {
             if (subcard.$cardType === 'extendCard') {
               return (<CardComponent key={subcard.uuid} cards={card} card={subcard} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>)
diff --git a/src/menu/components/card/double-data-card/index.scss b/src/menu/components/card/double-data-card/index.scss
index 1625f98..40ea29c 100644
--- a/src/menu/components/card/double-data-card/index.scss
+++ b/src/menu/components/card/double-data-card/index.scss
@@ -71,24 +71,24 @@
       font-size: 16px;
     }
   }
-  .float-center {
-    text-align: center;
-    >.ant-col {
-      display: inline-block;
-      float: none;
-      text-align: left;
-      vertical-align: top;
-    }
-  }
-  .float-right {
-    text-align: right;
-    >.ant-col {
-      display: inline-block;
-      float: none;
-      text-align: left;
-      vertical-align: top;
-    }
-  }
+  // .float-center {
+  //   text-align: center;
+  //   >.ant-col {
+  //     display: inline-block;
+  //     float: none;
+  //     text-align: left;
+  //     vertical-align: top;
+  //   }
+  // }
+  // .float-right {
+  //   text-align: right;
+  //   >.ant-col {
+  //     display: inline-block;
+  //     float: none;
+  //     text-align: left;
+  //     vertical-align: top;
+  //   }
+  // }
   .select-tabs {
     .card-item {
       border-top: none!important;
@@ -105,6 +105,13 @@
       margin-left: 2px;
     }
   }
+  .select-check.mk-control-icon {
+    .mk-extend-card {
+      >.circle-select {
+        margin-right: 35px;
+      }
+    }
+  }
 }
 
 .menu-double-data-card-edit-box::-webkit-scrollbar {
diff --git a/src/menu/components/card/double-data-card/options.jsx b/src/menu/components/card/double-data-card/options.jsx
index ae1d112..704da63 100644
--- a/src/menu/components/card/double-data-card/options.jsx
+++ b/src/menu/components/card/double-data-card/options.jsx
@@ -144,19 +144,6 @@
         {value: 'check square', label: '鍕鹃�夛紙鏂规锛�'}
       ]
     },
-    // {
-    //   type: 'radio',
-    //   field: 'cardFloat',
-    //   label: '瀵归綈鏂瑰紡',
-    //   initval: wrap.cardFloat || 'left',
-    //   tooltip: '璁剧疆鍗$墖鐨勫榻愭柟寮忋��',
-    //   required: false,
-    //   options: [
-    //     {value: 'left', label: '宸﹀榻�'},
-    //     {value: 'center', label: '灞呬腑'},
-    //     {value: 'right', label: '鍙冲榻�'},
-    //   ],
-    // },
     {
       type: 'radio',
       field: 'parity',
diff --git a/src/menu/components/card/doublecardcomponent/index.scss b/src/menu/components/card/doublecardcomponent/index.scss
index 352108a..344ab73 100644
--- a/src/menu/components/card/doublecardcomponent/index.scss
+++ b/src/menu/components/card/doublecardcomponent/index.scss
@@ -85,7 +85,8 @@
     display: none;
   }
   >.anticon-plus-square {
-    margin: auto 5px;
+    margin: auto;
+    width: 30px;
     font-size: 18px;
   }
 }
diff --git a/src/menu/components/card/doublecardcomponent/options.jsx b/src/menu/components/card/doublecardcomponent/options.jsx
index 16bd37f..38a169d 100644
--- a/src/menu/components/card/doublecardcomponent/options.jsx
+++ b/src/menu/components/card/doublecardcomponent/options.jsx
@@ -54,7 +54,7 @@
         {value: 'collapse', label: '鍚堝苟'},
       ],
       controlFields: [
-        {field: 'position', values: ['default']},
+        // {field: 'position', values: ['default']},
         {field: 'controlIcon', values: ['unfold', 'collapse']},
       ],
       forbid: type !== 'main'
diff --git a/src/menu/components/share/actioncomponent/dragaction/index.jsx b/src/menu/components/share/actioncomponent/dragaction/index.jsx
index 85ec819..e797df7 100644
--- a/src/menu/components/share/actioncomponent/dragaction/index.jsx
+++ b/src/menu/components/share/actioncomponent/dragaction/index.jsx
@@ -122,7 +122,7 @@
 
         if (newcard.OpenType === 'excelIn') {
           newcard.label = item.text
-          newcard.class = item.class || 'dgreen'
+          newcard.class = 'dgreen'
           newcard.Ot = 'notRequired'
         } else if (newcard.OpenType === 'excelOut') {
           newcard.label = item.text
diff --git a/src/menu/datasource/verifycard/index.jsx b/src/menu/datasource/verifycard/index.jsx
index 3df5979..dcb2c3d 100644
--- a/src/menu/datasource/verifycard/index.jsx
+++ b/src/menu/datasource/verifycard/index.jsx
@@ -555,6 +555,25 @@
     const { config, mainSearch } = this.props
     const { activeKey, setting, columns, subColumns, scripts } = this.state
 
+    if (config.subtype === 'dualdatacard') {
+      let arr = columns.map(col => col.field.toLowerCase())
+      let _arr = []
+      subColumns.forEach(col => {
+        if (arr.includes(col.field.toLowerCase())) {
+          _arr.push(col.field)
+        }
+      })
+
+      if (_arr.length > 0) {
+        notification.warning({
+          top: 92,
+          message: '瀛愯〃涓瓧娈�' + _arr.join('銆�') + '涓庝富琛ㄥ瓧娈甸噸澶嶏紒',
+          duration: 5
+        })
+        return Promise.reject()
+      }
+    }
+
     return new Promise((resolve, reject) => {
       if (activeKey === 'setting') {
         this.settingForm.handleConfirm().then(res => {
diff --git a/src/menu/datasource/verifycard/settingform/index.jsx b/src/menu/datasource/verifycard/settingform/index.jsx
index 302af58..060d782 100644
--- a/src/menu/datasource/verifycard/settingform/index.jsx
+++ b/src/menu/datasource/verifycard/settingform/index.jsx
@@ -595,7 +595,7 @@
                   initialValue: setting.subBID || ''
                 })(
                   <Select>
-                    {columns.map((option, i) =>
+                    {this.props.subColumns.map((option, i) =>
                       <Select.Option key={i} value={option.field}>
                         {option.label}
                       </Select.Option>
diff --git a/src/tabviews/custom/components/card/double-data-card/index.jsx b/src/tabviews/custom/components/card/double-data-card/index.jsx
index 8bb925b..9431a8d 100644
--- a/src/tabviews/custom/components/card/double-data-card/index.jsx
+++ b/src/tabviews/custom/components/card/double-data-card/index.jsx
@@ -859,12 +859,15 @@
       if (selectedData.length > 0) {
         checkAll = selectedData.length < data.length ? ' half' : ' whole'
       }
+      if (card.setting.controlIcon === 'left') {
+        checkAll += ' mk-extend-icon'
+      }
     } else if (card.setting.display !== 'default' && card.setting.controlIcon === 'left') {
       mainBox = 'flex-card '
     }
 
     return (
-      <div className="custom-data-card-box" id={'anchor' + config.uuid} style={config.style}>
+      <div className="double-data-card-box" id={'anchor' + config.uuid} style={config.style}>
         {loading ?
           <div className="loading-mask">
             {data ? <div className="ant-spin-blur"></div> : null}
@@ -896,11 +899,7 @@
               let className = 'card-item-wrap mk-card ' + mainBox
               let subClass = 'mk-unfold'
               let unfold = true
-              if (config.wrap.parity === 'true') {
-                if (index % 2 === 1) {
-                  className += 'mk-parity-bg '
-                }
-              }
+
               if (item.$disabled) {
                 className = 'mk-disabled ' + mainBox
               } else if (activeKey === index) {
@@ -924,10 +923,10 @@
                   <div className={className} style={wrapStyle}>
                     <CardItem card={card} cards={config} data={item} onDoubleClick={() => this.onDoubleClick(index, subClass)} onClick={() => {this.changeCard(index, item, subClass)}}>
                       <span className="circle-select"></span>
-                      {card.setting.display !== 'default' && card.setting.controlIcon === 'left' ? (!unfold ? <PlusSquareOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/> : <MinusSquareOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/>) : null}
-                      {card.setting.display !== 'default' && card.setting.controlIcon !== 'left' ? <UpOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/> : null}
+                      {card.setting.controlIcon === 'left' ? (!unfold ? <PlusSquareOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/> : <MinusSquareOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/>) : null}
+                      {card.setting.controlIcon === 'right' ? <UpOutlined className={subClass} onClick={(e) => this.changeUnfold(e, index, subClass)}/> : null}
                     </CardItem>
-                    <div className={'sub-card-wrap ' + subClass}>
+                    <div className={'sub-card-wrap ' + subClass + (config.wrap.parity === 'true' ? ' mk-parity-bg' : '')}>
                       {item.children.map((cell, index) => <Col key={'sub' + index} span={subcard.setting.width || 24}>
                         <CardItem card={subcard} cards={subconfig} data={cell} />
                       </Col>)}
diff --git a/src/tabviews/custom/components/card/double-data-card/index.scss b/src/tabviews/custom/components/card/double-data-card/index.scss
index 02ad6b2..8f41eeb 100644
--- a/src/tabviews/custom/components/card/double-data-card/index.scss
+++ b/src/tabviews/custom/components/card/double-data-card/index.scss
@@ -1,4 +1,4 @@
-.custom-data-card-box {
+.double-data-card-box {
   background: #ffffff;
   background-position: center center;
   background-repeat: no-repeat;
@@ -30,11 +30,6 @@
             color: #bcbcbc!important;
           }
         }
-      }
-    }
-    .mk-parity-bg {
-      .card-item-box {
-        background-color: var(--mk-sys-color1);
       }
     }
   }
@@ -265,7 +260,8 @@
         transform: rotate(180deg);
       }
       >.anticon-plus-square {
-        margin: auto 5px;
+        margin: auto;
+        width: 30px;
         font-size: 18px;
       }
       >.anticon-plus-square.mk-disabled {
@@ -273,7 +269,8 @@
         cursor: not-allowed;
       }
       >.anticon-minus-square {
-        margin: auto 5px;
+        margin: auto;
+        width: 30px;
         font-size: 18px;
       }
     }
@@ -296,24 +293,30 @@
       }
     }
   }
+  .circle-select.mk-extend-icon {
+    margin-right: 35px;
+  }
+
+  .sub-card-wrap.mk-parity-bg {
+    .ant-col:nth-child(even){
+      .card-item-box {
+        background-color: var(--mk-sys-color1);
+      }
+    }
+  }
 }
-.custom-data-card-box::-webkit-scrollbar {
+.double-data-card-box::-webkit-scrollbar {
   width: 7px;
   height: 7px;
 }
-.custom-data-card-box::-webkit-scrollbar-thumb {
+.double-data-card-box::-webkit-scrollbar-thumb {
   border-radius: 5px;
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13);
   background: rgba(0, 0, 0, 0.13);
 }
-.custom-data-card-box::-webkit-scrollbar-track {
+.double-data-card-box::-webkit-scrollbar-track {
   box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
   border-radius: 3px;
   border: 1px solid rgba(0, 0, 0, 0.07);
   background: rgba(0, 0, 0, 0);
-}
-.custom-card-box::after {
-  content: ' ';
-  display: block;
-  clear: both;
 }
diff --git a/src/utils/utils-datamanage.js b/src/utils/utils-datamanage.js
index 59bca43..80b560e 100644
--- a/src/utils/utils-datamanage.js
+++ b/src/utils/utils-datamanage.js
@@ -213,9 +213,17 @@
     let LText = ''
     let DateCount = ''
 
+    if (setting.sub_field) {
+      arrFields = arrFields + ',' + setting.sub_field
+    }
+
     if (_dataresource && setting.laypage && orderBy && !id) {
       LText = `/*system_query*/select top ${pageSize} ${arrFields} from (select ${arrFields} ,ROW_NUMBER() over(order by ${orderBy}) as rows from ${_dataresource} ${_search}) tmptable where rows > ${pageSize * (pageIndex - 1)} order by tmptable.rows `
-      DateCount = `/*system_query*/select count(1) as total from ${_dataresource} ${_search}`
+      if (setting.sub_field) {
+        DateCount = `/*system_query*/select count(1) as total from (select distinct ${setting.primaryKey} from ${_dataresource} ${_search})a`
+      } else {
+        DateCount = `/*system_query*/select count(1) as total from ${_dataresource} ${_search}`
+      }
     } else if (_dataresource && orderBy) {
       LText = `/*system_query*/select ${arrFields} from (select ${arrFields} ,ROW_NUMBER() over(order by ${orderBy}) as rows from ${_dataresource} ${_search}) tmptable order by tmptable.rows `
     } else if (_dataresource) {

--
Gitblit v1.8.0