/**
* Created by IntelliJ IDEA.
* User: Sartner
* Date: 11-10-12
* Time: 上午11:18
* To change this template use File | Settings | File Templates.
*/
Ext.onReady(function() {
Ext.BLANK_IMAGE_URL = '${pageContext.request.contextPath}/images/default/s.gif';
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
// -------------------- params --------------------
var _baseParams = {};
var _paramPropertyArchivesId = GridInitUtil.getParamByName('propertyArchive_propertyArchivesId_EQUAL_Int');
if (_paramPropertyArchivesId) {
_baseParams['propertyArchive_propertyArchivesId_EQUAL_Int'] = _paramPropertyArchivesId;
}
var _stockNumber_GT_Double = GridInitUtil.getParamByName('stockNumber_GT_Double');
if (_stockNumber_GT_Double) {
_baseParams['stockNumber_GT_Double'] = _stockNumber_GT_Double;
}
var _stockNumber_LT_Double = GridInitUtil.getParamByName('stockNumber_LT_Double');
if (_stockNumber_LT_Double) {
_baseParams['stockNumber_LT_Double'] = _stockNumber_LT_Double;
}
//-----------------------------------------------------
var stockJsonReader = new Ext.data.JsonReader({
idProperty:'stockId',
totalProperty : 'total',
root : 'datas'
}, [
{name:'stock.stockId',mapping:'stockId'},
{name:'stock.propertyArchive.propertyArchivesId',mapping:'propertyArchive_propertyArchivesId'},
{name:'stock.propertyArchive.propertyName',mapping:'propertyArchive_propertyName'},
{name:'stock.stockDate',mapping:'stockDate'},
{name:'stock.stockNumber',mapping:'stockNumber'},
{name:'stock.remainderStockNumber',mapping:'remainderStockNumber'},
{name:'stock.receiverId',mapping:'receiverId'},
{name:'stock.receiverName',mapping:'receiverName'},
{name:'stock.remarks',mapping:'remarks'},
{name:'storeType',mapping:'storeType'},
{name:'stock.contractPrice',mapping:'contractPrice'},
{name:'outStockAmount',mapping:'outStockAmount'},
{name:'stock.propertyButStockId',mapping:'propertyButStockId'}
]);
var stockStore = new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : rootPath + '/stockAction!findAll.hx',
method:'post'
}),
//remoteSort :true,
reader : stockJsonReader
});
stockStore.baseParams=_baseParams;
stockStore.on('load', function(_store, options) {
setOutStockAmountTitle();
});
stockStore.load();
var stockCM = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer,
{
header : '库存记录ID',
dataIndex : 'stock.stockId',
hidden:true
},{
header : '资产档案ID',
dataIndex : 'stock.propertyArchive.propertyArchivesId',
hidden:true
},{
header : '资产名称',
dataIndex : 'stock.propertyArchive.propertyName'
},{
header : '出入库时间',
width:60,
dataIndex : 'stock.stockDate'
},{
header : '合同分项价',
width:60,
hidden:true,
dataIndex : 'stock.contractPrice'
},{
header : '出入库数量',
width:60,
dataIndex : 'stock.stockNumber',
renderer:function(value) {
return Math.abs(value);
}
},{
header : '剩余库存量',
width:60,
dataIndex : 'stock.remainderStockNumber'
},{
header : '出入库人ID',
dataIndex : 'stock.receiverId',
hidden:true
},{
header : '出入库人',
dataIndex : 'stock.receiverName'
},{
header : '备注',
dataIndex : 'stock.remarks',
hidden:true
},{
header : '注明',
width:30,
dataIndex : 'storeType',
hidden:true,
renderer:function(value, metadata, record) {
var stockNum = record.get('stock.stockNumber');
if (stockNum < 0)
return '出库';
else
return '入库';
}
}, {
header : '采购审批ID',
hidden:true,
dataIndex : 'stock.propertyButStockId'
}, {
header : '<span id="outAmountSpan" style="color: red;">出库数量 (总计:0) </span>',
dataIndex : 'outStockAmount',
editor:{
xtype:'numberfield',
minValue:0,
allowNegative :false,
allowDecimals :false
}
}
]);
stock_grid = new Ext.grid.EditorGridPanel({
viewConfig : {
forceFit : true
},
region:'center',
cm:stockCM,
store:stockStore,
clicksToEdit :1,
bbar : new Ext.PagingToolbar({
pageSize : 20,
store : stockStore,
displayInfo : true,
displayMsg : '显示第 {0} 条到第 {1} 条, 共 {2} 条记录 ',
emptyMsg : '没有记录'
})
});
var setOutStockAmountTitle = function() {
outCount = 0;
stockStore.each(function(record) {
var _temp = record.get('outStockAmount');
if (_temp) {
outCount += (record.get('outStockAmount') - 0);
}
});
document.getElementById('outAmountSpan').innerHTML = '出库数量 (总计:' + outCount + ')';
}
stock_grid.on('afteredit', function(e) {
var _value = e.value;
var _editRecord = e.record;
var _remainderStockNumber = _editRecord.get('stock.remainderStockNumber');
if (_value > _remainderStockNumber) {
_value = _remainderStockNumber;
}
_editRecord.set('outStockAmount', _value);
setOutStockAmountTitle();
});
// -------------------- view --------------------
var viewport = new Ext.Viewport({
layout:'border',
items:[stock_grid]
});
})
EditorGrid
最新推荐文章于 2017-10-03 03:28:00 发布