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

买家中心--发票管理--审核发票记录

wangyc 8 лет назад
Родитель
Сommit
1670b501a2

+ 13 - 4
src/main/java/com/uas/platform/b2c/fa/settlement/controller/BillSubmitController.java

@@ -10,10 +10,7 @@ import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
 
@@ -45,6 +42,7 @@ public class BillSubmitController {
         String orderids = jsonObject.get("orderids").toString();
         Long invoiceid = Long.valueOf(jsonObject.get("invoiceid").toString());
         String[] orderidList = orderids.split(SplitChar.COMMA);
+        logger.log("发票申请", "保存发票申请信息");
         return billSubmitService.save(orderidList, invoiceid);
     }
 
@@ -61,4 +59,15 @@ public class BillSubmitController {
         logger.log("发票申请", "查找包含关键字的发票申请信息");
         return billSubmitService.getAll(pageInfo, keyword, role);
     }
+
+    /**
+     * 审核发票申请
+     * @param id 发票申请记录
+     * @return
+     */
+    @RequestMapping(value = "/{id}", method = RequestMethod.PUT)
+    public BillSubmit auditBillSubmit(@PathVariable("id") Long id) {
+        logger.log("发票申请", "审核发票申请");
+        return billSubmitService.auditBillSubmit(id);
+    };
 }

+ 7 - 0
src/main/java/com/uas/platform/b2c/fa/settlement/service/BillSubmitService.java

@@ -28,4 +28,11 @@ public interface BillSubmitService {
      * @return
      */
     Page<BillSubmit> getAll(PageInfo pageInfo, String keyword, String role);
+
+    /**
+     * 审核发票申请
+     * @param id 发票申请记录
+     * @return
+     */
+    BillSubmit auditBillSubmit(Long id);
 }

+ 30 - 1
src/main/java/com/uas/platform/b2c/fa/settlement/service/impl/BillSubmitServiceImpl.java

@@ -119,7 +119,7 @@ public class BillSubmitServiceImpl implements BillSubmitService {
         billSubmit.setCreateTime(new Date());
         billSubmit.setReceiverName(bill.getName());
         billSubmit.setRecTel(bill.getTelephone());
-        billSubmit.setStatus(Status.INPUTTING.value());
+        billSubmit.setStatus(Status.SUBMITTED.value());
         billSubmit.setSubmituu(SystemSession.getUser().getUserUU());
         if (SystemSession.getUser().getEnterprise() != null)
             billSubmit.setSubmitEnuu(SystemSession.getUser().getEnterprise().getUu());
@@ -191,4 +191,33 @@ public class BillSubmitServiceImpl implements BillSubmitService {
             }
         }, pageInfo);
     }
+
+    @Override
+    public BillSubmit auditBillSubmit(Long id) {
+        BillSubmit billSubmit = billSubmitDao.findOne(id);
+
+        if (billSubmit == null)
+            throw new IllegalOperatorException("此发票申请不存在");
+        if (!SystemSession.getUser().getEnterprise().getUu().equals(billSubmit.getSellerenuu()))
+            throw new IllegalOperatorException("此发票申请不属于当前企业");
+        if (Status.SUBMITTED.value() != billSubmit.getStatus())
+            throw new IllegalOperatorException("此发票申请不为待审核状态,不可审核");
+
+        billSubmit.setStatus(Status.AUDITED.value());
+        billSubmit.setHandleTime(new Date());
+
+        String[] orderids = billSubmit.getOrderids().split(SplitChar.COMMA);
+        for (String orderid : orderids) {
+            Order order = orderDao.findOrderByOrderid(orderid);
+            if (order == null)
+                throw new IllegalOperatorException("订单: " + orderid + " 不存在,请与客服人员确认该订单");
+            if (!SystemSession.getUser().getEnterprise().getUu().equals(order.getSellerenuu()))
+                throw new IllegalOperatorException("订单: " + orderid + " 不属于当前企业,不可审核");
+
+            order.setVatBillStatus(Status.TOBERECEIVE_BILL.value());
+            orderDao.save(order);
+        }
+
+        return billSubmitDao.save(billSubmit);
+    }
 }