|
|
@ -1,35 +1,41 @@ |
|
|
|
package com.win.module.wms.controller.countadjustRequest; |
|
|
|
|
|
|
|
import com.win.framework.common.pojo.CommonResult; |
|
|
|
import com.win.framework.common.pojo.CustomConditions; |
|
|
|
import com.win.framework.common.pojo.PageResult; |
|
|
|
import com.win.framework.dict.core.util.DictFrameworkUtils; |
|
|
|
import com.win.framework.excel.core.util.ExcelUtils; |
|
|
|
import com.win.framework.operatelog.core.annotations.OperateLog; |
|
|
|
import com.win.module.system.api.user.AdminUserApi; |
|
|
|
import com.win.module.system.api.user.dto.AdminUserRespDTO; |
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.*; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
import javax.annotation.Resource; |
|
|
|
import org.springframework.validation.annotation.Validated; |
|
|
|
import org.springframework.security.access.prepost.PreAuthorize; |
|
|
|
import io.swagger.v3.oas.annotations.tags.Tag; |
|
|
|
import io.swagger.v3.oas.annotations.Parameter; |
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestMainExcelVO; |
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestMainExportReqVO; |
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestMainPageReqVO; |
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.CountadjustRequestMainRespVO; |
|
|
|
import com.win.module.wms.convert.countadjustRequest.CountadjustRequestMainConvert; |
|
|
|
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestMainDO; |
|
|
|
import com.win.module.wms.enums.DictTypeConstants; |
|
|
|
import com.win.module.wms.enums.request.RequestStatusEnum; |
|
|
|
import com.win.module.wms.service.countadjustRequest.CountadjustRequestDetailService; |
|
|
|
import com.win.module.wms.service.countadjustRequest.CountadjustRequestMainService; |
|
|
|
import io.swagger.v3.oas.annotations.Operation; |
|
|
|
import io.swagger.v3.oas.annotations.tags.Tag; |
|
|
|
import org.springframework.security.access.prepost.PreAuthorize; |
|
|
|
import org.springframework.validation.annotation.Validated; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
|
|
|
|
import javax.validation.*; |
|
|
|
import javax.servlet.http.*; |
|
|
|
import java.util.*; |
|
|
|
import javax.annotation.Resource; |
|
|
|
import javax.servlet.http.HttpServletResponse; |
|
|
|
import javax.validation.Valid; |
|
|
|
import java.io.IOException; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
import com.win.framework.common.pojo.PageResult; |
|
|
|
import com.win.framework.common.pojo.CommonResult; |
|
|
|
import static com.win.framework.common.pojo.CommonResult.success; |
|
|
|
|
|
|
|
import com.win.framework.excel.core.util.ExcelUtils; |
|
|
|
|
|
|
|
import com.win.framework.operatelog.core.annotations.OperateLog; |
|
|
|
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*; |
|
|
|
|
|
|
|
import com.win.module.wms.controller.countadjustRequest.vo.*; |
|
|
|
import com.win.module.wms.dal.dataobject.countadjustRequest.CountadjustRequestMainDO; |
|
|
|
import com.win.module.wms.convert.countadjustRequest.CountadjustRequestMainConvert; |
|
|
|
import com.win.module.wms.service.countadjustRequest.CountadjustRequestMainService; |
|
|
|
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; |
|
|
|
|
|
|
|
@Tag(name = "管理后台 - 盘点调整申请主") |
|
|
|
@RestController |
|
|
@ -39,52 +45,12 @@ public class CountadjustRequestMainController { |
|
|
|
|
|
|
|
@Resource |
|
|
|
private CountadjustRequestMainService countadjustRequestMainService; |
|
|
|
@Resource |
|
|
|
private CountadjustRequestDetailService countadjustRequestDetailService; |
|
|
|
|
|
|
|
@Resource |
|
|
|
private AdminUserApi userApi; |
|
|
|
|
|
|
|
@PostMapping("/create") |
|
|
|
@Operation(summary = "创建盘点调整申请主") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:create')") |
|
|
|
public CommonResult<Long> createCountadjustRequestMain(@Valid @RequestBody CountadjustRequestMainCreateReqVO createReqVO) { |
|
|
|
return success(countadjustRequestMainService.createCountadjustRequestMain(createReqVO)); |
|
|
|
} |
|
|
|
|
|
|
|
@PutMapping("/update") |
|
|
|
@Operation(summary = "更新盘点调整申请主") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:update')") |
|
|
|
public CommonResult<Boolean> updateCountadjustRequestMain(@Valid @RequestBody CountadjustRequestMainUpdateReqVO updateReqVO) { |
|
|
|
countadjustRequestMainService.updateCountadjustRequestMain(updateReqVO); |
|
|
|
return success(true); |
|
|
|
} |
|
|
|
|
|
|
|
@DeleteMapping("/delete") |
|
|
|
@Operation(summary = "删除盘点调整申请主") |
|
|
|
@Parameter(name = "id", description = "编号", required = true) |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:delete')") |
|
|
|
public CommonResult<Boolean> deleteCountadjustRequestMain(@RequestParam("id") Long id) { |
|
|
|
countadjustRequestMainService.deleteCountadjustRequestMain(id); |
|
|
|
return success(true); |
|
|
|
} |
|
|
|
|
|
|
|
@GetMapping("/get") |
|
|
|
@Operation(summary = "获得盘点调整申请主") |
|
|
|
@Parameter(name = "id", description = "编号", required = true, example = "1024") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:query')") |
|
|
|
public CommonResult<CountadjustRequestMainRespVO> getCountadjustRequestMain(@RequestParam("id") Long id) { |
|
|
|
CountadjustRequestMainDO countadjustRequestMain = countadjustRequestMainService.getCountadjustRequestMain(id); |
|
|
|
return success(CountadjustRequestMainConvert.INSTANCE.convert(countadjustRequestMain)); |
|
|
|
} |
|
|
|
|
|
|
|
@GetMapping("/list") |
|
|
|
@Operation(summary = "获得盘点调整申请主列表") |
|
|
|
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:query')") |
|
|
|
public CommonResult<List<CountadjustRequestMainRespVO>> getCountadjustRequestMainList(@RequestParam("ids") Collection<Long> ids) { |
|
|
|
List<CountadjustRequestMainDO> list = countadjustRequestMainService.getCountadjustRequestMainList(ids); |
|
|
|
return success(CountadjustRequestMainConvert.INSTANCE.convertList(list)); |
|
|
|
} |
|
|
|
|
|
|
|
@GetMapping("/page") |
|
|
|
@Operation(summary = "获得盘点调整申请主分页") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:query')") |
|
|
@ -92,6 +58,7 @@ public class CountadjustRequestMainController { |
|
|
|
PageResult<CountadjustRequestMainDO> pageResult = countadjustRequestMainService.getCountadjustRequestMainPage(pageVO); |
|
|
|
return success(CountadjustRequestMainConvert.INSTANCE.convertPage(pageResult)); |
|
|
|
} |
|
|
|
|
|
|
|
@PostMapping("/senior") |
|
|
|
@Operation(summary = "高级搜索获得盘点调整申请主分页") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:query')") |
|
|
@ -105,21 +72,50 @@ public class CountadjustRequestMainController { |
|
|
|
} |
|
|
|
return success(result); |
|
|
|
} |
|
|
|
|
|
|
|
@GetMapping("/export-excel") |
|
|
|
@Operation(summary = "导出盘点调整申请主 Excel") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:export')") |
|
|
|
@OperateLog(type = EXPORT) |
|
|
|
public void exportCountadjustRequestMainExcel(@Valid CountadjustRequestMainExportReqVO exportReqVO, |
|
|
|
HttpServletResponse response) throws IOException { |
|
|
|
public void exportCountadjustRequestMainExcel(@Valid CountadjustRequestMainExportReqVO exportReqVO, HttpServletResponse response) throws IOException { |
|
|
|
List<CountadjustRequestMainDO> list = countadjustRequestMainService.getCountadjustRequestMainList(exportReqVO); |
|
|
|
// 导出 Excel
|
|
|
|
List<CountadjustRequestMainExcelVO> datas = CountadjustRequestMainConvert.INSTANCE.convertList02(list); |
|
|
|
for(CountadjustRequestMainExcelVO vo : datas) { |
|
|
|
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); |
|
|
|
//后端创建个字段作为前端展示的虚拟字段
|
|
|
|
vo.setCreator(user.getNickname()); |
|
|
|
Map<Integer, String[]> mapDropDown = new HashMap<>(); |
|
|
|
List<CountadjustRequestMainExcelVO> resultList = this.getExcelVo(list, mapDropDown); |
|
|
|
ExcelUtils.write(response, "盘点调整申请主.xls", "盘点调整数据", CountadjustRequestMainExcelVO.class, resultList, mapDropDown); |
|
|
|
} |
|
|
|
|
|
|
|
@PostMapping("/export-excel-senior") |
|
|
|
@Operation(summary = "导出盘点调整记录主 Excel") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:countadjust-request-main:export')") |
|
|
|
@OperateLog(type = EXPORT) |
|
|
|
public void exportCountadjustRequestMainSeniorExcel(@Valid @RequestBody CustomConditions conditions, HttpServletResponse response) throws IOException { |
|
|
|
List<CountadjustRequestMainDO> list = countadjustRequestMainService.getCountadjustRequestMainList(conditions); |
|
|
|
Map<Integer, String[]> mapDropDown = new HashMap<>(); |
|
|
|
List<CountadjustRequestMainExcelVO> resultList = this.getExcelVo(list, mapDropDown); |
|
|
|
ExcelUtils.write(response, "盘点调整申请主.xls", "盘点调整数据", CountadjustRequestMainExcelVO.class, resultList, mapDropDown); |
|
|
|
} |
|
|
|
|
|
|
|
private List<CountadjustRequestMainExcelVO> getExcelVo(List<CountadjustRequestMainDO> list, Map<Integer, String[]> mapDropDown) { |
|
|
|
//组装vo
|
|
|
|
String[] status = RequestStatusEnum.getStatusNameArray(); |
|
|
|
mapDropDown.put(8, status); |
|
|
|
String[] inventoryStatus = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.INVENTORY_STATUS); |
|
|
|
mapDropDown.put(19, inventoryStatus); |
|
|
|
String[] uom = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.UOM); |
|
|
|
mapDropDown.put(28, uom); |
|
|
|
List<CountadjustRequestMainExcelVO> resultList = new ArrayList<>(); |
|
|
|
// 导出
|
|
|
|
for(CountadjustRequestMainDO mainDO : list) { |
|
|
|
List<CountadjustRequestDetailDO> subList = countadjustRequestDetailService.selectList(mainDO.getId()); |
|
|
|
for(CountadjustRequestDetailDO detailDO : subList) { |
|
|
|
CountadjustRequestMainExcelVO vo = CountadjustRequestMainConvert.INSTANCE.convert(mainDO, detailDO); |
|
|
|
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); |
|
|
|
//后端创建个字段作为前端展示的虚拟字段
|
|
|
|
vo.setCreator(user.getNickname()); |
|
|
|
resultList.add(vo); |
|
|
|
} |
|
|
|
} |
|
|
|
ExcelUtils.write(response, "盘点调整申请主.xls", "数据", CountadjustRequestMainExcelVO.class, datas); |
|
|
|
return resultList; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|