Parcourir la source

日志增加自定义类型

guq il y a 7 ans
Parent
commit
d50c539331

+ 5 - 1
applications/commons/commons-api/src/main/java/com/usoftchina/saas/commons/api/MessageLogService.java

@@ -4,6 +4,7 @@ import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.context.request.async.DeferredResult;
 
 /**
@@ -35,6 +36,9 @@ public interface MessageLogService {
     @RequestMapping("/messagelog/close")
     public String close(@RequestBody DocBaseDTO baseDTO);
 
-    @RequestMapping("//messagelog/open")
+    @RequestMapping("/messagelog/open")
     public String open(@RequestBody DocBaseDTO baseDTO);
+
+    @RequestMapping("/messagelog/customizeLog")
+    public DeferredResult<String> customizeLog(@RequestBody DocBaseDTO baseDTO, @RequestParam("content") String content);
 }

+ 18 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/controller/MessageLogController.java

@@ -2,9 +2,11 @@ package com.usoftchina.saas.commons.controller;
 
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.service.MessageLogService;
+
 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.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.context.request.async.DeferredResult;
 
@@ -92,4 +94,20 @@ public class MessageLogController {
                 .whenCompleteAsync((result, throwable) -> deferredResult.setResult(result));
         return deferredResult;
     }
+
+    /**
+    * @Description 自定义的Log
+    * @Param: [baseDTO]
+    * @return: org.springframework.web.context.request.async.DeferredResult<java.lang.String>
+    * @Author: guq
+    * @Date: 2018/10/25
+    */
+    @RequestMapping("/customizeLog")
+    public DeferredResult<String> customizeLog(@RequestBody DocBaseDTO baseDTO, @RequestParam("content") String content) {
+        // Create the deferredResult and initiate a callback object, task, with it
+        DeferredResult<String> deferredResult = new DeferredResult<>();
+        CompletableFuture.supplyAsync(() -> messageLogService.customizeLog(baseDTO, content))
+                .whenCompleteAsync((result, throwable) -> deferredResult.setResult(result));
+        return deferredResult;
+    }
 }

+ 2 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/MessageLogService.java

@@ -21,4 +21,6 @@ public interface MessageLogService extends CommonBaseService<MessagelogMapper, M
     String close(DocBaseDTO baseDTO);
 
     String open(DocBaseDTO baseDTO);
+
+    String customizeLog(DocBaseDTO baseDTO, String content);
 }

+ 15 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/MessageLogServiceImpl.java

@@ -67,6 +67,21 @@ public class MessageLogServiceImpl extends CommonBaseServiceImpl<MessagelogMappe
         return log(Operation.OPEN, baseDTO);
     }
 
+    @Override
+    public String customizeLog(DocBaseDTO baseDTO, String content) {
+        Messagelog msg = new Messagelog();
+        msg.setMl_caller(baseDTO.getName());
+        msg.setMl_content(content);
+        msg.setMl_result(content);
+        msg.setMl_code(baseDTO.getCode());
+        msg.setCompanyId(BaseContextHolder.getCompanyId());
+        msg.setCreateTime(new Date());
+        msg.setCreatorId(BaseContextHolder.getUserId());
+        msg.setMl_keyvalue(baseDTO.getId());
+        getMapper().insert(msg);
+        return "success";
+    }
+
     private String log(Operation operation, DocBaseDTO baseDTO) {
         String language = "zh_CN";
         Messagelog msg = new Messagelog();

+ 3 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java

@@ -23,9 +23,10 @@ public interface PurchaseMapper extends CommonBaseMapper<Purchase>{
 
     String validateBatchUnAudit(List<DocBaseDTO> baseDTOs);
 
-    Integer validateCodeWhenInsert(String code);
+    Integer validateCodeWhenInsert(@Param("code") String code, @Param("companyId") Long companyId);
 
-    Integer validateCodeWhenUpdate(@Param("code") String code,@Param("id") Long id);
+    Integer validateCodeWhenUpdate(@Param("code") String code, @Param("id") Long id,
+                                   @Param("companyId") Long companyId);
 
     String selectCodeById(Long id);
 }

+ 3 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/ProdInOutServiceImpl.java

@@ -339,8 +339,9 @@ public class ProdInOutServiceImpl extends CommonBaseServiceImpl<ProdInOutMapper,
         if (null == code) {
             throw new BizException(BizExceptionCode.NULL_CODE);
         }
-        Integer count = "0".equals(String.valueOf(id)) ? purchaseMapper.validateCodeWhenInsert(code) :
-                purchaseMapper.validateCodeWhenUpdate(code, id);
+        Long companyId = BaseContextHolder.getCompanyId();
+        Integer count = "0".equals(String.valueOf(id)) ? purchaseMapper.validateCodeWhenInsert(code, companyId) :
+                purchaseMapper.validateCodeWhenUpdate(code, id, companyId);
         return maxnumberService.pushMaxnubmer(count, code, "Purchase").toString();
     }
 

+ 3 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -470,8 +470,9 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         if (null == code) {
             throw new BizException(BizExceptionCode.NULL_CODE);
         }
-        Integer count = "0".equals(String.valueOf(id)) ? purchaseMapper.validateCodeWhenInsert(code) :
-                purchaseMapper.validateCodeWhenUpdate(code, id);
+        Long companyId = BaseContextHolder.getCompanyId();
+        Integer count = "0".equals(String.valueOf(id)) ? purchaseMapper.validateCodeWhenInsert(code, companyId) :
+                purchaseMapper.validateCodeWhenUpdate(code, id, companyId);
         return maxnumberService.pushMaxnubmer(count, code, BillCodeSeq.PURCHASE.getCaller()).getData();
     }
     

+ 5 - 5
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml

@@ -406,18 +406,18 @@
   <select id="validateUnAudit" parameterType="long" resultType="java.lang.String">
     select pu_code from purchase where pu_id = #{pu_id} and IFNULL(pu_statuscode,'UNAUDITED')='UNAUDITED'
   </select>
-  <select id="selectByTest" resultMap="BaseResultMap" parameterType="string" >
+  <!--<select id="selectByTest" resultMap="BaseResultMap" parameterType="string" >
     select * from purchase <where>
     <if test="_parameter != null">
        ${value}
     </if>
   </where>
-  </select>
-  <select id="validateCodeWhenInsert" resultType="int" parameterType="string" >
-    select count(1) from purchase where pu_code = #{code}
+  </select>-->
+  <select id="validateCodeWhenInsert" resultType="int">
+    select count(1) from purchase where pu_code = #{code} and companyId =#{companyId}
   </select>
   <select id="validateCodeWhenUpdate" resultType="int" >
-    select count(1) from purchase where pu_code = #{code} and pu_id != #{id}
+    select count(1) from purchase where pu_code = #{code} and pu_id != #{id} and companyId =#{companyId}
   </select>
   <select id="selectCodeById" resultType="string" parameterType="long">
     select pu_code from purchase where pu_id=#{id}

+ 2 - 2
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/mapper/SaleMapper.java

@@ -20,7 +20,7 @@ public interface SaleMapper {
 
     int updateByPrimaryKey(Sale record);
 
-    Integer validateCodeWhenInsert(String code);
+    Integer validateCodeWhenInsert(@Param("code") String code, @Param("companyId") Long companyId);
 
     String selectCodeById(Long id);
 
@@ -30,7 +30,7 @@ public interface SaleMapper {
 
     String validateAudit(List<DocBaseDTO> baseDTOs);
 
-    Integer validateCodeWhenUpdate(@Param("code") String code,@Param("id") Long id);
+    Integer validateCodeWhenUpdate(@Param("code") String code, @Param("id") Long id, @Param("companyId") Long companyId);
 
     void updateTotal(Long id);
 }

+ 23 - 21
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java

@@ -2,10 +2,13 @@ package com.usoftchina.saas.sale.service.impl;
 
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.commons.api.MaxnumberService;
+import com.usoftchina.saas.commons.api.MessageLogService;
 import com.usoftchina.saas.commons.dto.BatchDealBaseDTO;
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.commons.exception.BizExceptionCode;
+import com.usoftchina.saas.commons.po.BillCodeSeq;
 import com.usoftchina.saas.commons.po.Status;
 import com.usoftchina.saas.context.BaseContextHolder;
 import com.usoftchina.saas.exception.BizException;
@@ -43,10 +46,10 @@ public class SaleServiceImpl implements SaleService{
     private SaleMapper saleMapper;
     @Autowired
     private SaledetailMapper saledetailMapper;
-   /* @Autowired
+    @Autowired
     private MessageLogService messageLogService;
     @Autowired
-    private MaxnumberService maxnumberService;*/
+    private MaxnumberService maxnumberService;
     @Autowired
     private ProdInOutMapper prodInOutMapper;
     @Autowired
@@ -113,7 +116,7 @@ public class SaleServiceImpl implements SaleService{
         sale.setCreateTime(new Date());
 
         //编号校验
-        //sa_code = pushMaxnubmer(sa_code, sa_id);
+        sa_code = pushMaxnubmer(sa_code, sa_id);
         //单号赋值
         sale.setSa_code(sa_code);
         //判断更新与保存动作
@@ -136,7 +139,7 @@ public class SaleServiceImpl implements SaleService{
             //更新销售金额
             getTotal(sa_id);
             //日志记录
-            //messageLogService.save(baseDTO);
+            messageLogService.save(baseDTO);
             return baseDTO;
         }
         //更新操作
@@ -164,7 +167,7 @@ public class SaleServiceImpl implements SaleService{
         //更新销售金额
         getTotal(sa_id);
         //日志
-        //messageLogService.save(baseDTO);
+        messageLogService.update(baseDTO);
         return baseDTO;
     }
 
@@ -179,7 +182,7 @@ public class SaleServiceImpl implements SaleService{
         Integer num = saledetailMapper.deleteByPrimaryKey(id);
         DocBaseDTO docBaseDTO = getBaseDTOById(id);
         //日志
-        //messageLogService.deleteDetail(docBaseDTO);
+        messageLogService.deleteDetail(docBaseDTO);
         return num;
     }
 
@@ -206,7 +209,7 @@ public class SaleServiceImpl implements SaleService{
         }
         String code = saleMapper.validateUnAudit(id);
         if (null != code) {
-            throw new BizException(500, "单据:" + code + " 未审核,无法反审核");
+            throw new BizException(BizExceptionCode.SALE_NULL_BILL);
         }
         singleUnAudit(id);
     }
@@ -252,7 +255,7 @@ public class SaleServiceImpl implements SaleService{
 
         DocBaseDTO docBaseDTO = getBaseDTOById(id);
         //日志
-        //messageLogService.audit(docBaseDTO);
+        messageLogService.audit(docBaseDTO);
     }
 
     private void singleDelete(Long id) {
@@ -263,7 +266,7 @@ public class SaleServiceImpl implements SaleService{
             saleMapper.deleteByPrimaryKey(id);
             DocBaseDTO docBaseDTO = getBaseDTOById(id);
             //日志
-            //messageLogService.delete(docBaseDTO);
+            messageLogService.delete(docBaseDTO);
         }
     }
 
@@ -290,14 +293,15 @@ public class SaleServiceImpl implements SaleService{
      * @Author: guq
      * @Date: 2018/10/19
      */
-   /* private String pushMaxnubmer(String code, Long id) {
+    private String pushMaxnubmer(String code, Long id) {
         if (null == code) {
             throw new BizException(BizExceptionCode.NULL_CODE);
         }
-        Integer count = "0".equals(String.valueOf(id)) ? saleMapper.validateCodeWhenInsert(code) :
-                saleMapper.validateCodeWhenUpdate(code, id);
-        return maxnumberService.pushMaxnubmer(count, code, "Purchase").getData();
-    }*/
+        Long companyId = BaseContextHolder.getCompanyId();
+        Integer count = "0".equals(String.valueOf(id)) ? saleMapper.validateCodeWhenInsert(code, companyId) :
+                saleMapper.validateCodeWhenUpdate(code, id, companyId);
+        return maxnumberService.pushMaxnubmer(count, code, BillCodeSeq.SALE.getCaller()).getData();
+    }
 
     /**
      * @Description
@@ -343,7 +347,7 @@ public class SaleServiceImpl implements SaleService{
         saleMapper.updateByPrimaryKeySelective(sale);
         DocBaseDTO docBaseDTO = getBaseDTOById(id);
         //日志
-        //messageLogService.close(docBaseDTO);
+        messageLogService.close(docBaseDTO);
     }
 
     @Override
@@ -379,7 +383,7 @@ public class SaleServiceImpl implements SaleService{
             saleMapper.updateByPrimaryKeySelective(sale);
             DocBaseDTO docBaseDTO = getBaseDTOById(id);
             //日志
-            //messageLogService.open(docBaseDTO);
+            messageLogService.open(docBaseDTO);
         }
     }
 
@@ -419,10 +423,8 @@ public class SaleServiceImpl implements SaleService{
         //插入验收单主表
         ProdInOut prodInOut = new ProdInOut();
         //生成单号
-        //String pi_inoutno = maxnumberService.getMaxnumber("Sale", true).getData();
-       // Object data =
-        String pi_inoutno = "xxxxx" + (int)(Math.random()*100)+1;;
-
+        String pi_inoutno = maxnumberService.getMaxnumber(BillCodeSeq.SALEOUT.getCaller(),
+                true).getData();
         prodInOut.setPi_inoutno(pi_inoutno);
         prodInOut.setPi_class("出货单");
         prodInOut.setPi_date(new Date());
@@ -483,7 +485,7 @@ public class SaleServiceImpl implements SaleService{
         saleMapper.updateByPrimaryKeySelective(sale);
         DocBaseDTO docBaseDTO = getBaseDTOById(id);
         //日志
-        //messageLogService.unAudit(docBaseDTO);
+        messageLogService.unAudit(docBaseDTO);
     }
 
     //更新最新销售总额

+ 3 - 3
applications/sale/sale-server/src/main/resources/mapper/SaleMapper.xml

@@ -336,11 +336,11 @@
     where sa_id = #{id,jdbcType=INTEGER}
   </update>
 
-  <select id="validateCodeWhenInsert" resultType="int" parameterType="string" >
-    select count(1) from sale where sa_code = #{code}
+  <select id="validateCodeWhenInsert" resultType="int">
+    select count(1) from sale where sa_code = #{code} and companyid = #{companyId}
   </select>
   <select id="validateCodeWhenUpdate" resultType="int" >
-    select count(1) from sale where sa_code = #{code} and sa_id != #{id}
+    select count(1) from sale where sa_code = #{code} and sa_id != #{id} and companyid = #{companyId}
   </select>
   <select id="selectCodeById" resultType="string" parameterType="long">
     select sa_code from sale where sa_id=#{id}