从商店获取日期并与今天的日期进行比较

时间:2016-04-08 10:30:22

标签: javascript extjs

我在sencha有一个商店,在商店我有2个日期字段,start_date和end_date,我想从我的商店获取这些数据,并将它与当天比较,然后如果商店的end_date与今天匹配日期,我需要输出一个ext.toast消息,显示相应的数据。这是基于许可证及其开始和结束日期。

我只需要知道如何设置它,最终我想在启动功能中使用它,所以它在首次启动时启动

这是我的商店

    Ext.define('ClientInfo.store.LicenseAllStore', {
    extend: 'Ext.data.Store',

    requires: [
        'ClientInfo.model.LicenseAllModel',
        'Ext.data.proxy.Ajax',
        'Ext.data.reader.Json'
    ],

    constructor: function(cfg) {
        var me = this;
        cfg = cfg || {};
        me.callParent([Ext.apply({
            storeId: 'LicenseAllStore',
            autoLoad: true,
            model: 'ClientInfo.model.LicenseAllModel',
            proxy: {
                type: 'ajax',
                extraParams: {
                    class: 'LicenseAll',
                    method: 'get'
                },
                url: 'system/index.php',
                reader: {
                    type: 'json',
                    rootProperty: 'topics'
                }
            }
        }, cfg)]);
    }
});

这是我的模特

    Ext.define('ClientInfo.model.LicenseAllModel', {
    extend: 'Ext.data.Model',

    requires: [
        'Ext.data.field.Field'
    ],

    fields: [
        {
            name: 'license_id'
        },
        {
            name: 'license_number'
        },
        {
            name: 'start_date'
        },
        {
            name: 'end_date'
        },
        {
            name: 'duration'
        },
        {
            name: 'expiry_date'
        },
        {
            name: 'product_id'
        },
        {
            name: 'product_name'
        },
        {
            name: 'version'
        },
        {
            name: 'company_id'
        },
        {
            name: 'name'
        },
        {
            name: 'physical_address'
        },
        {
            name: 'postal_address'
        },
        {
            name: 'people_id'
        },
        {
            name: 'firstname'
        },
        {
            name: 'lastname'
        },
        {
            name: 'occupation'
        },
        {
            name: 'office_number'
        },
        {
            name: 'cell_number'
        },
        {
            name: 'email'
        },
        {
            name: 'harware_id'
        },
        {
            name: 'server_url'
        },
        {
            name: 'ip_address'
        },
        {
            name: 'mac_address'
        },
        {
            name: 'os_id'
        },
        {
            name: 'os_name'
        },
        {
            name: 'os_version'
        },
        {
            name: 'os_build'
        }
    ]
});

到目前为止,我在启动功能

中有这个
var start = Ext.getCmp('overviewGrid').store.data.start_date;
var end = Ext.getCmp('overviewGrid').store.data.end_date;
var today = new Date();
if(end.setHours(0,0,0,0) == today.setHours(0,0,0,0));
{
   Ext.toast({
    html: 'Expiring Licenses',
    title: 'Licenses',
    width: 200,
    align: 't',
    autoClose: false
});
}

1 个答案:

答案 0 :(得分:1)

(function() {
function toJSONString( form ) {
var obj = {};
var elements = form.querySelectorAll( "input, select, textarea" );
for( var i = 0; i < elements.length; ++i ) {
  var element = elements[i];
  var name = element.name;
  var value = element.value;

  if( name ) {
    obj[ name ] = value;
  }
}

return JSON.stringify( obj );
}

document.addEventListener( "DOMContentLoaded", function() {
var form = document.getElementById( "test" );
var output = document.getElementById( "output" );
form.addEventListener( "submit", function( e ) {
  e.preventDefault();
  var json = toJSONString( this );
  output.innerHTML = json;

}, false);

});

})();