| | |
| | | package com.consum.base.controller; |
| | | |
| | | import java.io.IOException; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Optional; |
| | | |
| | | import org.apache.commons.compress.utils.Lists; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | import com.consum.base.pojo.BaseGoodsTemplateParam; |
| | | import com.consum.base.pojo.excel.ImportGoodsInfoTemplate; |
| | | import com.consum.base.pojo.response.GoodsTemplateVO; |
| | | import com.consum.base.service.BaseCategoryService; |
| | | import com.consum.base.service.BaseGoodsTemplateService; |
| | | import com.consum.base.service.BaseWarehouseService; |
| | | import com.consum.base.service.FinSysTenantService; |
| | | import com.consum.base.service.LWhGoodsService; |
| | | import com.consum.model.po.BaseCategory; |
| | | import com.consum.model.po.BaseGoodsModels; |
| | | import com.consum.model.po.BaseGoodsTemplate; |
| | | import com.consum.model.po.BaseWarehouse; |
| | |
| | | import com.consum.model.po.SDictData; |
| | | import com.consum.model.vo.BaseGoodsTemplateVo; |
| | | import com.walker.db.page.GenericPager; |
| | | import com.walker.infrastructure.utils.DateUtils; |
| | | import com.walker.infrastructure.utils.StringUtils; |
| | | import com.walker.web.ResponseValue; |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private FinSysTenantService finSysTenantService; |
| | | |
| | | @Autowired |
| | | private BaseCategoryService baseCategoryService; |
| | | |
| | | /** |
| | | * @Description 新增物品模板 |
| | |
| | | String categoryOne = data.getCategoryOne(); |
| | | String categoryTwo = data.getCategoryTwo(); |
| | | String categoryThree = data.getCategoryThree(); |
| | | String goodName = data.getGoodName(); |
| | | String goodModel = data.getGoodModel(); |
| | | String goodsName = data.getGoodsName(); |
| | | String goodModelName = data.getGoodModelName(); |
| | | String unit = data.getUnit(); |
| | | String type = data.getType(); |
| | | String agencyName = data.getAgencyName(); |
| | | |
| | | list.stream().forEach(item -> { |
| | | if (!item.getCategoryId().equals(categoryThree)) { |
| | | BaseGoodsTemplateParam baseGoodsTemplate = new BaseGoodsTemplateParam(); |
| | | baseGoodsTemplate.setCategoryId(Long.valueOf(categoryThree)); |
| | | baseGoodsTemplate.setGoodsName(goodName); |
| | | baseGoodsTemplate.setStates(1); |
| | | FinSysTenant finSysTenant = finSysTenantService.selectByName(agencyName); |
| | | baseGoodsTemplate.setAgencyId(finSysTenant.getId()); |
| | | BaseCategory baseCategory = baseCategoryService.getByCategoryByName(categoryThree); |
| | | Long categoryId = baseCategory.getId(); |
| | | |
| | | List<BaseGoodsModels> models = Lists.newArrayList(); |
| | | BaseGoodsModels baseGoodsModels = new BaseGoodsModels(); |
| | | baseGoodsModels.setModelName(goodModel); |
| | | baseGoodsModels.setStates(1); |
| | | baseGoodsModels.setGoodsTemplatesId(item.getId()); |
| | | baseGoodsModels.setUnit(unit); |
| | | baseGoodsModels.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); |
| | | models.add(baseGoodsModels); |
| | | baseGoodsTemplate.setModels(models); |
| | | } else { |
| | | List<BaseGoodsModels> models = item.getModels(); |
| | | BaseGoodsModels baseGoodsModels = new BaseGoodsModels(); |
| | | baseGoodsModels.setModelName(goodModel); |
| | | baseGoodsModels.setStates(1); |
| | | baseGoodsModels.setGoodsTemplatesId(item.getId()); |
| | | baseGoodsModels.setUnit(unit); |
| | | baseGoodsModels.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); |
| | | models.add(baseGoodsModels); |
| | | } |
| | | }); |
| | | Optional<BaseGoodsTemplateParam> optional = |
| | | list.stream().filter(item -> item.getCategoryId().equals(categoryId)).findFirst(); |
| | | |
| | | if (optional.isPresent()) { |
| | | BaseGoodsModels baseGoodsModels = new BaseGoodsModels(); |
| | | baseGoodsModels.setModelName(goodModelName); |
| | | baseGoodsModels.setUnit(unit); |
| | | optional.get().getModels().add(baseGoodsModels); |
| | | } else { |
| | | BaseGoodsTemplateParam baseGoodsTemplate = new BaseGoodsTemplateParam(); |
| | | baseGoodsTemplate.setCategoryId(categoryId); |
| | | baseGoodsTemplate.setGoodsName(goodsName); |
| | | baseGoodsTemplate.setStates(1); |
| | | FinSysTenant finSysTenant = finSysTenantService.selectByName(agencyName); |
| | | baseGoodsTemplate.setAgencyId(finSysTenant.getId()); |
| | | baseGoodsTemplate.setAgencyName(agencyName); |
| | | |
| | | List<BaseGoodsModels> models = new ArrayList<>(); |
| | | BaseGoodsModels baseGoodsModels = new BaseGoodsModels(); |
| | | baseGoodsModels.setModelName(goodModelName); |
| | | baseGoodsModels.setUnit(unit); |
| | | models.add(baseGoodsModels); |
| | | baseGoodsTemplate.setModels(models); |
| | | |
| | | list.add(baseGoodsTemplate); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void doAfterAllAnalysed(AnalysisContext analysisContext) { |
| | | for (BaseGoodsTemplateParam a : list) { |
| | | baseGoodsTemplateService.add(a, sysInfo); |
| | | for (BaseGoodsTemplateParam baseGoodsTemplate : list) { |
| | | baseGoodsTemplateService.add(baseGoodsTemplate, null); |
| | | } |
| | | } |
| | | |
| | |
| | | Integer row = excelDataConvertException.getRowIndex() + 1; |
| | | Integer column = excelDataConvertException.getColumnIndex() + 1; |
| | | throw new RuntimeException("第" + row + "行,第" + column + "列解析异常,请正确填写"); |
| | | } else { |
| | | throw new RuntimeException(exception.getMessage()); |
| | | } |
| | | } |
| | | }).sheet(0).doRead(); |