ENDRPrint_12CRelease/.svn/pristine/12/120a0b924df9da4bb46b521487683319d105af5f.svn-base
2024-08-14 10:58:03 +07:00

108 lines
5.0 KiB
Plaintext

package th.co.muangthai.endrprint.controller.service;
import org.apache.log4j.Logger;
import org.springframework.beans.BeanUtils;
import th.co.muangthai.endrprint.controller.AbstractMasterController;
import th.co.muangthai.endrprint.model.bean.form.MsgErrorForm;
import th.co.muangthai.endrprint.model.bean.form.master.EndrOperidTabForm;
import th.co.muangthai.endrprint.model.bean.master.MstOperidTabBean;
import java.util.List;
public class ENDR500Service extends AbstractMasterController {
static Logger log = Logger.getLogger(ENDR500Service.class);
/**
* Insert ENDR data to temp and update data
* Save ENDR data to .dat file and transfer text file to server by ftp process
* Delete text file when transfer text file is complete
*
* @return Object[] results
*/
public MsgErrorForm saveOperIdTab(MstOperidTabBean endrOperidTabBean, String saveFlag) {
MsgErrorForm msgErrorForm = new MsgErrorForm();
msgErrorForm.setErrorFlag(getBigDecimal("0"));
msgErrorForm.setErrorDesc("Save successful");
try {
//Insert
if (saveFlag.equals("I")) {
//Check Duplicate Oper Id
EndrOperidTabForm schForm = new EndrOperidTabForm();
schForm.setOperid(endrOperidTabBean.getOperid());
List<EndrOperidTabForm> EndrOperidTabList = commonService.searchMstOperidTabBeanByBean(schForm);
if (EndrOperidTabList != null && EndrOperidTabList.size() > 0) {//new Data is Duplicate
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("ไม่สามารถเพิ่ม Oper ID นี้ได้ เนื่องจากมีในระบบแล้ว");
return msgErrorForm;
}
//Check Duplicate Identifield
schForm = new EndrOperidTabForm();
schForm.setIdentifield(endrOperidTabBean.getIdentifield());
EndrOperidTabList = commonService.searchMstOperidTabBeanByBean(schForm);
if (EndrOperidTabList != null && EndrOperidTabList.size() > 0) {//new Data is Duplicate
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("Identifield นี้มีในระบบแล้ว");
return msgErrorForm;
}
MstOperidTabBean mstOperidTabBean = new MstOperidTabBean();
BeanUtils.copyProperties(endrOperidTabBean, mstOperidTabBean);
boolean insertSuccessful = commonService.insertEndrOperidTab(mstOperidTabBean);
if (!insertSuccessful) {
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("Insert data error");
return msgErrorForm;
}
} else if (saveFlag.equals("E")) {
EndrOperidTabForm schForm = new EndrOperidTabForm();
schForm.setIdentifield(endrOperidTabBean.getIdentifield());
//หา operid จาก Identifield เดิม
List<EndrOperidTabForm> EndrOperidTabList = commonService.searchMstOperidTabBeanByBean(schForm);
MstOperidTabBean oldData = EndrOperidTabList.get(0);//ข้อมูลเดิม
if (!oldData.getOperid().equals(endrOperidTabBean.getOperid())) {//กรณีถูกเปลี่ยน operid ตรวจสอบการซ้ำกันของ Operid
schForm = new EndrOperidTabForm();
schForm.setOperid(endrOperidTabBean.getOperid());
EndrOperidTabList = commonService.searchMstOperidTabBeanByBean(schForm);
if (EndrOperidTabList != null && EndrOperidTabList.size() > 0) {//operid ที่เปลี่ยน มีในระบบแล้ว
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("Oper ID มีในระบบแล้ว");
return msgErrorForm;
}
//remove olddata
commonService.deleteEndrOperidTab(oldData);
}
//save newData
MstOperidTabBean newMstOperidTabData = new MstOperidTabBean();
BeanUtils.copyProperties(endrOperidTabBean, newMstOperidTabData);
boolean insertSuccessful = commonService.insertEndrOperidTab(newMstOperidTabData);
if (!insertSuccessful) {
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("Insert data error");
return msgErrorForm;
}
}
} catch (Exception e) {
msgErrorForm.setErrorFlag(getBigDecimal("1"));
msgErrorForm.setErrorDesc("Data not found ,Invalid team");
log.error(e.toString(), e);
}
return msgErrorForm;
}
}