| public/components/property/importContract/importContract.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/components/property/importContract/importContract.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/import/批量起草合同模板.xlsx | 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/pages/admin/newContractManage/newContractManage.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/pages/admin/newContractManage/newContractManage.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
public/components/property/importContract/importContract.html
New file @@ -0,0 +1,57 @@ <div id="importContractModel" class="modal fade" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-body"> <h3 class="m-t-none m-b "> <vc:i18n name="ååå¯¼å ¥" namespace="importContract"></vc:i18n> </h3> <div class="ibox-content"> <div class="form-group row"> <label class="col-sm-2 col-form-label"> <span> <vc:i18n name="éæ©æä»¶" namespace="importContract"></vc:i18n> </span> </label> <div class="col-sm-10"> <div class="custom-file"> <input id="excelTemplate" ref="excelTemplate" type="file" class="custom-file-input form-control" name="excelTemplate" v-on:change="getExcelTemplate($event)" accept=".xls,.xlsx"> <label for="excelTemplate" class="custom-file-label"> {{importContractInfo.excelTemplate==''?'å¿ å¡«ï¼è¯·éæ©æ°æ®æä»¶':importContractInfo.excelTemplate.name}} </label> </div> </div> </div> <div class="form-group row"> <label class="col-sm-2 col-form-label"> <span> <vc:i18n name="ä¸è½½æ¨¡æ¿" namespace="importContract"></vc:i18n> </span> </label> <div class="col-sm-10"> 请å ä¸è½½ <!-- <a href="javascript:void(0)" @click="_downloadImportFeeTemplate()" > <vc:i18n name="å¯¼å ¥æ¨¡æ¿" namespace="importContract"></vc:i18n> </a> --> <a href="/import/æ¹éèµ·èå忍¡æ¿.xlsx" target="_blank"> <span><vc:i18n name="å¯¼å ¥æ¨¡æ¿" namespace="importContract"></vc:i18n></span> </a> å夿°æ®åï¼ä¸ä¼ å¯¼å ¥ </div> </div> <div class="ibox-content"> <button class="btn btn-primary float-right" type="button" v-on:click="_importData()"> <i class="fa fa-check"></i> å¯¼å ¥ </button> <button type="button" class="btn btn-warning float-right" style="margin-right:20px;" data-dismiss="modal"> <i class="fa fa-close"></i> åæ¶ </button> </div> </div> </div> </div> </div> </div> public/components/property/importContract/importContract.js
New file @@ -0,0 +1,119 @@ (function (vc) { vc.extends({ data: { importContractInfo: { communityId: vc.getCurrentCommunity().communityId, excelTemplate: '', feeTypeCd: '', feeTypeCds: [], objType: '3333' } }, _initMethod: function() { vc.getDict('pay_fee_config', "fee_type_cd", function(_data) { $that.importContractInfo.feeTypeCds = _data; }); }, _initEvent: function () { vc.on('importContract', 'openimportContractModal', function (_room) { $('#importContractModel').modal('show'); }); }, methods: { importContractValidate() { return vc.validate.validate({ importContractInfo: $that.importContractInfo }, { 'importContractInfo.communityId': [{ limit: "required", param: "", errInfo: "æ°æ®å¼å¸¸è¿æ²¡æå ¥é©»å°åº" }], }); }, _importData: function() { if (!$that.importContractValidate()) { vc.toast(vc.validate.errInfo); return; } // å¯¼å ¥æ°æ® if (!$that.checkFileType($that.importContractInfo.excelTemplate.name.split('.')[1])) { vc.toast('䏿¯ææçExcelæ ¼å¼'); return; } if (!$that.checkFileSize($that.importContractInfo.excelTemplate.size)) { vc.toast('Excelæä»¶å¤§å°ä¸è½è¶ è¿20M'); return; } let param = new FormData(); param.append("uploadFile", $that.importContractInfo.excelTemplate); param.append('communityId', vc.getCurrentCommunity().communityId); param.append('userId', vc.getData('/nav/getUserInfo').userId) param.append('importAdapt', "importContract"); vc.http.upload( 'assetImport', 'importData', param, { emulateJSON: true, //æ·»å 请æ±å¤´ headers: { "Content-Type": "multipart/form-data" } }, function (json, res) { //vm.menus = vm.refreshMenuActive(JSON.parse(json),0); let _json = JSON.parse(json); if (_json.code == 0) { //å ³émodel vc.toast("å¤çæå"); $('#importContractModel').modal('hide'); vc.jumpToPage('/#/pages/property/assetImportLogDetail?logId=' + _json.data.logId + '&logType=importContract'); return; } vc.toast(_json.msg, 10000); }, function (errInfo, error) { console.log('请æ±å¤±è´¥å¤ç'); vc.toast(errInfo, 10000); }); }, clearAddFeeConfigInfo: function() { var _feeTypeCds = $that.importContractInfo.feeTypeCds; $that.importContractInfo = { communityId: vc.getCurrentCommunity().communityId, excelTemplate: '', feeTypeCd: '', feeTypeCds: [], objType: '3333' }; $that.importContractInfo.feeTypeCds = _feeTypeCds; }, _changeFeeTypeCd: function (_feeTypeCd) { }, getExcelTemplate: function (e) { //console.log("getExcelTemplate å¼å§è°ç¨") $that.importContractInfo.excelTemplate = e.target.files[0]; }, checkFileType: function (fileType) { const acceptTypes = ['xlsx']; for (var i = 0; i < acceptTypes.length; i++) { if (fileType === acceptTypes[i]) { return true; } } return false; }, checkFileSize: function (fileSize) { //2M const MAX_SIZE = 20 * 1024 * 1024; if (fileSize > MAX_SIZE) { return false; } return true; } } }); })(window.vc); public/import/ÅúÁ¿Æð²ÝºÏͬģ°å.xlsxBinary files differ
public/pages/admin/newContractManage/newContractManage.html
@@ -54,6 +54,9 @@ <span><vc:i18n name="èµ·èååä¿¡æ¯" namespace="newContractManage"></vc:i18n></span> </h5> <div class="ibox-tools" style="top:10px;"> <button type="button" class="btn btn-primary btn-sm" v-on:click="_openContractImport()"> <i class="fa fa-plus"></i>æ¹éå¯¼å ¥ </button> <button type="button" class="btn btn-primary btn-sm" v-on:click="_openAddContractModal()"> <i class="fa fa-plus"></i>èµ·è </button> @@ -74,6 +77,9 @@ </th> <th class="text-center"> <span><vc:i18n name="ååç±»å" namespace="newContractManage"></vc:i18n></span> </th> <th class="text-center"> <span><vc:i18n name="ååç²æ¹" namespace="newContractManage"></vc:i18n></span> </th> <th class="text-center"> <span><vc:i18n name="ç»å人" namespace="newContractManage"></vc:i18n></span> @@ -103,6 +109,7 @@ {{contract.parentContractCode?contract.parentContractCode:'-'}} </td> <td class="text-center">{{contract.contractTypeName}}</td> <td class="text-center">{{contract.partyA}}</td> <td class="text-center">{{contract.operator}}</td> <td class="text-center">{{contract.amount.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}}</td> <td class="text-center">{{contract.startTime}}</td> @@ -144,4 +151,5 @@ </div> <vc:create path="admin/editContract"></vc:create> <vc:create path="admin/deleteContract"></vc:create> <vc:create path="property/importContract"></vc:create> </div> public/pages/admin/newContractManage/newContractManage.js
@@ -82,6 +82,9 @@ } ); }, _openContractImport: function () { vc.emit('importContract', 'openimportContractModal', {}); }, _openAddContractModal: function () { //vc.emit('addContract', 'openAddContractModal', {}); vc.jumpToPage('/#/pages/admin/addContract')