package com.aps.core.controller;
|
|
import com.aps.common.core.utils.poi.ExcelUtil;
|
import com.aps.common.core.utils.uuid.IdUtils;
|
import com.aps.common.core.web.controller.BaseController;
|
import com.aps.common.core.web.domain.AjaxResult;
|
import com.aps.common.core.web.page.TableDataInfo;
|
import com.aps.common.log.annotation.Log;
|
import com.aps.common.log.enums.BusinessType;
|
import com.aps.common.security.annotation.RequiresPermissions;
|
import com.aps.common.security.utils.DictUtils;
|
import com.aps.core.domain.ApsPartPlan;
|
import com.aps.core.domain.ApsPartPlanTemp;
|
import com.aps.core.service.IApsPartPlanService;
|
import com.aps.core.service.IApsPartPlanTempService;
|
import com.aps.system.api.domain.SysDictData;
|
import jakarta.servlet.http.HttpServletResponse;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import java.util.List;
|
|
/**
|
* 零件计划管理Controller
|
*
|
* @author wwj
|
* @date 2025-04-08
|
*/
|
@RestController
|
@RequestMapping("/partPlan")
|
public class ApsPartPlanController extends BaseController {
|
@Autowired
|
private IApsPartPlanService apsPartPlanService;
|
@Autowired
|
private IApsPartPlanTempService apsPartPlanTempService;
|
/**
|
* 查询零件计划管理列表
|
*/
|
@RequiresPermissions("partPlan:list")
|
@GetMapping("/list")
|
public TableDataInfo list(ApsPartPlan apsPartPlan) {
|
startPage();
|
List<ApsPartPlan> list = apsPartPlanService.selectApsPartPlanList(apsPartPlan);
|
return getDataTable(list);
|
}
|
|
/**
|
* 导出零件计划管理列表
|
*/
|
@RequiresPermissions("partPlan:export")
|
@Log(title = "零件计划管理", businessType = BusinessType.EXPORT)
|
@PostMapping("/export")
|
public void export(HttpServletResponse response, ApsPartPlan apsPartPlan) {
|
List<ApsPartPlan> apsPartPlans = apsPartPlanService.selectApsPartPlanList(apsPartPlan);
|
List<SysDictData> list = DictUtils.getDictCache("aps_is_suspended");
|
for (int i = 0; i < apsPartPlans.size(); i++) {
|
for (int j = 0; j < list.size(); j++) {
|
if (apsPartPlans.get(i).getIsSuspended().equals(Integer.parseInt(list.get(j).getDictValue()))) {
|
apsPartPlans.get(i).setIsSuspendedTxt(list.get(j).getDictLabel());
|
break;
|
}
|
}
|
}
|
ExcelUtil<ApsPartPlan> util = new ExcelUtil<ApsPartPlan>(ApsPartPlan.class);
|
util.exportExcel(response, apsPartPlans, "零件计划管理数据");
|
}
|
|
/**
|
* 获取零件计划管理详细信息
|
*/
|
@RequiresPermissions("partPlan:query")
|
@GetMapping(value = "/{id}")
|
public AjaxResult getInfo(@PathVariable("id") String id) {
|
return success(apsPartPlanService.selectApsPartPlanById(id));
|
}
|
|
/**
|
* 新增零件计划管理
|
*/
|
@RequiresPermissions("partPlan:add")
|
@Log(title = "零件计划管理", businessType = BusinessType.INSERT)
|
@PostMapping
|
public AjaxResult add(@RequestBody ApsPartPlan apsPartPlan) {
|
return toAjax(apsPartPlanService.insertApsPartPlan(apsPartPlan));
|
}
|
|
/**
|
* 修改零件计划管理
|
*/
|
@RequiresPermissions("partPlan:edit")
|
@Log(title = "零件计划管理", businessType = BusinessType.UPDATE)
|
@PutMapping
|
public AjaxResult edit(@RequestBody ApsPartPlan apsPartPlan) {
|
return toAjax(apsPartPlanService.updateApsPartPlan(apsPartPlan));
|
}
|
|
/**
|
* 删除零件计划管理
|
*/
|
@RequiresPermissions("partPlan:remove")
|
@Log(title = "零件计划管理", businessType = BusinessType.DELETE)
|
@DeleteMapping("/{ids}")
|
public AjaxResult remove(@PathVariable String[] ids) {
|
return toAjax(apsPartPlanService.deleteApsPartPlanByIds(ids));
|
}
|
|
/**
|
* 零件计划导入
|
*/
|
@PostMapping("/importData")
|
public AjaxResult importData(MultipartFile file) throws Exception {
|
ExcelUtil<ApsPartPlanTemp> util = new ExcelUtil<ApsPartPlanTemp>(ApsPartPlanTemp.class);
|
List<ApsPartPlanTemp> apsPartPlans = util.importExcel(file.getInputStream());
|
//判断导入数据是否为空
|
if (apsPartPlans.size() > 0) {
|
String batchNum= IdUtils.fastUUID();
|
List<SysDictData> list = DictUtils.getDictCache("aps_is_suspended");
|
for (int i = 0; i < apsPartPlans.size(); i++) {
|
for (int j = 0; j < list.size(); j++) {
|
if (apsPartPlans.get(i).getIsSuspendedTxt().equals(list.get(j).getDictLabel())) {
|
apsPartPlans.get(i).setIsSuspended(Integer.parseInt(list.get(j).getDictValue()));
|
break;
|
}
|
}
|
//插入版本号
|
apsPartPlans.get(i).setBatchNumber(batchNum);
|
//插入临时表
|
apsPartPlanTempService.insertApsPartPlanTemp(apsPartPlans.get(i));
|
}
|
return AjaxResult.success(batchNum);
|
} else {
|
return AjaxResult.error("模板内容为空");
|
}
|
}
|
}
|