From 58a28e1faa15f638a136fefdcfcd0b3106c1fa16 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 24 六月 2020 10:18:54 +0800
Subject: [PATCH] 2020-06-24

---
 src/templates/zshare/editcard/index.jsx                                          |    2 
 src/templates/sharecomponent/actioncomponent/verifyprint/editable/index.jsx      |    2 
 src/templates/sharecomponent/fieldscomponent/editcard/index.jsx                  |    2 
 src/templates/treepageconfig/index.jsx                                           |   12 
 src/templates/headerconfig/menuform/index.jsx                                    |   19 
 src/locales/zh-CN/model.js                                                       |   52 +-
 src/templates/sharecomponent/columncomponent/markcolumn/index.jsx                |    2 
 src/templates/modalconfig/index.jsx                                              |   22 
 src/templates/menuconfig/editthdmenu/index.jsx                                   |   49 +-
 src/templates/sharecomponent/settingcomponent/settingform/index.jsx              |    6 
 src/locales/en-US/main.js                                                        |   33 +
 src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx             |   18 
 src/templates/formtabconfig/settingform/index.jsx                                |    4 
 src/templates/headerconfig/index.jsx                                             |   50 +-
 src/templates/sharecomponent/columncomponent/index.scss                          |    1 
 src/templates/sharecomponent/actioncomponent/verifyexcelout/columnform/index.jsx |   25 -
 src/templates/subtableconfig/index.jsx                                           |   12 
 src/components/header/resetpwd/index.jsx                                         |   16 
 src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx          |    6 
 src/templates/sharecomponent/columncomponent/gridbtnform/index.jsx               |    4 
 src/templates/zshare/createinterface/index.jsx                                   |    8 
 src/templates/sharecomponent/treesettingcomponent/index.jsx                      |    2 
 src/templates/zshare/modalform/modaleditable/index.jsx                           |    4 
 src/templates/sharecomponent/searchcomponent/searchform/index.jsx                |    4 
 src/templates/sharecomponent/searchcomponent/searcheditable/index.jsx            |    4 
 src/templates/sharecomponent/settingcomponent/index.jsx                          |    2 
 src/components/header/index.jsx                                                  |   30 +-
 src/templates/sharecomponent/actioncomponent/verifyexcelin/columnform/index.jsx  |   25 
 src/templates/formtabconfig/index.jsx                                            |   29 -
 src/templates/comtableconfig/index.jsx                                           |   12 
 src/templates/sharecomponent/searchcomponent/index.jsx                           |    2 
 src/templates/headerconfig/dragelement/index.jsx                                 |    6 
 src/templates/zshare/editcomponent/index.jsx                                     |    2 
 src/templates/sharecomponent/fieldscomponent/index.jsx                           |    2 
 src/templates/sharecomponent/columncomponent/index.jsx                           |    4 
 src/templates/sharecomponent/columncomponent/colspanform/index.jsx               |   16 
 src/locales/en-US/model.js                                                       |   52 +-
 src/templates/sharecomponent/cardcomponent/index.jsx                             |    4 
 src/templates/sharecomponent/tabscomponent/index.jsx                             |    6 
 src/utils/utils.js                                                               |    2 
 src/templates/sharecomponent/actioncomponent/verifyexcelout/index.jsx            |    8 
 src/locales/zh-CN/main.js                                                        |   15 
 src/templates/zshare/formconfig.jsx                                              |  138 ++++----
 src/templates/zshare/verifycard/index.jsx                                        |   14 
 /dev/null                                                                        |   46 ---
 src/templates/menuconfig/editsecmenu/index.jsx                                   |   60 ++-
 src/templates/sharecomponent/actioncomponent/index.jsx                           |    6 
 src/components/sidemenu/index.jsx                                                |    4 
 src/templates/sharecomponent/chartgroupcomponent/index.jsx                       |    2 
 49 files changed, 413 insertions(+), 433 deletions(-)

diff --git a/src/components/header/index.jsx b/src/components/header/index.jsx
index 84d11fe..119447f 100644
--- a/src/components/header/index.jsx
+++ b/src/components/header/index.jsx
@@ -23,8 +23,8 @@
 } from '@/store/action'
 import Api from '@/api'
 import options from '@/store/options.js'
-import zhCN from '@/locales/zh-CN/header.js'
-import enUS from '@/locales/en-US/header.js'
+import zhCN from '@/locales/zh-CN/main.js'
+import enUS from '@/locales/en-US/main.js'
 import Utils from '@/utils/utils.js'
 import avatar from '@/assets/img/avatar.jpg'
 import Resetpwd from './resetpwd'
@@ -101,7 +101,7 @@
       })
       notification.success({
         top: 92,
-        message: this.state.dict['header.password.resetsuccess'],
+        message: this.state.dict['main.password.resetsuccess'],
         duration: 2
       })
     } else {
@@ -127,10 +127,10 @@
     // 閫�鍑虹櫥褰�
     let _this = this
     confirm({
-      title: this.state.dict['header.logout.hint'],
+      title: this.state.dict['main.logout.hint'],
       content: '',
-      okText: this.state.dict['header.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      okText: this.state.dict['main.confirm'],
+      cancelText: this.state.dict['main.cancel'],
       onOk() {
         sessionStorage.clear()
         _this.props.logout()
@@ -639,16 +639,16 @@
     const menu = (
       <Menu overlayclassname="header-dropdown">
         {this.props.debug && <Menu.Item key="0">
-          {this.state.dict['header.edit']}
+          {this.state.dict['main.edit']}
           <Switch size="small" className="edit-switch" disabled={!!this.props.editLevel} checked={this.props.editState} onChange={this.changeEditState} />
         </Menu.Item>}
-        {!this.props.editState ? <Menu.Item key="1" onClick={this.changePassword}>{this.state.dict['header.password']}</Menu.Item> : null}
+        {!this.props.editState ? <Menu.Item key="1" onClick={this.changePassword}>{this.state.dict['main.password']}</Menu.Item> : null}
         {/* {this.state.systems.length > 0 ? <Menu.SubMenu title="鍒囨崲绯荤粺">
           {this.state.systems.map((system, index) => (
             <Menu.Item className="header-subSystem" key={'sub' + index} onClick={() => {this.changeSystem(system)}}> {system.AppName} </Menu.Item>
           ))}
         </Menu.SubMenu> : null} */}
-        <Menu.Item key="2" onClick={this.logout}>{this.state.dict['header.logout']}</Menu.Item>
+        <Menu.Item key="2" onClick={this.logout}>{this.state.dict['main.logout']}</Menu.Item>
       </Menu>
     )
 
@@ -730,9 +730,9 @@
         }
         {/* 淇敼瀵嗙爜 */}
         <Modal
-          title={this.state.dict['header.password']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={this.state.dict['main.password']}
+          okText={this.state.dict['main.confirm']}
+          cancelText={this.state.dict['main.cancel']}
           visible={this.state.visible}
           onOk={this.resetPwdSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -743,9 +743,9 @@
         </Modal>
         {/* 缂栬緫鐘舵�佺櫥褰� */}
         <Modal
-          title={this.state.dict['header.login.develop']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={this.state.dict['main.login.develop']}
+          okText={this.state.dict['main.confirm']}
+          cancelText={this.state.dict['main.cancel']}
           visible={this.state.loginVisible}
           onOk={this.loginSubmit}
           width={'430px'}
diff --git a/src/components/header/resetpwd/index.jsx b/src/components/header/resetpwd/index.jsx
index c9b8567..ac9eaed 100644
--- a/src/components/header/resetpwd/index.jsx
+++ b/src/components/header/resetpwd/index.jsx
@@ -39,7 +39,7 @@
   compareToFirstPassword = (rule, value, callback) => {
     const { form } = this.props
     if (value && value !== form.getFieldValue('password')) {
-      callback(this.props.dict['header.password.diff'])
+      callback(this.props.dict['main.password.diff'])
     } else {
       callback()
     }
@@ -69,22 +69,22 @@
 
     return (
       <Form {...formItemLayout} onKeyDown={this.onEnterSubmit}>
-        <Form.Item label={this.props.dict['header.password.origin']}>
+        <Form.Item label={this.props.dict['main.password.origin']}>
           {getFieldDecorator('originpwd', {
             rules: [
               {
                 required: true,
-                message: this.props.dict['header.password.origin.required']
+                message: this.props.dict['main.password.origin.required']
               }
             ]
           })(<Input.Password />)}
         </Form.Item>
-        <Form.Item label={this.props.dict['header.password.new']} hasFeedback>
+        <Form.Item label={this.props.dict['main.password.new']} hasFeedback>
           {getFieldDecorator('password', {
             rules: [
               {
                 required: true,
-                message: this.props.dict['header.password.new.required']
+                message: this.props.dict['main.password.new.required']
               },
               {
                 pattern: /^[0-9a-zA-Z!@#$%^&*()_]*$/ig,
@@ -92,7 +92,7 @@
               },
               {
                 max: 50,
-                message: this.props.dict['header.password.maxlen']
+                message: this.props.dict['main.password.maxlen']
               },
               {
                 validator: this.validateToNextPassword
@@ -100,12 +100,12 @@
             ]
           })(<Input.Password />)}
         </Form.Item>
-        <Form.Item label={this.props.dict['header.password.confirm']} hasFeedback>
+        <Form.Item label={this.props.dict['main.password.confirm']} hasFeedback>
           {getFieldDecorator('confirm', {
             rules: [
               {
                 required: true,
-                message: this.props.dict['header.password.confirm.required']
+                message: this.props.dict['main.password.confirm.required']
               },
               {
                 validator: this.compareToFirstPassword
diff --git a/src/components/sidemenu/index.jsx b/src/components/sidemenu/index.jsx
index e3876c7..aa5269a 100644
--- a/src/components/sidemenu/index.jsx
+++ b/src/components/sidemenu/index.jsx
@@ -9,8 +9,8 @@
 import { modifyTabview, resetEditLevel } from '@/store/action'
 import { SySMenuList } from './config'
 import options from '@/store/options.js'
-import zhCN from '@/locales/zh-CN/header.js'
-import enUS from '@/locales/en-US/header.js'
+import zhCN from '@/locales/zh-CN/main.js'
+import enUS from '@/locales/en-US/main.js'
 import Api from '@/api'
 import './index.scss'
 
diff --git a/src/locales/en-US/header.js b/src/locales/en-US/header.js
deleted file mode 100644
index d6415ee..0000000
--- a/src/locales/en-US/header.js
+++ /dev/null
@@ -1,46 +0,0 @@
-export default {
-  'header.confirm': 'Ok',
-  'header.submit': 'Submit',
-  'header.delete': 'Delete',
-  'header.cancel': 'Cancel',
-  'header.edit': 'Edit',
-  'header.return': 'Back',
-  'header.close': 'Close',
-  'header.thawmenu': 'Thaw the menu',
-  'header.logout': 'Logout',
-  'header.logout.hint': 'Are you sure you want to log out?',
-  'header.password': 'Change the password',
-  'header.password.origin': 'Original Password',
-  'header.password.origin.required': 'Please input your original password!',
-  'header.password.new': 'Password',
-  'header.password.new.required': 'Please input your password!',
-  'header.password.confirm': 'Confirm Password',
-  'header.password.confirm.required': 'Please confirm your password!',
-  'header.password.minlen': 'The minimum password length is 6 digits!',
-  'header.password.maxlen': 'The maximum password length is 12 bits!',
-  'header.password.diff': 'Two passwords that you enter is inconsistent!',
-  'header.password.resetsuccess': 'Password modified successfully!',
-  'header.login.develop': '鐧诲綍寮�鍙戞満',
-  'header.menu.tadd': '娣诲姞鑿滃崟',
-  'header.menu.tupdate': '淇敼鑿滃崟',
-  'header.menu.close': 'Are you sure to delete the menu <<@M>> ?',
-  'header.menu.update': 'Are you sure to modify the configuration information of the menu <<@M>> ?',
-  'header.menu.presave': 'Menu order has been adjusted, Please save!',
-  'header.menu.resetorder': 'Are you sure to adjust the menu sequence ?',
-  'header.menu.template.empty': '鑿滃崟妯℃澘涓㈠け锛岃閲嶆柊閫夋嫨妯℃澘锛�',
-  'header.menu.template.change': '鍒囨崲妯℃澘',
-  'header.menu.addtitle': 'The new menu',
-  'header.menu.editTitle': 'The edit menu',
-  'header.menu.menuID': 'Menu ID',
-  'header.menu.menuName': 'Menu Name',
-  'header.menu.menuNo': 'Menu Parameter',
-  'header.menu.supMenu': 'Superior Menu',
-  'header.menu.icon': 'Icon',
-  'header.menu.openType': 'Open With',
-  'header.menu.openType.menu': 'Menu',
-  'header.menu.openType.newWindow': 'A new window',
-  'header.menu.newpage.service': 'Customer Service',
-  'header.menu.thawmenu.select': 'Please select the menu to unfreeze !',
-  'form.required.input': 'Please enter the ',
-  'form.required.select': '璇烽�夋嫨'
-}
\ No newline at end of file
diff --git a/src/locales/en-US/main.js b/src/locales/en-US/main.js
index 54463ba..933991d 100644
--- a/src/locales/en-US/main.js
+++ b/src/locales/en-US/main.js
@@ -1,13 +1,27 @@
 export default {
   'main.search': 'Search',
   'main.reset': 'Reset',
+  'main.edit': 'Edit',
   'main.confirm': 'OK',
   'main.submit': 'Submit',
-  'main.return': 'Cancel',
-  'main.close': '鍏抽棴',
+  'main.return': 'Return',
+  'main.close': 'Close',
   'main.all': 'All',
-  'main.cancel': '鍙栨秷',
-  'main.revert.default': '鎭㈠榛樿璁剧疆',
+  'main.cancel': 'Cancel',
+  'main.logout': 'Logout',
+  'main.logout.hint': 'Are you sure you want to log out?',
+  'main.password': 'Change the password',
+  'main.password.origin': 'Original Password',
+  'main.password.origin.required': 'Please input your original password!',
+  'main.password.new': 'Password',
+  'main.password.new.required': 'Please input your password!',
+  'main.password.confirm': 'Confirm Password',
+  'main.password.confirm.required': 'Please confirm your password!',
+  'main.password.maxlen': 'The maximum password length is 12 bits!',
+  'main.password.diff': 'Two passwords that you enter is inconsistent!',
+  'main.password.resetsuccess': 'Password modified successfully!',
+  'main.login.develop': 'Login developer',
+  'main.revert.default': 'Restore default Settings',
   'main.copy.success': 'Copy success',
   'main.pagination.of': 'of',
   'main.pagination.items': 'items',
@@ -21,10 +35,9 @@
   'main.action.primarykey.required': 'Primary key not set!',
   'main.action.primarykey.repetition': 'There are multiple primary keys!',
   'main.action.primarykey.repetitionbid': 'There are multiple BID!',
-  'main.column.operation': '鎿嶄綔',
-  'main.excel.line': '琛�',
-  'main.excel.column': '鍒�',
-  'main.excel.includekey': '鍚湁鍏抽敭瀛�',
+  'main.excel.line': 'line',
+  'main.excel.column': 'column',
+  'main.excel.includekey': ' Contain keywords ',
   'main.excel.content.emptyerror': '鍐呭涓嶅彲涓虹┖',
   'main.excel.content.typeerror': '鍐呭搴斾负鏁板��',
   'main.excel.content.interror': '鍐呭搴斾负鏁存暟',
@@ -36,6 +49,6 @@
   'main.excel.content.limitmax': '澶т簬鏈�澶у��',
   'main.form.link.error': '鑱斿姩鑿滃崟璁剧疆閿欒锛�',
   'main.form.picture.check': '鏌ョ湅鍥剧墖',
-  'form.required.input': 'Please input ',
-  'form.required.select': 'Please select '
+  'form.required.input': 'Please enter the ',
+  'form.required.select': 'Please select a '
 }
\ No newline at end of file
diff --git a/src/locales/en-US/model.js b/src/locales/en-US/model.js
index adf6865..8080b84 100644
--- a/src/locales/en-US/model.js
+++ b/src/locales/en-US/model.js
@@ -1,15 +1,15 @@
 export default {
   'model.confirm': 'Ok',
-  'header.submit': 'Submit',
+  'model.submit': 'Submit',
   'model.delete': 'Delete',
-  'header.cancel': 'Cancel',
+  'model.cancel': 'Cancel',
   'model.edit': 'Edit',
   'model.copy': 'Copy',
-  'header.return': 'Back',
-  'header.save': 'Save',
-  'header.notsave': 'Do not save',
-  'header.close': 'Close',
-  'header.notclose': 'not close',
+  'model.back': 'Return',
+  'model.save': 'Save',
+  'model.notsave': 'Don\'t save',
+  'model.close': 'Close',
+  'model.notclose': 'Don\'t close',
   'header.reset': 'Reset',
   'model.enable': 'Enable',
   'model.disable': 'Disable',
@@ -17,20 +17,34 @@
   'model.hidden': 'Hidden',
   'model.length': 'Length',
   'model.sort': 'Sort',
+  'model.true': 'True',
+  'model.false': 'False',
+  'model.add': 'Add ',
+  'model.update': 'Update ',
+  'model.thaw': 'Thaw ',
+  'model.menu': 'Menu ',
+  'model.name': 'Name',
+  'model.icon': 'Icon',
+  'model.param': 'Param',
+  'model.super': 'The superior ',
+  'model.openway': 'Open ',
+  'model.new': 'New ',
+  'model.window': 'Window',
   'model.switch.open': 'Open',
   'model.switch.close': 'Close',
   'model.menu.level1': 'Level 1 menu',
   'model.menu.level2': 'Level 2 menu',
+  'model.menu.close': 'Are you sure to delete the menu <<@M>> ?',
+  'model.menu.resetorder': 'Are you sure to adjust the menu sequence ?',
   'header.menu.basemsg': 'Please complete the basic information !',
-  'header.menu.template.change': 'Switch the template',
-  'header.menu.addtitle': 'The new menu',
-  'header.menu.editTitle': 'The edit menu',
   'header.menu.basedata': 'The basic information',
   'header.menu.table.add': 'Add tables',
   'header.menu.table.placeholder': 'Please select a table',
   'header.menu.config.placeholder': 'Configuration has been modified, do you want to save configuration information ?',
   'header.menu.config.notsave': 'The menu has not been saved, please save the menu configuration first锛�',
   'header.menu.config.update': 'Menu configuration has been modified, please save锛�',
+  'model.menu.template.empty': 'Menu template is missing, please select template again锛�',
+  'model.menu.presave': 'Menu order has been adjusted, Please save!',
   'header.menu.form': 'The form',
   'header.menu.form.add': 'Add form',
   'header.menu.form.configurable': 'Configuration of forms',
@@ -44,18 +58,9 @@
   'header.menu.column': 'Column',
   'header.menu.column.add': 'Add columns',
   'header.menu.page.configurable': 'Configuration Page',
-  'header.menu.menuID': 'Menu ID',
-  'header.menu.menuName': 'Menu Name',
   'header.menu.viewName': 'The name of the page',
   'header.menu.tabName': 'Tag name',
   'header.menu.Remark': 'Note',
-  'header.menu.menuNo': 'Menu Parameter',
-  'header.menu.supMenu': 'Superior Menu',
-  'header.menu.icon': 'Icon',
-  'header.menu.openType': 'Open With',
-  'header.menu.openType.menu': 'Menu',
-  'header.menu.openType.newWindow': 'A new window',
-  'header.menu.newpage.service': 'Customer Service',
   'header.menu.func.create': 'Create stored procedures',
   'header.menu.interface.create': 'Create the interface',
   'header.menu.tab': 'Tab',
@@ -74,7 +79,7 @@
   'header.form.column.itemUnit': 'Item',
   'header.form.column.itemsUnit': 'Items',
   'model.form.column.action': 'Action',
-  'model.form.name': 'Name',
+  'model.form.width': 'Width',
   'header.form.title': 'Title',
   'model.form.field': 'Field',
   'header.form.innerFunc': 'Internal func',
@@ -102,7 +107,7 @@
   'header.form.interface.inner': 'Internal',
   'header.form.interface.outer': 'External',
   'header.form.pageTemplate': 'The page template',
-  'header.form.type': 'Type',
+  'model.form.type': 'Type',
   'model.form.text': 'Text',
   'header.form.description': '鎻忚堪',
   'model.form.textarea': 'Multiline text',
@@ -154,14 +159,11 @@
   'model.form.prompt': 'Prompt',
   'model.form.exec': 'Direct execution',
   'model.form.paramJoint': 'Joint param',
-  'model.form.icon': 'Icon',
   'model.form.align': 'Alignment',
   'model.form.alignLeft': 'The left',
   'model.form.alignRight': 'The Right',
   'model.form.alignCenter': 'The center',
-  'header.form.columnWidth': '鍒楀',
-  'header.form.true': '鏄�',
-  'header.form.false': '鍚�',
+  'model.form.columnWidth': 'Column width',
   'header.form.setAll': '璁剧疆鍏ㄩ儴椤�',
   'header.form.resourceType': '閫夐」鏉ユ簮',
   'header.form.custom': '鑷畾涔�',
diff --git a/src/locales/zh-CN/header.js b/src/locales/zh-CN/header.js
deleted file mode 100644
index 4fc9962..0000000
--- a/src/locales/zh-CN/header.js
+++ /dev/null
@@ -1,46 +0,0 @@
-export default {
-  'header.confirm': '纭畾',
-  'header.submit': '鎻愪氦',
-  'header.delete': '鍒犻櫎',
-  'header.cancel': '鍙栨秷',
-  'header.edit': '缂栬緫',
-  'header.return': '杩斿洖',
-  'header.close': '鍏抽棴',
-  'header.thawmenu': '瑙e喕鑿滃崟',
-  'header.logout': '閫�鍑�',
-  'header.logout.hint': '鎮ㄧ‘瀹氳閫�鍑哄悧?',
-  'header.password': '淇敼瀵嗙爜',
-  'header.password.origin': '鍘熷瘑鐮�',
-  'header.password.origin.required': '璇疯緭鍏ュ師瀵嗙爜锛�',
-  'header.password.new': '鏂板瘑鐮�',
-  'header.password.new.required': '璇疯緭鍏ユ柊瀵嗙爜锛�',
-  'header.password.confirm': '纭瀵嗙爜',
-  'header.password.confirm.required': '璇风‘璁ゅ瘑鐮侊紒',
-  'header.password.minlen': '鏈�灏忓瘑鐮侀暱搴︿负6浣嶏紒',
-  'header.password.maxlen': '鏈�澶у瘑鐮侀暱搴︿负12浣嶏紒',
-  'header.password.diff': '涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷达紒',
-  'header.password.resetsuccess': '瀵嗙爜淇敼鎴愬姛锛�',
-  'header.login.develop': '鐧诲綍寮�鍙戞満',
-  'header.menu.tadd': '娣诲姞鑿滃崟',
-  'header.menu.tupdate': '淇敼鑿滃崟',
-  'header.menu.close': '纭畾鍒犻櫎銆夽M銆嬭彍鍗曞悧锛�',
-  'header.menu.update': '纭畾淇敼鑿滃崟銆夽M銆嬬殑閰嶇疆淇℃伅鍚楋紵',
-  'header.menu.presave': '鑿滃崟椤哄簭宸茶皟鏁达紝璇蜂繚瀛橈紒',
-  'header.menu.resetorder': '纭璋冩暣鑿滃崟椤哄簭鍚楋紵',
-  'header.menu.template.empty': '鑿滃崟妯℃澘涓㈠け锛岃閲嶆柊閫夋嫨妯℃澘锛�',
-  'header.menu.template.change': '鍒囨崲妯℃澘',
-  'header.menu.addtitle': '鏂板缓鑿滃崟',
-  'header.menu.editTitle': '缂栬緫鑿滃崟',
-  'header.menu.menuID': '鑿滃崟ID',
-  'header.menu.menuName': '鑿滃崟鍚嶇О',
-  'header.menu.menuNo': '鑿滃崟鍙傛暟',
-  'header.menu.supMenu': '涓婄骇鑿滃崟',
-  'header.menu.icon': '鍥炬爣',
-  'header.menu.openType': '鎵撳紑鏂瑰紡',
-  'header.menu.openType.menu': '鑿滃崟',
-  'header.menu.openType.newWindow': '鏂扮獥鍙�',
-  'header.menu.newpage.service': '瀹㈡湇',
-  'header.menu.thawmenu.select': '璇烽�夋嫨瑕佽В闄ゅ喕缁撶殑鑿滃崟锛�',
-  'form.required.input': '璇疯緭鍏�',
-  'form.required.select': '璇烽�夋嫨'
-}
\ No newline at end of file
diff --git a/src/locales/zh-CN/main.js b/src/locales/zh-CN/main.js
index 4b5c1f2..61353bb 100644
--- a/src/locales/zh-CN/main.js
+++ b/src/locales/zh-CN/main.js
@@ -1,12 +1,26 @@
 export default {
   'main.search': '鎼滅储',
   'main.reset': '閲嶇疆',
+  'main.edit': '缂栬緫',
   'main.confirm': '纭畾',
   'main.submit': '鎻愪氦',
   'main.return': '杩斿洖',
   'main.close': '鍏抽棴',
   'main.all': '鍏ㄩ儴',
   'main.cancel': '鍙栨秷',
+  'main.logout': '閫�鍑�',
+  'main.logout.hint': '鎮ㄧ‘瀹氳閫�鍑哄悧?',
+  'main.password': '淇敼瀵嗙爜',
+  'main.password.origin': '鍘熷瘑鐮�',
+  'main.password.origin.required': '璇疯緭鍏ュ師瀵嗙爜锛�',
+  'main.password.new': '鏂板瘑鐮�',
+  'main.password.new.required': '璇疯緭鍏ユ柊瀵嗙爜锛�',
+  'main.password.confirm': '纭瀵嗙爜',
+  'main.password.confirm.required': '璇风‘璁ゅ瘑鐮侊紒',
+  'main.password.maxlen': '鏈�澶у瘑鐮侀暱搴︿负12浣嶏紒',
+  'main.password.diff': '涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷达紒',
+  'main.password.resetsuccess': '瀵嗙爜淇敼鎴愬姛锛�',
+  'main.login.develop': '鐧诲綍寮�鍙戞満',
   'main.revert.default': '鎭㈠榛樿璁剧疆',
   'main.copy.success': '澶嶅埗鎴愬姛',
   'main.pagination.of': '鍏�',
@@ -21,7 +35,6 @@
   'main.action.primarykey.required': '鏈缃富閿紒',
   'main.action.primarykey.repetition': '瀛樺湪澶氫釜涓婚敭锛�',
   'main.action.primarykey.repetitionbid': '瀛樺湪澶氫釜BID锛�',
-  'main.column.operation': '鎿嶄綔',
   'main.view.unenabled': '鎶辨瓑锛屼綘璁块棶鐨勯〉闈㈡湭鍚敤锛岃鑱旂郴绠$悊鍛樸��',
   'main.excel.line': '琛�',
   'main.excel.column': '鍒�',
diff --git a/src/locales/zh-CN/model.js b/src/locales/zh-CN/model.js
index 590b124..29787fa 100644
--- a/src/locales/zh-CN/model.js
+++ b/src/locales/zh-CN/model.js
@@ -1,15 +1,15 @@
 export default {
   'model.confirm': '纭畾',
-  'header.submit': '鎻愪氦',
+  'model.submit': '鎻愪氦',
   'model.delete': '鍒犻櫎',
-  'header.cancel': '鍙栨秷',
+  'model.cancel': '鍙栨秷',
   'model.edit': '缂栬緫',
   'model.copy': '澶嶅埗',
-  'header.return': '杩斿洖',
-  'header.save': '淇濆瓨',
-  'header.notsave': '涓嶄繚瀛�',
-  'header.close': '鍏抽棴',
-  'header.notclose': '涓嶅叧闂�',
+  'model.back': '杩斿洖',
+  'model.save': '淇濆瓨',
+  'model.notsave': '涓嶄繚瀛�',
+  'model.close': '鍏抽棴',
+  'model.notclose': '涓嶅叧闂�',
   'header.reset': '閲嶇疆',
   'model.enable': '鍚�',
   'model.disable': '鍋�',
@@ -17,20 +17,34 @@
   'model.hidden': '闅愯棌',
   'model.length': '闀垮害',
   'model.sort': '鎺掑簭',
+  'model.true': '鏄�',
+  'model.false': '鍚�',
+  'model.add': '娣诲姞',
+  'model.update': '淇敼',
+  'model.thaw': '瑙e喕',
+  'model.menu': '鑿滃崟',
+  'model.name': '鍚嶇О',
+  'model.icon': '鍥炬爣',
+  'model.param': '鍙傛暟',
+  'model.super': '涓婄骇',
+  'model.openway': '鎵撳紑鏂瑰紡',
+  'model.new': '鏂�',
+  'model.window': '绐楀彛',
   'model.switch.open': '寮�',
   'model.switch.close': '鍏�',
   'model.menu.level1': '涓�绾ц彍鍗�',
   'model.menu.level2': '浜岀骇鑿滃崟',
+  'model.menu.close': '纭畾鍒犻櫎銆夽M銆嬭彍鍗曞悧锛�',
+  'model.menu.resetorder': '纭璋冩暣鑿滃崟椤哄簭鍚楋紵',
   'header.menu.basemsg': '璇峰畬鍠勮彍鍗曞熀鏈俊鎭紒',
-  'header.menu.template.change': '鍒囨崲妯℃澘',
-  'header.menu.addtitle': '鏂板缓鑿滃崟',
-  'header.menu.editTitle': '缂栬緫鑿滃崟',
   'header.menu.basedata': '鍩烘湰淇℃伅',
   'header.menu.table.add': '娣诲姞琛ㄥ悕',
   'header.menu.table.placeholder': '璇烽�夋嫨琛ㄥ悕',
   'header.menu.config.placeholder': '閰嶇疆宸蹭慨鏀癸紝鏄惁淇濆瓨閰嶇疆淇℃伅锛�',
   'header.menu.config.notsave': '鑿滃崟灏氭湭淇濆瓨锛岃鍏堜繚瀛樿彍鍗曢厤缃紒',
   'header.menu.config.update': '鑿滃崟閰嶇疆宸蹭慨鏀癸紝璇蜂繚瀛橈紒',
+  'model.menu.template.empty': '鑿滃崟妯℃澘涓㈠け锛岃閲嶆柊閫夋嫨妯℃澘锛�',
+  'model.menu.presave': '鑿滃崟椤哄簭宸茶皟鏁达紝璇蜂繚瀛橈紒',
   'header.menu.form': '琛ㄥ崟',
   'header.menu.form.add': '娣诲姞琛ㄥ崟',
   'header.menu.form.configurable': '琛ㄥ崟閰嶇疆',
@@ -44,18 +58,9 @@
   'header.menu.column': '鏄剧ず鍒�',
   'header.menu.column.add': '娣诲姞鏄剧ず鍒�',
   'header.menu.page.configurable': '椤甸潰閰嶇疆',
-  'header.menu.menuID': '鑿滃崟ID',
-  'header.menu.menuName': '鑿滃崟鍚嶇О',
   'header.menu.viewName': '椤甸潰鍚嶇О',
   'header.menu.tabName': '鏍囩鍚嶇О',
   'header.menu.Remark': '澶囨敞',
-  'header.menu.menuNo': '鑿滃崟鍙傛暟',
-  'header.menu.supMenu': '涓婄骇鑿滃崟',
-  'header.menu.icon': '鍥炬爣',
-  'header.menu.openType': '鎵撳紑鏂瑰紡',
-  'header.menu.openType.menu': '鑿滃崟',
-  'header.menu.openType.newWindow': '鏂扮獥鍙�',
-  'header.menu.newpage.service': '瀹㈡湇',
   'header.menu.func.create': '鍒涘缓瀛樺偍杩囩▼',
   'header.menu.interface.create': '鍒涘缓鎺ュ彛',
   'header.menu.tab': '鏍囩椤�',
@@ -74,7 +79,7 @@
   'header.form.column.itemUnit': '椤�',
   'header.form.column.itemsUnit': '椤�',
   'model.form.column.action': '鎿嶄綔',
-  'model.form.name': '鍚嶇О',
+  'model.form.width': '瀹藉害',
   'header.form.title': '鏍囬',
   'model.form.field': '瀛楁',
   'header.form.innerFunc': '鍐呴儴鍑芥暟',
@@ -102,7 +107,7 @@
   'header.form.interface.inner': '鍐呴儴',
   'header.form.interface.outer': '澶栭儴',
   'header.form.pageTemplate': '椤甸潰妯℃澘',
-  'header.form.type': '绫诲瀷',
+  'model.form.type': '绫诲瀷',
   'model.form.text': '鏂囨湰',
   'header.form.description': '鎻忚堪',
   'model.form.textarea': '澶氳鏂囨湰',
@@ -154,14 +159,11 @@
   'model.form.prompt': '鎻愮ず妗�',
   'model.form.exec': '鐩存帴鎵ц',
   'model.form.paramJoint': '鎷兼帴鍙傛暟',
-  'model.form.icon': '鍥炬爣',
   'model.form.align': '瀵归綈鏂瑰紡',
   'model.form.alignLeft': '宸﹀榻�',
   'model.form.alignRight': '鍙冲榻�',
   'model.form.alignCenter': '灞呬腑',
-  'header.form.columnWidth': '鍒楀',
-  'header.form.true': '鏄�',
-  'header.form.false': '鍚�',
+  'model.form.columnWidth': '鍒楀',
   'header.form.setAll': '璁剧疆鍏ㄩ儴',
   'header.form.resourceType': '閫夐」鏉ユ簮',
   'header.form.custom': '鑷畾涔�',
diff --git a/src/templates/comtableconfig/index.jsx b/src/templates/comtableconfig/index.jsx
index 5ac37c3..97c86a8 100644
--- a/src/templates/comtableconfig/index.jsx
+++ b/src/templates/comtableconfig/index.jsx
@@ -937,7 +937,7 @@
       confirm({
         content: '鑿滃崟灏氭湭鎻愪氦锛岀‘瀹氭斁寮冧繚瀛樺悧锛�',
         okText: this.state.dict['model.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           _this.props.handleView()
         },
@@ -1398,8 +1398,8 @@
               <div>
                 <EditComponent dict={this.state.dict} type="maintable" config={this.state.config} MenuID={this.props.menu.MenuID} thawButtons={this.state.thawButtons} refresh={this.editConfig}/>
                 <Switch className="big" checkedChildren={this.state.dict['model.enable']} unCheckedChildren={this.state.dict['model.disable']} checked={this.state.config.enabled} onChange={this.onEnabledChange} />
-                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['header.save']}</Button>
-                <Button onClick={this.cancelConfig}>{this.state.dict['header.return']}</Button>
+                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['model.save']}</Button>
+                <Button onClick={this.cancelConfig}>{this.state.dict['model.back']}</Button>
               </div>
             } style={{ width: '100%' }}>
               <SettingComponent
@@ -1493,9 +1493,9 @@
           visible={this.state.closeVisible}
           onCancel={() => { this.setState({closeVisible: false}) }}
           footer={[
-            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['header.save']}</Button>,
-            <Button key="notsave" className="mk-btn mk-yellow" onClick={this.notsave}>{this.state.dict['header.notsave']}</Button>,
-            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['header.cancel']}</Button>
+            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['model.save']}</Button>,
+            <Button key="notsave" className="mk-btn mk-yellow" onClick={this.notsave}>{this.state.dict['model.notsave']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['model.cancel']}</Button>
           ]}
           destroyOnClose
         >
diff --git a/src/templates/formtabconfig/index.jsx b/src/templates/formtabconfig/index.jsx
index 0ad3b0a..bd4404e 100644
--- a/src/templates/formtabconfig/index.jsx
+++ b/src/templates/formtabconfig/index.jsx
@@ -34,7 +34,6 @@
 const { Panel } = Collapse
 const { Option } = Select
 const { confirm } = Modal
-const CommonDict = localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS
 
 class ComTableConfig extends Component {
   static propTpyes = {
@@ -46,7 +45,7 @@
   }
 
   state = {
-    dict: CommonDict,        // 瀛楀吀
+    dict: localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS,        // 瀛楀吀
     config: null,            // 椤甸潰閰嶇疆
     modaltype: '',           // 妯℃�佹绫诲瀷锛屾帶鍒舵ā鎬佹鏄剧ず
     tableVisible: false,     // 鏁版嵁琛ㄥ瓧娈垫ā鎬佹
@@ -162,7 +161,7 @@
         {
           type: 'text',
           key: 'menuName',
-          label: this.state.dict['header.menu.menuName'],
+          label: this.state.dict['model.menu'] + this.state.dict['model.name'],
           initVal: menu.MenuName,
           readonly: true
         },
@@ -835,7 +834,7 @@
     confirm({
       content: `纭畾鍒犻櫎<<${element.card.label}>>鍚楋紵`,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _config = JSON.parse(JSON.stringify(_this.state.config))
         let _delActions = _this.state.delActions
@@ -1294,7 +1293,7 @@
       confirm({
         content: '鎸夐挳閰嶇疆灏氭湭鎻愪氦锛岀‘瀹氭斁寮冧繚瀛樺悧锛�',
         okText: this.state.dict['model.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           _this.handleViewBack()
         },
@@ -1741,7 +1740,7 @@
     confirm({
       content: `纭畾鍒犻櫎鍒嗙粍<<${group.label}>>鍚楋紵`,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let groups = config.groups.filter(item => !(item.uuid === group.uuid))
         groups = groups.map(item => {
@@ -1949,8 +1948,8 @@
             } bordered={false} extra={
               <div>
                 <Switch className="big" checkedChildren="鍚�" unCheckedChildren="鍋�" checked={this.state.config.enabled} onChange={this.onEnabledChange} />
-                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['header.save']}</Button>
-                <Button onClick={this.cancelConfig}>{this.state.dict['header.return']}</Button>
+                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['model.save']}</Button>
+                <Button onClick={this.cancelConfig}>{this.state.dict['model.back']}</Button>
               </div>
             } style={{ width: '100%' }}>
               <Icon type="setting" onClick={this.changeSetting} />
@@ -2046,7 +2045,7 @@
           footer={[
             this.state.card && this.state.card.btnType !== 'cancel' ?
             <CreateFunc key="create" dict={this.state.dict} ref="btnCreatFunc" trigger={this.creatFunc}/> : null,
-            <Button key="cancel" onClick={this.editModalCancel}>{this.state.dict['header.cancel']}</Button>,
+            <Button key="cancel" onClick={this.editModalCancel}>{this.state.dict['model.cancel']}</Button>,
             <Button key="confirm" type="primary" onClick={this.handleSubmit}>{this.state.dict['model.confirm']}</Button>
           ]}
           destroyOnClose
@@ -2068,7 +2067,7 @@
           width={'65vw'}
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
-          cancelText={this.state.dict['header.close']}
+          cancelText={this.state.dict['model.close']}
           onOk={this.addFieldSubmit}
           onCancel={() => { // 鍙栨秷娣诲姞
             this.setState({
@@ -2092,7 +2091,7 @@
           width={'75vw'}
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
-          okText={this.state.dict['header.submit']}
+          okText={this.state.dict['model.submit']}
           onOk={this.verifySubmit}
           onCancel={() => { this.setState({ profileVisible: false }) }}
           destroyOnClose
@@ -2119,7 +2118,7 @@
           }}
           footer={[
             <CreateFunc key="create" dict={this.state.dict} ref="tableCreatFunc" trigger={this.tableCreatFunc}/>,
-            <Button key="cancel" onClick={() => { this.setState({ settingVisible: false }) }}>{this.state.dict['header.cancel']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({ settingVisible: false }) }}>{this.state.dict['model.cancel']}</Button>,
             <Button key="confirm" type="primary" loading={this.state.sqlVerifing} onClick={this.settingSave}>{this.state.dict['model.confirm']}</Button>
           ]}
           destroyOnClose
@@ -2140,9 +2139,9 @@
           visible={this.state.closeVisible}
           onCancel={() => { this.setState({closeVisible: false}) }}
           footer={[
-            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['header.save']}</Button>,
-            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['header.notsave']}</Button>,
-            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['header.cancel']}</Button>
+            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['model.save']}</Button>,
+            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['model.notsave']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['model.cancel']}</Button>
           ]}
           destroyOnClose
         >
diff --git a/src/templates/formtabconfig/settingform/index.jsx b/src/templates/formtabconfig/settingform/index.jsx
index 263008d..f28b73f 100644
--- a/src/templates/formtabconfig/settingform/index.jsx
+++ b/src/templates/formtabconfig/settingform/index.jsx
@@ -243,8 +243,8 @@
                 initialValue: setting.sysInterface || 'false'
               })(
                 <Radio.Group onChange={this.onSysChange}>
-                  <Radio value="true">{dict['header.form.true']}</Radio>
-                  <Radio value="false">{dict['header.form.false']}</Radio>
+                  <Radio value="true">{dict['model.true']}</Radio>
+                  <Radio value="false">{dict['model.false']}</Radio>
                 </Radio.Group>
               )}
             </Form.Item>
diff --git a/src/templates/headerconfig/dragelement/index.jsx b/src/templates/headerconfig/dragelement/index.jsx
index 2a9205e..8100ebe 100644
--- a/src/templates/headerconfig/dragelement/index.jsx
+++ b/src/templates/headerconfig/dragelement/index.jsx
@@ -65,9 +65,9 @@
         <div className="card-add" onClick={add}>
           <Icon type="plus" />
         </div>
-        <Button type="primary" onClick={thawmenu}>{dict['header.thawmenu']}</Button>
-        <Button type="primary" onClick={confirm}>{dict['header.confirm']}</Button>
-        <Button onClick={cancel}>{dict['header.close']}</Button>
+        <Button type="primary" onClick={thawmenu}>{dict['model.thaw'] + dict['model.menu']}</Button>
+        <Button type="primary" onClick={confirm}>{dict['model.confirm']}</Button>
+        <Button onClick={cancel}>{dict['model.close']}</Button>
       </div>
     </div>
   )
diff --git a/src/templates/headerconfig/index.jsx b/src/templates/headerconfig/index.jsx
index 5caf9f4..d44b08e 100644
--- a/src/templates/headerconfig/index.jsx
+++ b/src/templates/headerconfig/index.jsx
@@ -10,8 +10,8 @@
 import DragElement from './dragelement'
 import MenuForm from './menuform'
 import Utils from '@/utils/utils.js'
-import zhCN from '@/locales/zh-CN/header.js'
-import enUS from '@/locales/en-US/header.js'
+import zhCN from '@/locales/zh-CN/model.js'
+import enUS from '@/locales/en-US/model.js'
 import Api from '@/api'
 import './index.scss'
 
@@ -52,7 +52,7 @@
     if (previewList && !is(fromJS(previewList), fromJS(this.props.menulist))) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.presave'],
+        message: this.state.dict['model.menu.presave'],
         duration: 5
       })
     } else {
@@ -141,10 +141,10 @@
   deleteMemu = () => {
     let _this = this
     confirm({
-      title: this.state.dict['header.menu.close'].replace('@M', this.state.editMenu.MenuName),
+      title: this.state.dict['model.menu.close'].replace('@M', this.state.editMenu.MenuName),
       content: '',
-      okText: this.state.dict['header.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      okText: this.state.dict['model.confirm'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let param = {
           func: 'sPC_MainMenu_Del',
@@ -174,7 +174,7 @@
     if (this.refs.trawmenu.state.targetKeys.length === 0) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.thawmenu.select'],
+        message: this.state.dict['form.required.select'] + this.state.dict['model.menu'],
         duration: 5
       })
     } else {
@@ -229,7 +229,7 @@
     if ((type === 'add' || type === 'thawmenu') && _menuchange) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.presave'],
+        message: this.state.dict['model.menu.presave'],
         duration: 5
       })
     } else if (type === 'add') {
@@ -251,10 +251,10 @@
       param.secretkey = Utils.encrypt(param.LText, param.timestamp) // md5瀵嗛挜
 
       confirm({
-        title: this.state.dict['header.menu.resetorder'],
+        title: this.state.dict['model.menu.resetorder'],
         content: '',
-        okText: this.state.dict['header.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        okText: this.state.dict['model.confirm'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           return Api.getSystemConfig(param).then(res => {
             if (res.status) {
@@ -312,6 +312,8 @@
   }
 
   render () {
+    const { dict } = this.state
+
     return (
       <div className="header-edit-box">
         <div className="mask">
@@ -336,7 +338,7 @@
         </div>
         {this.props.menulist && <DndProvider backend={HTML5Backend}>
           <DragElement
-            dict={this.state.dict}
+            dict={dict}
             list={this.props.menulist}
             handlePreviewList={this.handlePreviewList}
             handleMenu={this.editMenuModal}
@@ -345,9 +347,9 @@
         </DndProvider>}
         {/* 鏂板缓鑿滃崟妯℃�佹 */}
         <Modal
-          title={this.state.dict['header.menu.addtitle']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={dict['model.add'] + dict['model.menu']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.addMvisible}
           onOk={this.addMemuSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -355,7 +357,7 @@
           destroyOnClose
         >
           <MenuForm
-            dict={this.state.dict}
+            dict={dict}
             type="add"
             menu={null}
             wrappedComponentRef={(inst) => this.addMenuFormRef = inst}
@@ -363,9 +365,9 @@
         </Modal>
         {/* 瑙i櫎鍐荤粨鑿滃崟妯℃�佹 */}
         <Modal
-          title={this.state.dict['header.thawmenu']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={dict['model.thaw'] + dict['model.menu']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.thawMvisible}
           onOk={this.thawMemuSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -377,18 +379,18 @@
         </Modal>
         {/* 缂栬緫鑿滃崟妯℃�佹 */}
         <Modal
-          title={this.state.dict['header.menu.editTitle']}
+          title={dict['model.edit'] + dict['model.menu']}
           visible={this.state.editMvisible}
           footer={[
-            <Button key="cancel" onClick={this.editMemuCancel}>{this.state.dict['header.cancel']}</Button>,
-            <Button key="confirm" type="primary" onClick={this.editMemuSubmit} loading={this.state.confirmLoading}>{this.state.dict['header.confirm']}</Button>,
-            <Button key="delete" type="danger" onClick={this.deleteMemu}>{this.state.dict['header.delete']}</Button>
+            <Button key="cancel" onClick={this.editMemuCancel}>{dict['model.cancel']}</Button>,
+            <Button key="confirm" type="primary" onClick={this.editMemuSubmit} loading={this.state.confirmLoading}>{dict['model.confirm']}</Button>,
+            <Button key="delete" type="danger" onClick={this.deleteMemu}>{dict['model.delete']}</Button>
           ]}
           onCancel={this.editMemuCancel}
           destroyOnClose
         >
           <MenuForm
-            dict={this.state.dict}
+            dict={dict}
             type="edit"
             menu={this.state.editMenu}
             wrappedComponentRef={(inst) => this.editMenuFormRef = inst}
diff --git a/src/templates/headerconfig/menuform/index.jsx b/src/templates/headerconfig/menuform/index.jsx
index d8f40cd..88760c9 100644
--- a/src/templates/headerconfig/menuform/index.jsx
+++ b/src/templates/headerconfig/menuform/index.jsx
@@ -17,7 +17,7 @@
       {
         type: 'text',
         key: 'menuName',
-        label: this.props.dict['header.menu.menuName'],
+        label: this.props.dict['model.menu'] + this.props.dict['model.name'],
         initVal: '',
         required: true,
         readonly: false
@@ -25,28 +25,25 @@
       {
         type: 'select',
         key: 'openType',
-        label: this.props.dict['header.menu.openType'],
+        label: this.props.dict['model.openway'],
         initVal: 'menu',
         required: true,
         options: [{
           id: 'menu',
-          text: this.props.dict['header.menu.openType.menu']
-        }, {
-          id: 'newpage',
-          text: this.props.dict['header.menu.openType.newWindow']
+          text: this.props.dict['model.menu']
+        // }, {
+        //   id: 'newpage',
+        //   text: this.props.dict['model.new'] + this.props.dict['model.window']
         }]
       },
       {
         type: 'select',
         key: 'linkUrl',
         hidden: true,
-        label: this.props.dict['header.menu.openType.newWindow'],
+        label: this.props.dict['model.new'] + this.props.dict['model.window'],
         initVal: 'service',
         required: true,
-        options: [{
-          id: 'service',
-          text: this.props.dict['header.menu.newpage.service']
-        }]
+        options: []
       }
     ]
   }
diff --git a/src/templates/menuconfig/editsecmenu/index.jsx b/src/templates/menuconfig/editsecmenu/index.jsx
index 3b40425..b4807aa 100644
--- a/src/templates/menuconfig/editsecmenu/index.jsx
+++ b/src/templates/menuconfig/editsecmenu/index.jsx
@@ -10,8 +10,8 @@
 import DragElement from '../menuelement'
 import MenuForm from '../menuform'
 import Api from '@/api'
-import zhCN from '@/locales/zh-CN/header.js'
-import enUS from '@/locales/en-US/header.js'
+import zhCN from '@/locales/zh-CN/model.js'
+import enUS from '@/locales/en-US/model.js'
 import './index.scss'
 
 import card1 from '@/assets/img/card-bg2.jpg'
@@ -51,20 +51,22 @@
   }
 
   handleMenu = (menu) => {
+    const { dict } = this.state
+
     // 鑿滃崟缂栬緫锛氫慨鏀广�佸垹闄わ紝濡傝彍鍗曢『搴忓凡鏀瑰彉锛屾彁绀轰繚瀛樿彍鍗曢『搴�
     const _this = this
     if (!is(fromJS(this.props.menulist), fromJS(this.state.menulist))) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.presave'],
+        message: dict['model.menu.presave'],
         duration: 5
       })
     } else if (menu.type === 'close') {
       confirm({
-        title: this.state.dict['header.menu.close'].replace('@M', menu.card.text),
+        title: dict['model.menu.close'].replace('@M', menu.card.text),
         content: '',
-        okText: this.state.dict['header.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        okText: dict['model.confirm'],
+        cancelText: dict['model.cancel'],
         onOk() {
           let param = {
             func: 'sPC_MainMenu_Del',
@@ -87,14 +89,14 @@
     } else if (menu.type === 'edit') {
       this.setState({
         visible: true,
-        title: this.state.dict['header.menu.editTitle'],
+        title: dict['model.edit'] + dict['model.menu'],
         type: 'edit',
         editMenu: menu.card,
         formlist: [
           { // 鐖剁骇鑿滃崟
             type: 'select',
             key: 'parentId',
-            label: this.state.dict['header.menu.supMenu'],
+            label: dict['model.super'] + dict['model.menu'],
             initVal: this.props.supMenu.MenuID,
             required: true,
             options: this.props.supMenuList
@@ -102,7 +104,7 @@
           { // 鑿滃崟鍚嶇О
             type: 'text',
             key: 'menuName',
-            label: this.state.dict['header.menu.menuName'],
+            label: dict['model.menu'] + dict['model.name'],
             initVal: menu.card.text,
             required: true,
             readonly: false
@@ -110,7 +112,7 @@
           { // 鑿滃崟鍥炬爣
             type: 'select',
             key: 'icon',
-            label: this.state.dict['header.menu.icon'],
+            label: dict['model.icon'],
             initVal: menu.card.PageParam.Icon,
             required: true,
             options: [{
@@ -127,17 +129,19 @@
   }
 
   handleSubBtn = (type) => {
+    const { dict } = this.state
+
     // 鎿嶄綔鎸夐挳
     if (type === 'add') { // 娣诲姞鏂拌彍鍗�
       this.setState({
         visible: true,
-        title: this.state.dict['header.menu.addtitle'],
+        title: dict['model.add'] + dict['model.menu'],
         type: 'add',
         formlist: [
           { // 鐖剁骇鑿滃崟
             type: 'select',
             key: 'parentId',
-            label: this.state.dict['header.menu.supMenu'],
+            label: dict['model.super'] + dict['model.menu'],
             initVal: this.props.supMenu.MenuID,
             required: true,
             options: this.props.supMenuList
@@ -145,7 +149,7 @@
           { // 鑿滃崟鍚嶇О
             type: 'text',
             key: 'menuName',
-            label: this.state.dict['header.menu.menuName'],
+            label: dict['model.menu'] + dict['model.name'],
             initVal: '',
             required: true,
             readonly: false
@@ -153,7 +157,7 @@
           { // 鑿滃崟鍥炬爣
             type: 'select',
             key: 'icon',
-            label: this.state.dict['header.menu.icon'],
+            label: dict['model.icon'],
             initVal: 'folder',
             required: true,
             options: [{
@@ -208,10 +212,10 @@
         param.secretkey = Utils.encrypt(param.LText, param.timestamp) // md5瀵嗛挜
 
         confirm({
-          title: this.state.dict['header.menu.resetorder'],
+          title: this.state.dict['model.menu.resetorder'],
           content: '',
-          okText: this.state.dict['header.confirm'],
-          cancelText: this.state.dict['header.cancel'],
+          okText: this.state.dict['model.confirm'],
+          cancelText: this.state.dict['model.cancel'],
           onOk() {
             return Api.getSystemConfig(param).then(res => {
               if (res.status) {
@@ -319,7 +323,7 @@
     if (this.refs.trawmenu.state.targetKeys.length === 0) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.thawmenu.select'],
+        message: this.state.dict['form.required.select'] + this.state.dict['model.menu'],
         duration: 5
       })
     } else {
@@ -382,6 +386,8 @@
   }
 
   render () {
+    const { dict } = this.state
+
     return (
       <div className="second-edit-box">
         <div className="mask">
@@ -415,14 +421,14 @@
           <Icon type="plus" />
         </div>
         <div className="menu-btn">
-          <Button type="primary" onClick={() => {this.handleSubBtn('thaw')}}>{this.state.dict['header.thawmenu']}</Button>
-          <Button type="primary" onClick={() => {this.handleSubBtn('confirm')}}>{this.state.dict['header.confirm']}</Button>
-          <Button onClick={() => {this.handleSubBtn('close')}}>{this.state.dict['header.close']}</Button>
+          <Button type="primary" onClick={() => {this.handleSubBtn('thaw')}}>{dict['model.thaw'] + dict['model.menu']}</Button>
+          <Button type="primary" onClick={() => {this.handleSubBtn('confirm')}}>{dict['model.confirm']}</Button>
+          <Button onClick={() => {this.handleSubBtn('close')}}>{dict['model.close']}</Button>
         </div>
         <Modal
           title={this.state.title}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.visible}
           onOk={this.memuHandleSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -430,15 +436,15 @@
         >
           {this.state.formlist &&
           <MenuForm
-            dict={this.state.dict}
+            dict={dict}
             formlist={this.state.formlist}
             wrappedComponentRef={(inst) => this.menuFormRef = inst}
           />}
         </Modal>
         <Modal
-          title={this.state.dict['header.thawmenu']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={dict['model.thaw'] + dict['model.menu']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.thawMvisible}
           onOk={this.thawMemuSubmit}
           confirmLoading={this.state.confirmLoading}
diff --git a/src/templates/menuconfig/editthdmenu/index.jsx b/src/templates/menuconfig/editthdmenu/index.jsx
index 8d088a2..99a7f89 100644
--- a/src/templates/menuconfig/editthdmenu/index.jsx
+++ b/src/templates/menuconfig/editthdmenu/index.jsx
@@ -8,8 +8,8 @@
 
 import Api from '@/api'
 import { sysTemps } from '@/utils/option.js'
-import zhCN from '@/locales/zh-CN/header.js'
-import enUS from '@/locales/en-US/header.js'
+import zhCN from '@/locales/zh-CN/model.js'
+import enUS from '@/locales/en-US/model.js'
 import mainsubtable from '@/assets/img/mainsubtable.jpg'
 import treepage from '@/assets/img/treepage.jpg'
 
@@ -104,15 +104,15 @@
     if (!is(fromJS(this.props.menulist), fromJS(this.state.menulist))) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.presave'],
+        message: this.state.dict['model.menu.presave'],
         duration: 5
       })
     } else if (menu.type === 'close') {
       confirm({
-        title: this.state.dict['header.menu.close'].replace('@M', menu.card.text),
+        title: this.state.dict['model.menu.close'].replace('@M', menu.card.text),
         content: '',
-        okText: this.state.dict['header.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        okText: this.state.dict['model.confirm'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           let param = {
             func: 'sPC_MainMenu_Del',
@@ -200,7 +200,7 @@
           if (_Template.length === 0) {
             notification.warning({
               top: 92,
-              message: this.state.dict['header.menu.template.empty'],
+              message: this.state.dict['model.menu.template.empty'],
               duration: 5
             })
 
@@ -250,7 +250,7 @@
       if (!is(fromJS(this.props.menulist), fromJS(this.state.menulist))) {
         notification.warning({
           top: 92,
-          message: this.state.dict['header.menu.presave'],
+          message: this.state.dict['model.menu.presave'],
           duration: 5
         })
         return
@@ -288,7 +288,7 @@
       if (!is(fromJS(this.props.menulist), fromJS(this.state.menulist))) {
         notification.warning({
           top: 92,
-          message: this.state.dict['header.menu.presave'],
+          message: this.state.dict['model.menu.presave'],
           duration: 5
         })
         return
@@ -334,10 +334,10 @@
         param.secretkey = Utils.encrypt(param.LText, param.timestamp) // md5瀵嗛挜
 
         confirm({
-          title: this.state.dict['header.menu.resetorder'],
+          title: this.state.dict['model.menu.resetorder'],
           content: '',
-          okText: this.state.dict['header.confirm'],
-          cancelText: this.state.dict['header.cancel'],
+          okText: this.state.dict['model.confirm'],
+          cancelText: this.state.dict['model.cancel'],
           onOk() {
             return Api.getSystemConfig(param).then(res => {
               if (res.status) {
@@ -366,7 +366,7 @@
     if (this.refs.trawmenu.state.targetKeys.length === 0) {
       notification.warning({
         top: 92,
-        message: this.state.dict['header.menu.thawmenu.select'],
+        message: this.state.dict['form.required.select'] + this.state.dict['model.menu'],
         duration: 5
       })
     } else {
@@ -748,6 +748,7 @@
   }
 
   render () {
+    const { dict } = this.state
     return (
       <div className="third-edit-box">
         {!this.state.tabview ?
@@ -787,14 +788,14 @@
           <Icon type="plus" />
         </div>
         <div className="menu-btn">
-          <Button type="primary" onClick={() => {this.handleSubBtn('thaw')}}>{this.state.dict['header.thawmenu']}</Button>
-          <Button type="primary" onClick={() => {this.handleSubBtn('confirm')}}>{this.state.dict['header.confirm']}</Button>
-          <Button onClick={() => {this.handleSubBtn('close')}}>{this.state.dict['header.close']}</Button>
+          <Button type="primary" onClick={() => {this.handleSubBtn('thaw')}}>{dict['model.thaw'] + dict['model.menu']}</Button>
+          <Button type="primary" onClick={() => {this.handleSubBtn('confirm')}}>{dict['model.confirm']}</Button>
+          <Button onClick={() => {this.handleSubBtn('close')}}>{dict['model.close']}</Button>
         </div>
         {this.state.tabview === 'template' ?
           <div className="editboard">
             <div className="workplace">
-              <Button className="top-btn mk-yellow" onClick={this.exittabview}>{this.state.dict['header.cancel']}</Button>
+              <Button className="top-btn mk-yellow" onClick={this.exittabview}>{dict['model.cancel']}</Button>
               {this.state.tabview === 'template' && <Tabs defaultActiveKey="1">
                 <TabPane tab="绯荤粺妯℃澘" key="1">
                   <Row>
@@ -902,9 +903,9 @@
         <Preview cancel={this.cancelPrePicture} preview={this.state.preview} template={this.state.pretemplate} confirm={this.useTemplate}/>
         {/* 瑙e喕鑿滃崟妯℃�佹 */}
         <Modal
-          title={this.state.dict['header.thawmenu']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={dict['model.thaw'] + dict['model.menu']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.thawMvisible}
           onOk={this.thawMemuSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -916,9 +917,9 @@
         </Modal>
         {/* 娣诲姞绯荤粺鑿滃崟 */}
         <Modal
-          title={this.state.sysMenu && this.state.sysMenu.isSystem ? this.state.dict['header.menu.tadd'] : this.state.dict['header.menu.tupdate']}
-          okText={this.state.dict['header.confirm']}
-          cancelText={this.state.dict['header.cancel']}
+          title={this.state.sysMenu && this.state.sysMenu.isSystem ? dict['model.add'] + dict['model.menu'] : dict['model.update'] + dict['model.menu']}
+          okText={dict['model.confirm']}
+          cancelText={dict['model.cancel']}
           visible={this.state.handleMVisible}
           onOk={this.memuSubmit}
           confirmLoading={this.state.confirmLoading}
@@ -927,7 +928,7 @@
         >
           <MenuForm
             menu={this.state.sysMenu}
-            dict={this.state.dict}
+            dict={dict}
             wrappedComponentRef={(inst) => this.menuFormRef = inst}
           />
         </Modal>
diff --git a/src/templates/modalconfig/index.jsx b/src/templates/modalconfig/index.jsx
index 445e472..37be996 100644
--- a/src/templates/modalconfig/index.jsx
+++ b/src/templates/modalconfig/index.jsx
@@ -165,7 +165,7 @@
         {
           type: 'text',
           key: 'supMenu',
-          label: this.state.dict['header.menu.supMenu'],
+          label: this.state.dict['model.super'] + this.state.dict['model.menu'],
           initVal: _menu.MenuName,
           required: true,
           readonly: true
@@ -697,7 +697,7 @@
     confirm({
       content: `纭畾鍒犻櫎<<${card.label}>>鍚楋紵`,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _config = JSON.parse(JSON.stringify(_this.state.config))
 
@@ -807,7 +807,7 @@
       confirm({
         content: '灏氭湭鎻愪氦锛岀‘瀹氭斁寮冧繚瀛樺悧锛�',
         okText: this.state.dict['model.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           _this.handleViewBack()
         },
@@ -1123,7 +1123,7 @@
     confirm({
       content: `纭畾鍒犻櫎鍒嗙粍<<${group.label}>>鍚楋紵`,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _config = JSON.parse(JSON.stringify(_this.state.config))
         _config.groups = _config.groups.filter(item => !(item.uuid === group.uuid))
@@ -1321,8 +1321,8 @@
           <div className="setting">
             <Card title={this.state.dict['header.menu.form.configurable']} bordered={false} extra={
               <div>
-                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['header.save']}</Button>
-                <Button onClick={this.cancelConfig}>{this.state.dict['header.return']}</Button>
+                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['model.save']}</Button>
+                <Button onClick={this.cancelConfig}>{this.state.dict['model.back']}</Button>
               </div>
             } style={{ width: '100%' }}>
               <Icon type="setting" onClick={this.changeSetting} />
@@ -1373,7 +1373,7 @@
                 <div className="ant-modal-footer">
                   <div>
                     <button type="button" className="ant-btn">
-                      <span>{this.state.dict['header.cancel']}</span>
+                      <span>{this.state.dict['model.cancel']}</span>
                     </button>
                     <button type="button" className="ant-btn ant-btn-primary">
                       <span>{this.state.dict['model.confirm']}</span>
@@ -1411,7 +1411,7 @@
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
           onOk={this.addFieldSubmit}
-          cancelText={this.state.dict['header.close']}
+          cancelText={this.state.dict['model.close']}
           onCancel={() => { this.setState({ tableVisible: false }) }}
           destroyOnClose
         >
@@ -1446,9 +1446,9 @@
           visible={this.state.closeVisible}
           onCancel={() => { this.setState({closeVisible: false}) }}
           footer={[
-            <Button key="save" className="mk-btn mk-green" loading={this.state.closeloading} onClick={this.submitConfig}>{this.state.dict['header.save']}</Button>,
-            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['header.notsave']}</Button>,
-            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['header.cancel']}</Button>
+            <Button key="save" className="mk-btn mk-green" loading={this.state.closeloading} onClick={this.submitConfig}>{this.state.dict['model.save']}</Button>,
+            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['model.notsave']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['model.cancel']}</Button>
           ]}
           destroyOnClose
         >
diff --git a/src/templates/sharecomponent/actioncomponent/index.jsx b/src/templates/sharecomponent/actioncomponent/index.jsx
index 6abe036..d9a0583 100644
--- a/src/templates/sharecomponent/actioncomponent/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/index.jsx
@@ -547,7 +547,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + ` - ${card.label} 锛焋,
       okText: dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _actionlist = fromJS(_this.state.actionlist).toJS()
 
@@ -891,7 +891,7 @@
           footer={[
             hasbtncrtinter ? <CreateInterface key="interface" dict={dict} ref="btnCreatInterface" trigger={this.btnCreatInterface}/> : null,
             card && !card.copyType ? <CreateFunc key="create" dict={dict} ref="btnCreatFunc" trigger={this.creatFunc}/> : null,
-            <Button key="cancel" onClick={this.editModalCancel}>{dict['header.cancel']}</Button>,
+            <Button key="cancel" onClick={this.editModalCancel}>{dict['model.cancel']}</Button>,
             <Button key="confirm" type="primary" loading={copying} onClick={this.handleSubmit}>{dict['model.confirm']}</Button>
           ]}
           destroyOnClose
@@ -914,7 +914,7 @@
           width={'75vw'}
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
-          okText={dict['header.submit']}
+          okText={dict['model.submit']}
           onOk={this.verifySubmit}
           onCancel={() => { this.setState({ profVisible: false }) }}
           destroyOnClose
diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelin/columnform/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelin/columnform/index.jsx
index b1e6c8f..b53af34 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyexcelin/columnform/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyexcelin/columnform/index.jsx
@@ -1,6 +1,6 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-import { Form, Row, Col, Select, Button, Input, InputNumber } from 'antd'
+import { Form, Row, Col, Select, Button, Input, InputNumber, Radio } from 'antd'
 import './index.scss'
 
 
@@ -99,6 +99,7 @@
   }
 
   render() {
+    const { dict } = this.props
     const { getFieldDecorator } = this.props.form
     const formItemLayout = {
       labelCol: {
@@ -117,33 +118,33 @@
       <Form {...formItemLayout} className="verify-form">
         <Row gutter={24}>
           <Col span={7}>
-            <Form.Item label={'Column'}>
+            <Form.Item label={dict['model.form.field']}>
               {getFieldDecorator('Column', {
                 initialValue: '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + 'Column!'
+                    message: dict['form.required.input'] + dict['model.form.field'] + '!'
                   }
                 ]
               })(<Input placeholder="" autoComplete="off" />)}
             </Form.Item>
           </Col>
           <Col span={7}>
-            <Form.Item label={'Text'}>
+            <Form.Item label={dict['model.name']}>
               {getFieldDecorator('Text', {
                 initialValue: '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + 'Text!'
+                    message: this.props.dict['form.required.input'] + dict['model.name'] + '!'
                   }
                 ]
               })(<Input placeholder="" autoComplete="off" />)}
             </Form.Item>
           </Col>
           <Col span={7}>
-            <Form.Item label={'绫诲瀷'}>
+            <Form.Item label={dict['model.form.type']}>
               {getFieldDecorator('type', {
                 initialValue: 'Nvarchar(50)'
               })(
@@ -164,18 +165,18 @@
           </Col>
           <Col span={3} className="add">
             <Button onClick={this.handleConfirm} type="primary" className="mk-green">
-              淇濆瓨
+              {dict['model.save']}
             </Button>
           </Col>
           <Col span={7}>
-            <Form.Item label={'鏄惁蹇呭~'}>
+            <Form.Item label={dict['model.required']}>
               {getFieldDecorator('required', {
                 initialValue: 'true'
               })(
-                <Select disabled={this.state.locked}>
-                  <Select.Option value="false"> 鍚� </Select.Option>
-                  <Select.Option value="true"> 鏄� </Select.Option>
-                </Select>
+                <Radio.Group disabled={this.state.locked}>
+                  <Radio value="true">{dict['model.true']}</Radio>
+                  <Radio value="false">{dict['model.false']}</Radio>
+                </Radio.Group>
               )}
             </Form.Item>
           </Col>
diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx
index 674f7c1..99cb33e 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx
@@ -27,29 +27,29 @@
     systemScripts: [],
     excelColumns: [
       {
-        title: 'Column',
+        title: this.props.dict['model.form.field'],
         dataIndex: 'Column',
         width: '16%',
         editable: true
       },
       {
-        title: 'Text',
+        title: this.props.dict['model.name'],
         dataIndex: 'Text',
         width: '19%',
         editable: true
       },
       {
-        title: '绫诲瀷',
+        title: this.props.dict['model.form.type'],
         dataIndex: 'type',
         width: '12%',
         editable: true
       },
       {
-        title: '鏄惁蹇呭~',
+        title: this.props.dict['model.required'],
         dataIndex: 'required',
         width: '12%',
         editable: true,
-        render: (text, record) => record.required === 'true' ? '鏄�' : '鍚�'
+        render: (text, record) => record.required === 'true' ? this.props.dict['model.true'] : this.props.dict['model.false']
       },
       {
         title: '鏈�灏忓��',
@@ -76,7 +76,7 @@
               <Popconfirm
                 title={this.props.dict['header.form.query.delete']}
                 okText={this.props.dict['model.confirm']}
-                cancelText={this.props.dict['header.cancel']}
+                cancelText={this.props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record, 'columns')
               }>
                 <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -134,7 +134,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'unique')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -199,7 +199,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'scripts')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -570,7 +570,7 @@
             confirm({
               content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氭彁浜ゅ悧锛焋,
               okText: this.props.dict['model.confirm'],
-              cancelText: this.props.dict['header.cancel'],
+              cancelText: this.props.dict['model.cancel'],
               onOk() {
                 resolve(_verify)
               },
diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelout/columnform/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelout/columnform/index.jsx
index 049e657..93ba72a 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyexcelout/columnform/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyexcelout/columnform/index.jsx
@@ -47,6 +47,7 @@
   }
 
   render() {
+    const { dict } = this.props
     const { getFieldDecorator } = this.props.form
     const formItemLayout = {
       labelCol: {
@@ -63,39 +64,39 @@
       <Form {...formItemLayout} className="verify-form">
         <Row gutter={24}>
           <Col span={7}>
-            <Form.Item label={'Column'}>
+            <Form.Item label={dict['model.form.field']}>
               {getFieldDecorator('Column', {
                 initialValue: '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + 'Column!'
+                    message: dict['form.required.input'] + dict['model.form.field'] + '!'
                   }
                 ]
               })(<Input placeholder="" autoComplete="off" />)}
             </Form.Item>
           </Col>
           <Col span={7}>
-            <Form.Item label={'Text'}>
+            <Form.Item label={dict['model.name']}>
               {getFieldDecorator('Text', {
                 initialValue: '',
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + 'Text!'
+                    message: dict['form.required.input'] + dict['model.name'] + '!'
                   }
                 ]
               })(<Input placeholder="" autoComplete="off" />)}
             </Form.Item>
           </Col>
           <Col span={7}>
-            <Form.Item label={'Width'}>
+            <Form.Item label={dict['model.form.columnWidth']}>
               {getFieldDecorator('Width', {
                 initialValue: 20,
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + 'Width!'
+                    message: this.props.dict['form.required.input'] + dict['model.form.columnWidth'] + '!'
                   }
                 ]
               })(<InputNumber min={5} max={200} precision={0} />)}
@@ -106,18 +107,6 @@
               淇濆瓨
             </Button>
           </Col>
-          {/* <Col span={7}>
-            <Form.Item label={'绫诲瀷'}>
-              {getFieldDecorator('type', {
-                initialValue: 'text'
-              })(
-                <Select onChange={this.typeChange}>
-                  <Select.Option value="text"> text </Select.Option>
-                  <Select.Option value="number"> number </Select.Option>
-                </Select>
-              )}
-            </Form.Item>
-          </Col> */}
         </Row>
       </Form>
     )
diff --git a/src/templates/sharecomponent/actioncomponent/verifyexcelout/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyexcelout/index.jsx
index cd33cc4..efe1b65 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyexcelout/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyexcelout/index.jsx
@@ -19,17 +19,17 @@
     verify: {},
     excelColumns: [
       {
-        title: 'Column',
+        title: this.props.dict['model.form.field'],
         dataIndex: 'Column',
         width: '25%'
       },
       {
-        title: 'Text',
+        title: this.props.dict['model.name'],
         dataIndex: 'Text',
         width: '25%'
       },
       {
-        title: 'Width',
+        title: this.props.dict['model.form.columnWidth'],
         dataIndex: 'Width',
         width: '25%'
       },
@@ -46,7 +46,7 @@
               <Popconfirm
                 title={this.props.dict['header.form.query.delete']}
                 okText={this.props.dict['model.confirm']}
-                cancelText={this.props.dict['header.cancel']}
+                cancelText={this.props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record, 'columns')
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
diff --git a/src/templates/sharecomponent/actioncomponent/verifyprint/editable/index.jsx b/src/templates/sharecomponent/actioncomponent/verifyprint/editable/index.jsx
index 881df39..cafd233 100644
--- a/src/templates/sharecomponent/actioncomponent/verifyprint/editable/index.jsx
+++ b/src/templates/sharecomponent/actioncomponent/verifyprint/editable/index.jsx
@@ -119,7 +119,7 @@
               <Popconfirm
                 title={props.dict['header.form.query.delete']}
                 okText={props.dict['model.confirm']}
-                cancelText={props.dict['header.cancel']}
+                cancelText={props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record.key)
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
diff --git a/src/templates/sharecomponent/cardcomponent/index.jsx b/src/templates/sharecomponent/cardcomponent/index.jsx
index 8a5b575..92149c9 100644
--- a/src/templates/sharecomponent/cardcomponent/index.jsx
+++ b/src/templates/sharecomponent/cardcomponent/index.jsx
@@ -278,7 +278,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + ` - ${cell.content} 锛焋,
       okText: dict['model.confirm'],
-      cancelText: dict['header.cancel'],
+      cancelText: dict['model.cancel'],
       onOk() {
         let _details = fromJS(card.details).toJS()
 
@@ -297,7 +297,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + '锛�',
       okText: dict['model.confirm'],
-      cancelText: dict['header.cancel'],
+      cancelText: dict['model.cancel'],
       onOk() {
         let _subelement = fromJS(_this.props.card.subelement).toJS()
         _subelement = _subelement.filter(_type => _type !== type)
diff --git a/src/templates/sharecomponent/chartgroupcomponent/index.jsx b/src/templates/sharecomponent/chartgroupcomponent/index.jsx
index 6a54c84..b1aa66f 100644
--- a/src/templates/sharecomponent/chartgroupcomponent/index.jsx
+++ b/src/templates/sharecomponent/chartgroupcomponent/index.jsx
@@ -197,7 +197,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + ` ${plot.title} 锛焋,
       okText: dict['model.confirm'],
-      cancelText: dict['header.cancel'],
+      cancelText: dict['model.cancel'],
       onOk() {
         let _chartlist = fromJS(_this.state.chartlist).toJS()
         let _chartview = _this.state.chartview
diff --git a/src/templates/sharecomponent/columncomponent/colspanform/index.jsx b/src/templates/sharecomponent/columncomponent/colspanform/index.jsx
index fc5e0c6..2fdbe29 100644
--- a/src/templates/sharecomponent/columncomponent/colspanform/index.jsx
+++ b/src/templates/sharecomponent/columncomponent/colspanform/index.jsx
@@ -77,13 +77,13 @@
       <Form {...formItemLayout} className="commontable-cospan-column-form" id="columncolspan">
         <Row gutter={24}>
           <Col span={12}>
-            <Form.Item label={this.props.dict['model.form.name']}>
+            <Form.Item label={this.props.dict['model.name']}>
               {getFieldDecorator('label', {
                 initialValue: this.props.card.label,
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + this.props.dict['model.form.name'] + '!'
+                    message: this.props.dict['form.required.input'] + this.props.dict['model.name'] + '!'
                   },
                   {
                     max: formRule.input.max,
@@ -94,13 +94,13 @@
             </Form.Item>
           </Col>
           <Col span={12}>
-            <Form.Item label={this.props.dict['header.form.type']}>
+            <Form.Item label={this.props.dict['model.form.type']}>
               {getFieldDecorator('type', {
                 initialValue: this.props.dict['model.form.colspan'],
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + this.props.dict['header.form.type'] + '!'
+                    message: this.props.dict['form.required.input'] + this.props.dict['model.form.type'] + '!'
                   }
                 ]
               })(<Input placeholder="" autoComplete="off" disabled={true}/>)}
@@ -128,13 +128,13 @@
             </Form.Item>
           </Col>
           <Col span={12}>
-            <Form.Item label={this.props.dict['header.form.columnWidth']}>
+            <Form.Item label={this.props.dict['model.form.columnWidth']}>
               {getFieldDecorator('Width', {
                 initialValue: this.props.card.Width,
                 rules: [
                   {
                     required: true,
-                    message: this.props.dict['form.required.input'] + this.props.dict['header.form.columnWidth'] + '!'
+                    message: this.props.dict['form.required.input'] + this.props.dict['model.form.columnWidth'] + '!'
                   }
                 ]
               })(<InputNumber min={1} max={1000} precision={0} />)}
@@ -152,8 +152,8 @@
                 ]
               })(
                 <Radio.Group>
-                  <Radio value="true">{this.props.dict['header.form.true']}</Radio>
-                  <Radio value="false">{this.props.dict['header.form.false']}</Radio>
+                  <Radio value="true">{this.props.dict['model.true']}</Radio>
+                  <Radio value="false">{this.props.dict['model.false']}</Radio>
                 </Radio.Group>
               )}
             </Form.Item>
diff --git a/src/templates/sharecomponent/columncomponent/gridbtnform/index.jsx b/src/templates/sharecomponent/columncomponent/gridbtnform/index.jsx
index 601f01d..7da9b0a 100644
--- a/src/templates/sharecomponent/columncomponent/gridbtnform/index.jsx
+++ b/src/templates/sharecomponent/columncomponent/gridbtnform/index.jsx
@@ -16,7 +16,7 @@
       {
         type: 'text',
         key: 'label',
-        label: this.props.dict['model.form.name'],
+        label: this.props.dict['model.name'],
         initVal: this.props.card.label,
         required: true
       },
@@ -41,7 +41,7 @@
         type: 'number',
         key: 'Width',
         decimal: 0,
-        label: this.props.dict['header.form.columnWidth'],
+        label: this.props.dict['model.form.columnWidth'],
         initVal: this.props.card.Width,
         required: true
       },
diff --git a/src/templates/sharecomponent/columncomponent/index.jsx b/src/templates/sharecomponent/columncomponent/index.jsx
index 6b80c0a..05a8b75 100644
--- a/src/templates/sharecomponent/columncomponent/index.jsx
+++ b/src/templates/sharecomponent/columncomponent/index.jsx
@@ -311,7 +311,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + ` - ${card.label} 锛焋,
       okText: dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _columnlist = fromJS(_this.state.columnlist).toJS()
 
@@ -529,7 +529,7 @@
           width={'75vw'}
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
-          okText={dict['header.submit']}
+          okText={dict['model.submit']}
           onOk={this.markSubmit}
           onCancel={() => { this.setState({ modaltype: '' }) }}
           destroyOnClose
diff --git a/src/templates/sharecomponent/columncomponent/index.scss b/src/templates/sharecomponent/columncomponent/index.scss
index dfdd6dc..42b7878 100644
--- a/src/templates/sharecomponent/columncomponent/index.scss
+++ b/src/templates/sharecomponent/columncomponent/index.scss
@@ -41,6 +41,7 @@
         height: 100%;
         .ant-table-column-sorters {
           padding: 0px 8px 12px;
+          white-space: nowrap;
         }
         .ant-table-column-fields {
           padding: 0px 8px 5px;
diff --git a/src/templates/sharecomponent/columncomponent/markcolumn/index.jsx b/src/templates/sharecomponent/columncomponent/markcolumn/index.jsx
index 52db5a5..9ad2c68 100644
--- a/src/templates/sharecomponent/columncomponent/markcolumn/index.jsx
+++ b/src/templates/sharecomponent/columncomponent/markcolumn/index.jsx
@@ -119,7 +119,7 @@
               <Popconfirm
                 title={this.props.dict['header.form.query.delete']}
                 okText={this.props.dict['model.confirm']}
-                cancelText={this.props.dict['header.cancel']}
+                cancelText={this.props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record)
               }>
                 <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
diff --git a/src/templates/sharecomponent/fieldscomponent/editcard/index.jsx b/src/templates/sharecomponent/fieldscomponent/editcard/index.jsx
index 4be536b..be3460f 100644
--- a/src/templates/sharecomponent/fieldscomponent/editcard/index.jsx
+++ b/src/templates/sharecomponent/fieldscomponent/editcard/index.jsx
@@ -54,7 +54,7 @@
         <div className="base" onClick={this.changeSelect}>
           <Icon type="check" />
           <p title={card.field}>{this.props.dict['model.form.field']}锛� <span>{card.field}</span></p>
-          <p title={card.label}>{this.props.dict['model.form.name']}锛� <span>{card.label}</span></p>
+          <p title={card.label}>{this.props.dict['model.name']}锛� <span>{card.label}</span></p>
         </div>
         {type === 'search' ?
           <Radio.Group onChange={this.changeType} value={card.type} disabled={!card.selected}>
diff --git a/src/templates/sharecomponent/fieldscomponent/index.jsx b/src/templates/sharecomponent/fieldscomponent/index.jsx
index 4ee3e20..07aa9f6 100644
--- a/src/templates/sharecomponent/fieldscomponent/index.jsx
+++ b/src/templates/sharecomponent/fieldscomponent/index.jsx
@@ -239,7 +239,7 @@
           width={'65vw'}
           maskClosable={false}
           style={{minWidth: '900px', maxWidth: '1200px'}}
-          cancelText={dict['header.close']}
+          cancelText={dict['model.close']}
           onOk={this.addFieldSubmit}
           onCancel={() => { // 鍙栨秷娣诲姞
             this.setState({
diff --git a/src/templates/sharecomponent/searchcomponent/index.jsx b/src/templates/sharecomponent/searchcomponent/index.jsx
index b3c1ce7..bcb9015 100644
--- a/src/templates/sharecomponent/searchcomponent/index.jsx
+++ b/src/templates/sharecomponent/searchcomponent/index.jsx
@@ -246,7 +246,7 @@
     confirm({
       content: dict['model.confirm'] + dict['model.delete'] + ` - ${card.label} 锛焋,
       okText: dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         let _searchlist = fromJS(_this.state.searchlist).toJS()
 
diff --git a/src/templates/sharecomponent/searchcomponent/searcheditable/index.jsx b/src/templates/sharecomponent/searchcomponent/searcheditable/index.jsx
index 38e07bd..4a560c4 100644
--- a/src/templates/sharecomponent/searchcomponent/searcheditable/index.jsx
+++ b/src/templates/sharecomponent/searchcomponent/searcheditable/index.jsx
@@ -118,7 +118,7 @@
               <Popconfirm
                 title={props.dict['header.form.query.delete']}
                 okText={props.dict['model.confirm']}
-                cancelText={props.dict['header.cancel']}
+                cancelText={props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record.key)
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
@@ -229,7 +229,7 @@
               <Popconfirm
                 title={this.props.dict['header.form.query.delete']}
                 okText={this.props.dict['model.confirm']}
-                cancelText={this.props.dict['header.cancel']}
+                cancelText={this.props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record.key)
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
diff --git a/src/templates/sharecomponent/searchcomponent/searchform/index.jsx b/src/templates/sharecomponent/searchcomponent/searchform/index.jsx
index c1d7f17..253f6e0 100644
--- a/src/templates/sharecomponent/searchcomponent/searchform/index.jsx
+++ b/src/templates/sharecomponent/searchcomponent/searchform/index.jsx
@@ -162,7 +162,7 @@
         } else if (form.key === 'field' && type === 'text') {
           form.tooltip = this.state.textTooltip
         } else if (form.key === 'field' && type === 'group') {
-          form.label = dict['header.form.type'] + dict['model.form.field']
+          form.label = dict['model.form.type'] + dict['model.form.field']
         }
         form.hidden = !_options.includes(form.key)
         return form
@@ -247,7 +247,7 @@
             if (value === 'text') {
               form.tooltip = this.state.textTooltip
             } else if (value === 'group') {
-              form.label = dict['header.form.type'] + dict['model.form.field']
+              form.label = dict['model.form.type'] + dict['model.form.field']
             }
           }
 
diff --git a/src/templates/sharecomponent/settingcomponent/index.jsx b/src/templates/sharecomponent/settingcomponent/index.jsx
index 8da5a40..bda117b 100644
--- a/src/templates/sharecomponent/settingcomponent/index.jsx
+++ b/src/templates/sharecomponent/settingcomponent/index.jsx
@@ -192,7 +192,7 @@
           footer={[
             <CreateInterface key="interface" dict={dict} ref="tableCreatInterface" trigger={this.tableCreatInterface}/>,
             <CreateFunc key="create" dict={dict} ref="funcCreatComponent" trigger={this.tableCreatFunc}/>,
-            <Button key="cancel" onClick={() => { this.setState({ visible: false }) }}>{this.state.dict['header.cancel']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({ visible: false }) }}>{this.state.dict['model.cancel']}</Button>,
             <Button key="confirm" type="primary" loading={this.state.loading} onClick={this.settingSave}>{this.state.dict['model.confirm']}</Button>
           ]}
           destroyOnClose
diff --git a/src/templates/sharecomponent/settingcomponent/settingform/index.jsx b/src/templates/sharecomponent/settingcomponent/settingform/index.jsx
index 662793f..b8b9762 100644
--- a/src/templates/sharecomponent/settingcomponent/settingform/index.jsx
+++ b/src/templates/sharecomponent/settingcomponent/settingform/index.jsx
@@ -77,7 +77,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record)
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -303,7 +303,7 @@
           confirm({
             content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氭彁浜ゅ悧锛焋,
             okText: this.props.dict['model.confirm'],
-            cancelText: this.props.dict['header.cancel'],
+            cancelText: this.props.dict['model.cancel'],
             onOk() {
               _this.sqlverify(_setting, resolve, reject)
             },
@@ -552,7 +552,7 @@
         confirm({
           content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氬垏鎹㈠悧锛焋,
           okText: this.props.dict['model.confirm'],
-          cancelText: this.props.dict['header.cancel'],
+          cancelText: this.props.dict['model.cancel'],
           onOk() {
             _this.setState({
               view: 'normal'
diff --git a/src/templates/sharecomponent/tabscomponent/index.jsx b/src/templates/sharecomponent/tabscomponent/index.jsx
index feb6bec..901394a 100644
--- a/src/templates/sharecomponent/tabscomponent/index.jsx
+++ b/src/templates/sharecomponent/tabscomponent/index.jsx
@@ -227,7 +227,7 @@
     confirm({
       content: `纭畾鍒犻櫎<<${card.label}>>鍚楋紵`,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         tabgroups = tabgroups.map(_group => {
           if (_group.uuid === group.uuid) {
@@ -268,7 +268,7 @@
     confirm({
       content: `纭畾鏂板缓鏍囩缁勫悧锛焋,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         if (_tabgroups.length === 1) {
           _tabgroups.forEach(group => {
@@ -302,7 +302,7 @@
     confirm({
       content: `纭畾鍒犻櫎鏍囩缁勫悧锛焋,
       okText: this.state.dict['model.confirm'],
-      cancelText: this.state.dict['header.cancel'],
+      cancelText: this.state.dict['model.cancel'],
       onOk() {
         _tabgroups = _tabgroups.filter(_group => _group.uuid !== group.uuid)
 
diff --git a/src/templates/sharecomponent/treesettingcomponent/index.jsx b/src/templates/sharecomponent/treesettingcomponent/index.jsx
index 5ef6025..13283e1 100644
--- a/src/templates/sharecomponent/treesettingcomponent/index.jsx
+++ b/src/templates/sharecomponent/treesettingcomponent/index.jsx
@@ -160,7 +160,7 @@
           footer={[
             <CreateInterface key="interface" dict={dict} ref="tableCreatInterface" trigger={this.tableCreatInterface}/>,
             <CreateFunc key="create" dict={dict} ref="funcCreatComponent" trigger={this.tableCreatFunc}/>,
-            <Button key="cancel" onClick={() => { this.setState({ visible: false }) }}>{this.state.dict['header.cancel']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({ visible: false }) }}>{this.state.dict['model.cancel']}</Button>,
             <Button key="confirm" type="primary" loading={this.state.loading} onClick={this.settingSave}>{this.state.dict['model.confirm']}</Button>
           ]}
           destroyOnClose
diff --git a/src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx b/src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx
index 83f3c0b..97eaa07 100644
--- a/src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx
+++ b/src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx
@@ -74,7 +74,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record)
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -238,7 +238,7 @@
           confirm({
             content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氭彁浜ゅ悧锛焋,
             okText: this.props.dict['model.confirm'],
-            cancelText: this.props.dict['header.cancel'],
+            cancelText: this.props.dict['model.cancel'],
             onOk() {
               _this.sqlverify(_setting, resolve, reject)
             },
@@ -422,7 +422,7 @@
         confirm({
           content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氬垏鎹㈠悧锛焋,
           okText: this.props.dict['model.confirm'],
-          cancelText: this.props.dict['header.cancel'],
+          cancelText: this.props.dict['model.cancel'],
           onOk() {
             _this.setState({
               view: 'normal'
diff --git a/src/templates/subtableconfig/index.jsx b/src/templates/subtableconfig/index.jsx
index 1aeee63..f463ca1 100644
--- a/src/templates/subtableconfig/index.jsx
+++ b/src/templates/subtableconfig/index.jsx
@@ -785,7 +785,7 @@
       confirm({
         content: '鑿滃崟灏氭湭鎻愪氦锛岀‘瀹氭斁寮冧繚瀛樺悧锛�',
         okText: this.state.dict['model.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           _this.handleViewBack()
         },
@@ -1159,8 +1159,8 @@
               <div>
                 <EditComponent dict={this.state.dict} type="subtable" config={this.state.config} thawButtons={this.state.thawButtons} refresh={this.updateConfig}/>
                 <Switch className="big" checkedChildren="鍚�" unCheckedChildren="鍋�" checked={this.state.config.enabled} onChange={this.onEnabledChange} />
-                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['header.save']}</Button>
-                <Button onClick={this.cancelConfig}>{this.state.dict['header.return']}</Button>
+                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['model.save']}</Button>
+                <Button onClick={this.cancelConfig}>{this.state.dict['model.back']}</Button>
               </div>
             } style={{ width: '100%' }}>
               <SettingComponent
@@ -1247,9 +1247,9 @@
           visible={this.state.closeVisible}
           onCancel={() => { this.setState({closeVisible: false}) }}
           footer={[
-            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['header.save']}</Button>,
-            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['header.notsave']}</Button>,
-            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['header.cancel']}</Button>
+            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['model.save']}</Button>,
+            <Button key="confirm" className="mk-btn mk-yellow" onClick={this.handleViewBack}>{this.state.dict['model.notsave']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['model.cancel']}</Button>
           ]}
           destroyOnClose
         >
diff --git a/src/templates/treepageconfig/index.jsx b/src/templates/treepageconfig/index.jsx
index 61dd4a9..a798d84 100644
--- a/src/templates/treepageconfig/index.jsx
+++ b/src/templates/treepageconfig/index.jsx
@@ -539,7 +539,7 @@
       confirm({
         content: '鑿滃崟灏氭湭鎻愪氦锛岀‘瀹氭斁寮冧繚瀛樺悧锛�',
         okText: this.state.dict['model.confirm'],
-        cancelText: this.state.dict['header.cancel'],
+        cancelText: this.state.dict['model.cancel'],
         onOk() {
           _this.props.handleView()
         },
@@ -829,8 +829,8 @@
               <div>
                 <EditComponent dict={this.state.dict} type="TreePage" config={this.state.config} MenuID={this.props.menu.MenuID} refresh={this.editConfig}/>
                 <Switch className="big" checkedChildren="鍚�" unCheckedChildren="鍋�" checked={this.state.config.enabled} onChange={this.onEnabledChange} />
-                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['header.save']}</Button>
-                <Button onClick={this.cancelConfig}>{this.state.dict['header.return']}</Button>
+                <Button type="primary" onClick={this.submitConfig} loading={this.state.menuloading}>{this.state.dict['model.save']}</Button>
+                <Button onClick={this.cancelConfig}>{this.state.dict['model.back']}</Button>
               </div>
             } style={{ width: '100%' }}>
               <Row gutter={16}>
@@ -892,9 +892,9 @@
           visible={this.state.closeVisible}
           onCancel={() => { this.setState({closeVisible: false}) }}
           footer={[
-            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['header.save']}</Button>,
-            <Button key="notsave" className="mk-btn mk-yellow" onClick={this.notsave}>{this.state.dict['header.notsave']}</Button>,
-            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['header.cancel']}</Button>
+            <Button key="save" className="mk-btn mk-green" loading={this.state.menucloseloading} onClick={this.submitConfig}>{this.state.dict['model.save']}</Button>,
+            <Button key="notsave" className="mk-btn mk-yellow" onClick={this.notsave}>{this.state.dict['model.notsave']}</Button>,
+            <Button key="cancel" onClick={() => { this.setState({closeVisible: false}) }}>{this.state.dict['model.cancel']}</Button>
           ]}
           destroyOnClose
         >
diff --git a/src/templates/zshare/createinterface/index.jsx b/src/templates/zshare/createinterface/index.jsx
index 172050a..222a936 100644
--- a/src/templates/zshare/createinterface/index.jsx
+++ b/src/templates/zshare/createinterface/index.jsx
@@ -153,10 +153,10 @@
         required: true,
         options: [{
           value: 'Y',
-          text: this.props.dict['header.form.true']
+          text: this.props.dict['model.true']
         }, {
           value: 'N',
-          text: this.props.dict['header.form.false']
+          text: this.props.dict['model.false']
         }]
       }, {
         type: 'radio',
@@ -166,10 +166,10 @@
         required: true,
         options: [{
           value: 'Y',
-          text: this.props.dict['header.form.true']
+          text: this.props.dict['model.true']
         }, {
           value: 'N',
-          text: this.props.dict['header.form.false']
+          text: this.props.dict['model.false']
         }]
       }]
     })
diff --git a/src/templates/zshare/editcard/index.jsx b/src/templates/zshare/editcard/index.jsx
index 4be536b..be3460f 100644
--- a/src/templates/zshare/editcard/index.jsx
+++ b/src/templates/zshare/editcard/index.jsx
@@ -54,7 +54,7 @@
         <div className="base" onClick={this.changeSelect}>
           <Icon type="check" />
           <p title={card.field}>{this.props.dict['model.form.field']}锛� <span>{card.field}</span></p>
-          <p title={card.label}>{this.props.dict['model.form.name']}锛� <span>{card.label}</span></p>
+          <p title={card.label}>{this.props.dict['model.name']}锛� <span>{card.label}</span></p>
         </div>
         {type === 'search' ?
           <Radio.Group onChange={this.changeType} value={card.type} disabled={!card.selected}>
diff --git a/src/templates/zshare/editcomponent/index.jsx b/src/templates/zshare/editcomponent/index.jsx
index e6cabcd..635dd93 100644
--- a/src/templates/zshare/editcomponent/index.jsx
+++ b/src/templates/zshare/editcomponent/index.jsx
@@ -206,7 +206,7 @@
         <Modal
           title={this.props.dict['header.form.thawbutton']}
           okText={this.props.dict['model.confirm']}
-          cancelText={this.props.dict['header.cancel']}
+          cancelText={this.props.dict['model.cancel']}
           visible={this.state.thawVisible}
           onOk={this.thawBtnSubmit}
           onCancel={() => {this.setState({thawVisible: false, thawbtnlist: null})}}
diff --git a/src/templates/zshare/formconfig.jsx b/src/templates/zshare/formconfig.jsx
index 8219894..1251e4e 100644
--- a/src/templates/zshare/formconfig.jsx
+++ b/src/templates/zshare/formconfig.jsx
@@ -65,8 +65,8 @@
       required: false,
       readonly: false,
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -183,8 +183,8 @@
       readonly: false,
       forbid: type !== 'main',
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -196,8 +196,8 @@
       readonly: false,
       forbid: type !== 'main',
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -220,8 +220,8 @@
       required: false,
       readonly: false,
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -298,8 +298,8 @@
       required: false,
       readonly: false,
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -497,8 +497,8 @@
       required: false,
       readonly: false,
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     },
     {
@@ -509,8 +509,8 @@
       required: false,
       readonly: false,
       options: [
-        { value: 'true', text: Formdict['header.form.true'] },
-        { value: 'false', text: Formdict['header.form.false'] }
+        { value: 'true', text: Formdict['model.true'] },
+        { value: 'false', text: Formdict['model.false'] }
       ]
     }
   ]
@@ -544,7 +544,7 @@
     {
       type: 'text',
       key: 'MenuName',
-      label: Formdict['header.menu.menuName'],
+      label: Formdict['model.menu'] + Formdict['model.name'],
       initVal: menu.MenuName,
       required: true,
       readonly: false
@@ -552,7 +552,7 @@
     {
       type: 'text',
       key: 'MenuNo',
-      label: Formdict['header.menu.menuNo'],
+      label: Formdict['model.menu'] + Formdict['model.param'],
       initVal: menu.MenuNo,
       required: true,
       readonly: false
@@ -560,7 +560,7 @@
     {
       type: 'select',
       key: 'opentype',
-      label: Formdict['header.menu.openType'],
+      label: Formdict['model.openway'],
       initVal: menu.PageParam.OpenType,
       required: true,
       options: [{
@@ -602,7 +602,7 @@
     {
       type: 'text',
       key: 'MenuNo',
-      label: Formdict['header.menu.menuNo'],
+      label: Formdict['model.menu'] + Formdict['model.param'],
       initVal: config.tabNo,
       required: true,
       readonly: false
@@ -628,7 +628,7 @@
     {
       type: 'text',
       key: 'label',
-      label: Formdict['model.form.name'],
+      label: Formdict['model.name'],
       initVal: card.label || '',
       required: true,
       readonly: false
@@ -645,7 +645,7 @@
     {
       type: 'select',
       key: 'type',
-      label: Formdict['header.form.type'],
+      label: Formdict['model.form.type'],
       initVal: card.type,
       required: true,
       options: [{
@@ -713,10 +713,10 @@
       initVal: card.setAll || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -864,10 +864,10 @@
       initVal: card.required || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -904,10 +904,10 @@
       tooltip: '鏁版嵁鏌ヨ鏃讹紝绫诲瀷瀛楁鏄惁浣滀负鍙傛暟浼犻�掞紝绫诲瀷瀛楁瀵瑰簲鍊间负 {"鏃�": "day", "鍛�": "week", "鏈�": "month", "瀛�": "quarter", "骞�": "year", "鑷畾涔�": "customized"}銆�',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     }
   ]
@@ -1114,10 +1114,10 @@
       required: true,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1185,10 +1185,10 @@
       required: true,
       options: [{
         value: 'close',
-        text: Formdict['header.close']
+        text: Formdict['model.close']
       }, {
         value: 'notclose',
-        text: Formdict['header.notclose']
+        text: Formdict['model.notclose']
       }]
     },
     {
@@ -1199,10 +1199,10 @@
       required: true,
       options: [{
         value: 'close',
-        text: Formdict['header.close']
+        text: Formdict['model.close']
       }, {
         value: 'notclose',
-        text: Formdict['header.notclose']
+        text: Formdict['model.notclose']
       }]
     },
     {
@@ -1261,7 +1261,7 @@
     {
       type: 'select',
       key: 'icon',
-      label: Formdict['model.form.icon'],
+      label: Formdict['model.icon'],
       initVal: card.icon,
       required: false,
       options: []
@@ -1289,10 +1289,10 @@
       required: false,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1323,7 +1323,7 @@
     {
       type: 'text',
       key: 'label',
-      label: Formdict['model.form.name'],
+      label: Formdict['model.name'],
       initVal: card.label,
       required: true
     },
@@ -1338,7 +1338,7 @@
     {
       type: 'select',
       key: 'type',
-      label: Formdict['header.form.type'],
+      label: Formdict['model.form.type'],
       initVal: card.type,
       required: true,
       options: [{
@@ -1361,7 +1361,7 @@
     {
       type: 'text',
       key: 'nameField',
-      label: Formdict['model.form.name'] + Formdict['model.form.field'],
+      label: Formdict['model.name'] + Formdict['model.form.field'],
       initVal: card.nameField,
       required: false,
       readonly: false
@@ -1372,7 +1372,7 @@
       min: 1,
       max: 1000,
       decimal: 0,
-      label: Formdict['header.form.columnWidth'],
+      label: Formdict['model.form.columnWidth'],
       initVal: card.Width,
       required: true
     },
@@ -1384,10 +1384,10 @@
       required: true,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1398,10 +1398,10 @@
       required: true,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1412,10 +1412,10 @@
       required: true,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1506,10 +1506,10 @@
       required: false,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1594,10 +1594,10 @@
       required: true,
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -1893,10 +1893,10 @@
       forbid: !['line', 'bar'].includes(card.chartType),
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2027,7 +2027,7 @@
     {
       type: 'text',
       key: 'label',
-      label: Formdict['model.form.name'],
+      label: Formdict['model.name'],
       initVal: card.label,
       required: true,
       readonly: false
@@ -2043,7 +2043,7 @@
     {
       type: 'select',
       key: 'type',
-      label: Formdict['header.form.type'],
+      label: Formdict['model.form.type'],
       initVal: card.type,
       required: true,
       options: [{
@@ -2110,10 +2110,10 @@
       initVal: card.setAll || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2297,10 +2297,10 @@
       initVal: card.readonly || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2310,23 +2310,23 @@
       initVal: card.required || 'true',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
       type: 'radio',
       key: 'hidden',
-      label: Formdict['model.required'],
+      label: Formdict['model.hidden'],
       initVal: card.hidden || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2350,10 +2350,10 @@
       initVal: card.readin || 'true',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     
@@ -2364,10 +2364,10 @@
       initVal: card.encryption || 'false',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2378,10 +2378,10 @@
       tooltip: '鎻愪氦鏃讹紝鏄惁鎴彇棣栧熬鐨勭┖鐧藉瓧绗︺��',
       options: [{
         value: 'true',
-        text: Formdict['header.form.true']
+        text: Formdict['model.true']
       }, {
         value: 'false',
-        text: Formdict['header.form.false']
+        text: Formdict['model.false']
       }]
     },
     {
@@ -2435,7 +2435,7 @@
     {
       type: 'select',
       key: 'icon',
-      label: Formdict['header.menu.icon'],
+      label: Formdict['model.icon'],
       initVal: card.icon || '',
       required: false,
       options: [{
diff --git a/src/templates/zshare/modalform/modaleditable/index.jsx b/src/templates/zshare/modalform/modaleditable/index.jsx
index 561a261..b74b4de 100644
--- a/src/templates/zshare/modalform/modaleditable/index.jsx
+++ b/src/templates/zshare/modalform/modaleditable/index.jsx
@@ -159,7 +159,7 @@
               <Popconfirm
                 title={props.dict['header.form.query.delete']}
                 okText={props.dict['model.confirm']}
-                cancelText={props.dict['header.cancel']}
+                cancelText={props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record.key)
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
@@ -365,7 +365,7 @@
               <Popconfirm
                 title={this.props.dict['header.form.query.delete']}
                 okText={this.props.dict['model.confirm']}
-                cancelText={this.props.dict['header.cancel']}
+                cancelText={this.props.dict['model.cancel']}
                 onConfirm={() => this.handleDelete(record.key)
               }>
                 <span style={{color: '#1890ff', cursor: 'pointer'}}><Icon type="delete" /></span>
diff --git a/src/templates/zshare/verifycard/index.jsx b/src/templates/zshare/verifycard/index.jsx
index 8f9341d..cd0fedf 100644
--- a/src/templates/zshare/verifycard/index.jsx
+++ b/src/templates/zshare/verifycard/index.jsx
@@ -90,7 +90,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'unique')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -136,7 +136,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'unique')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -202,7 +202,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'contrast')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -266,7 +266,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'customverify')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -329,7 +329,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'scripts')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -433,7 +433,7 @@
             <Popconfirm
               title={this.props.dict['header.form.query.delete']}
               okText={this.props.dict['model.confirm']}
-              cancelText={this.props.dict['header.cancel']}
+              cancelText={this.props.dict['model.cancel']}
               onConfirm={() => this.handleDelete(record, 'ordercode')
             }>
               <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -1573,7 +1573,7 @@
         confirm({
           content: `瀛樺湪鏈繚瀛橀」锛岀‘瀹氭彁浜ゅ悧锛焋,
           okText: this.props.dict['model.confirm'],
-          cancelText: this.props.dict['header.cancel'],
+          cancelText: this.props.dict['model.cancel'],
           onOk() {
             resolve(verify)
           },
diff --git a/src/utils/utils.js b/src/utils/utils.js
index 8042fad..80c6139 100644
--- a/src/utils/utils.js
+++ b/src/utils/utils.js
@@ -1171,7 +1171,7 @@
         /* 鍚岀被鏁版嵁楠岃瘉 */
         Set @tbid=''
 
-        Select top 1 @tbid='X' from (select distinct ${item.field},1 as n from ${datasource} inner join (select ID from  dbo.SplitComma(@ID@)) sp on tb.${primaryKey}=sp.ID ) a group by ${item.field} having sum(n)>1
+        Select top 1 @tbid='X' from (select distinct ${item.field},1 as n from ${datasource} inner join (select ID from  dbo.SplitComma(@ID@)) sp on tb.${primaryKey}=sp.ID ) a having sum(n)>1
         
         If @tbid!=''
         Begin

--
Gitblit v1.8.0