库位导入
							parent
							
								
									995bf973d8
								
							
						
					
					
						commit
						59b4c78226
					
				| 
						 | 
				
			
			@ -86,7 +86,7 @@ public class AreaService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> batchDelete(List<Long> idList) {
 | 
			
		||||
        if (CollectionUtils.isEmpty(idList)) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        JoinerResult joiner = JoinerResult.createJoiner();
 | 
			
		||||
| 
						 | 
				
			
			@ -119,7 +119,7 @@ public class AreaService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> delete(Long areaId) {
 | 
			
		||||
        if (null == areaId) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        AreaEntity area = areaManager.queryArea(areaId);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -86,7 +86,7 @@ public class ItemService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> batchDelete(List<Long> idList) {
 | 
			
		||||
        if (CollectionUtils.isEmpty(idList)) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        itemManager.removeBatchByIds(idList);
 | 
			
		||||
| 
						 | 
				
			
			@ -104,7 +104,7 @@ public class ItemService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> delete(Long itemId) {
 | 
			
		||||
        if (null == itemId) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        itemDao.deleteById(itemId);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,6 +16,7 @@ import io.swagger.v3.oas.annotations.Operation;
 | 
			
		|||
import cn.dev33.satoken.annotation.SaCheckPermission;
 | 
			
		||||
import jakarta.annotation.Resource;
 | 
			
		||||
import jakarta.validation.Valid;
 | 
			
		||||
import org.springframework.web.multipart.MultipartFile;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -94,4 +95,11 @@ public class LocationController {
 | 
			
		|||
    public ResponseDTO<String> multipleInsert(@RequestBody @Valid MultipleInsert multipleInsert) {
 | 
			
		||||
        return locationService.multipleInsert(multipleInsert);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Operation(summary = "导入 霍锦")
 | 
			
		||||
    @PostMapping("/location/importLocations")
 | 
			
		||||
    @SaCheckPermission("location:importLocations")
 | 
			
		||||
    public ResponseDTO<String> importLocations(@RequestParam MultipartFile file) {
 | 
			
		||||
        return locationService.importLocations(file);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,19 @@
 | 
			
		|||
package net.lab1024.sa.admin.module.business.base.location.domain.form;
 | 
			
		||||
 | 
			
		||||
import cn.idev.excel.annotation.ExcelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
import java.math.BigDecimal;
 | 
			
		||||
 | 
			
		||||
@Data
 | 
			
		||||
public class LocationsImportForm {
 | 
			
		||||
    @ExcelProperty("库区")
 | 
			
		||||
    private String areaName;
 | 
			
		||||
 | 
			
		||||
    @ExcelProperty("库位编码")
 | 
			
		||||
    private String locationCode;
 | 
			
		||||
 | 
			
		||||
    @ExcelProperty("库位类型")
 | 
			
		||||
    private String locationType;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -1,24 +1,22 @@
 | 
			
		|||
package net.lab1024.sa.admin.module.business.base.location.service;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.Arrays;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import com.alibaba.fastjson.JSONObject;
 | 
			
		||||
import cn.idev.excel.FastExcel;
 | 
			
		||||
import com.alibaba.fastjson.JSON;
 | 
			
		||||
import lombok.extern.slf4j.Slf4j;
 | 
			
		||||
import net.lab1024.sa.admin.constant.UsageStatusEnum;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.dao.LocationDao;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.entity.LocationEntity;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.form.LocationAddForm;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.form.LocationUpdateForm;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.form.MultipleAdjust;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.form.MultipleInsert;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.domain.form.*;
 | 
			
		||||
import net.lab1024.sa.admin.module.business.base.location.manager.LocationManager;
 | 
			
		||||
import net.lab1024.sa.admin.util.AdminRequestUtil;
 | 
			
		||||
import net.lab1024.sa.admin.util.JoinerResult;
 | 
			
		||||
import net.lab1024.sa.admin.util.ResponseDTOUtils;
 | 
			
		||||
import net.lab1024.sa.base.common.code.UserErrorCode;
 | 
			
		||||
import net.lab1024.sa.base.common.exception.BusinessException;
 | 
			
		||||
import net.lab1024.sa.base.common.util.SmartBeanUtil;
 | 
			
		||||
import net.lab1024.sa.base.common.domain.ResponseDTO;
 | 
			
		||||
import net.lab1024.sa.base.common.util.SmartRequestUtil;
 | 
			
		||||
| 
						 | 
				
			
			@ -27,6 +25,7 @@ import net.lab1024.sa.base.module.support.dict.service.DictCacheService;
 | 
			
		|||
import org.apache.commons.collections4.CollectionUtils;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import jakarta.annotation.Resource;
 | 
			
		||||
import org.springframework.web.multipart.MultipartFile;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 库位信息 Service
 | 
			
		||||
| 
						 | 
				
			
			@ -37,6 +36,7 @@ import jakarta.annotation.Resource;
 | 
			
		|||
 */
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
@Slf4j
 | 
			
		||||
public class LocationService {
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
| 
						 | 
				
			
			@ -96,7 +96,7 @@ public class LocationService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> batchDelete(List<Long> idList) {
 | 
			
		||||
        if (CollectionUtils.isEmpty(idList)) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        locationManager.removeBatchByIds(idList);
 | 
			
		||||
| 
						 | 
				
			
			@ -113,7 +113,7 @@ public class LocationService {
 | 
			
		|||
     */
 | 
			
		||||
    public ResponseDTO<String> delete(Long locationId) {
 | 
			
		||||
        if (null == locationId) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        locationDao.deleteById(locationId);
 | 
			
		||||
| 
						 | 
				
			
			@ -131,7 +131,7 @@ public class LocationService {
 | 
			
		|||
    public ResponseDTO<String> multipleAdjust(MultipleAdjust multipleAdjust) {
 | 
			
		||||
 | 
			
		||||
        if (CollectionUtils.isEmpty(multipleAdjust.getLocationIds())) {
 | 
			
		||||
            return ResponseDTO.error(UserErrorCode.PARAM_ERROR, UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
            return ResponseDTO.userErrorParam(UserErrorCode.PARAM_ERROR.getMsg());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        //查询库位
 | 
			
		||||
| 
						 | 
				
			
			@ -247,5 +247,28 @@ public class LocationService {
 | 
			
		|||
        return ResponseDTOUtils.buildResponseDTO(joiner);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 库位导入
 | 
			
		||||
     *
 | 
			
		||||
     * @param file 上传文件
 | 
			
		||||
     * @return ResponseDTO<String>
 | 
			
		||||
     */
 | 
			
		||||
    public ResponseDTO<String> importLocations(MultipartFile file) {
 | 
			
		||||
        List<LocationsImportForm> dataList;
 | 
			
		||||
        try {
 | 
			
		||||
            dataList = FastExcel.read(file.getInputStream()).head(LocationsImportForm.class)
 | 
			
		||||
                    .sheet()
 | 
			
		||||
                    .doReadSync();
 | 
			
		||||
        } catch (IOException e) {
 | 
			
		||||
            throw new BusinessException("数据格式存在问题,无法读取");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (CollectionUtils.isEmpty(dataList)) {
 | 
			
		||||
            return ResponseDTO.userErrorParam("数据为空");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return ResponseDTO.okMsg("成功导入" + dataList.size() + "条,具体数据为:" + JSON.toJSONString(dataList));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue