Index: ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryrecordView.js
===================================================================
diff -u -r16972 -r17044
--- ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryrecordView.js (.../inventoryrecordView.js) (revision 16972)
+++ ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryrecordView.js (.../inventoryrecordView.js) (revision 17044)
@@ -34,30 +34,29 @@
});
}
-var itemsStore = new Ext.data.Store({
- proxy : new Ext.data.HttpProxy({
- url : WWWROOT + '/disinfectSystem/inventoryRecordAction!loadInventoryRecordItems.do',
- method : 'POST'
- }),
- reader : new Ext.data.JsonReader({
- root : 'data'
- },[
- {name : 'id'},
- {name : 'disposableGoodsBatchId'},
- {name : 'name'},
- {name : 'amount'},
- {name : 'inventoryAmount'},
- {name : 'batchNumber'},
- {name : 'cost'},
- {name : 'specification'},
- {name : 'supplierName'},
- {name : 'externalCode'},
- {name : 'goodsType'},
- {name : 'expensiveGoodsInfo'}
- ]
- )
-});
+function isChange(v, p, record){
+ var inventoryAmount = record.get("inventoryAmount");
+ if(inventoryAmount != "" && inventoryAmount != v){
+ return "
" + v + "
";
+ }else{
+ return v;
+ }
+}
+var inventoryRecordItem = Ext.data.Record.create([
+ {name : 'id'},
+ {name : 'disposableGoodsBatchId'},
+ {name : 'name'},
+ {name : 'amount'},
+ {name : 'inventoryAmount'},
+ {name : 'batchNumber'},
+ {name : 'cost'},
+ {name : 'specification'},
+ {name : 'supplierName'},
+ {name : 'externalCode'},
+ {name : 'goodsType'}
+]);
+
function showInventoryExpensiveGoods(inventoryItemId,storeRowIndex,isCanEdit,storageDifference){
var rd = new Ext.data.JsonReader({
root : 'data'
@@ -189,13 +188,15 @@
var array = new Array();
var expensiveValidPass = true;
var goodsName = "";
+ var itemsStore = top.Ext.getCmp('inventoryRecordForm').getStore();
for ( var i = 0; i < itemsStore.getCount(); i++) {
var record = itemsStore.getAt(i);
var id = record.get("id");
var amount = record.get("inventoryAmount");
var name = record.get("name");
var specification = record.get("specification");
var batchNumber = record.get("batchNumber");
+ var price = record.get("cost");
if(amount == "" || amount < 0){
continue;
}
@@ -224,6 +225,7 @@
name : name,
specification:specification,
batchNumber:batchNumber,
+ price:price,
expensiveGoodsInfo:expensiveGoodsInfo
};
array.push(obj);
@@ -259,6 +261,7 @@
var isNullAmount = false;
var goodsName = "";
var expensiveValidPass = true;
+ var itemsStore = top.Ext.getCmp('inventoryRecordForm').getStore();
for ( var i = 0; i < itemsStore.getCount(); i++) {
var record = itemsStore.getAt(i);
var id = record.get("id");
@@ -289,12 +292,14 @@
var name = record.get("name");
var specification = record.get("specification");
var batchNumber = record.get("batchNumber");
+ var price = record.get("cost");
var obj = {
itemId : id,
amount : inventoryAmount,
name : name,
specification:specification,
batchNumber:batchNumber,
+ price : price,
expensiveGoodsInfo:expensiveGoodsInfo
};
array.push(obj);
Index: ssts-web/src/main/java/com/forgon/disinfectsystem/inventoryrecord/service/InventoryRecordManagerImpl.java
===================================================================
diff -u -r16984 -r17044
--- ssts-web/src/main/java/com/forgon/disinfectsystem/inventoryrecord/service/InventoryRecordManagerImpl.java (.../InventoryRecordManagerImpl.java) (revision 16984)
+++ ssts-web/src/main/java/com/forgon/disinfectsystem/inventoryrecord/service/InventoryRecordManagerImpl.java (.../InventoryRecordManagerImpl.java) (revision 17044)
@@ -435,9 +435,9 @@
List items = new ArrayList();
String inventoryDepartCoding = AcegiHelper.getLoginUser().getOrgUnitCodingFromSupplyRoomConfig() + ",";
- String sql = "select min(m.externalCode),min(m.name),min(m.specification),sum(s.amount),min(m.cost),m.id,min(m.unit) from MaterialDefinition m "
- + "left join GoodsStock s on m.id = s.materialDefinitionId where m.inventoryDepartCoding like '%" + inventoryDepartCoding + "%' and "
- + "wareHouseId = " + wareHouseId + " group by m.id order by min(m.externalCode) asc";
+ String sql = "select min(m.externalCode),min(m.name),min(m.specification),sum(s.amount),s.price,m.id,min(m.unit),min(m.goodsType) from MaterialDefinition m "
+ + ", GoodsStock s where m.id = s.materialDefinitionId and m.inventoryDepartCoding like '%" + inventoryDepartCoding + "%' and "
+ + "wareHouseId = " + wareHouseId + " and s.amount > 0 group by m.id,s.price order by min(m.externalCode) asc";
ResultSet rs = objectDao.executeSql(sql);
while(rs.next()){
InventoryItem item = new InventoryItem();
@@ -456,6 +456,7 @@
item.setWareHouseId(wareHouseId);
item.setWareHouseName(warehouse.getName());
item.setUnit(rs.getString(7));
+ item.setGoodsType(rs.getString(8));
items.add(item);
}
record.setItems(items);
@@ -620,7 +621,8 @@
JSONObject obj = array.getJSONObject(i);
Long itemId = obj.optLong("itemId");
Integer amount = obj.optInt("amount");
- if(itemId != null && itemId > 0){
+ double price = obj.optDouble("price");
+ if(DatabaseUtil.isPoIdValid(itemId)){
InventoryItem inventoryItem = map.get(itemId);
if(inventoryItem != null){
inventoryItem.setAmount(amount);
@@ -651,39 +653,66 @@
}
}
- }else if(InventoryRecord.TYPE_DISPOSABLEGOOD.equals(record.getType())){
+ }else {
String goodsName = obj.optString("name");
String specification = obj.optString("specification");
- String batchNumber = obj.optString("batchNumber");
- DisposableGoodsBatchStock goodsBatch = diposableGoodBatchStockManager
- .getDisposableGoodsBatchStockByNameAndBatchNumber(
- record.getWareHouseId(), goodsName,
- specification, batchNumber);
- if(goodsBatch != null){
+ if(InventoryRecord.TYPE_DISPOSABLEGOOD.equals(record.getType())){
+ String batchNumber = obj.optString("batchNumber");
+ DisposableGoodsBatchStock goodsBatch = diposableGoodBatchStockManager
+ .getDisposableGoodsBatchStockByNameAndBatchNumber(
+ record.getWareHouseId(), goodsName,
+ specification, batchNumber);
+ if(goodsBatch != null){
+ InventoryItem item = new InventoryItem();
+ item.setBatchID(goodsBatch.getDisposableGoodsBatchId());
+ item.setBatchNumber(goodsBatch.getBatchNumber());
+ item.setDiposableGoodsID(goodsBatch.getDisposableGoodsId());
+ item.setDisposableGoodsBatchId(goodsBatch.getDisposableGoodsBatchId());
+ item.setDisposableGoodsBatchStockId(goodsBatch.getDisposableGoodsBatchStockId());
+ item.setDisposableGoodsId(goodsBatch.getDisposableGoodsId());
+ item.setDisposableGoodsStockId(goodsBatch.getDisposableGoodsStockId());
+ DisposableGoodsStock diposableGoods = goodsBatch.getDiposableGoods();
+ item.setMaterialName(diposableGoods.getName());
+ item.setPrice(price);
+ item.setSpecification(diposableGoods.getSpecification());
+ item.setInventoryRecordId(record.getId());
+ item.setStorage(0);
+ item.setAmount(amount);
+ item.setStorageDifference(amount - item.getStorage());
+ item.setSupplierName(goodsBatch.getSupplierName());
+ item.setWareHouseId(record.getWareHouseId());
+ item.setWareHouseName(record.getWareHouseName());
+ item.setExternalCode(diposableGoods.getExternalCode());
+ item.setExpDate(goodsBatch.getExpDate());
+ items.add(item);
+ }else{
+ throw new RuntimeException(goodsName + "不存在!");
+ }
+ }else{
+ MaterialDefinition md = materialDefinitionManager.getMaterialDefinitionByName(goodsName, specification);
+ if(md == null){
+ String showName = goodsName;
+ if(StringUtils.isNotBlank(specification)){
+ showName += "[" + specification + "]";
+ }
+ throw new RuntimeException(showName + ",定义已不存在!");
+ }
InventoryItem item = new InventoryItem();
- item.setBatchID(goodsBatch.getDisposableGoodsBatchId());
- item.setBatchNumber(goodsBatch.getBatchNumber());
- item.setDiposableGoodsID(goodsBatch.getDisposableGoodsId());
- item.setDisposableGoodsBatchId(goodsBatch.getDisposableGoodsBatchId());
- item.setDisposableGoodsBatchStockId(goodsBatch.getDisposableGoodsBatchStockId());
- item.setDisposableGoodsId(goodsBatch.getDisposableGoodsId());
- item.setDisposableGoodsStockId(goodsBatch.getDisposableGoodsStockId());
- DisposableGoodsStock diposableGoods = goodsBatch.getDiposableGoods();
- item.setMaterialName(diposableGoods.getName());
- item.setPrice(goodsBatch.getCost());
- item.setSpecification(diposableGoods.getSpecification());
+ item.setMaterialName(goodsName);
+ item.setPrice(price);
+ item.setSpecification(StringUtils.isBlank(specification) ? null : specification);
item.setInventoryRecordId(record.getId());
item.setStorage(0);
item.setAmount(amount);
- item.setStorageDifference(amount - item.getStorage());
- item.setSupplierName(goodsBatch.getSupplierName());
+ item.setStorageDifference(amount);
+ item.setSupplierName("");
+ item.setMaterialID(md.getId());
+ item.setExternalCode(md.getExternalCode());
item.setWareHouseId(record.getWareHouseId());
item.setWareHouseName(record.getWareHouseName());
- item.setExternalCode(diposableGoods.getExternalCode());
- item.setExpDate(goodsBatch.getExpDate());
+ item.setUnit(md.getUnit());
+ item.setGoodsType(md.getGoodsType());
items.add(item);
- }else{
- throw new RuntimeException(goodsName+"不存在!");
}
}
}
Index: ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryDisposableGoodsForm.js
===================================================================
diff -u -r16712 -r17044
--- ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryDisposableGoodsForm.js (.../inventoryDisposableGoodsForm.js) (revision 16712)
+++ ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryDisposableGoodsForm.js (.../inventoryDisposableGoodsForm.js) (revision 17044)
@@ -1,33 +1,22 @@
-function isExistItem(name,sp,batchNumber){
+function isExistItem(name,sp,batchNumber,price){
var exist = false;
+ var itemsStore = top.Ext.getCmp('inventoryRecordForm').getStore();
for ( var i = 0; i < itemsStore.getCount(); i++) {
var record = itemsStore.getAt(i);
var s_name = record.get("name");
var s_sp = record.get("specification");
var s_batchNumber = record.get("batchNumber");
- if(s_name == name && s_sp == sp && s_batchNumber == batchNumber){
+ var s_price = record.get("cost");
+ if(s_name == name && s_sp == sp && s_batchNumber == batchNumber && s_price == price){
exist = true;
break;
}
}
return exist;
}
-var inventoryRecordItem = Ext.data.Record.create([
- {name : 'id'},
- {name : 'disposableGoodsBatchId'},
- {name : 'name'},
- {name : 'amount'},
- {name : 'inventoryAmount'},
- {name : 'batchNumber'},
- {name : 'cost'},
- {name : 'specification'},
- {name : 'supplierName'},
- {name : 'externalCode'},
- {name : 'goodsType'}
-]);
-
function addItem(batchId,name,specification,amount,batchNumber,cost,supplierName,externalCode,goodsType){
+ var itemsStore = top.Ext.getCmp('inventoryRecordForm').getStore();
var inventoryItem = new inventoryRecordItem({
id:'',
disposableGoodsBatchId:batchId,
@@ -48,6 +37,30 @@
function getDisposablegoodsInventoryRecord(recordId,time,operator,wareHouseName,status){
var selectModel = new top.Ext.grid.CheckboxSelectionModel();
+ var itemsStore = new Ext.data.Store({
+ proxy : new Ext.data.HttpProxy({
+ url : WWWROOT + '/disinfectSystem/inventoryRecordAction!loadInventoryRecordItems.do',
+ method : 'POST'
+ }),
+ reader : new Ext.data.JsonReader({
+ root : 'data'
+ },[
+ {name : 'id'},
+ {name : 'disposableGoodsBatchId'},
+ {name : 'name'},
+ {name : 'amount'},
+ {name : 'inventoryAmount'},
+ {name : 'batchNumber'},
+ {name : 'cost'},
+ {name : 'specification'},
+ {name : 'supplierName'},
+ {name : 'externalCode'},
+ {name : 'goodsType'},
+ {name : 'expensiveGoodsInfo'}
+ ]
+ )
+ });
+
var disposableGoodsStore = new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : WWWROOT + '/disinfectSystem/diposableGoodsAction!getDiposableGoodsData.do?allItems=yes',
@@ -152,7 +165,7 @@
bodyStyle : 'border:1px solid #afd7af',
frame :false,
sm : selectModel,
- height : 570,
+ height : 490,
viewConfig: {
forceFit:true
},
@@ -164,7 +177,7 @@
{header : "名称",dataIndex : 'name',width : 150,menuDisabled : true},
{header : "规格",dataIndex : 'specification',width : 80,menuDisabled : true},
{header : "批次",width : 50,dataIndex : 'batchNumber',menuDisabled : true},
- {header : "账面数量",dataIndex : 'amount',width : 40,menuDisabled : true},
+ {header : "账面数量",dataIndex : 'amount',width : 40,menuDisabled : true,renderer : isChange},
{header : "盘点数量",dataIndex : 'inventoryAmount',css: 'background: #F0F0F0;',width : 40,menuDisabled : true,
editor : new top.Ext.form.TextField({
regex: /^\d+$/,
@@ -269,22 +282,21 @@
top.Ext.getCmp('cost').setValue(record.data.cost);
top.Ext.getCmp('supplierName').setValue(record.data.supplierName);
top.Ext.getCmp('batchID').setValue(record.data.id);
+ top.Ext.getCmp('price').setValue(record.data.cost);
}
},
anchor : '95%'
},{
text : '数量:'
},{
- xtype : 'textfield',
- maxLength : '16',
+ xtype : 'numberfield',
id : 'amount',
name : 'amount',
allowBlank:true,
- width : 80,
- regex: /^\d+$/,
- regexText:'只能输入数字',
- anchor : '95%',
- tabIndex : 2,
+ width : 60,
+ allowDecimals : false,
+ allowNegative : false,
+ minValue : 1,
listeners : {
render : function(c) {
c.getEl().on('keypress',function(e) {
@@ -295,6 +307,14 @@
}
}
},{
+ text : '单价:'
+ },{
+ xtype : 'numberfield',
+ id : 'price',
+ name : 'price',
+ allowNegative : false,
+ width : 60
+ },{
text : '添加',
iconCls : 'btn_ext_add',
id:'addBtn',
@@ -368,15 +388,17 @@
top.Ext.getCmp('amount').setValue("");
top.Ext.getCmp('batchID').setValue("");
top.Ext.getCmp('cost').setValue("");
+ top.Ext.getCmp('price').setValue("");
top.Ext.getCmp('supplierName').setValue("");
top.Ext.getCmp('externalCode').setValue("");
}
+
function insertIntoGrid(){
var goodsName = top.Ext.getCmp('name').getRawValue();
var batchNumber = top.Ext.getCmp('batchNumber').getValue();
var amount = top.Ext.getCmp('amount').getValue();
var batchId = top.Ext.getCmp('batchID').getValue();
- var cost = top.Ext.getCmp('cost').getValue();
+ var price = top.Ext.getCmp('price').getValue();
var supplierName = top.Ext.getCmp('supplierName').getValue();
var externalCode = top.Ext.getCmp('externalCode').getValue();
var goodsType = top.Ext.getCmp('goodsType').getValue();
@@ -388,15 +410,23 @@
showResult("请选择批次!");
return;
}
+ if(amount == ""){
+ showResult("数量必须大于0!");
+ return;
+ }
+ if(price == ""){
+ showResult("单价不能为空!");
+ return;
+ }
var specification = "";
var _index = goodsName.lastIndexOf('[');
if(_index > 0){
specification = goodsName.substring(_index + 1,goodsName.length-1);
goodsName = goodsName.substring(0,_index);
}
- var isExist = isExistItem(goodsName,specification,batchNumber);
+ var isExist = isExistItem(goodsName,specification,batchNumber,price);
if(!isExist){
- addItem(batchId,goodsName,specification,amount,batchNumber,cost,supplierName,externalCode,goodsType);
+ addItem(batchId,goodsName,specification,amount,batchNumber,price,supplierName,externalCode,goodsType);
cleanSelect();
}else{
showResult(goodsName + ",已存在!");
Index: ssts-web/src/main/webapp/disinfectsystem/materialmanager/materialOutView.js
===================================================================
diff -u -r16984 -r17044
--- ssts-web/src/main/webapp/disinfectsystem/materialmanager/materialOutView.js (.../materialOutView.js) (revision 16984)
+++ ssts-web/src/main/webapp/disinfectsystem/materialmanager/materialOutView.js (.../materialOutView.js) (revision 17044)
@@ -813,7 +813,7 @@
pageSize : 20,
defaultSortField : 'id',
title : entityName + '列表',
- defaultSortDirection : 'ASC',
+ defaultSortDirection : 'DESC',
isCheckboxSelectionModel : false,
rememberSelected : false,
isShowSearchField : true,
Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/materialdefinition/service/MaterialDefinitionManagerImpl.java
===================================================================
diff -u -r16121 -r17044
--- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/materialdefinition/service/MaterialDefinitionManagerImpl.java (.../MaterialDefinitionManagerImpl.java) (revision 16121)
+++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/materialdefinition/service/MaterialDefinitionManagerImpl.java (.../MaterialDefinitionManagerImpl.java) (revision 17044)
@@ -335,6 +335,8 @@
temp.put("spelling", md.getSpelling());
temp.put("cost", md.getCost());
temp.put("storage", md.getStorage());
+ temp.put("externalCode", md.getExternalCode());
+ temp.put("unit", md.getUnit());
temp.put("goodsType", md.getGoodsType());
temp.put("isImplant", StringUtils.isBlank(md.getIsImplant()) ? Constants.STR_NO : md.getIsImplant());
mapList.add(temp);
@@ -358,6 +360,9 @@
temp.put("spelling", diposableGood.getSpelling());
temp.put("cost", diposableGood.getReferencePrice());
temp.put("storage", diposableGood.getAmount());
+ temp.put("externalCode", diposableGood.getExternalCode());
+ temp.put("goodsType", diposableGood.getGoodsType());
+ temp.put("unit", diposableGood.getUnit());
mapList.add(temp);
}
Index: ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryMaterialForm.js
===================================================================
diff -u -r16712 -r17044
--- ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryMaterialForm.js (.../inventoryMaterialForm.js) (revision 16712)
+++ ssts-web/src/main/webapp/disinfectsystem/stocktakerecordmanager/inventoryMaterialForm.js (.../inventoryMaterialForm.js) (revision 17044)
@@ -1,9 +1,113 @@
+function addMaterialToStore(){
+ var goodsName = top.Ext.getCmp('name').getRawValue();
+ var amount = top.Ext.getCmp('amount').getValue();
+ var price = top.Ext.getCmp('price').getValue();
+ if(goodsName == ""){
+ showResult("请选择物品名称!");
+ return;
+ }
+ if(amount == ""){
+ showResult("数量必须大于0!");
+ return;
+ }
+ if(price == ""){
+ showResult("物品价格不能为空!");
+ return;
+ }
+ var specification = "";
+ var _index = goodsName.lastIndexOf('[');
+ var _index2 = goodsName.lastIndexOf(']');
+ if(_index > 0 && _index2 > 0){
+ specification = goodsName.substring(_index + 1,goodsName.length-1);
+ goodsName = goodsName.substring(0,_index);
+ }
+ var itemsStore = top.Ext.getCmp('inventoryRecordForm').getStore();
+ var exist = false;
+ for ( var i = 0; i < itemsStore.getCount(); i++) {
+ var record = itemsStore.getAt(i);
+ var s_name = record.get("name");
+ var s_sp = record.get("specification");
+ var s_cost = record.get("cost");
+ if(s_name == goodsName && s_sp == specification && s_cost == price){
+ exist = true;
+ break;
+ }
+ }
+ if(!exist){
+ var inventoryItem = new inventoryRecordItem({
+ id:'',
+ disposableGoodsBatchId:'',
+ name : goodsName,
+ specification:specification,
+ amount : 0,
+ inventoryAmount : amount,
+ batchNumber : '',
+ cost : price,
+ supplierName : '',
+ externalCode:'',
+ goodsType:''
+ });
+ itemsStore.insert(0 , inventoryItem);
+ top.Ext.getCmp('name').setValue("");
+ top.Ext.getCmp('amount').setValue("");
+ top.Ext.getCmp('price').setValue("");
+ }else{
+ showResult(goodsName + ",已存在!");
+ }
+}
+
+
//材料品盘点记录
function getMaterialInventoryRecord(recordId,time,operator,wareHouseName,status){
var selectModel = new top.Ext.grid.CheckboxSelectionModel();
+ var itemsStore = new Ext.data.Store({
+ proxy : new Ext.data.HttpProxy({
+ url : WWWROOT + '/disinfectSystem/inventoryRecordAction!loadInventoryRecordItems.do',
+ method : 'POST'
+ }),
+ reader : new Ext.data.JsonReader({
+ root : 'data'
+ },[
+ {name : 'id'},
+ {name : 'disposableGoodsBatchId'},
+ {name : 'name'},
+ {name : 'amount'},
+ {name : 'inventoryAmount'},
+ {name : 'batchNumber'},
+ {name : 'cost'},
+ {name : 'specification'},
+ {name : 'supplierName'},
+ {name : 'externalCode'},
+ {name : 'goodsType'},
+ {name : 'expensiveGoodsInfo'}
+ ]
+ )
+ });
+
itemsStore.load({params:{id:recordId}});
+ var materialStore = new Ext.data.Store({
+ proxy : new Ext.data.HttpProxy({
+ url : WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!getMaterialDefinitionData.do',
+ method : 'POST'
+ }),
+ reader : new Ext.data.JsonReader({
+ totalProperty : 'totalCount',
+ root : 'data'
+ }, [
+ {name : 'id',mapping : 'id'},
+ {name : 'spelling',mapping : 'spelling'},
+ {name : 'name',mapping : 'name'},
+ {name : 'cost',mapping : 'cost'},
+ {name : 'referencePrice',mapping : 'referencePrice'},
+ {name : 'goodsType',mapping : 'goodsType'},
+ {name : 'externalCode',mapping : 'externalCode'},
+ {name : 'unit',mapping : 'unit'},
+ {name : 'goodsType',mapping : 'goodsType'}
+ ])
+ });
+
form = new top.Ext.FormPanel({
id : 'godownEntryForm',
frame : true,
@@ -72,7 +176,7 @@
bodyStyle : 'border:1px solid #afd7af',
frame :false,
sm : selectModel,
- height : 570,
+ height : 490,
viewConfig: {
forceFit:true
},
@@ -81,7 +185,7 @@
cm : new top.Ext.grid.ColumnModel([new Ext.grid.RowNumberer({header:'序号',width:40}), selectModel,
{header : "名称",dataIndex : 'name',width : 150,menuDisabled : true},
{header : "规格",dataIndex : 'specification',width : 80,menuDisabled : true},
- {header : "账面数量",dataIndex : 'amount',width : 40,menuDisabled : true},
+ {header : "账面数量",dataIndex : 'amount',width : 40,menuDisabled : true,renderer : isChange},
{header : "盘点数量",dataIndex : 'inventoryAmount',css: 'background: #F0F0F0;',width : 40,menuDisabled : true,
editor : new top.Ext.form.TextField({
regex: /^\d+$/,
@@ -97,6 +201,57 @@
singleSelect : false
}),
tbar : [{
+ text : '名称:'
+ },{
+ xtype : 'combo',
+ id : 'name',
+ name : 'name',
+ queryParam : 'spell',
+ minChars : 0,
+ valueField : 'id',
+ displayField : 'name',
+ store : materialStore,
+ forceSelection : true,
+ lazyInit : false,
+ triggerAction : 'all',
+ hideTrigger : true,
+ typeAhead : false,
+ allowBlank : true,
+ width : 270,
+ tabIndex : 1,
+ selectOnFocus : true,
+ listeners : {
+ select : function(combo, record, index) {
+
+ }
+ }
+ },{
+ text : '数量:'
+ },{
+ xtype : 'numberfield',
+ maxLength : '16',
+ id : 'amount',
+ name : 'amount',
+ width : 80,
+ allowDecimals : false,
+ allowNegative : false,
+ minValue : 1
+ },{
+ text : '单价:'
+ },{
+ xtype : 'numberfield',
+ id : 'price',
+ name : 'price',
+ allowNegative : false,
+ width : 80
+ },{
+ text : '添加',
+ iconCls : 'btn_ext_add',
+ id:'addBtn',
+ handler : function() {
+ addMaterialToStore();
+ }
+ } , '-' , {
text:'盘点数量初始化',
iconCls : 'icon_set',
handler : function() {