Index: ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java
===================================================================
diff -u -r24015 -r25130
--- ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java (.../ReturnGoodsRecordTableManager.java) (revision 24015)
+++ ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java (.../ReturnGoodsRecordTableManager.java) (revision 25130)
@@ -9,12 +9,15 @@
import net.sf.json.JSONObject;
import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import com.forgon.component.grid.GridManager;
import com.forgon.databaseadapter.service.DateQueryAdapter;
import com.forgon.directory.acegi.tools.AcegiHelper;
+import com.forgon.disinfectsystem.barcode.service.BarcodeManager;
import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager;
import com.forgon.disinfectsystem.basedatamanager.warehouse.service.WareHouseManager;
+import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoods;
import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition;
import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance;
import com.forgon.disinfectsystem.entity.invoicemanager.Invoice;
@@ -26,6 +29,7 @@
import com.forgon.disinfectsystem.tousse.toussedefinition.service.TousseDefinitionManager;
import com.forgon.search.service.TBarFilterManager;
import com.forgon.tools.hibernate.ObjectDao;
+import com.forgon.tools.json.JSONUtil;
/**
* @author panhaowen
@@ -51,6 +55,9 @@
private WareHouseManager wareHouseManager;
+ @Autowired
+ private BarcodeManager barcodeManager;
+
public void setSupplyRoomConfigManager(
SupplyRoomConfigManager supplyRoomConfigManager) {
this.supplyRoomConfigManager = supplyRoomConfigManager;
@@ -211,4 +218,21 @@
}
return jsonArray.toString();
}
+
+ public String getDisposableGoodsByBarcode(String barcode){
+ JSONObject json = JSONUtil.buildJsonObject(false);
+ Object obj = barcodeManager.getBarcodeEntityByPrefixBarcode(barcode);
+ if(obj == null || !(obj instanceof DisposableGoods)){
+ JSONUtil.addMessage(json, "请扫描一次性物品定义条码!");
+ }else{
+ DisposableGoods disposableGoods = (DisposableGoods)obj;
+ JSONObject disposableGoodsObj = JSONUtil.toJSONObjectWithInclude(disposableGoods, new String[]{"id","name"});
+
+ disposableGoodsObj.put("displayName", disposableGoods.getShowName() + "(库存:0)");
+ JSONUtil.addSuccess(json, true);
+ json.put("disposableGoods", disposableGoodsObj);
+ }
+ return json.toString();
+ }
+
}
Index: ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js
===================================================================
diff -u -r21891 -r25130
--- ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js (.../returnGoodsRecordForm.js) (revision 21891)
+++ ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js (.../returnGoodsRecordForm.js) (revision 25130)
@@ -348,11 +348,32 @@
function getCurrentDepart(){
return top.Ext.getCmp('depart').getValue();
}
+
+function onScanDiposableGoodsBarcode(){
+
+}
function loadReturnDiposableGoodsItem() {
var barcode = top.Ext.getCmp('barcode').getValue();
top.Ext.getCmp("barcode").setValue('');// 清除条码
var depart = getCurrentDepart();
+ if(isUndefinedOrNullOrEmpty(barcode)){
+ showResult("条码不能为空!");
+ return false;
+ }
+
+ if(barcode.substr(0,1) == 'A'){
+ // 扫描固定条码
+ ReturnGoodsRecordTableManager.getDisposableGoodsByBarcode(barcode,function(resultStr){
+ var result = top.Ext4.JSON.decode(resultStr);
+ if(result.success){
+ loadReturnBatchsByDiposableGoodsId(result.disposableGoods);
+ }else{
+ showResult(result.message);
+ }
+ });
+ return;
+ }
//alert(depart)
if(depart == ''){
showResult("必须先填写部门!");
@@ -426,6 +447,39 @@
//设置价格
setPrices(diposableGood.priceAmountList)
}
+// 扫描固定条码
+function loadReturnBatchsByDiposableGoodsId(diposableGoods){
+ var depart = getCurrentDepart();
+ if(depart == ''){
+ showResult("必须先填写部门!");
+ return ;
+ }
+ var warehouseID = top.Ext.getCmp("warehouseID").getValue();
+ if(isUndefinedOrNullOrEmpty(warehouseID)){
+ showResult('请先选择仓库!');
+ return ;
+ }
+
+ loadDiposableGoodsByBarcode = false;
+ top.Ext.getCmp('package1').setValue(diposableGoods.name);
+ // 清空批次价格
+ clearBatchNumberAndPrice();
+
+ ReturnGoodsRecordTableManager.getBatchStocksByStockIDWarehouseDepart(diposableGoods.id,warehouseID,depart,function(batchesStr){
+ var batches = top.Ext4.JSON.decode(batchesStr);
+ if(batches.length > 0){
+ for(var i=0;i 0){
- for(var i=0;i