emis-api-service/emis-api-web/src/main/java/com/xdadan/erp/apiweb/SupplierController.java
2026-02-02 17:14:09 +08:00

118 lines
3.9 KiB
Java

/**
* @Project: emis
* @Title: EmisSupplierController.java
* @author heyu
* @date 2026-01-29 02:48:51
* @Copyright: ShangHai Duta 2022 All rights reserved.
* @version v1.0
* @Description: <p> 公司供应商表 控制器 </p>
*/
package com.xdadan.erp.apiweb;
import com.xdadan.erp.common.annotation.Log;
import com.xdadan.erp.common.annotation.filter.jackson.JacksonFilter;
import com.xdadan.erp.common.core.controller.BaseController;
import com.xdadan.erp.common.core.domain.AjaxResult;
import com.xdadan.erp.common.core.page.TableDataInfo;
import com.xdadan.erp.common.enums.BusinessType;
import com.xdadan.erp.common.utils.poi.ExcelUtil;
import com.xdadan.erp.common.core.domain.entity.SysUser;
import com.xdadan.erp.emis.domain.EmisSupplier;
import com.xdadan.erp.emis.service.IEmisSupplierService;
import com.xdadan.erp.emis.utils.WaybillHelper;
import com.xdadan.erp.system.service.ISysUserService;
import com.xdadan.erp.apiweb.utils.EntityAuditUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
/**
* 公司供应商表Controller
*
* @author heyu
* @date 2026-01-29 02:48:51
*/
@RestController
@RequestMapping("/apiweb/emisSupplier")
public class SupplierController extends BaseController
{
@Autowired
private IEmisSupplierService emisSupplierService;
@Autowired
private ISysUserService sysUserService;
/**
* 查询公司供应商表列表
*/
@GetMapping("/list")
public TableDataInfo list(EmisSupplier emisSupplier)
{
// setPrivParams(emisSupplier);
startPage();
List<EmisSupplier> list = emisSupplierService.selectEmisSupplierList(emisSupplier);
return getDataTable(list);
}
/**
* 获取公司供应商表详细信息
*/
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return AjaxResult.success(emisSupplierService.selectEmisSupplierById(id));
}
/**
* 保存或更新公司供应商表
*/
@Log(title = "公司供应商表", businessType = BusinessType.OTHER)
@PostMapping("/saveOrUpdate")
public AjaxResult saveOrUpdate(@RequestBody EmisSupplier emisSupplier)
{
try {
// 检查供应商编号是否为空
if (StringUtils.isEmpty(emisSupplier.getCode())) {
return AjaxResult.error("供应商编号不能为空");
}
// 根据编号查询供应商是否存在
EmisSupplier querySupplier = new EmisSupplier();
querySupplier.setCode(emisSupplier.getCode());
List<EmisSupplier> existingSuppliers = emisSupplierService.selectEmisSupplierList(querySupplier);
boolean isUpdate = existingSuppliers != null && !existingSuppliers.isEmpty();
if (isUpdate) {
// 更新操作
EmisSupplier existingSupplier = existingSuppliers.get(0);
emisSupplier.setId(existingSupplier.getId());
// 设置修改人和修改网点
EntityAuditUtils.setAuditInfo(emisSupplier, null, true, this, sysUserService);
return toAjax(emisSupplierService.updateEmisSupplier(emisSupplier));
} else {
// 新增操作
// 设置创建人和创建网点
EntityAuditUtils.setAuditInfo(emisSupplier, null, false, this, sysUserService);
return toAjax(emisSupplierService.insertEmisSupplier(emisSupplier));
}
} catch (Exception e) {
e.printStackTrace();
return AjaxResult.error("保存或更新失败:" + e.getMessage());
}
}
}