8/9 药品管理字段优化,生成单据的时候设置产品类型,响应字段,带票出入库根据订单号分组过滤

workplace
wangwei 11 months ago
parent 7e021afe6e
commit 95cd6628f5

@ -339,6 +339,13 @@ public class IoOrderController extends BaseController {
orderEntity.setDeptCode(addOrderRequest.getDeptCode());
orderEntity.setBillNo(addOrderRequest.getBillNo());
orderEntity.setInvCode(addOrderRequest.getInvCode());
if (addOrderRequest.getProductType() == null){
//器械单据
orderEntity.setProductType(1);
}else {
//药品单据
orderEntity.setProductType(addOrderRequest.getProductType());
}
orderService.updateByBillNo(orderEntity);
IoCodeTempEntity warehouseEntity = new IoCodeTempEntity();
warehouseEntity.setOrderId(orderEntity.getBillNo());
@ -952,12 +959,15 @@ public class IoOrderController extends BaseController {
* @return
*/
@GetMapping("udiwms/inout/order/filterOrderTrace")
public BaseResponse filterOrderTrace(String billNo) {
public BaseResponse filterOrderTrace(String billNo,Integer productType) {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
if (productType == null){
productType = 1;
}
//只用于单据维护 加了状态判断了
List<IoOrderEntity> list = orderService.filterOrderTrace(billNo);
List<IoOrderEntity> list = orderService.filterOrderTrace(billNo,productType);
List<IoOrderResponse> responses = orderService.findResponse(list);
return ResultVOUtils.success(responses);
}

@ -423,6 +423,8 @@ public class IoOrderReviewController extends BaseController {
if (CollUtil.isNotEmpty(codeList)) {
if (StrUtil.isNotEmpty(code)) {
code = code.replace("\r\n", "");
code = code.replace("\r", ""); // 替换单独的回车符
code = code.replace("\n", "");
}
if (code.endsWith("\u001D")) {
code = code.replace("\u001D", "");

@ -88,5 +88,5 @@ public class CompanyProductRelevanceRequest extends ListPageRequest {
@TableField(value = "codeCheck")
private Integer codeCheck;
private Integer productsType;//默认是耗材
private Integer productsType = 1;//默认是耗材
}

@ -116,7 +116,7 @@ public class FilterUdiRelRequest extends ListPageRequest {
//药品参数
private String cpms;
private Integer productsType;//默认是耗材
private Integer productsType = 1;//默认是耗材
/**
*

@ -45,4 +45,5 @@ public class AddOrderRequest {
private String sickerAdNum;
private String workPlaceCode;
private Integer productType;
}

@ -61,4 +61,9 @@ public class FilterOrderDetailResultRequest extends ListPageRequest {
private String confirmStarTime; //发票确认起始日期
private String confirmEndTime; //发票确认结束日期
private String corpName;//供应商名字
/**
* 1: 2:
*/
private Integer productType = 1;
}

@ -221,4 +221,9 @@ public class FilterOrderRequest extends ListPageRequest {
* 12
*/
private Integer invoiceRegStatus;
/**
*
*/
private Integer productType = 1;
}

@ -126,5 +126,6 @@ public class UdiRlSupResponse {
private String bzgg;
private String prepnUnit;
private String prepnSpec;
private String packMatrial;
}

@ -218,6 +218,18 @@ public class IoOrderDetailResultResponse {
private String corpName;
//制剂规格
private String prepnSpec;
//包装规格
private String bzgg;
//包装单位
private String prepnUnit;
//包装单位
private String packMatrial;
//生产企业
private String manufactory;
public String getFromName() {
if (StrUtil.isNotEmpty(fromCorpName))
return fromCorpName;

@ -102,7 +102,7 @@ public interface IoOrderService {
* @param billNo
* @return
*/
List<IoOrderEntity> filterOrderTrace(String billNo);
List<IoOrderEntity> filterOrderTrace(String billNo,Integer productType);
/**
* VO

@ -810,8 +810,8 @@ public class IoOrderServiceImpl implements IoOrderService {
@Override
public List<IoOrderEntity> filterOrderTrace(String billNo) {
IoOrderEntity order = orderDao.selectOne(new QueryWrapper<IoOrderEntity>().eq("billNo", billNo).in("status", 5, 7, 10).in("dealStatus", 2, 3, 4));
public List<IoOrderEntity> filterOrderTrace(String billNo,Integer productType) {
IoOrderEntity order = orderDao.selectOne(new QueryWrapper<IoOrderEntity>().eq("billNo", billNo).eq("productType",productType).in("status", 5, 7, 10).in("dealStatus", 2, 3, 4));
if (null == order) {
return Collections.emptyList();

@ -584,7 +584,7 @@
basic_products.indate,
basic_products.majorType,
basic_products.medicareType,
basic_products.requireScanCode,
basic_products.requireScanCode,
th.hsmc hslbName
FROM basic_products
inner JOIN basic_udirel

@ -112,6 +112,7 @@
basic_products.bzgg,
basic_products.prepnUnit,
basic_products.prepnSpec,
basic_products.packMatrial,
basic_products.matrial
FROM company_product_relevance
inner JOIN basic_udirel

@ -51,6 +51,9 @@
<if test="id != null and id != ''">
AND id = #{id}
</if>
<if test="productType != null and productType != ''">
AND io.productType = #{productType}
</if>
<if test="keyWords != null and keyWords != ''">
AND (aw.name like concat('%', #{keyWords}, '%') or bc.name like concat('%', #{keyWords}, '%'))
</if>

@ -28,20 +28,28 @@
a1.mainAction,
a1.confirmTime as confirmTime,
a1.auditTime,
bp.prepnSpec,
bp.bzgg,
bp.prepnUnit,
bp.packMatrial,
bp.manufactory,
b1.NAME AS corpName,
(select name from auth_warehouse aw where aw.code = a1.fromInvCode) as fromInvName,
(SELECT NAME FROM basic_bussiness_type bus WHERE bus.action = a1.action) billTypeName
FROM io_order_detail_result a2
LEFT JOIN io_order a1 ON a1.billNo = a2.orderIdFk
LEFT JOIN basic_corp b1 ON b1.erpId = a1.fromCorp
LEFT JOIN basic_udirel bu ON a2.bindRlFk = bu.id
LEFT JOIN basic_products bp ON bp.uuid = bu.uuid
left join auth_warehouse aw on aw.code = a1.fromInvCode
<where>
a1.status = 7
<if test="orderIdFk != null and orderIdFk != ''">
AND a2.orderIdFk = #{orderIdFk}
</if>
<if test="productType != null and productType != ''">
AND a1.productType = #{productType}
</if>
<if test="keyWords != null and keyWords != ''">
AND (aw.name like concat('%', #{keyWords}, '%') or b1.name like concat('%', #{keyWords}, '%'))
</if>
@ -100,6 +108,7 @@
</foreach>
</if>
</where>
GROUP BY a1.billNo
</select>
<select id="selectStatDataByTime" resultType="com.glxp.api.res.inv.IoOrderDetailStatRsponse">

Loading…
Cancel
Save