수입검사 요청기능 추가...
This commit is contained in:
@@ -17,6 +17,7 @@ import com.pms.common.bean.PersonBean;
|
||||
import com.pms.common.service.BaseService;
|
||||
import com.pms.common.utils.CommonUtils;
|
||||
import com.pms.common.utils.Constants;
|
||||
import com.pms.common.JsonUtil;
|
||||
|
||||
@Service
|
||||
public class QualityService extends BaseService{
|
||||
@@ -661,8 +662,60 @@ public class QualityService extends BaseService{
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 수입검사 요청 저장 (검사여부, 요청일, 요청자만 저장)
|
||||
*/
|
||||
public Map saveIncomingInspectionRequest(HttpServletRequest request, Map paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
SqlSession sqlSession = null;
|
||||
try{
|
||||
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||||
|
||||
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||||
String writer = CommonUtils.checkNull(person.getUserId());
|
||||
|
||||
String requestDate = CommonUtils.checkNull(paramMap.get("REQUEST_DATE"));
|
||||
String requestUserId = CommonUtils.checkNull(paramMap.get("REQUEST_USER_ID"));
|
||||
String purchaseOrderMasterObjId = CommonUtils.checkNull(paramMap.get("PURCHASE_ORDER_MASTER_OBJID"));
|
||||
String dataListJson = CommonUtils.checkNull(paramMap.get("dataListJson"));
|
||||
|
||||
// JSON 파싱
|
||||
com.google.gson.Gson gson = new com.google.gson.Gson();
|
||||
java.lang.reflect.Type listType = new com.google.gson.reflect.TypeToken<List<Map<String, String>>>(){}.getType();
|
||||
List<Map<String, String>> dataList = gson.fromJson(dataListJson, listType);
|
||||
|
||||
// 각 행별로 저장 (요청 정보만)
|
||||
for(Map<String, String> data : dataList){
|
||||
Map sqlParamMap = new HashMap();
|
||||
sqlParamMap.put("NEW_OBJID", CommonUtils.createObjId()); // 신규 OBJID 생성
|
||||
sqlParamMap.put("OBJID", data.get("OBJID")); // INVENTORY_MGMT_IN.OBJID
|
||||
sqlParamMap.put("PURCHASE_ORDER_MASTER_OBJID", purchaseOrderMasterObjId);
|
||||
sqlParamMap.put("REQUEST_DATE", requestDate);
|
||||
sqlParamMap.put("REQUEST_USER_ID", requestUserId);
|
||||
sqlParamMap.put("INSPECTION_YN", data.get("INSPECTION_YN"));
|
||||
sqlParamMap.put("WRITER", writer);
|
||||
|
||||
sqlSession.update("quality.saveIncomingInspectionDetail", sqlParamMap);
|
||||
}
|
||||
|
||||
sqlSession.commit();
|
||||
resultMap.put("result", true);
|
||||
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||||
}catch(Exception e){
|
||||
resultMap.put("result", false);
|
||||
resultMap.put("msg", Message.SAVE_FAILED);
|
||||
if(sqlSession != null) sqlSession.rollback();
|
||||
e.printStackTrace();
|
||||
}finally{
|
||||
if(sqlSession != null) sqlSession.close();
|
||||
}
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 수입검사 저장 (그리드 데이터 일괄 저장)
|
||||
* - 요청일/요청자: 각 행별로 개별 저장
|
||||
* - 검사일/검사자: 헤더에서 공통 적용 (진행 팝업에서 사용)
|
||||
*/
|
||||
public Map saveIncomingInspection(HttpServletRequest request, Map paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
@@ -673,6 +726,7 @@ public class QualityService extends BaseService{
|
||||
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||||
String writer = CommonUtils.checkNull(person.getUserId());
|
||||
|
||||
// 헤더에서 가져오는 값 (진행 팝업용)
|
||||
String inspectionDate = CommonUtils.checkNull(paramMap.get("INSPECTION_DATE"));
|
||||
String inspectorId = CommonUtils.checkNull(paramMap.get("INSPECTOR_ID"));
|
||||
String purchaseOrderMasterObjId = CommonUtils.checkNull(paramMap.get("PURCHASE_ORDER_MASTER_OBJID"));
|
||||
@@ -689,8 +743,15 @@ public class QualityService extends BaseService{
|
||||
sqlParamMap.put("NEW_OBJID", CommonUtils.createObjId()); // 신규 OBJID 생성
|
||||
sqlParamMap.put("OBJID", data.get("OBJID")); // INVENTORY_MGMT_IN.OBJID
|
||||
sqlParamMap.put("PURCHASE_ORDER_MASTER_OBJID", purchaseOrderMasterObjId);
|
||||
|
||||
// 검사일/검사자: 헤더 값 사용 (진행 팝업)
|
||||
sqlParamMap.put("INSPECTION_DATE", inspectionDate);
|
||||
sqlParamMap.put("INSPECTOR_ID", inspectorId);
|
||||
|
||||
// 요청일/요청자: 각 행별 개별 값 사용 (요청 팝업)
|
||||
sqlParamMap.put("REQUEST_DATE", data.get("REQUEST_DATE"));
|
||||
sqlParamMap.put("REQUEST_USER_ID", data.get("REQUEST_USER_ID"));
|
||||
|
||||
sqlParamMap.put("INSPECTION_TYPE", data.get("INSPECTION_TYPE"));
|
||||
sqlParamMap.put("INSPECTION_YN", data.get("INSPECTION_YN"));
|
||||
sqlParamMap.put("DEFECT_TYPE", data.get("DEFECT_TYPE"));
|
||||
@@ -1152,4 +1213,117 @@ public class QualityService extends BaseService{
|
||||
|
||||
/*edhwang end*/
|
||||
|
||||
// =====================================================
|
||||
// 수입검사 불량상세 관련
|
||||
// =====================================================
|
||||
|
||||
/**
|
||||
* 불량상세 목록 조회
|
||||
*/
|
||||
public List getIncomingInspectionDefectList(Map paramMap){
|
||||
SqlSession sqlSession = null;
|
||||
List resultList = new ArrayList();
|
||||
|
||||
try{
|
||||
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||||
resultList = sqlSession.selectList("quality.getIncomingInspectionDefectList", paramMap);
|
||||
resultList = CommonUtils.keyChangeUpperList(resultList);
|
||||
}catch(Exception e){
|
||||
e.printStackTrace();
|
||||
}finally{
|
||||
if(sqlSession != null) sqlSession.close();
|
||||
}
|
||||
|
||||
return resultList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 수입검사 진행 저장 (입고품목 + 불량상세)
|
||||
*/
|
||||
public Map saveIncomingInspectionProgress(HttpServletRequest request, Map paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
SqlSession sqlSession = null;
|
||||
|
||||
try{
|
||||
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||||
|
||||
// 작성자 정보 설정
|
||||
PersonBean person = (PersonBean) request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||||
String writer = person != null ? person.getUserId() : "";
|
||||
|
||||
String purchaseOrderMasterObjid = CommonUtils.checkNull(paramMap.get("PURCHASE_ORDER_MASTER_OBJID"));
|
||||
String inspectionDate = CommonUtils.checkNull(paramMap.get("INSPECTION_DATE"));
|
||||
String inspectorId = CommonUtils.checkNull(paramMap.get("INSPECTOR_ID"));
|
||||
|
||||
// 1. 입고품목 데이터 저장 (검사구분 등)
|
||||
String dataListJson = CommonUtils.checkNull(paramMap.get("dataListJson"));
|
||||
if(!dataListJson.isEmpty()) {
|
||||
List<Map<String, Object>> dataList = JsonUtil.JsonToList(dataListJson);
|
||||
|
||||
for(Map data : dataList) {
|
||||
Map sqlParamMap = new HashMap();
|
||||
sqlParamMap.put("NEW_OBJID", CommonUtils.createObjId()); // 신규 OBJID 생성
|
||||
sqlParamMap.put("OBJID", CommonUtils.checkNull(data.get("OBJID"))); // INVENTORY_MGMT_IN.OBJID
|
||||
sqlParamMap.put("PURCHASE_ORDER_MASTER_OBJID", purchaseOrderMasterObjid);
|
||||
sqlParamMap.put("INSPECTION_TYPE", CommonUtils.checkNull(data.get("INSPECTION_TYPE")));
|
||||
sqlParamMap.put("INSPECTION_DATE", inspectionDate);
|
||||
sqlParamMap.put("INSPECTOR_ID", inspectorId);
|
||||
sqlParamMap.put("WRITER", writer);
|
||||
|
||||
sqlSession.update("quality.saveIncomingInspectionDetail", sqlParamMap);
|
||||
}
|
||||
}
|
||||
|
||||
// 2. 불량상세 데이터 저장
|
||||
String defectListJson = CommonUtils.checkNull(paramMap.get("defectListJson"));
|
||||
String selectedDetailObjid = CommonUtils.checkNull(paramMap.get("selectedDetailObjid"));
|
||||
|
||||
if(!defectListJson.isEmpty() && !selectedDetailObjid.isEmpty()) {
|
||||
List<Map<String, Object>> defectList = JsonUtil.JsonToList(defectListJson);
|
||||
|
||||
for(Map defect : defectList) {
|
||||
String gridStatus = CommonUtils.checkNull(defect.get("GRID_STATUS"));
|
||||
|
||||
Map sqlParamMap = new HashMap();
|
||||
sqlParamMap.put("OBJID", CommonUtils.checkNull(defect.get("OBJID")));
|
||||
sqlParamMap.put("INSPECTION_DETAIL_OBJID", selectedDetailObjid);
|
||||
sqlParamMap.put("INSPECTION_TYPE", CommonUtils.checkNull(defect.get("INSPECTION_TYPE")));
|
||||
sqlParamMap.put("INSPECTION_DATE", CommonUtils.checkNull(defect.get("INSPECTION_DATE")));
|
||||
sqlParamMap.put("INSPECTOR_ID", CommonUtils.checkNull(defect.get("INSPECTOR_ID")));
|
||||
sqlParamMap.put("DEFECT_TYPE", CommonUtils.checkNull(defect.get("DEFECT_TYPE")));
|
||||
sqlParamMap.put("DEFECT_REASON", CommonUtils.checkNull(defect.get("DEFECT_REASON")));
|
||||
sqlParamMap.put("ACTION_STATUS", CommonUtils.checkNull(defect.get("ACTION_STATUS")));
|
||||
sqlParamMap.put("ACTION_RESULT", CommonUtils.checkNull(defect.get("ACTION_RESULT")));
|
||||
sqlParamMap.put("INSPECTION_QTY", CommonUtils.checkNull(defect.get("INSPECTION_QTY")));
|
||||
sqlParamMap.put("DEFECT_QTY", CommonUtils.checkNull(defect.get("DEFECT_QTY")));
|
||||
sqlParamMap.put("INSPECTION_RESULT", CommonUtils.checkNull(defect.get("INSPECTION_RESULT")));
|
||||
sqlParamMap.put("REMARK", CommonUtils.checkNull(defect.get("REMARK")));
|
||||
sqlParamMap.put("WRITER", writer);
|
||||
|
||||
if("D".equals(gridStatus)) {
|
||||
// 삭제
|
||||
sqlSession.delete("quality.deleteIncomingInspectionDefect", sqlParamMap);
|
||||
} else {
|
||||
// 신규/수정
|
||||
sqlSession.insert("quality.saveIncomingInspectionDefect", sqlParamMap);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sqlSession.commit();
|
||||
resultMap.put("result", true);
|
||||
resultMap.put("msg", "저장되었습니다.");
|
||||
|
||||
}catch(Exception e){
|
||||
if(sqlSession != null) sqlSession.rollback();
|
||||
resultMap.put("result", false);
|
||||
resultMap.put("msg", e.getMessage());
|
||||
e.printStackTrace();
|
||||
}finally{
|
||||
if(sqlSession != null) sqlSession.close();
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user