Просмотр исходного кода

1、修改打印票据新建编辑方法

zhoux 1 год назад
Родитель
Сommit
d328f7f968

+ 2 - 6
src/main/java/com/dk/mdm/controller/mst/PrintLayoutController.java

@@ -26,9 +26,6 @@ public class PrintLayoutController{
     @Autowired
     private PrintLayoutService printLayoutService;
 
-    @Autowired
-    private CommonService commonService;
-
     /**
      * @desc   : 条件查询
      * @author : 张潇木
@@ -48,8 +45,7 @@ public class PrintLayoutController{
     @ApiOperation( value = "新建", notes = "新建" )
     @PostMapping({"insert"})
     public ResponseResultVO<?> insert(@RequestBody PrintLayout printLayout) {
-        printLayout.setDisplayNo(commonService.getMaxDisplayNo(Constant.DisplayNoTable.PRINT_LAYOUT));
-        return this.getService().insert(printLayout);
+        return printLayoutService.insert(printLayout);
     }
 
     /**
@@ -60,7 +56,7 @@ public class PrintLayoutController{
     @ApiOperation( value = "编辑", notes = "编辑" )
     @PostMapping({"update"})
     public ResponseResultVO<?> update(@RequestBody PrintLayout printLayout) {
-        return this.getService().updateByUuid(printLayout);
+        return printLayoutService.update(printLayout);
     }
 
     /**

+ 8 - 0
src/main/java/com/dk/mdm/mapper/mst/PrintLayoutMapper.java

@@ -1,5 +1,6 @@
 package com.dk.mdm.mapper.mst;
 
+import com.dk.mdm.model.pojo.core.Factory;
 import com.dk.mdm.model.pojo.mst.PrintLayout;
 import com.dk.common.mapper.BaseMapper;
 import org.springframework.stereotype.Repository;
@@ -17,5 +18,12 @@ public interface PrintLayoutMapper extends BaseMapper<PrintLayout>{
      * @date : 2024-4-22 15:47
      */
     Map<String, Object> getPrintData(Map param);
+
+    /**
+     * @desc   : 票据名称是否重复
+     * @date   : 2024/4/23 16:39
+     * @author : 周兴
+     */
+    Long selectByName(PrintLayout printLayout);
 }
 

+ 11 - 0
src/main/java/com/dk/mdm/mapper/mst/PrintLayoutMapper.xml

@@ -111,6 +111,17 @@
         for update
     </select>
 
+    <!--票据名称是否重复-->
+    <select id="selectByName" resultType="Long">
+        select count(1)
+        from dkic_b.t_mst_print_layout
+        where #{layoutName} = layout_name
+        and cp_id = #{cpId}
+        <if test="layoutId != null">
+            and layout_id != #{layoutId} ::uuid
+        </if>
+    </select>
+
     <!--获取打印数据-->
     <select id="getPrintData" resultType="java.util.Map">
         SELECT *

+ 53 - 0
src/main/java/com/dk/mdm/service/mst/PrintLayoutService.java

@@ -2,13 +2,19 @@ package com.dk.mdm.service.mst;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.dk.common.infrastructure.constant.Constant;
+import com.dk.common.infrastructure.enums.ErrorCodeEnum;
 import com.dk.common.model.pojo.PageList;
+import com.dk.common.response.ResponseCodeEnum;
 import com.dk.common.response.ResponseResultUtil;
 import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.model.pojo.mst.PrintLayout;
 import com.dk.mdm.mapper.mst.PrintLayoutMapper;
 import com.dk.common.service.BaseService;
 import com.dk.common.mapper.BaseMapper;
+import com.dk.mdm.model.pojo.mst.Role;
+import com.dk.mdm.model.vo.mst.RoleVo;
+import com.dk.mdm.service.common.CommonService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -35,6 +41,9 @@ public class PrintLayoutService extends BaseService<PrintLayout> {
 	@Autowired
 	private PrintLayoutMapper printLayoutMapper;
 
+	@Autowired
+	private CommonService commonService;
+
 	/**
 	 * @desc : 获取打印数据
 	 * @author : 周兴
@@ -45,4 +54,48 @@ public class PrintLayoutService extends BaseService<PrintLayout> {
 		JSONObject obj = JSONObject.parseObject(map.get("f_get_print_data").toString());
 		return ResponseResultUtil.success(obj.get("data"));
 	}
+
+	/**
+	 * @desc   : 新建票据
+	 * @author : 周兴
+	 * @date   : 2024/4/23 8:38
+	 */
+	@Transactional(
+			rollbackFor = {Exception.class}
+	)
+	public ResponseResultVO<?> insert(PrintLayout printLayout) {
+		// 判断票据名称是否重复
+		Long count = printLayoutMapper.selectByName(printLayout);
+		if(count > 0){
+			return ResponseResultUtil.error(ErrorCodeEnum.LAYOUT_NAME_EXISTS.getCode(),
+					ErrorCodeEnum.LAYOUT_NAME_EXISTS.getMessage());
+		}
+		// 获取显示顺序
+		Integer displayNo =commonService.getMaxDisplayNo(Constant.DisplayNoTable.PRINT_LAYOUT);
+		printLayout.setDisplayNo(displayNo);
+		//新建
+		super.insert(printLayout);
+		return ResponseResultUtil.success();
+	}
+
+	/**
+	 * @desc   : 更新票据
+	 * @author : 周兴
+	 * @date   : 2024/4/23 8:38
+	 */
+	@Transactional(
+			rollbackFor = {Exception.class}
+	)
+	public ResponseResultVO<Boolean> update(PrintLayout printLayout) {
+		// 判断票据名称是否重复
+		Long count = printLayoutMapper.selectByName(printLayout);
+		if(count > 0){
+			return ResponseResultUtil.error(ErrorCodeEnum.LAYOUT_NAME_EXISTS.getCode(),
+					ErrorCodeEnum.LAYOUT_NAME_EXISTS.getMessage());
+		}
+		// 更新
+		super.updateByUuid(printLayout);
+		return ResponseResultUtil.success();
+	}
+
 }