| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355 |
- Ext.QuickTips.init();
- Ext.define('erp.controller.fa.fix.assetsCard', {
- extend: 'Ext.app.Controller',
- FormUtil: Ext.create('erp.util.FormUtil'),
- GridUtil: Ext.create('erp.util.GridUtil'),
- BaseUtil: Ext.create('erp.util.BaseUtil'),
- views:[
- 'core.form.Panel','fa.fix.assetsCard','core.toolbar.Toolbar','core.form.MultiField',
- 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.Upload','core.button.ResAudit',
- 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update','core.button.DeleteDetail',
- 'core.button.ResSubmit','core.button.UpdateUseStatus',
- 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.form.YnField','core.form.ColorField','core.button.CopyAll'
- ],
- init:function(){
- var me = this;
- this.control({
- 'erpCopyButton': {
- click: function(btn) {
- this.copy();
- }
- },
- 'field[name=ac_date]': {
- beforerender : function(f) {
- if(Ext.isEmpty(f.value)){
- me.getCurrentMonth(function(end){
- f.setValue(end);
- });
- }
- }
- },
- 'field[name=ac_currency]': {
- beforetrigger: function(field) {
- var t = field.up('form').down('field[name=ac_date]'),
- value = t.getValue();
- if(value) {
- field.findConfig = 'cm_yearmonth=' + Ext.Date.format(value, 'Ym');
- }
- }
- },
- 'field[name=ac_usemonth]': {
- change: function(f){
- Ext.getCmp('ac_useyears').setValue(Ext.Number.toFixed(f.value/12, 8));
- }
- },
- 'field[name=ac_oldvalue]' : {
- change: me.changetaxtotal
- },
- 'field[name=ac_taxrate]' : {
- change: me.changetaxtotal
- },
- 'erpSaveButton': {
- click: function(btn){
- var form = me.getForm(btn), codeField = Ext.getCmp(form.codeField);
- var oldvalue = Ext.getCmp('ac_oldvalue').value;
- var useyear = Ext.getCmp('ac_useyears').value;
- var crate = Ext.getCmp('ac_crate').value;
- var kind = Ext.getCmp('ac_kindid');
- if(codeField.value == null || codeField.value == ''){
- if(kind){
- var res = me.getCode(kind.value);
- if(res != null && res != ''){
- codeField.setValue(res);
- } else {
- me.BaseUtil.getRandomNumber('AssetsCard',10,null);//自动添加编号
- }
- } else {
- me.BaseUtil.getRandomNumber(null,10,null);//自动添加编号
- }
- }
- if(oldvalue == null || oldvalue == '' || oldvalue == '0' || oldvalue == 0){
- showError('原值不能为空或者为零!');
- return;
- }
- if(useyear == null || useyear == '' || useyear == '0' || useyear == 0){
- showError('使用年限不能为空或者为零!');
- return;
- }
- /*if(crate == null || crate == '' || crate == '0' || crate == 0){
- showError('净残值率不能为空或者为零!');
- return;
- }*/
- me.FormUtil.beforeSave(this);
- }
- },
- 'erpDeleteButton' : {
- click: function(btn){
- me.FormUtil.onDelete(Ext.getCmp('ac_id').value);
- }
- },
- 'field[name=ac_kindid]':{
- change: function(f){
- var res = me.getCode(f.value);
- if(res != null && res != ''){
- Ext.getCmp('ac_code').setValue(res);
- }
- }
- },
- 'erpUpdateButton': {
- click: function(btn){
- var oldvalue = Ext.getCmp('ac_oldvalue').value;
- var useyear = Ext.getCmp('ac_useyears').value;
- var crate = Ext.getCmp('ac_crate').value;
- if(oldvalue == null || oldvalue == '' || oldvalue == '0' || oldvalue == 0){
- showError('原值不能为空或者为零!');
- return;
- }
- if(useyear == null || useyear == '' || useyear == '0' || useyear == 0){
- showError('使用年限不能为空或者为零!');
- return;
- }
- me.FormUtil.onUpdate(this);
- }
- },
- 'erpAddButton': {
- click: function(){
- me.FormUtil.onAdd('addAssetsCard', '新增应收发票单', 'jsps/fa/fix/assetsCard.jsp');
- }
- },
- 'erpCloseButton': {
- click: function(btn){
- me.FormUtil.beforeClose(me);
- }
- },
- 'erpSubmitButton': {
- afterrender: function(btn){
- var status = Ext.getCmp('ac_statuscode');
- if(status && status.value != 'ENTERING'){
- btn.hide();
- }
- },
- click: function(btn){
- me.FormUtil.onSubmit(Ext.getCmp('ac_id').value);
- }
- },
- 'erpResSubmitButton': {
- afterrender: function(btn){
- var status = Ext.getCmp('ac_statuscode');
- if(status && status.value != 'COMMITED'){
- btn.hide();
- }
- },
- click: function(btn){
- me.FormUtil.onResSubmit(Ext.getCmp('ac_id').value);
- }
- },
- 'erpAuditButton': {
- afterrender: function(btn){
- var status = Ext.getCmp('ac_statuscode');
- if(status && status.value != 'COMMITED'){
- btn.hide();
- }
- },
- click: function(btn){
- me.FormUtil.onAudit(Ext.getCmp('ac_id').value);
- }
- },
- 'erpResAuditButton': {
- afterrender: function(btn){
- var status = Ext.getCmp('ac_statuscode');
- if(status && status.value != 'AUDITED'){
- btn.hide();
- }
- },
- click: function(btn){
- me.FormUtil.onResAudit(Ext.getCmp('ac_id').value);
- }
- },
- 'erpPrintButton': {
- click: function(btn){
- me.FormUtil.onPrint(Ext.getCmp('ac_id').value);
- }
- },
- 'textfield[name=ac_oldvalue]':{
- change: function(f) {
- var v1 = (Ext.getCmp('ac_taxrate').value || 0),
- v2 = (f.value || 0);
- if(v2 == 0) {
- Ext.getCmp('ac_taxtotal').setValue(0);
- } else {
- Ext.getCmp('ac_taxtotal').setValue(Ext.Number.toFixed(v2*(1+v1/100), 2));
- }
- }
- },
- 'textfield[name=ac_taxrate]':{
- change: function(f) {
- var v1 = (Ext.getCmp('ac_oldvalue').value || 0),
- v2 = (f.value || 0);
- if(v2 == 0) {
- Ext.getCmp('ac_taxtotal').setValue(0);
- } else {
- Ext.getCmp('ac_taxtotal').setValue(Ext.Number.toFixed(v1*(1+v2/100), 2));
- }
- }
- }
- });
- },
- getForm: function(btn){
- return btn.ownerCt.ownerCt;
- },
- /**
- * 复制固定资产卡片
- */
- copy: function(){
- var me = this, win = Ext.getCmp('copyAssetsCard-win');
- if(!win){
- var accode = Ext.getCmp('ac_code'), ackind = Ext.getCmp('ac_kind'), ackindid = Ext.getCmp('ac_kindid'),
- val1 = accode ? accode.value : '', val2 = ackind ? ackind.value : '', val3 = ackindid ? ackindid.value : '';
- win = Ext.create('Ext.Window', {
- id: 'copyAssetsCard-win',
- title: '复制卡片 ' + val1,
- height: 200,
- width: 400,
- items: [{
- xtype: 'form',
- height: '100%',
- width: '100%',
- bodyStyle: 'background:#f1f2f5;',
- items: [{
- margin: '10 0 0 0',
- xtype: 'textfield',
- fieldLabel: '卡片编号',
- name:'ac_newcode',
- allowBlank: false,
- value: val1
- },{
- margin: '10 0 0 0',
- xtype: 'dbfindtrigger',
- fieldLabel: '资产类别',
- name:'ac_newkind',
- allowBlank: false,
- value: val2,
- listeners:{
- aftertrigger:function(t, d){
- t.ownerCt.down('textfield[name=ac_newkindid]').setValue(d.get('ak_id'));
- }
- }
- },{
- margin: '3 0 0 0',
- xtype: 'textfield',
- name:'ac_newkindid',
- fieldLabel: '类型id',
- value: val3,
- allowBlank: false,
- hidden: true,
- readOnly:true
- }],
- closeAction: 'hide',
- buttonAlign: 'center',
- layout: {
- type: 'vbox',
- align: 'center'
- },
- buttons: [{
- text: $I18N.common.button.erpConfirmButton,
- cls: 'x-btn-blue',
- handler: function(btn) {
- var form = btn.ownerCt.ownerCt,
- a = form.down('textfield[name=ac_newcode]'),
- b = form.down('textfield[name=ac_newkindid]');
- if(b){
- var res = me.getCode(b.value);
- if(res != null && res != ''){
- a.setValue(res);
- }
- }
- me.copyAssetsCard(Ext.getCmp('ac_id').value, a.value, b.value);
- }
- }, {
- text: $I18N.common.button.erpCloseButton,
- cls: 'x-btn-blue',
- handler: function(btn) {
- btn.up('window').hide();
- }
- }]
- }]
- });
- }
- win.show();
- },
- copyAssetsCard: function(acid, accode, kindid) {
- var me = this;
- Ext.Ajax.request({
- url: basePath + 'fa/fix/copyAssetsCard.action',
- params: {
- caller: caller,
- id: acid,
- accode: accode,
- kindid: kindid
- },
- callback : function(options,success,response){
- me.FormUtil.getActiveTab().setLoading(false);
- var res = new Ext.decode(response.responseText);
- if(res.success){
- Ext.getCmp('copyAssetsCard-win').hide();
- showMessage('提示', '复制成功!<a href="javascript:openUrl(\'jsps/fa/fix/assetsCard.jsp?formCondition=ac_idIS' +
- + res.assetsCard.ac_id + '\')">\n卡片ID:<' + res.assetsCard.ac_id + '></a>');
- } else {
- showError(res.exceptionInfo);
- }
- }
- });
- },
- changetaxtotal: function(){
- if(Ext.getCmp('ac_taxrate') && Ext.getCmp('ac_oldvalue')) {
- var ac_taxrate = Ext.Number.from(Ext.getCmp('ac_taxrate').getValue(), 0);
- var ac_oldvalue = Ext.Number.from(Ext.getCmp('ac_oldvalue').getValue(), 0);
- if(ac_taxrate != 0){
- if(ac_oldvalue !=0){
- Ext.getCmp('ac_taxtotal').setValue(Ext.Number.toFixed(ac_oldvalue*(1+ac_taxrate/100), 2));
- }
- }
-
- }
- },
- getCurrentMonth : function(callback) {
- var me = this;
- Ext.Ajax.request({
- url : basePath + 'fa/getMonth.action',
- params : {
- type : 'MONTH-F'
- },
- callback : function(opt, s, r) {
- var rs = Ext.decode(r.responseText);
- if (rs.data) {
- me.currentMonth = rs.data.PD_DETNO;
- me.datestart = Ext.Date.format(new Date(rs.data.PD_STARTDATE), 'Ymd');
- me.dateend = Ext.Date.format(new Date(rs.data.PD_ENDDATE), 'Y-m-d');
- callback.call(null, me.dateend);
- }
- }
- });
- },
- getCode: function(kind) {
- var result = null;
- Ext.Ajax.request({
- url : basePath + 'fa/fix/getAssetsCardCodeNum.action',
- async: false,
- params: {
- caller: caller,
- kind: kind
- },
- method : 'post',
- callback : function(opt, s, res){
- var r = new Ext.decode(res.responseText);
- if(r.codes) {
- result = r.codes.code;
- Ext.getCmp('ac_number').setValue(r.codes.number);
- } else {
- showError(res.exceptionInfo);
- }
- }
- });
- return result;
- }
- });
|