|
@@ -1,22 +1,75 @@
|
|
|
package com.sysu.admin.controller.lz.ns.site;
|
|
|
|
|
|
+import com.sysu.admin.controller.lz.ns.NsActionRecordService;
|
|
|
import com.sysu.admin.controller.lz.ns.NsActionTreeService;
|
|
|
+import com.sysu.admin.controller.lz.ns.bean.NsActionRecord;
|
|
|
+import com.sysu.admin.controller.lz.ns.bean.NsActionTree;
|
|
|
+import com.sysu.admin.controller.lz.tree.LzTree;
|
|
|
+import com.sysu.admin.controller.lz.tree.LzTreeService;
|
|
|
+import com.sysu.admin.site.CommonVo;
|
|
|
import com.xiesx.fastboot.base.result.BaseResult;
|
|
|
import com.xiesx.fastboot.base.result.R;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import java.util.*;
|
|
|
+
|
|
|
@RequestMapping("/site/ns_action_record")
|
|
|
@RestController
|
|
|
public class NsActionRecordController {
|
|
|
|
|
|
@Autowired
|
|
|
- private NsActionTreeService nsActionTreeService;
|
|
|
+ private NsActionRecordService nsActionRecordService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private NsActionTreeService actionTreeService;
|
|
|
+ @Autowired
|
|
|
+ private LzTreeService lzTreeService;
|
|
|
|
|
|
@RequestMapping("/list")
|
|
|
- public BaseResult list(){
|
|
|
+ public BaseResult list(@RequestBody CommonVo commonVo){
|
|
|
+ List<LzTree> treeList = lzTreeService.findListByAreaId(commonVo.getAreaId());
|
|
|
+ List<Integer> ids = new ArrayList<>(treeList.size());
|
|
|
+ treeList.stream().forEach(lzTree -> ids.add(lzTree.getId()));
|
|
|
+ List<NsActionTree> nsActionTrees = actionTreeService.findAll();
|
|
|
+ Map<Integer, NsActionTree> integerNsActionTreeMap = listToMap(nsActionTrees);
|
|
|
+ List<NsActionRecord> res = nsActionRecordService.findAllByTreeIds(ids, commonVo.getFinished());
|
|
|
+ res.stream().forEach(nsActionRecord -> {
|
|
|
+ NsActionTree actionTree = integerNsActionTreeMap.get(nsActionRecord.getActionId());
|
|
|
+ nsActionRecord.setActionName(actionTree.getName());
|
|
|
+ nsActionRecord.setTypeId(actionTree.getTypeId());
|
|
|
+ });
|
|
|
+ return R.succ(res);
|
|
|
+ }
|
|
|
+
|
|
|
+ public Map<Integer, NsActionTree> listToMap(List<NsActionTree> nsActionTrees){
|
|
|
+ Map<Integer, NsActionTree> map = new HashMap<>();
|
|
|
+ nsActionTrees.forEach(nsActionTree -> {
|
|
|
+ map.put(nsActionTree.getId(), nsActionTree);
|
|
|
+ });
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
+ @RequestMapping("/save")
|
|
|
+ public BaseResult save(@RequestBody ActionRecordVo actionRecordVo){
|
|
|
+ List<LzTree> treeList = lzTreeService.findListByCodes(actionRecordVo.getCodes());
|
|
|
+ Date now = new Date();
|
|
|
+ List<NsActionRecord> nsActionRecordList = new ArrayList<>();
|
|
|
+ treeList.stream().forEach(tree -> {
|
|
|
+ actionRecordVo.getActionIds().stream().forEach(actionId -> {
|
|
|
+ NsActionRecord nsActionRecord = new NsActionRecord();
|
|
|
+ nsActionRecord.setTreeId(tree.getId());
|
|
|
+ nsActionRecord.setActionId(actionId);
|
|
|
+ nsActionRecord.setFinished(actionRecordVo.getFinished());
|
|
|
+ nsActionRecord.setSource(actionRecordVo.getSource());
|
|
|
+ nsActionRecord.setCreateDate(now);
|
|
|
+ nsActionRecordList.add(nsActionRecord);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ nsActionRecordService.saveAll(nsActionRecordList);
|
|
|
return R.succ();
|
|
|
}
|
|
|
}
|