package com.unis.base.client;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import com.unis.base.common.vo.DYpxxHisVO;
import com.unis.base.common.vo.DYpxxQueryHisVO;
import com.unis.common.utils.ResponseWrapper;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

/**
 * @author 张琪
 * @date 2019年9月22日 下午3:38:49
 * @description 
 */
@FeignClient(name = "base-server")
@Component
@Api(value = "药剂信息日志",tags = "药剂信息日志")
public interface MedicineInfoHisFeign {
	/**
	 * 分页信息
	 * @param pageNum
	 * @param pageSize
	 * @param dYpxxQueryHisVO
	 * @return
	 */
	@ApiOperation(value = "药剂信息历史记录列表 根据条件【分页查询】",notes = "参数：方案编号/作业单编号")
	@PostMapping(value = "/medicineinfoHisPageList/{pageNum}/{pageSize}")
	public ResponseWrapper getMedicineinfoHisList(@PathVariable(value = "pageNum") Integer pageNum,
			  @PathVariable(value = "pageSize") Integer pageSize,@RequestBody DYpxxQueryHisVO dYpxxQueryHisVO);
	
	/**
	 * @author 张琪
	 * @Description 根据主键ID获取药剂信息历史信息
	 * @return 药剂信息信息
	 */
	@ApiOperation(value = "根据主键编码获取药剂信息历史信息", notes = "参数：主键ID")
	@GetMapping(value = "/medicineinfoHisInfo/{lsId}")
	public ResponseWrapper getMedicineinfoHisInfoByLsId(@PathVariable("lsId")String lsId) ;
	
	/**
	 * @author 张琪
	 * @Description 新增药剂信息信息
	 * @param 药剂信息信息对象 models
	 * @return 新增状态
	 */
	@ApiOperation(value = "新增药剂信息信息", notes = "参数：备案类型【0_未备案，1_待提交，2_待审核，3_已驳回，4_已备案】")
	@PostMapping(value = "/medicineinfoHisInfoSave")
    public ResponseWrapper insert(@RequestBody DYpxxHisVO dYpxxHisVO) ;
}
