yq 3 лет назад
Родитель
Сommit
f983dc2c63

+ 4 - 5
src/main/java/com/usky/dxtop/controller/web/CompanyController.java

@@ -7,6 +7,7 @@ import com.usky.dxtop.common.core.domain.AjaxResult;
 import com.usky.dxtop.controller.BaseController;
 import com.usky.dxtop.model.Company;
 import com.usky.dxtop.service.CompanyService;
+import com.usky.dxtop.service.SysFileService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -25,6 +26,8 @@ public class CompanyController extends BaseController {
 
     @Autowired
     private CompanyService companyService;
+    @Autowired
+    private SysFileService sysFileService;
     /**
      * 新增
      * @param company
@@ -47,11 +50,7 @@ public class CompanyController extends BaseController {
     @PutMapping
     public AjaxResult edit(@RequestBody Company company)
     {
-        if (UserConstants.NOT_UNIQUE.equals(companyService.checkNameUnique(company)))
-        {
-            return AjaxResult.error("修改产品信息'" + company.getName() + "'失败,产品信息已存在");
-        }
-        return toAjax(companyService.updateById(company));
+        return AjaxResult.success(companyService.update(company));
     }
 
     /**

+ 2 - 0
src/main/java/com/usky/dxtop/service/CompanyService.java

@@ -18,6 +18,8 @@ public interface CompanyService extends IService<Company> {
 
     boolean add(Company company);
 
+    boolean update(Company company);
+
     String checkNameUnique(Company company);
 
     CommonPage<Company> list(Integer current, Integer size, String name);

+ 14 - 0
src/main/java/com/usky/dxtop/service/impl/CompanyServiceImpl.java

@@ -42,6 +42,20 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
         return this.save(company);
     }
 
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public boolean update(Company company) {
+        if (UserConstants.NOT_UNIQUE.equals(this.checkNameUnique(company)))
+        {
+            throw new CustomException("修改产品信息'" + company.getName() + "'失败,产品信息已存在");
+        }
+        Company byId = this.getById(company.getId());
+        if (!company.getLogo().equals(byId.getLogo())){
+            sysFileService.removeByBatchNo(company.getLogo());
+        }
+        return this.updateById(company);
+    }
+
     @Override
     public String checkNameUnique(Company company) {
         Long configId = StringUtils.isNull(company.getId()) ? -1L : company.getId();