From f4185f3c8cf71d613eb1a15928f2d8cf60027d68 Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期二, 21 十一月 2023 20:32:55 +0800
Subject: [PATCH] ABC评分签审

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Stream.java                           |   66 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamOperationMapper.xml         |   18 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/ABCAssessmentMapper.xml           |   34 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/ABCAssessmentServiceImpl.java   |   33 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/ABCAssessment.java                    |   83 +++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/StreamOperation.java                  |   64 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamServiceImpl.java          |   49 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/StreamPage.java                           |   67 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/ABCAssessmentMapper.java              |   42 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamOperationServiceImpl.java |   27 +
 lxzn-module-system/lxzn-system-start/src/main/resources/db/2023_11_16(lnl)/sys_dict_update.sql   |  266 +++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamOperationService.java         |   22 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamMapper.java                     |   14 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamService.java                  |   32 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamMapper.xml                  |    5 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/StreamController.java             |  483 +++++++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamOperationMapper.java            |   32 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IABCAssessmentService.java           |   30 +
 18 files changed, 1,367 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/StreamController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/StreamController.java
new file mode 100644
index 0000000..5aa0ffe
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/StreamController.java
@@ -0,0 +1,483 @@
+package org.jeecg.modules.eam.controller;
+
+import org.jeecg.common.system.query.QueryGenerator;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.api.vo.Result;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.web.servlet.ModelAndView;
+import java.util.Arrays;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.eam.entity.StreamOperation;
+import org.jeecg.modules.eam.entity.ABCAssessment;
+import org.jeecg.modules.eam.entity.Stream;
+import org.jeecg.modules.eam.service.IStreamService;
+import org.jeecg.modules.eam.service.IStreamOperationService;
+import org.jeecg.modules.eam.service.IABCAssessmentService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+ /**
+ * @Description: 璁惧ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Api(tags="璁惧ABC璇勪环")
+@RestController
+@RequestMapping("/eam/stream")
+@Slf4j
+public class StreamController extends JeecgController<Stream, IStreamService> {
+
+	@Autowired
+	private IStreamService streamService;
+
+	@Autowired
+	private IStreamOperationService streamOperationService;
+
+	@Autowired
+	private IABCAssessmentService aBCAssessmentService;
+
+
+	/*---------------------------------涓昏〃澶勭悊-begin-------------------------------------*/
+
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 * @param stream
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "璁惧ABC璇勪环-鍒嗛〉鍒楄〃鏌ヨ")
+	@ApiOperation(value="璁惧ABC璇勪环-鍒嗛〉鍒楄〃鏌ヨ", notes="璁惧ABC璇勪环-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<IPage<Stream>> queryPageList(Stream stream,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<Stream> queryWrapper = QueryGenerator.initQueryWrapper(stream, req.getParameterMap());
+		Page<Stream> page = new Page<Stream>(pageNo, pageSize);
+		IPage<Stream> pageList = streamService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+
+	/**
+     *   娣诲姞
+     * @param stream
+     * @return
+     */
+    @AutoLog(value = "璁惧ABC璇勪环-娣诲姞")
+    @ApiOperation(value="璁惧ABC璇勪环-娣诲姞", notes="璁惧ABC璇勪环-娣诲姞")
+    //@RequiresPermissions("org.jeecg.modules.mdc:mom_eam_stream:add")
+    @PostMapping(value = "/add")
+	@Transactional(rollbackFor = {Exception.class})
+    public Result<String> add(@RequestBody Stream stream) {
+		LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
+    	stream.setStatus("create");
+    	stream.setCreateBy(user.getId());
+    	stream.setType("ABC");
+		streamService.save(stream);
+    	List<ABCAssessment> abcAssessmentList = stream.getAssessmentList();
+    	for(ABCAssessment abcAssessment:abcAssessmentList){
+    		abcAssessment.setStreamId(stream.getId());
+		}
+    	aBCAssessmentService.saveBatch(abcAssessmentList);
+        return Result.OK("娣诲姞鎴愬姛锛�");
+    }
+
+    /**
+     *  缂栬緫
+     * @param stream
+     * @return
+     */
+    @AutoLog(value = "璁惧ABC璇勪环-缂栬緫")
+    @ApiOperation(value="璁惧ABC璇勪环-缂栬緫", notes="璁惧ABC璇勪环-缂栬緫")
+	@Transactional(rollbackFor = {Exception.class})
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+    public Result<String> edit(@RequestBody Stream stream) {
+		LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
+    	aBCAssessmentService.remove(new QueryWrapper<ABCAssessment>().eq("stream_id",stream.getId()));
+		stream.setUpdateBy(user.getId());
+		streamService.updateById(stream);
+		List<ABCAssessment> abcAssessmentList = stream.getAssessmentList();
+		for(ABCAssessment abcAssessment:abcAssessmentList){
+			abcAssessment.setStreamId(stream.getId());
+		}
+		aBCAssessmentService.saveBatch(abcAssessmentList);
+        return Result.OK("缂栬緫鎴愬姛!");
+    }
+
+    /**
+     * 閫氳繃id鍒犻櫎
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "璁惧ABC璇勪环-閫氳繃id鍒犻櫎")
+    @ApiOperation(value="璁惧ABC璇勪环-閫氳繃id鍒犻櫎", notes="璁惧ABC璇勪环-閫氳繃id鍒犻櫎")
+    //@RequiresPermissions("org.jeecg.modules.mdc:mom_eam_stream:delete")
+    @DeleteMapping(value = "/delete")
+    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		aBCAssessmentService.remove(new QueryWrapper<ABCAssessment>().eq("stream_id",id));
+        streamService.delMain(id);
+        return Result.OK("鍒犻櫎鎴愬姛!");
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "璁惧ABC璇勪环-鎵归噺鍒犻櫎")
+    @ApiOperation(value="璁惧ABC璇勪环-鎵归噺鍒犻櫎", notes="璁惧ABC璇勪环-鎵归噺鍒犻櫎")
+    //@RequiresPermissions("org.jeecg.modules.mdc:mom_eam_stream:deleteBatch")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+        this.streamService.delBatchMain(Arrays.asList(ids.split(",")));
+        return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
+    }
+
+    /**
+     * 瀵煎嚭
+     * @return
+     */
+    //@RequiresPermissions("org.jeecg.modules.mdc:mom_eam_stream:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, Stream stream) {
+        return super.exportXls(request, stream, Stream.class, "璁惧ABC璇勪环");
+    }
+
+    /**
+     * 瀵煎叆
+     * @return
+     */
+    //@RequiresPermissions("org.jeecg.modules.mdc:mom_eam_stream:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, Stream.class);
+    }
+	/*---------------------------------涓昏〃澶勭悊-end-------------------------------------*/
+
+
+    /*--------------------------------瀛愯〃澶勭悊-鎿嶄綔璁板綍-begin----------------------------------------------*/
+	/**
+	 * 閫氳繃涓昏〃ID鏌ヨ
+	 * @return
+	 */
+	//@AutoLog(value = "鎿嶄綔璁板綍-閫氳繃涓昏〃ID鏌ヨ")
+	@ApiOperation(value="鎿嶄綔璁板綍-閫氳繃涓昏〃ID鏌ヨ", notes="鎿嶄綔璁板綍-閫氳繃涓昏〃ID鏌ヨ")
+	@GetMapping(value = "/listStreamOperationByMainId")
+    public Result<IPage<StreamOperation>> listStreamOperationByMainId(StreamOperation streamOperation,
+                                                    @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                    @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                    HttpServletRequest req) {
+        QueryWrapper<StreamOperation> queryWrapper = QueryGenerator.initQueryWrapper(streamOperation, req.getParameterMap());
+        Page<StreamOperation> page = new Page<StreamOperation>(pageNo, pageSize);
+        IPage<StreamOperation> pageList = streamOperationService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+	/**
+	 * 娣诲姞
+	 * @param streamOperation
+	 * @return
+	 */
+	@AutoLog(value = "鎿嶄綔璁板綍-娣诲姞")
+	@ApiOperation(value="鎿嶄綔璁板綍-娣诲姞", notes="鎿嶄綔璁板綍-娣诲姞")
+	@PostMapping(value = "/addStreamOperation")
+	public Result<String> addStreamOperation(@RequestBody StreamOperation streamOperation) {
+		streamOperationService.save(streamOperation);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+
+    /**
+	 * 缂栬緫
+	 * @param streamOperation
+	 * @return
+	 */
+	@AutoLog(value = "鎿嶄綔璁板綍-缂栬緫")
+	@ApiOperation(value="鎿嶄綔璁板綍-缂栬緫", notes="鎿嶄綔璁板綍-缂栬緫")
+	@RequestMapping(value = "/editStreamOperation", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> editStreamOperation(@RequestBody StreamOperation streamOperation) {
+		streamOperationService.updateById(streamOperation);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "鎿嶄綔璁板綍-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="鎿嶄綔璁板綍-閫氳繃id鍒犻櫎", notes="鎿嶄綔璁板綍-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/deleteStreamOperation")
+	public Result<String> deleteStreamOperation(@RequestParam(name="id",required=true) String id) {
+		streamOperationService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+
+	/**
+	 * 鎵归噺鍒犻櫎
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "鎿嶄綔璁板綍-鎵归噺鍒犻櫎")
+	@ApiOperation(value="鎿嶄綔璁板綍-鎵归噺鍒犻櫎", notes="鎿嶄綔璁板綍-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatchStreamOperation")
+	public Result<String> deleteBatchStreamOperation(@RequestParam(name="ids",required=true) String ids) {
+	    this.streamOperationService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
+	}
+
+    /**
+     * 瀵煎嚭
+     * @return
+     */
+    @RequestMapping(value = "/exportStreamOperation")
+    public ModelAndView exportStreamOperation(HttpServletRequest request, StreamOperation streamOperation) {
+		 // Step.1 缁勮鏌ヨ鏉′欢
+		 QueryWrapper<StreamOperation> queryWrapper = QueryGenerator.initQueryWrapper(streamOperation, request.getParameterMap());
+		 LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+
+		 // Step.2 鑾峰彇瀵煎嚭鏁版嵁
+		 List<StreamOperation> pageList = streamOperationService.list(queryWrapper);
+		 List<StreamOperation> exportList = null;
+
+		 // 杩囨护閫変腑鏁版嵁
+		 String selections = request.getParameter("selections");
+		 if (oConvertUtils.isNotEmpty(selections)) {
+			 List<String> selectionList = Arrays.asList(selections.split(","));
+			 exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
+		 } else {
+			 exportList = pageList;
+		 }
+
+		 // Step.3 AutoPoi 瀵煎嚭Excel
+		 ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+		 //姝ゅ璁剧疆鐨刦ilename鏃犳晥,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓�
+		 mv.addObject(NormalExcelConstants.FILE_NAME, "鎿嶄綔璁板綍");
+		 mv.addObject(NormalExcelConstants.CLASS, StreamOperation.class);
+		 mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("鎿嶄綔璁板綍鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), "鎿嶄綔璁板綍"));
+		 mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
+		 return mv;
+    }
+
+    /**
+     * 瀵煎叆
+     * @return
+     */
+    @RequestMapping(value = "/importStreamOperation/{mainId}")
+    public Result<?> importStreamOperation(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") String mainId) {
+		 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+		 Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+		 for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+       // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
+			 MultipartFile file = entity.getValue();
+			 ImportParams params = new ImportParams();
+			 params.setTitleRows(2);
+			 params.setHeadRows(1);
+			 params.setNeedSave(true);
+			 try {
+				 List<StreamOperation> list = ExcelImportUtil.importExcel(file.getInputStream(), StreamOperation.class, params);
+				 for (StreamOperation temp : list) {
+                    temp.setStreamId(mainId);
+				 }
+				 long start = System.currentTimeMillis();
+				 streamOperationService.saveBatch(list);
+				 log.info("娑堣�楁椂闂�" + (System.currentTimeMillis() - start) + "姣");
+				 return Result.OK("鏂囦欢瀵煎叆鎴愬姛锛佹暟鎹鏁帮細" + list.size());
+			 } catch (Exception e) {
+				 log.error(e.getMessage(), e);
+				 return Result.error("鏂囦欢瀵煎叆澶辫触:" + e.getMessage());
+			 } finally {
+				 try {
+					 file.getInputStream().close();
+				 } catch (IOException e) {
+					 e.printStackTrace();
+				 }
+			 }
+		 }
+		 return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
+    }
+
+    /*--------------------------------瀛愯〃澶勭悊-鎿嶄綔璁板綍-end----------------------------------------------*/
+
+    /*--------------------------------瀛愯〃澶勭悊-ABC璇勫垎-begin----------------------------------------------*/
+	/**
+	 * 閫氳繃涓昏〃ID鏌ヨ
+	 * @return
+	 */
+	//@AutoLog(value = "ABC璇勫垎-閫氳繃涓昏〃ID鏌ヨ")
+	@ApiOperation(value="ABC璇勫垎-閫氳繃涓昏〃ID鏌ヨ", notes="ABC璇勫垎-閫氳繃涓昏〃ID鏌ヨ")
+	@GetMapping(value = "/listABCAssessmentByMainId")
+    public Result<IPage<ABCAssessment>> listABCAssessmentByMainId(ABCAssessment aBCAssessment,
+                                                    @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                    @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                    HttpServletRequest req) {
+        QueryWrapper<ABCAssessment> queryWrapper = QueryGenerator.initQueryWrapper(aBCAssessment, req.getParameterMap());
+        Page<ABCAssessment> page = new Page<ABCAssessment>(pageNo, pageSize);
+        IPage<ABCAssessment> pageList = aBCAssessmentService.myPage(page, aBCAssessment.getStreamId());
+        return Result.OK(pageList);
+    }
+
+	/**
+	 * 娣诲姞
+	 * @param aBCAssessment
+	 * @return
+	 */
+	@AutoLog(value = "ABC璇勫垎-娣诲姞")
+	@ApiOperation(value="ABC璇勫垎-娣诲姞", notes="ABC璇勫垎-娣诲姞")
+	@PostMapping(value = "/addABCAssessment")
+	public Result<String> addABCAssessment(@RequestBody ABCAssessment aBCAssessment) {
+		aBCAssessmentService.save(aBCAssessment);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+
+    /**
+	 * 缂栬緫
+	 * @param aBCAssessment
+	 * @return
+	 */
+	@AutoLog(value = "ABC璇勫垎-缂栬緫")
+	@ApiOperation(value="ABC璇勫垎-缂栬緫", notes="ABC璇勫垎-缂栬緫")
+	@RequestMapping(value = "/editABCAssessment", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> editABCAssessment(@RequestBody ABCAssessment aBCAssessment) {
+		aBCAssessmentService.updateById(aBCAssessment);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+
+	/**
+	 * 閫氳繃id鍒犻櫎
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "ABC璇勫垎-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="ABC璇勫垎-閫氳繃id鍒犻櫎", notes="ABC璇勫垎-閫氳繃id鍒犻櫎")
+	@DeleteMapping(value = "/deleteABCAssessment")
+	public Result<String> deleteABCAssessment(@RequestParam(name="id",required=true) String id) {
+		aBCAssessmentService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+
+	/**
+	 * 鎵归噺鍒犻櫎
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "ABC璇勫垎-鎵归噺鍒犻櫎")
+	@ApiOperation(value="ABC璇勫垎-鎵归噺鍒犻櫎", notes="ABC璇勫垎-鎵归噺鍒犻櫎")
+	@DeleteMapping(value = "/deleteBatchABCAssessment")
+	public Result<String> deleteBatchABCAssessment(@RequestParam(name="ids",required=true) String ids) {
+	    this.aBCAssessmentService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
+	}
+
+    /**
+     * 瀵煎嚭
+     * @return
+     */
+    @RequestMapping(value = "/exportABCAssessment")
+    public ModelAndView exportABCAssessment(HttpServletRequest request, ABCAssessment aBCAssessment) {
+		 // Step.1 缁勮鏌ヨ鏉′欢
+		 QueryWrapper<ABCAssessment> queryWrapper = QueryGenerator.initQueryWrapper(aBCAssessment, request.getParameterMap());
+		 LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+
+		 // Step.2 鑾峰彇瀵煎嚭鏁版嵁
+		 List<ABCAssessment> pageList = aBCAssessmentService.list(queryWrapper);
+		 List<ABCAssessment> exportList = null;
+
+		 // 杩囨护閫変腑鏁版嵁
+		 String selections = request.getParameter("selections");
+		 if (oConvertUtils.isNotEmpty(selections)) {
+			 List<String> selectionList = Arrays.asList(selections.split(","));
+			 exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
+		 } else {
+			 exportList = pageList;
+		 }
+
+		 // Step.3 AutoPoi 瀵煎嚭Excel
+		 ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+		 //姝ゅ璁剧疆鐨刦ilename鏃犳晥,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓�
+		 mv.addObject(NormalExcelConstants.FILE_NAME, "ABC璇勫垎");
+		 mv.addObject(NormalExcelConstants.CLASS, ABCAssessment.class);
+		 mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("ABC璇勫垎鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), "ABC璇勫垎"));
+		 mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
+		 return mv;
+    }
+
+    /**
+     * 瀵煎叆
+     * @return
+     */
+    @RequestMapping(value = "/importABCAssessment/{mainId}")
+    public Result<?> importABCAssessment(HttpServletRequest request, HttpServletResponse response, @PathVariable("mainId") String mainId) {
+		 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+		 Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+		 for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+       // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
+			 MultipartFile file = entity.getValue();
+			 ImportParams params = new ImportParams();
+			 params.setTitleRows(2);
+			 params.setHeadRows(1);
+			 params.setNeedSave(true);
+			 try {
+				 List<ABCAssessment> list = ExcelImportUtil.importExcel(file.getInputStream(), ABCAssessment.class, params);
+				 for (ABCAssessment temp : list) {
+                    temp.setStreamId(mainId);
+				 }
+				 long start = System.currentTimeMillis();
+				 aBCAssessmentService.saveBatch(list);
+				 log.info("娑堣�楁椂闂�" + (System.currentTimeMillis() - start) + "姣");
+				 return Result.OK("鏂囦欢瀵煎叆鎴愬姛锛佹暟鎹鏁帮細" + list.size());
+			 } catch (Exception e) {
+				 log.error(e.getMessage(), e);
+				 return Result.error("鏂囦欢瀵煎叆澶辫触:" + e.getMessage());
+			 } finally {
+				 try {
+					 file.getInputStream().close();
+				 } catch (IOException e) {
+					 e.printStackTrace();
+				 }
+			 }
+		 }
+		 return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
+    }
+
+    /*--------------------------------瀛愯〃澶勭悊-ABC璇勫垎-end----------------------------------------------*/
+
+	 /**
+	  * 閫氳繃id鏌ヨ
+	  *
+	  * @param id
+	  * @return
+	  */
+	 //@AutoLog(value = "ABC璇勪环閫氳繃涓昏〃ID鏌ヨ")
+	 @ApiOperation(value="ABC璇勪环涓昏〃ID鏌ヨ", notes="ABC璇勪环-閫氫富琛↖D鏌ヨ")
+	 @GetMapping(value = "/queryABCAssessmentByMainId")
+	 public Result<List<ABCAssessment>> queryABCAssessmentListByMainId(@RequestParam(name="id",required=true) String id) {
+		 List<ABCAssessment> aBCAssessmentList = aBCAssessmentService.selectByMainId(id);
+		 return Result.OK(aBCAssessmentList);
+	 }
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/ABCAssessment.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/ABCAssessment.java
new file mode 100644
index 0000000..51b87b5
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/ABCAssessment.java
@@ -0,0 +1,83 @@
+package org.jeecg.modules.eam.entity;
+
+import java.io.Serializable;
+
+import com.baomidou.mybatisplus.annotation.*;
+import org.jeecg.common.aspect.annotation.Dict;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: ABC璇勫垎
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Data
+@TableName("mom_eam_ABC_assessment")
+@ApiModel(value="mom_eam_ABC_assessment瀵硅薄", description="ABC璇勫垎")
+public class ABCAssessment implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+    private java.lang.String id;
+	/**璁惧ID*/
+	@Excel(name = "璁惧ID", width = 15)
+    @ApiModelProperty(value = "璁惧ID")
+    private java.lang.String equipmentId;
+	/**骞冲潎浣跨敤鐜囷紙鏁版嵁瀛楀吀锛欰BC-standardA锛�*/
+	@Excel(name = "骞冲潎浣跨敤鐜囷紙鏁版嵁瀛楀吀锛欰BC-standardA锛�", width = 15)
+    @ApiModelProperty(value = "骞冲潎浣跨敤鐜囷紙鏁版嵁瀛楀吀锛欰BC-standardA锛�")
+    @Dict(dicCode = "ABC-standardA")
+    private java.lang.String standardA;
+	/**鍙浛鎹㈡�э紙鏁版嵁瀛楀吀锛欰BC-standardB锛�*/
+	@Excel(name = "鍙浛鎹㈡�э紙鏁版嵁瀛楀吀锛欰BC-standardB锛�", width = 15)
+    @ApiModelProperty(value = "鍙浛鎹㈡�э紙鏁版嵁瀛楀吀锛欰BC-standardB锛�")
+    @Dict(dicCode = "ABC-standardB")
+    private java.lang.String standardB;
+	/**鏁呴殰褰卞搷搴︼紙鏁版嵁瀛楀吀锛欰BC-standardC锛�*/
+	@Excel(name = "鏁呴殰褰卞搷搴︼紙鏁版嵁瀛楀吀锛欰BC-standardC锛�", width = 15)
+    @ApiModelProperty(value = "鏁呴殰褰卞搷搴︼紙鏁版嵁瀛楀吀锛欰BC-standardC锛�")
+    @Dict(dicCode = "ABC-standardC")
+    private java.lang.String standardC;
+	/**鐢熶骇瓒呭樊搴︼紙鏁版嵁瀛楀吀锛欰BC-standardD锛�*/
+	@Excel(name = "鐢熶骇瓒呭樊搴︼紙鏁版嵁瀛楀吀锛欰BC-standardD锛�", width = 15)
+    @ApiModelProperty(value = "鐢熶骇瓒呭樊搴︼紙鏁版嵁瀛楀吀锛欰BC-standardD锛�")
+    @Dict(dicCode = "ABC-standardD")
+    private java.lang.String standardD;
+	/**鏁呴殰棰戠巼锛堟暟鎹瓧鍏革細ABC-standardE锛�*/
+	@Excel(name = "鏁呴殰棰戠巼锛堟暟鎹瓧鍏革細ABC-standardE锛�", width = 15)
+    @ApiModelProperty(value = "鏁呴殰棰戠巼锛堟暟鎹瓧鍏革細ABC-standardE锛�")
+    @Dict(dicCode = "ABC-standardE")
+    private java.lang.String standardE;
+	/**璁惧浠峰�硷紙鏁版嵁瀛楀吀锛欰BC-standardF锛�*/
+	@Excel(name = "璁惧浠峰�硷紙鏁版嵁瀛楀吀锛欰BC-standardF锛�", width = 15)
+    @ApiModelProperty(value = "璁惧浠峰�硷紙鏁版嵁瀛楀吀锛欰BC-standardF锛�")
+    @Dict(dicCode = "ABC-standardF")
+    private java.lang.String standardF;
+	/**娴両D*/
+    @ApiModelProperty(value = "娴両D")
+    private java.lang.String streamId;
+	/**缁撴灉*/
+	@Excel(name = "缁撴灉", width = 15)
+    @ApiModelProperty(value = "缁撴灉")
+    @Dict(dicCode = "ABC-standard-result")
+    private java.lang.String finalStandard;
+	@TableField(exist = false)
+	private String num;
+	@TableField(exist = false)
+	private String name;
+    @TableField(exist = false)
+	private String model;
+    @TableField(exist = false)
+    @Dict(dicCode = "ABC-standard-result")
+    private String equipmentImportanceId;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Stream.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Stream.java
new file mode 100644
index 0000000..fb3d97d
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Stream.java
@@ -0,0 +1,66 @@
+package org.jeecg.modules.eam.entity;
+
+import java.io.Serializable;
+import java.io.UnsupportedEncodingException;
+import java.util.Date;
+import java.util.List;
+
+import com.baomidou.mybatisplus.annotation.*;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Description: 璁惧ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Data
+@TableName("mom_eam_stream")
+@ApiModel(value="mom_eam_stream瀵硅薄", description="璁惧ABC璇勪环")
+public class Stream implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+    private java.lang.String id;
+	/**num*/
+    @Excel(name = "num", width = 15)
+    @ApiModelProperty(value = "num")
+    private java.lang.String num;
+	/**status*/
+    @Excel(name = "status", width = 15)
+    @ApiModelProperty(value = "status")
+    @Dict(dicCode = "stream_node")
+    private java.lang.String status;
+	/**createTime*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "createTime")
+    private java.util.Date createTime;
+	/**createBy*/
+    @ApiModelProperty(value = "createBy")
+    @Dict(dicCode = "id",dicText = "realname",dictTable = "sys_user")
+    private java.lang.String createBy;
+	/**updateTime*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "updateTime")
+    private java.util.Date updateTime;
+	/**updateBy*/
+    @ApiModelProperty(value = "updateBy")
+    private java.lang.String updateBy;
+	/**鍗曟嵁绫诲瀷*/
+    @Excel(name = "鍗曟嵁绫诲瀷", width = 15)
+    @ApiModelProperty(value = "鍗曟嵁绫诲瀷")
+    @Dict(dicCode = "stream_type")
+    private java.lang.String type;
+    @TableField(exist = false)
+    private List<ABCAssessment> assessmentList;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/StreamOperation.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/StreamOperation.java
new file mode 100644
index 0000000..0749d12
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/StreamOperation.java
@@ -0,0 +1,64 @@
+package org.jeecg.modules.eam.entity;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import org.jeecg.common.aspect.annotation.Dict;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.io.UnsupportedEncodingException;
+
+/**
+ * @Description: 鎿嶄綔璁板綍
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Data
+@TableName("mom_eam_stream_operation")
+@ApiModel(value="mom_eam_stream_operation瀵硅薄", description="鎿嶄綔璁板綍")
+public class StreamOperation implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+    private java.lang.String id;
+	/**鎺掑簭*/
+	@Excel(name = "鎺掑簭", width = 15)
+    @ApiModelProperty(value = "鎺掑簭")
+    private java.lang.Integer sort;
+	/**鎿嶄綔*/
+	@Excel(name = "鎿嶄綔", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔")
+    private java.lang.String operation;
+	/**涓婁竴姝ユ搷浣淚D*/
+	@Excel(name = "涓婁竴姝ユ搷浣淚D", width = 15)
+    @ApiModelProperty(value = "涓婁竴姝ユ搷浣淚D")
+    private java.lang.String sourceId;
+	/**鎿嶄綔浜�*/
+	@Excel(name = "鎿嶄綔浜�", width = 15)
+    @ApiModelProperty(value = "鎿嶄綔浜�")
+    private java.lang.String userId;
+	/**娴両D*/
+    @ApiModelProperty(value = "娴両D")
+    private java.lang.String streamId;
+	/**鎿嶄綔鏃堕棿*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @ApiModelProperty(value = "鎿嶄綔鏃堕棿")
+    private java.util.Date createTime;
+	/**鎿嶄綔鑺傜偣*/
+    @ApiModelProperty(value = "鎿嶄綔鑺傜偣")
+	private String operationNode;
+    /**鎿嶄綔浜烘剰瑙�*/
+    @ApiModelProperty(value = "鎿嶄綔浜烘剰瑙�")
+    private String remark;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/ABCAssessmentMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/ABCAssessmentMapper.java
new file mode 100644
index 0000000..56f9644
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/ABCAssessmentMapper.java
@@ -0,0 +1,42 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.eam.entity.ABCAssessment;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * @Description: ABC璇勫垎
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface ABCAssessmentMapper extends BaseMapper<ABCAssessment> {
+
+	/**
+	 * 閫氳繃涓昏〃id鍒犻櫎瀛愯〃鏁版嵁
+	 *
+	 * @param mainId 涓昏〃id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+   /**
+    * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+    *
+    * @param mainId 涓昏〃id
+    * @return List<ABCAssessment>
+    */
+	public List<ABCAssessment> selectByMainId(@Param("mainId") String mainId);
+	/**
+	 * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+	 *
+	 * @param mainId 涓昏〃id
+	 * @param page
+	 * @return List<ABCAssessment>
+	 */
+	public List<ABCAssessment> myPage (Page<ABCAssessment> page, @Param("mainId") String mainId);
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamMapper.java
new file mode 100644
index 0000000..3c59447
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamMapper.java
@@ -0,0 +1,14 @@
+package org.jeecg.modules.eam.mapper;
+
+import org.jeecg.modules.eam.entity.Stream;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 璁惧ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface StreamMapper extends BaseMapper<Stream> {
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamOperationMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamOperationMapper.java
new file mode 100644
index 0000000..1caa13d
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/StreamOperationMapper.java
@@ -0,0 +1,32 @@
+package org.jeecg.modules.eam.mapper;
+
+import java.util.List;
+import org.jeecg.modules.eam.entity.StreamOperation;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * @Description: 鎿嶄綔璁板綍
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface StreamOperationMapper extends BaseMapper<StreamOperation> {
+
+	/**
+	 * 閫氳繃涓昏〃id鍒犻櫎瀛愯〃鏁版嵁
+	 *
+	 * @param mainId 涓昏〃id
+	 * @return boolean
+	 */
+	public boolean deleteByMainId(@Param("mainId") String mainId);
+
+   /**
+    * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+    *
+    * @param mainId 涓昏〃id
+    * @return List<StreamOperation>
+    */
+	public List<StreamOperation> selectByMainId(@Param("mainId") String mainId);
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/ABCAssessmentMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/ABCAssessmentMapper.xml
new file mode 100644
index 0000000..e83c125
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/ABCAssessmentMapper.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.ABCAssessmentMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE
+		FROM  mom_eam_abc_assessment
+		WHERE
+			 stream_id = #{mainId}
+	</delete>
+
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.eam.entity.ABCAssessment">
+		SELECT t1.*,
+		t2.name,
+		t2.num,
+		t2.model
+		FROM  mom_eam_abc_assessment t1
+		left join mom_eam_equipment t2 on t2.id = t1.equipment_id
+		WHERE
+			 stream_id = #{mainId}
+	</select>
+
+	<select id="myPage" parameterType="java.lang.String" resultType="org.jeecg.modules.eam.entity.ABCAssessment">
+		SELECT t1.*,
+			   t2.name,
+			   t2.num,
+			   t2.model,
+		       t2.equipment_importance_id equipmentImportanceId
+		FROM  mom_eam_abc_assessment t1
+				  left join mom_eam_equipment t2 on t2.id = t1.equipment_id
+		WHERE
+			stream_id = #{mainId}
+	</select>
+</mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamMapper.xml
new file mode 100644
index 0000000..9745c84
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamMapper.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.StreamMapper">
+
+</mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamOperationMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamOperationMapper.xml
new file mode 100644
index 0000000..a250490
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/StreamOperationMapper.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.eam.mapper.StreamOperationMapper">
+
+	<delete id="deleteByMainId" parameterType="java.lang.String">
+		DELETE
+		FROM  mom_eam_stream_operation
+		WHERE
+			 stream_id = #{mainId}
+	</delete>
+
+	<select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.eam.entity.StreamOperation">
+		SELECT *
+		FROM  mom_eam_stream_operation
+		WHERE
+			 stream_id = #{mainId}
+	</select>
+</mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IABCAssessmentService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IABCAssessmentService.java
new file mode 100644
index 0000000..d78e761
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IABCAssessmentService.java
@@ -0,0 +1,30 @@
+package org.jeecg.modules.eam.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.eam.entity.ABCAssessment;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: ABC璇勫垎
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface IABCAssessmentService extends IService<ABCAssessment> {
+
+  /**
+   * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+   *
+   * @param mainId
+   * @return List<ABCAssessment>
+   */
+	public List<ABCAssessment> selectByMainId(String mainId);
+    /**
+     * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+     * @param page
+     * @param mainId
+     * @return List<ABCAssessment>
+     */
+    public Page<ABCAssessment> myPage(Page<ABCAssessment>page,String mainId);
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamOperationService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamOperationService.java
new file mode 100644
index 0000000..527771c
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamOperationService.java
@@ -0,0 +1,22 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.StreamOperation;
+import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
+/**
+ * @Description: 鎿嶄綔璁板綍
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface IStreamOperationService extends IService<StreamOperation> {
+
+  /**
+   * 閫氳繃涓昏〃id鏌ヨ瀛愯〃鏁版嵁
+   *
+   * @param mainId
+   * @return List<StreamOperation>
+   */
+	public List<StreamOperation> selectByMainId(String mainId);
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamService.java
new file mode 100644
index 0000000..a3c6816
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IStreamService.java
@@ -0,0 +1,32 @@
+package org.jeecg.modules.eam.service;
+
+import org.jeecg.modules.eam.entity.Stream;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.io.Serializable;
+import java.util.Collection;
+
+/**
+ * @Description: 璁惧ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+public interface IStreamService extends IService<Stream> {
+
+	/**
+	 * 鍒犻櫎涓�瀵瑰
+	 *
+	 * @param id
+	 */
+	public void delMain (String id);
+
+	/**
+	 * 鎵归噺鍒犻櫎涓�瀵瑰
+	 *
+	 * @param idList
+	 */
+	public void delBatchMain (Collection<? extends Serializable> idList);
+
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/ABCAssessmentServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/ABCAssessmentServiceImpl.java
new file mode 100644
index 0000000..3560b45
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/ABCAssessmentServiceImpl.java
@@ -0,0 +1,33 @@
+package org.jeecg.modules.eam.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.eam.entity.ABCAssessment;
+import org.jeecg.modules.eam.mapper.ABCAssessmentMapper;
+import org.jeecg.modules.eam.service.IABCAssessmentService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: ABC璇勫垎
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Service
+public class ABCAssessmentServiceImpl extends ServiceImpl<ABCAssessmentMapper, ABCAssessment> implements IABCAssessmentService {
+
+	@Autowired
+	private ABCAssessmentMapper aBCAssessmentMapper;
+
+	@Override
+	public List<ABCAssessment> selectByMainId(String mainId) {
+		return aBCAssessmentMapper.selectByMainId(mainId);
+	}
+
+	@Override
+	public Page<ABCAssessment> myPage(Page<ABCAssessment> page, String mainId) {
+		return page.setRecords(baseMapper.myPage(page,mainId));
+	}
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamOperationServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamOperationServiceImpl.java
new file mode 100644
index 0000000..9079917
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamOperationServiceImpl.java
@@ -0,0 +1,27 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.StreamOperation;
+import org.jeecg.modules.eam.mapper.StreamOperationMapper;
+import org.jeecg.modules.eam.service.IStreamOperationService;
+import org.springframework.stereotype.Service;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * @Description: 鎿嶄綔璁板綍
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Service
+public class StreamOperationServiceImpl extends ServiceImpl<StreamOperationMapper, StreamOperation> implements IStreamOperationService {
+
+	@Autowired
+	private StreamOperationMapper streamOperationMapper;
+
+	@Override
+	public List<StreamOperation> selectByMainId(String mainId) {
+		return streamOperationMapper.selectByMainId(mainId);
+	}
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamServiceImpl.java
new file mode 100644
index 0000000..282de52
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/StreamServiceImpl.java
@@ -0,0 +1,49 @@
+package org.jeecg.modules.eam.service.impl;
+
+import org.jeecg.modules.eam.entity.Stream;
+import org.jeecg.modules.eam.mapper.StreamOperationMapper;
+import org.jeecg.modules.eam.mapper.ABCAssessmentMapper;
+import org.jeecg.modules.eam.mapper.StreamMapper;
+import org.jeecg.modules.eam.service.IStreamService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import java.io.Serializable;
+import java.util.Collection;
+
+/**
+ * @Description: 璁惧ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Service
+public class StreamServiceImpl extends ServiceImpl<StreamMapper, Stream> implements IStreamService {
+
+	@Autowired
+	private StreamMapper streamMapper;
+	@Autowired
+	private StreamOperationMapper streamOperationMapper;
+	@Autowired
+	private ABCAssessmentMapper aBCAssessmentMapper;
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void delMain(String id) {
+		streamOperationMapper.deleteByMainId(id);
+		aBCAssessmentMapper.deleteByMainId(id);
+		streamMapper.deleteById(id);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void delBatchMain(Collection<? extends Serializable> idList) {
+		for(Serializable id:idList) {
+			streamOperationMapper.deleteByMainId(id.toString());
+			aBCAssessmentMapper.deleteByMainId(id.toString());
+			streamMapper.deleteById(id);
+		}
+	}
+
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/StreamPage.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/StreamPage.java
new file mode 100644
index 0000000..8dcde9a
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/StreamPage.java
@@ -0,0 +1,67 @@
+package org.jeecg.modules.eam.vo;
+
+import java.util.List;
+import org.jeecg.modules.eam.entity.Stream;
+import org.jeecg.modules.eam.entity.StreamOperation;
+import org.jeecg.modules.eam.entity.ABCAssessment;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecgframework.poi.excel.annotation.ExcelEntity;
+import org.jeecgframework.poi.excel.annotation.ExcelCollection;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.util.Date;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Description: ABC璇勪环
+ * @Author: jeecg-boot
+ * @Date:   2023-11-21
+ * @Version: V1.0
+ */
+@Data
+@ApiModel(value="mom_eam_streamPage瀵硅薄", description="ABC璇勪环")
+public class StreamPage {
+
+	/**id*/
+	@ApiModelProperty(value = "id")
+    private java.lang.String id;
+	/**num*/
+	@Excel(name = "num", width = 15)
+	@ApiModelProperty(value = "num")
+    private java.lang.String num;
+	/**status*/
+	@Excel(name = "status", width = 15)
+	@ApiModelProperty(value = "status")
+    private java.lang.String status;
+	/**createTime*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@ApiModelProperty(value = "createTime")
+    private java.util.Date createTime;
+	/**createBy*/
+	@ApiModelProperty(value = "createBy")
+    private java.lang.String createBy;
+	/**updateTime*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+	@ApiModelProperty(value = "updateTime")
+    private java.util.Date updateTime;
+	/**updateBy*/
+	@ApiModelProperty(value = "updateBy")
+    private java.lang.String updateBy;
+	/**鍗曟嵁绫诲瀷*/
+	@Excel(name = "鍗曟嵁绫诲瀷", width = 15)
+	@ApiModelProperty(value = "鍗曟嵁绫诲瀷")
+    private java.lang.String type;
+
+	@ExcelCollection(name="鎿嶄綔璁板綍")
+	@ApiModelProperty(value = "鎿嶄綔璁板綍")
+	private List<StreamOperation> streamOperationList;
+	@ExcelCollection(name="ABC璇勪环")
+	@ApiModelProperty(value = "ABC璇勪环")
+	private List<ABCAssessment> aBCAssessmentList;
+
+}
diff --git "a/lxzn-module-system/lxzn-system-start/src/main/resources/db/2023_11_16\050lnl\051/sys_dict_update.sql" "b/lxzn-module-system/lxzn-system-start/src/main/resources/db/2023_11_16\050lnl\051/sys_dict_update.sql"
index 4b88004..3decf87 100644
--- "a/lxzn-module-system/lxzn-system-start/src/main/resources/db/2023_11_16\050lnl\051/sys_dict_update.sql"
+++ "b/lxzn-module-system/lxzn-system-start/src/main/resources/db/2023_11_16\050lnl\051/sys_dict_update.sql"
@@ -184,3 +184,269 @@
     'SCHEMA', N'dbo',
     'TABLE', N'mom_eam_equipment',
     'COLUMN', N'is_meta'
+
+CREATE TABLE [dbo].[mom_eam_stream] (
+    [id] nvarchar NOT NULL,
+    [num] nvarchar NULL,
+    [status] nvarchar NULL,
+    [create_time] datetime2 NULL,
+    [create_by] nvarchar NULL,
+    [update_time] datetime2 NULL,
+    [update_by] nvarchar NULL,
+    [type] nvarchar NULL,
+     PRIMARY KEY CLUSTERED ([id])
+    WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
+    )
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'涓婚敭ID',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍗曟嵁鍙�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'num'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鐘舵��',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'status'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍒涘缓鏃堕棿',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'create_time'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍒涘缓浜�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'create_by'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'淇敼鏃堕棿',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'update_time'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'淇敼浜�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'update_by'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍗曟嵁绫诲瀷',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'type'
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [id] nvarchar(32) COLLATE Chinese_PRC_CI_AS NOT NULL
+    GO
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [num] nvarchar(64) COLLATE Chinese_PRC_CI_AS NULL
+    GO
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [status] nvarchar(16) COLLATE Chinese_PRC_CI_AS NULL
+    GO
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [create_by] nvarchar(32) COLLATE Chinese_PRC_CI_AS NULL
+    GO
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [update_by] nvarchar(32) COLLATE Chinese_PRC_CI_AS NULL
+    GO
+
+ALTER TABLE [dbo].[mom_eam_stream] ALTER COLUMN [type] nvarchar(16) COLLATE Chinese_PRC_CI_AS NULL
+    GO
+
+    IF ((SELECT COUNT(*) FROM ::fn_listextendedproperty('MS_Description',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'type')) > 0)
+    EXEC sp_updateextendedproperty
+    'MS_Description', N'鍗曟嵁绫诲瀷',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'type'
+    ELSE
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍗曟嵁绫诲瀷',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream',
+    'COLUMN', N'type'
+
+CREATE TABLE [dbo].[mom_eam_ABC_assessment] (
+    [id] nvarchar(32) NOT NULL,
+    [equipment_id] nvarchar(32) NULL,
+    [standard_a] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [standard_b] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [standard_c] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [standard_d] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [standard_e] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [standard_f] nvarchar(16) COLLATE Chinese_PRC_CI_AS  NULL,
+    [stream_id] nvarchar(32) NULL,
+    [final] nvarchar(16) NULL,
+    PRIMARY KEY CLUSTERED ([id])
+    WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
+    )
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'璁惧ID',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'equipment_id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'骞冲潎浣跨敤鐜囷紙鏁版嵁瀛楀吀锛欰BC-standardA锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_a'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鍙浛鎹㈡�э紙鏁版嵁瀛楀吀锛欰BC-standardB锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_b'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鏁呴殰褰卞搷搴︼紙鏁版嵁瀛楀吀锛欰BC-standardC锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_c'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鐢熶骇瓒呭樊搴︼紙鏁版嵁瀛楀吀锛欰BC-standardD锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_d'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鏁呴殰棰戠巼锛堟暟鎹瓧鍏革細ABC-standardE锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_e'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'璁惧浠峰�硷紙鏁版嵁瀛楀吀锛欰BC-standardF锛�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'standard_f'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'娴両D',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'stream_id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'缁撴灉',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_ABC_assessment',
+    'COLUMN', N'final'
+
+
+CREATE TABLE [dbo].[mom_eam_stream_operation] (
+    [id] nvarchar(32) NOT NULL,
+    [sort] int NULL,
+    [operation] nvarchar(16) NULL,
+    [source_id] nvarchar(32) NULL,
+    [user_id] nvarchar(32) NULL,
+    [stream_id] nvarchar(32) NULL,
+    [create_time] datetime2 NULL,
+    PRIMARY KEY CLUSTERED ([id])
+    WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
+    )
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鎺掑簭',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'sort'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鎿嶄綔',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'operation'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'涓婁竴姝ユ搷浣淚D',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'source_id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鎿嶄綔浜�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'user_id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'娴両D',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'stream_id'
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鎿嶄綔鏃堕棿',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'create_time'
+
+    EXEC sp_rename '[dbo].[mom_eam_ABC_assessment].[final]', 'final_standard', 'COLUMN'
+
+    ALTER TABLE [dbo].[mom_eam_stream_operation] ADD [remark] text NULL
+    GO
+
+    EXEC sp_addextendedproperty
+    'MS_Description', N'鎿嶄綔浜烘剰瑙�',
+    'SCHEMA', N'dbo',
+    'TABLE', N'mom_eam_stream_operation',
+    'COLUMN', N'remark'
+INSERT INTO [dbo].[sys_dict] ([id], [dict_name], [dict_code], [description], [del_flag], [create_by], [create_time], [update_by], [update_time], [type]) VALUES (N'1726851458752135169', N'绛惧娴佽妭鐐�', N'stream_node', N'绛惧杩囩▼涓殑姣忎釜鑺傜偣', 0, N'admin', '2023-11-21 14:34:05.7720000', NULL, NULL, NULL);
+INSERT INTO [dbo].[sys_dict] ([id], [dict_name], [dict_code], [description], [del_flag], [create_by], [create_time], [update_by], [update_time], [type]) VALUES (N'1726853242417659906', N'绛惧娴佹搷浣�', N'stream_operation', N'绛惧娴佽繃绋嬩腑鐨勬瘡涓�椤规搷浣�', 0, N'admin', '2023-11-21 14:41:11.0310000', NULL, NULL, NULL);
+INSERT INTO [dbo].[sys_dict] ([id], [dict_name], [dict_code], [description], [del_flag], [create_by], [create_time], [update_by], [update_time], [type]) VALUES (N'1726858393618563073', N'ABC鏍囪瘑绛惧娴佽鑹茶妭鐐瑰搴旇〃', N'abc_stream_node_role', N'ABC鏍囪瘑绛惧娴侊紝瑙掕壊鑺傜偣瀵瑰簲琛�', 0, N'admin', '2023-11-21 15:01:39.1730000', NULL, NULL, NULL);
+INSERT INTO [dbo].[sys_dict] ([id], [dict_name], [dict_code], [description], [del_flag], [create_by], [create_time], [update_by], [update_time], [type]) VALUES (N'1726861018934099969', N'绛惧娴佽妭鐐规搷浣滃搴旇〃', N'stream_node_operation', N'绛惧娴佽妭鐐规搷浣滃搴旇〃', 0, N'admin', '2023-11-21 15:12:05.1000000', NULL, NULL, NULL);
+INSERT INTO [dbo].[sys_dict] ([id], [dict_name], [dict_code], [description], [del_flag], [create_by], [create_time], [update_by], [update_time], [type]) VALUES (N'1726937733580554241', N'绛惧鍗曠被鍒�', N'stream_type', '', 0, N'admin', '2023-11-21 20:16:55.2870000', NULL, NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726851540641726465', N'1726851458752135169', N'缂栧埗', N'create', '', 1, 1, N'admin', '2023-11-21 14:34:25.2960000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726852459756339202', N'1726851458752135169', N'瀹℃牳', N'audit', '', 2, 1, N'admin', '2023-11-21 14:38:04.0000000', N'admin', '2023-11-21 14:39:10.2050000');
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726852939219812353', N'1726851458752135169', N'瀹℃壒', N'approve', '', 3, 1, N'admin', '2023-11-21 14:39:58.7430000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726853297715363842', N'1726853242417659906', N'鎻愪氦', N'submit', '', 1, 1, N'admin', '2023-11-21 14:41:24.2150000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726853426505662466', N'1726853242417659906', N'鎾ゅ洖', N'withdraw', '', 2, 1, N'admin', '2023-11-21 14:41:54.9210000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726853508193927170', N'1726853242417659906', N'閫氳繃', N'pass', '', 3, 1, N'admin', '2023-11-21 14:42:14.3970000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726853578452713474', N'1726853242417659906', N'椹冲洖', N'reject', '', 4, 1, N'admin', '2023-11-21 14:42:31.1480000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726858727195754498', N'1726858393618563073', N'ABCCREATEBY', N'create', '', 1, 1, N'admin', '2023-11-21 15:02:58.0000000', N'admin', '2023-11-21 15:03:37.6520000');
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726858861585448961', N'1726858393618563073', N'ABCAUDITBY', N'audit', '', 2, 1, N'admin', '2023-11-21 15:03:30.0000000', N'admin', '2023-11-21 15:03:44.7730000');
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726859777231372290', N'1726858393618563073', N'ABCAPPROVEBY', N'approve', '', 3, 1, N'admin', '2023-11-21 15:07:09.0000000', N'admin', '2023-11-21 15:07:18.2570000');
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726861920705265665', N'1726861018934099969', N'submit,withdraw', N'create', N'缂栧埗锛堟彁浜わ紝鎾ゅ洖锛�', 1, 1, N'admin', '2023-11-21 15:15:40.0960000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726862430661328898', N'1726861018934099969', N'pass,reject', N'audit', N'瀹℃牳锛堥�氳繃锛岄┏鍥烇級', 2, 1, N'admin', '2023-11-21 15:17:41.6790000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726862706931744770', N'1726861018934099969', N'pass,reject', N'approve', N'瀹℃壒锛堥�氳繃锛岄┏鍥烇級', 2, 1, N'admin', '2023-11-21 15:18:47.5510000', NULL, NULL);
+INSERT INTO [dbo].[sys_dict_item] ([id], [dict_id], [item_text], [item_value], [description], [sort_order], [status], [create_by], [create_time], [update_by], [update_time]) VALUES (N'1726937880649629698', N'1726937733580554241', N'ABC璇勫垎绛惧', N'ABC', '', 1, 1, N'admin', '2023-11-21 20:17:30.3550000', NULL, NULL);

--
Gitblit v1.9.3