| | |
| | | |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import com.ld.igds.models.InoutStockChange; |
| | | import com.ld.igds.util.DateUtil; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.commons.lang3.time.DateFormatUtils; |
| | | import org.hibernate.Session; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | |
| | | } |
| | | Session session = this.getSessionFactory().openSession(); |
| | | data.setUpdateTime(new Date()); |
| | | |
| | | try { |
| | | if (null == data.getId()) { |
| | | data.setId(ContextUtil.getUUID()); |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("dateTime", data.getChangeTime()); |
| | | List<InoutVarietyChange> list = queryAll(param); |
| | | int max = 0; |
| | | if (list.size() != 0) { |
| | | int num; |
| | | for (InoutVarietyChange varietyChange : list) { |
| | | num = Integer.parseInt(varietyChange.getId().substring(varietyChange.getId().length() - 3)); |
| | | max = Math.max(max, num); |
| | | } |
| | | } |
| | | String date = DateFormatUtils.format(new Date(), "yyyyMMdd"); |
| | | data.setId(data.getHwdm() + date + String.format("%03d", max + 1)); |
| | | data.setCzbz("i"); |
| | | session.save(data); |
| | | } else { |
| | | data.setCzbz("u"); |
| | | session.update(data); |
| | | } |
| | | } catch (Exception e) { |
| | |
| | | return null; |
| | | } |
| | | |
| | | public List<InoutVarietyChange> queryAll(Map<String, Object> param) { |
| | | |
| | | String hql = "from " + InoutVarietyChange.class.getName() + |
| | | " where 1=1 "; |
| | | Map<String, Object> args = new HashMap<String, Object>(); |
| | | Date date = (Date) param.get("dateTime"); |
| | | if (null != date) { |
| | | hql += " and updateTime >= :startTime and updateTime < :endTime"; |
| | | args.put("startTime", DateUtil.getCurZero(date)); |
| | | args.put("endTime", DateUtil.getNextZero(date)); |
| | | } |
| | | |
| | | hql += " order by updateTime desc"; |
| | | return this.query(hql, args); |
| | | } |
| | | |
| | | } |