package com.sunda.spmsorder.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sunda.spmsorder.entity.ZNbddGetNbddData;
import com.sunda.spmsorder.entity.vo.ZNbddGetNbddDataQueryVO;
import com.sunda.spmsorder.mapper.ZNbddGetNbddDataMapper;
import com.sunda.spmsorder.service.IZNbddGetNbddDataService;
import com.sunda.spmswms.entity.WhsOut;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * SAP内部订单号表数据 服务实现类
 * </p>
 *
 * @author HZC
 * @since 2023-04-10
 */
@Service
public class ZNbddGetNbddDataServiceImpl extends ServiceImpl<ZNbddGetNbddDataMapper, ZNbddGetNbddData> implements IZNbddGetNbddDataService {

    @Override
    public  IPage<ZNbddGetNbddData> getSapProjectOaNumberList(ZNbddGetNbddDataQueryVO record) {
        IPage iPage = record.getPage();
        QueryWrapper wrapper = new QueryWrapper<ZNbddGetNbddData>().eq("WERKS", record.getWerks()).notLike("KTEXT", "禁用").notLike("LTEXT", "Unusable");
        if(StringUtils.isNotBlank(record.getAufnr())){
            wrapper.like("AUFNR", record.getAufnr());
        }
        if(StringUtils.isNotBlank(record.getKtext())){
            wrapper.like("KTEXT", record.getKtext());
        }
        if (StringUtils.isNotBlank(record.getEnKtext())) {
        	wrapper.like("LTEXT", record.getEnKtext());
        }
        //勇忠要求：① 对Z_NBDD_GET_NBDD_DATA增加状态，当PHAS2=X或者PHAS3=X，则领用申请内部订单号不能显示搜索出；
        wrapper.isNull("PHAS2");
        wrapper.isNull("PHAS3");
        return this.baseMapper.selectPage(iPage, wrapper);
    }
}
