diff --git a/base-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowServiceImpl.java b/base-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowServiceImpl.java index 1a47fdfab59f4ca2374ef7fb49355a4259cff8d5..b0c8ba852f208cedefbfc8fc7618096cee31eae6 100644 --- a/base-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowServiceImpl.java +++ b/base-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowServiceImpl.java @@ -1,5 +1,6 @@ package com.mortals.xhx.module.window.service.impl; +import cn.hutool.core.collection.ListUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; import com.mortals.framework.ap.GlobalSysInfo; @@ -25,6 +26,7 @@ import com.mortals.xhx.module.workman.model.WorkmanEntity; import com.mortals.xhx.module.workman.model.WorkmanQuery; import com.mortals.xhx.module.workman.service.WorkmanService; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.formula.functions.T; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -209,9 +211,9 @@ public class WindowServiceImpl extends AbstractCRUDCacheServiceImpl<WindowDao, W protected void saveAfter(WindowEntity entity, Context context) throws AppException { super.saveAfter(entity, context); //鍒ゆ柇鏄惁瀛樺湪id,濡傛灉涓嶅瓨鍦� 鏌ヨ鍚庤幏鍙� - if(entity.newEntity()){ + if (entity.newEntity()) { WindowEntity windowEntity = this.selectOne(new WindowQuery().siteId(entity.getSiteId()).fromnum(entity.getFromnum())); - if(!ObjectUtils.isEmpty(windowEntity)){ + if (!ObjectUtils.isEmpty(windowEntity)) { entity.setId(windowEntity.getId()); } } @@ -238,4 +240,37 @@ public class WindowServiceImpl extends AbstractCRUDCacheServiceImpl<WindowDao, W log.error("寮傚父:", e); } } + + + /** + * @param list + * @param updateSupport + * @param context + * @return + */ + @Override + public String importList(List<WindowEntity> list, Boolean updateSupport, Context context) { + if (ObjectUtils.isEmpty(list)) { + throw new AppException("瀵煎叆鏁版嵁涓嶈兘涓虹┖锛�"); + } + int successNum = 0; + int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + + for (WindowEntity entity : list) { + entity.setCreateUserId(this.getContextUserId(context)); + entity.setCreateTime(new Date()); + this.save(entity, context); + successNum++; + + } + successMsg.insert(0, "鏁版嵁瀵煎叆鎴愬姛锛佸叡 " + successNum + " 鏉�"); + if (failureNum > 0) { + failureMsg.insert(0, "瀵煎叆澶辫触锛佸叡 " + failureNum + " 鏉℃暟鎹牸寮忎笉姝g‘"); + successMsg.append("\n"); + successMsg.append(failureMsg); + } + return successMsg.toString(); + } } \ No newline at end of file diff --git a/base-manager/src/test/java/com/mortals/httpclient/workman/WorkmanController.http b/base-manager/src/test/java/com/mortals/httpclient/workman/WorkmanController.http index e03e31c49c376dce4cd573a8814b24040effbcf9..e7f37ead8806387247b98e875f5689c6bd2038f6 100644 --- a/base-manager/src/test/java/com/mortals/httpclient/workman/WorkmanController.http +++ b/base-manager/src/test/java/com/mortals/httpclient/workman/WorkmanController.http @@ -14,8 +14,9 @@ Content-Type: application/json { "page":1, + "size":10, - "andConditionList":[{"name":"%寮犱笁%","number":"%123%"}] + "andConditionList":[{"name":"%寮犱笁%","number":"%123%","deptName":"%123%","windowName":"%123%"}] }