Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlanItem.java =================================================================== diff -u --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlanItem.java (revision 0) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlanItem.java (revision 17782) @@ -0,0 +1,110 @@ +package com.forgon.disinfectsystem.entity.toussetransition; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Cache; +import org.hibernate.annotations.CacheConcurrencyStrategy; +/** + * 器械交接计划明细(预回收计划明细) + * @author kzh + * + */ +@Entity +@Table(name = "TousseTransitionPlan") +@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) +public class TousseTransitionPlanItem { + private Long id; + /** + * 预回收单id + */ + private Long TousseTransitionPlanId; + /** + * 申请单明细id + */ + private Long tousseItemId; + /** + * 申请数量 + */ + private Integer amount; + /** + * 加急数量 + */ + private Integer urgentAmount = 0;// 加急数量 + /** + * 加急等级 + */ + private String urgentLevel; + /** + * 预回收数量。在预回收处理后赋值。recycleAmount = scanedAmount + unscanedAmount + */ + private Integer recycleAmount; + /** + * 扫描条码的数量。在预回收处理后赋值。recycleAmount = scanedAmount + unscanedAmount + */ + private Integer scanedAmount; + /** + * 未扫描的数量。手动修改的数量。recycleAmount = scanedAmount + unscanedAmount + */ + private Integer unscanedAmount; + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + public Long getId() { + return id; + } + public void setId(Long id) { + this.id = id; + } + public Long getTousseTransitionPlanId() { + return TousseTransitionPlanId; + } + public void setTousseTransitionPlanId(Long tousseTransitionPlanId) { + TousseTransitionPlanId = tousseTransitionPlanId; + } + public Long getTousseItemId() { + return tousseItemId; + } + public void setTousseItemId(Long tousseItemId) { + this.tousseItemId = tousseItemId; + } + public Integer getAmount() { + return amount; + } + public void setAmount(Integer amount) { + this.amount = amount; + } + public Integer getUrgentAmount() { + return urgentAmount; + } + public void setUrgentAmount(Integer urgentAmount) { + this.urgentAmount = urgentAmount; + } + public String getUrgentLevel() { + return urgentLevel; + } + public void setUrgentLevel(String urgentLevel) { + this.urgentLevel = urgentLevel; + } + public Integer getRecycleAmount() { + return recycleAmount; + } + public void setRecycleAmount(Integer recycleAmount) { + this.recycleAmount = recycleAmount; + } + public Integer getScanedAmount() { + return scanedAmount; + } + public void setScanedAmount(Integer scanedAmount) { + this.scanedAmount = scanedAmount; + } + public Integer getUnscanedAmount() { + return unscanedAmount; + } + public void setUnscanedAmount(Integer unscanedAmount) { + this.unscanedAmount = unscanedAmount; + } + +} Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManagerImpl.java =================================================================== diff -u --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManagerImpl.java (revision 0) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManagerImpl.java (revision 17782) @@ -0,0 +1,36 @@ +package com.forgon.disinfectsystem.toussetransition.service; + +import java.util.List; + +import org.apache.commons.collections4.CollectionUtils; + +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; +import com.forgon.disinfectsystem.entity.tousseitem.TousseItem; +import com.forgon.disinfectsystem.entity.toussetransition.TousseTransitionPlanItem; +import com.forgon.tools.hibernate.BasePoManagerImpl; + +public class TousseTransitionPlanItemManagerImpl extends BasePoManagerImpl + implements TousseTransitionPlanItemManager{ + + @Override + public List save(InvoicePlan invoicePlan,List items, + boolean merge) { + if(invoicePlan == null || CollectionUtils.isEmpty(invoicePlan.getApplicationItems())){ + throw new RuntimeException("生成预回收单的申请单不能为空"); + } + //查询与此申请单关联的预回收单 + for(TousseItem tousseItem : invoicePlan.getApplicationItems()){ + + } + return null; + } + + @Override + public TousseTransitionPlanItem build(Long tousseItemId,Integer amount,Integer urgentAmount) { + TousseTransitionPlanItem item = new TousseTransitionPlanItem(); + item.setAmount(amount); + item.setTousseItemId(tousseItemId); + item.setUrgentAmount(urgentAmount); + return item; + } +} Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlan.java =================================================================== diff -u --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlan.java (revision 0) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionPlan.java (revision 17782) @@ -0,0 +1,114 @@ +package com.forgon.disinfectsystem.entity.toussetransition; + +import java.util.Date; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Cache; +import org.hibernate.annotations.CacheConcurrencyStrategy; + +/** + * 器械交接计划(预回收计划) + * @author kzh + * + */ +@Entity +@Table(name = "TousseTransitionPlan") +@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) +public class TousseTransitionPlan { + public static final String STATUS_WAIT_TRANSITION = "待交接"; + public static final String STATUS_TRANSITED = "已交接"; + private Long id; + /** + * 申请单id + */ + private Long invoicePlanId; + /** + * 使用记录id。目前器械交接会使用到使用记录中使用的条码 + */ + private Long useRecordId; + /** + * 待交接或者已交接 + */ + private String status; + /** + * 申请科室 + */ + private String depart; + /** + * 申请科室条码 + */ + private String departCode; + /** + * 处理科室 + */ + private String handleDepart; + /** + * 处理科室条码 + */ + private String handleDepartCode; + /** + * 创建时间 + */ + private Date createTime; + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + public Long getId() { + return id; + } + public void setId(Long id) { + this.id = id; + } + public Long getInvoicePlanId() { + return invoicePlanId; + } + public void setInvoicePlanId(Long invoicePlanId) { + this.invoicePlanId = invoicePlanId; + } + public Long getUseRecordId() { + return useRecordId; + } + public void setUseRecordId(Long useRecordId) { + this.useRecordId = useRecordId; + } + public String getStatus() { + return status; + } + public void setStatus(String status) { + this.status = status; + } + public String getDepart() { + return depart; + } + public void setDepart(String depart) { + this.depart = depart; + } + public String getDepartCode() { + return departCode; + } + public void setDepartCode(String departCode) { + this.departCode = departCode; + } + public String getHandleDepart() { + return handleDepart; + } + public void setHandleDepart(String handleDepart) { + this.handleDepart = handleDepart; + } + public String getHandleDepartCode() { + return handleDepartCode; + } + public void setHandleDepartCode(String handleDepartCode) { + this.handleDepartCode = handleDepartCode; + } + public Date getCreateTime() { + return createTime; + } + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionRecord.java =================================================================== diff -u -r15407 -r17782 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionRecord.java (.../TousseTransitionRecord.java) (revision 15407) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/toussetransition/TousseTransitionRecord.java (.../TousseTransitionRecord.java) (revision 17782) @@ -25,6 +25,10 @@ */ private Long recyclingApplicationId; /** + * 器械交接计划id + */ + private Long tousseTransitionPlanId; + /** * 交接人编码(不是条码,是登录名),用于唯一确定身份 */ private String handoverCode; @@ -58,6 +62,12 @@ public void setRecyclingApplicationId(Long recyclingApplicationId) { this.recyclingApplicationId = recyclingApplicationId; } + public Long getTousseTransitionPlanId() { + return tousseTransitionPlanId; + } + public void setTousseTransitionPlanId(Long tousseTransitionPlanId) { + this.tousseTransitionPlanId = tousseTransitionPlanId; + } public String getHandoverCode() { return handoverCode; } Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManager.java =================================================================== diff -u --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManager.java (revision 0) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManager.java (revision 17782) @@ -0,0 +1,16 @@ +package com.forgon.disinfectsystem.toussetransition.service; + +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; +import com.forgon.disinfectsystem.entity.toussetransition.TousseTransitionPlan; +import com.forgon.disinfectsystem.entity.useRecord.UseRecord; +import com.forgon.tools.hibernate.BasePoManager; + +public interface TousseTransitionPlanManager extends BasePoManager { + /** + * 保存器械交接计划 + * @param useRecord + * @param invoicePlan + * @param merge + */ + public void save(UseRecord useRecord,InvoicePlan invoicePlan,boolean merge); +} Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManagerImpl.java =================================================================== diff -u --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManagerImpl.java (revision 0) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanManagerImpl.java (revision 17782) @@ -0,0 +1,28 @@ +package com.forgon.disinfectsystem.toussetransition.service; + +import java.util.Date; + +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; +import com.forgon.disinfectsystem.entity.toussetransition.TousseTransitionPlan; +import com.forgon.disinfectsystem.entity.useRecord.UseRecord; +import com.forgon.tools.hibernate.BasePoManagerImpl; + +public class TousseTransitionPlanManagerImpl extends BasePoManagerImpl + implements TousseTransitionPlanManager { + + @Override + public void save(UseRecord useRecord, InvoicePlan invoicePlan, boolean merge) { + // TODO Auto-generated method stub + TousseTransitionPlan tousseTransitionPlan = new TousseTransitionPlan(); + tousseTransitionPlan.setCreateTime(new Date()); + tousseTransitionPlan.setDepart(invoicePlan.getDepart()); + tousseTransitionPlan.setDepartCode(invoicePlan.getDepartCoding()); + tousseTransitionPlan.setHandleDepart(invoicePlan.getHandleDepart()); + tousseTransitionPlan.setHandleDepartCode(invoicePlan.getHandleDepartCoding()); + tousseTransitionPlan.setInvoicePlanId(invoicePlan.getId()); + tousseTransitionPlan.setStatus(TousseTransitionPlan.STATUS_WAIT_TRANSITION); + tousseTransitionPlan.setUseRecordId(useRecord.getId()); + save(tousseTransitionPlan); + } + +} Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManager.java =================================================================== diff -u --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManager.java (revision 0) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/toussetransition/service/TousseTransitionPlanItemManager.java (revision 17782) @@ -0,0 +1,26 @@ +package com.forgon.disinfectsystem.toussetransition.service; + +import java.util.List; + +import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; +import com.forgon.disinfectsystem.entity.toussetransition.TousseTransitionPlanItem; +import com.forgon.tools.hibernate.BasePoManager; + +public interface TousseTransitionPlanItemManager extends BasePoManager { + /** + * 根据申请单及是否合并创建并保存器械交接计划明细 + * @param invoicePlan + * @param items 交接明细项 + * @param merge + */ + public List save(InvoicePlan invoicePlan,List items, + boolean merge); + /** + * 根据申请项信息创建器械交接申请项 + * @param tousseItemId 申请单申请项id + * @param amount 申请数量。为本次转换时的申请数量,不包含合并转换前的数量 + * @param urgentAmount 加急数量。为本次转换时的加急数量,不包含合并转换前的加急数量 + * @return + */ + public TousseTransitionPlanItem build(Long tousseItemId,Integer amount,Integer urgentAmount); +}