|
@@ -5,8 +5,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.fjhx.base.Condition;
|
|
|
import com.fjhx.constants.StockJournalTypeConstant;
|
|
|
+import com.fjhx.entity.apply.ApplyPurchase;
|
|
|
+import com.fjhx.entity.purchase.Purchase;
|
|
|
import com.fjhx.entity.stock.Stock;
|
|
|
import com.fjhx.entity.stock.StockJournal;
|
|
|
+import com.fjhx.enums.purchase.PurchaseStatusEnum;
|
|
|
import com.fjhx.enums.stock.InTypeEnum;
|
|
|
import com.fjhx.enums.stock.OutTypeEnum;
|
|
|
import com.fjhx.enums.stock.QualityStatusEnum;
|
|
@@ -233,6 +236,37 @@ public class StockJournalServiceImpl extends ServiceImpl<StockJournalMapper, Sto
|
|
|
return page;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 到货质检列表
|
|
|
+ *
|
|
|
+ * @param condition 查询条件
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Page<StockJournal> getArrivalQualityPage(Map<String, Object> condition) {
|
|
|
+ IWrapper<StockJournal> wrapper = IWrapper.getWrapper(condition);
|
|
|
+ wrapper.eq("t1", StockJournal::getType, StockJournalTypeConstant.IN)
|
|
|
+ .eq("t1", StockJournal::getDetailsType, InTypeEnum.PURCHASE.getKey())
|
|
|
+ .ge("t3", Purchase::getStatus, PurchaseStatusEnum.STATUS_30.getKey())
|
|
|
+ .le("t3", Purchase::getStatus, PurchaseStatusEnum.STATUS_40.getKey())
|
|
|
+ .eq("t1", StockJournal::getQualityStatus)
|
|
|
+ .and(Func.isNotEmpty(condition.get("keyword")), o -> o.apply("instr(t3.`code`, '" + condition.get("keyword") + "') > 0").or().apply("instr(t4.`name`, '" + condition.get("keyword") + "') > 0").or().apply("instr(t5.`name`, '" + condition.get("keyword") + "') > 0"))
|
|
|
+ .groupBy("t1.`code`")
|
|
|
+ .orderByDesc("t1", ApplyPurchase::getCode);
|
|
|
+
|
|
|
+ Page<StockJournal> page = baseMapper.getArrivalQualityPage(createPage(condition), wrapper);
|
|
|
+ if (Func.isNotEmpty(page.getRecords())) {
|
|
|
+ Map<Long, String> userNameMap = UserClientUtil.getUserNameMap(page.getRecords(), StockJournal::getCreateUser);
|
|
|
+ for (StockJournal entity : page.getRecords()) {
|
|
|
+ if (Func.isNotEmpty(userNameMap) && Func.isNotEmpty(userNameMap.get(entity.getCreateUser()))) {
|
|
|
+ entity.setCreateName(userNameMap.get(entity.getCreateUser()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public Page<Map<String, Object>> inOutDocument(Condition condition) {
|
|
|
|