Index: ssts-web/src/main/webapp/systemmanage/system/disposableGoodsStockCheck.jsp
===================================================================
diff -u -r29409 -r29451
--- ssts-web/src/main/webapp/systemmanage/system/disposableGoodsStockCheck.jsp (.../disposableGoodsStockCheck.jsp) (revision 29409)
+++ ssts-web/src/main/webapp/systemmanage/system/disposableGoodsStockCheck.jsp (.../disposableGoodsStockCheck.jsp) (revision 29451)
@@ -71,6 +71,7 @@
$('#disposableGoodsAmount').text(result.disposableGoodsAmount);
$('#disposableGoodsBatchAmount').text(result.disposableGoodsBatchAmount);
$('#disposableGoodsIdentificationAmount').text(result.disposableGoodsIdentificationAmount);
+ $('#disposableGoodsIds').text(result.type2DisposableGoodsIds);
var typeAmount = result.typeAmount || 0;
var type1Amount = result.type1Amount || 0;
var type2Amount = result.type2Amount || 0;
@@ -88,6 +89,22 @@
}
})
});
+
+ function modifyClick() {
+ var disposableGoodsIds = $('#disposableGoodsIds').html();
+ $.ajax({
+ url: WWWROOT + '/disinfectSystem/DisposableGoodsStockExaminationAction!modifyDisposableGoodsStock.do',
+ data: { disposableGoodsIds: disposableGoodsIds},
+ type: "post",
+ dataType: "json",
+ success: function (result) {
+ alert(result.message);
+ },
+ error: function (msg) {
+ alert("ajax连接异常:" + msg);
+ }
+ });
+ }
@@ -101,6 +118,8 @@
1.一次性物品标识号的数据引用错误
2.批次库存的数量不等于属于该批次的所有标识号的库存数量总和
3.一次性物品库存的数量不等于属于该一次性物品的所有批次的库存数量总和
+
+
Index: ssts-web/src/main/java/com/forgon/disinfectsystem/systemexamination/action/DisposableGoodsStockExaminationAction.java
===================================================================
diff -u -r29391 -r29451
--- ssts-web/src/main/java/com/forgon/disinfectsystem/systemexamination/action/DisposableGoodsStockExaminationAction.java (.../DisposableGoodsStockExaminationAction.java) (revision 29391)
+++ ssts-web/src/main/java/com/forgon/disinfectsystem/systemexamination/action/DisposableGoodsStockExaminationAction.java (.../DisposableGoodsStockExaminationAction.java) (revision 29451)
@@ -1,5 +1,6 @@
package com.forgon.disinfectsystem.systemexamination.action;
+import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
@@ -23,10 +24,18 @@
import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsBatchStock;
import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsIdentification;
import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsStock;
+import com.forgon.disinfectsystem.entity.assestmanagement.GodownEntry;
+import com.forgon.disinfectsystem.entity.assestmanagement.GodownEntryItem;
+import com.forgon.disinfectsystem.entity.invoicemanager.DiposableGoodsItem;
+import com.forgon.tools.StrutsParamUtils;
import com.forgon.tools.StrutsResponseUtils;
+import com.forgon.tools.db.DatabaseUtil;
import com.forgon.tools.hibernate.ObjectDao;
import com.forgon.tools.json.JSONUtil;
+import com.forgon.tools.util.SqlUtils;
+import edu.emory.mathcs.backport.java.util.Arrays;
+
/**
* 一次性物品库存、批次库存以及标识号的数据体检功能
* @author ZhouPeiMian
@@ -86,8 +95,11 @@
int type2Amount = 0;
int type3Amount = 0;
+ List type2DisposableGoodsIdList = new ArrayList();
+ List type3DisposableGoodsIdList = new ArrayList();
+
//一次性物品定义
- String disposableGoodsHql = String.format(" po.goodsType = '%s' order by po.sequence ", DisposableGoods.TYPE_DIPOSABLEGOODS);
+ String disposableGoodsHql = String.format(" po.goodsType <> '%s' order by po.sequence ", DisposableGoods.TYPE_EXPENSIVEDIPOSABLEGOODS);
List disposableGoodsList = diposableGoodsManager.getByHql(disposableGoodsHql);
if(CollectionUtils.isNotEmpty(disposableGoodsList)){
disposableGoodsAmount = disposableGoodsList.size();
@@ -192,10 +204,12 @@
String type = DisposableGoodsStockExaminationAction.NORMAL;
List disposableGoodsStockList1 = disposableGoodsIdToStockMap.get(disposableGoods.getId());
type = checkDisposableGoodsStock(disposableGoodsStockList1, disposableGoodsStockIdToBatchStockMap, disposableGoodsBatchStockIdToIDMap);
- if(StringUtils.equals(type, STOCKNOTEQUALBATCHSTOCK)){
+ if(StringUtils.equals(type, BATCHSTOCKNOTEQUALIDSTOCK)){
type2Amount++;
- }else if(StringUtils.equals(type, BATCHSTOCKNOTEQUALIDSTOCK)){
+ type2DisposableGoodsIdList.add(disposableGoods.getId());
+ }else if(StringUtils.equals(type, STOCKNOTEQUALBATCHSTOCK)){
type3Amount++;
+ type3DisposableGoodsIdList.add(disposableGoods.getId());
}
JSONObject json = bulidDisposableGoodsJson(disposableGoods, disposableGoodsStockList1, type, disposableGoodsStockIdToBatchStockMap, disposableGoodsBatchStockIdToIDMap);
if(json != null){
@@ -213,10 +227,225 @@
result.put("type2Amount", type2Amount);
result.put("type3Amount", type3Amount);
result.put("typeAmount", type1Amount+type2Amount+type3Amount);
+ result.put("type2DisposableGoodsIds", type2DisposableGoodsIdList.addAll(type3DisposableGoodsIdList));
+ result.put("type3DisposableGoodsIds", type3DisposableGoodsIdList);
StrutsResponseUtils.output(result);
}
+
+ @SuppressWarnings("unchecked")
+ public void modifyDisposableGoodsStock(){
+ String disposableGoodsIds = StrutsParamUtils.getPraramValue("disposableGoodsIds", "");
+ JSONObject result = JSONUtil.buildJsonObject(true, "修改成功");
+ if(StringUtils.isNotBlank(disposableGoodsIds)){
+ List disposableGoodsIdList = Arrays.asList(disposableGoodsIds.split(","));
+ // 查找一次性物品批次库存及一次性物品标识号
+ String sql = String.format("select po, r from %s po left join po.identifications r where %s order by r.entryDate ", DisposableGoodsBatchStock.class.getSimpleName(),
+ SqlUtils.getNonStringFieldInLargeCollectionsPredicate("po.disposableGoodsId", disposableGoodsIdList));
+ List