|
|
@@ -4,8 +4,10 @@ import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.izouma.imt.domain.CaseAndNews;
|
|
|
+import com.izouma.imt.domain.vendor.Operating;
|
|
|
import com.izouma.imt.domain.vendor.VendorInfo;
|
|
|
import com.izouma.imt.enums.CaseAndNewsType;
|
|
|
+import com.izouma.imt.repo.vendor.OperatingRepo;
|
|
|
import com.izouma.imt.repo.vendor.VendorInfoRepo;
|
|
|
import com.izouma.imt.service.CaseAndNewsService;
|
|
|
import com.izouma.imt.dto.PageQuery;
|
|
|
@@ -14,14 +16,17 @@ import com.izouma.imt.repo.CaseAndNewsRepo;
|
|
|
import com.izouma.imt.service.points.PointsRecordService;
|
|
|
import com.izouma.imt.utils.FileUtils;
|
|
|
import com.izouma.imt.utils.ObjUtils;
|
|
|
+import com.izouma.imt.utils.SecurityUtils;
|
|
|
import com.izouma.imt.utils.excel.ExcelUtils;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springframework.data.domain.Page;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.Comparator;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
@@ -34,17 +39,31 @@ public class CaseAndNewsController extends BaseController {
|
|
|
private CaseAndNewsRepo caseAndNewsRepo;
|
|
|
private PointsRecordService pointsRecordService;
|
|
|
private VendorInfoRepo vendorInfoRepo;
|
|
|
+ private OperatingRepo operatingRepo;
|
|
|
|
|
|
//@PreAuthorize("hasRole('ADMIN')")
|
|
|
@PostMapping("/save")
|
|
|
- public CaseAndNews save(@RequestBody CaseAndNews record) {
|
|
|
+ public CaseAndNews save(@RequestBody CaseAndNews record, HttpServletRequest request) {
|
|
|
+ Operating operating = Operating.builder()
|
|
|
+ .userId(SecurityUtils.getAuthenticatedUser().getId())
|
|
|
+ .ip(SecurityUtils.getIp2(request))
|
|
|
+ .operate("添加案例")
|
|
|
+ .time(LocalDateTime.now())
|
|
|
+ .content(record.getTitle())
|
|
|
+ .vendorInfoId(record.getVendorInfoId())
|
|
|
+ .build();
|
|
|
+
|
|
|
if (record.getSort() == null) {
|
|
|
record.setSort(caseAndNewsRepo.nextSort(record.getVendorInfoId(), record.getType()));
|
|
|
}
|
|
|
+
|
|
|
if (record.getId() != null) {
|
|
|
CaseAndNews orig = caseAndNewsRepo.findById(record.getId()).orElseThrow(new BusinessException("无记录"));
|
|
|
ObjUtils.merge(orig, record);
|
|
|
- return caseAndNewsRepo.save(orig);
|
|
|
+ operating.setOperate("修改案例");
|
|
|
+ CaseAndNews save = caseAndNewsRepo.save(orig);
|
|
|
+ operatingRepo.save(operating);
|
|
|
+ return save;
|
|
|
}
|
|
|
String enName = "casePressRelease";
|
|
|
if (CaseAndNewsType.NEWS.equals(record.getType())) {
|
|
|
@@ -56,7 +75,9 @@ public class CaseAndNewsController extends BaseController {
|
|
|
.getUserId();
|
|
|
pointsRecordService.findPoints(userId, enName);
|
|
|
// record.setUserId(userId);
|
|
|
- return caseAndNewsRepo.save(record);
|
|
|
+ CaseAndNews save = caseAndNewsRepo.save(record);
|
|
|
+ operatingRepo.save(operating);
|
|
|
+ return save;
|
|
|
}
|
|
|
|
|
|
|