Преглед изворни кода

订单财务审核添加物流信息和订单详情

wangxy пре 21 часа
родитељ
комит
441a029d63

+ 65 - 0
fs-company/src/main/java/com/fs/company/controller/store/FsStoreOrderController.java

@@ -23,6 +23,7 @@ import com.fs.his.dto.ExpressInfoDTO;
 import com.fs.his.enums.ShipperCodeEnum;
 import com.fs.his.param.*;
 import com.fs.his.service.IFsExportTaskService;
+import com.fs.his.service.IFsExternalOrderService;
 import com.fs.his.service.IFsExpressService;
 import com.fs.his.service.IFsStoreOrderFinanceAuditService;
 import com.fs.his.service.IFsStoreOrderService;
@@ -462,6 +463,9 @@ public class FsStoreOrderController extends BaseController
     @Autowired
     private IFsStoreOrderFinanceAuditService fsStoreOrderFinanceAuditService;
 
+    @Autowired
+    private IFsExternalOrderService fsExternalOrderService;
+
     /**
      * 财务审核列表
      */
@@ -491,6 +495,67 @@ public class FsStoreOrderController extends BaseController
                 userName));
     }
 
+    /**
+     * 财务审核-订单详情
+     */
+    @PreAuthorize("@ss.hasPermi('his:storeOrder:financeAuditList')")
+    @GetMapping("/financeAuditDetail")
+    public AjaxResult financeAuditDetail(@RequestParam("orderId") Long orderId, @RequestParam("orderType") Integer orderType) {
+        if (orderType != null && orderType == 0) {
+            return AjaxResult.success(fsExternalOrderService.selectExternalOrderDetailVO(orderId));
+        } else {
+            Map<String, Object> result = new HashMap<>();
+            FsStoreOrder order = fsStoreOrderService.selectFsStoreOrderByOrderId(orderId);
+            result.put("order", order);
+            result.put("orderCode", order.getOrderCode());
+            result.put("totalPrice", order.getTotalPrice());
+            result.put("payPrice", order.getPayPrice());
+            result.put("status", order.getStatus());
+            result.put("deliverySn", order.getDeliverySn());
+            result.put("deliveryName", order.getDeliveryName());
+            result.put("deliveryType", order.getDeliveryType());
+            result.put("deliveryStatus", order.getDeliveryStatus());
+            result.put("userName", order.getUserName());
+            result.put("userPhone", order.getUserPhone());
+            result.put("userAddress", order.getRemark());
+            List<FsStoreOrderItem> items = fsStoreOrderService.selectFsStoreOrderItemList(orderId.toString());
+            result.put("productList", items);
+            return AjaxResult.success(result);
+        }
+    }
+
+    /**
+     * 财务审核-查询物流
+     */
+    @PreAuthorize("@ss.hasPermi('his:storeOrder:financeAuditList')")
+    @GetMapping("/financeAuditExpress")
+    public R financeAuditExpress(@RequestParam("orderId") Long orderId, @RequestParam("orderType") Integer orderType) {
+        if (orderType != null && orderType == 0) {
+            return R.ok().put("data", fsExternalOrderService.getExpress(orderId));
+        } else {
+            return getExpress(orderId);
+        }
+    }
+
+    @PreAuthorize("@ss.hasPermi('his:storeOrder:financeAuditList')")
+    @GetMapping("/financeAuditSyncExpress")
+    public R financeAuditSyncExpress(@RequestParam("orderId") Long orderId, @RequestParam("orderType") Integer orderType) {
+        if (orderType != null && orderType == 0) {
+            return fsExternalOrderService.syncExpress(orderId);
+        } else {
+            return R.ok().put("data", fsStoreOrderService.syncExpress(orderId));
+        }
+    }
+
+    @Log(title = "财务审核", businessType = BusinessType.EXPORT)
+    @PreAuthorize("@ss.hasPermi('his:storeOrder:financeAuditList')")
+    @GetMapping("/financeAuditExport")
+    public AjaxResult financeAuditExport(FsStoreOrderFinanceAudit query) {
+        List<FsStoreOrderFinanceAudit> list = fsStoreOrderFinanceAuditService.selectFsStoreOrderFinanceAuditList(query);
+        ExcelUtil<FsStoreOrderFinanceAudit> util = new ExcelUtil<>(FsStoreOrderFinanceAudit.class);
+        return util.exportExcel(list, "财务审核数据");
+    }
+
     @GetMapping("/getCustomerOrderList")
     public TableDataInfo getCustomerOrderList(FsStoreOrderParam param) {
         startPage();

+ 12 - 0
fs-service/src/main/java/com/fs/his/domain/FsStoreOrderFinanceAudit.java

@@ -74,4 +74,16 @@ public class FsStoreOrderFinanceAudit extends BaseEntity {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
     private Date applyTime;
+
+    private String deliverySn;
+
+    private Integer deliveryStatus;
+
+    private String deliveryName;
+
+    private String deliveryType;
+
+    private String sApplyTime;
+
+    private String eApplyTime;
 }

+ 18 - 5
fs-service/src/main/resources/mapper/his/FsStoreOrderFinanceAuditMapper.xml

@@ -27,14 +27,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="applyTime"           column="apply_time"           />
         <result property="createTime"          column="create_time"          />
         <result property="updateTime"          column="update_time"          />
+        <result property="deliverySn"          column="delivery_sn"          />
+        <result property="deliveryStatus"      column="delivery_status"      />
+        <result property="deliveryName"        column="delivery_name"        />
+        <result property="deliveryType"        column="delivery_type"        />
     </resultMap>
 
     <sql id="selectFsStoreOrderFinanceAuditVo">
-        select id, order_id, order_code, audit_type, original_total_price, original_pay_price,
-               new_total_price, new_pay_price, price_change_reason, audit_status, audit_user_id,
-               audit_user_name, audit_time, audit_remark, voucher_images, voucher_remark, order_type,
-               apply_user_id, apply_user_name, apply_time, create_time, update_time
-        from fs_store_order_finance_audit
+        select fa.id, fa.order_id, fa.order_code, fa.audit_type, fa.original_total_price, fa.original_pay_price,
+               fa.new_total_price, fa.new_pay_price, fa.price_change_reason, fa.audit_status, fa.audit_user_id,
+               fa.audit_user_name, fa.audit_time, fa.audit_remark, fa.voucher_images, fa.voucher_remark, fa.order_type,
+               fa.apply_user_id, fa.apply_user_name, fa.apply_time, fa.create_time, fa.update_time,
+               coalesce(eo.delivery_sn, so.delivery_sn) as delivery_sn,
+               coalesce(eo.delivery_status, so.delivery_status) as delivery_status,
+               coalesce(eo.delivery_name, so.delivery_name) as delivery_name,
+               coalesce(eo.delivery_type, so.delivery_type) as delivery_type
+        from fs_store_order_finance_audit fa
+        left join fs_external_order eo on fa.order_type = 0 and fa.order_id = eo.order_id
+        left join fs_store_order so on fa.order_type = 1 and fa.order_id = so.order_id
     </sql>
 
     <select id="selectFsStoreOrderFinanceAuditList" parameterType="FsStoreOrderFinanceAudit" resultMap="FsStoreOrderFinanceAuditResult">
@@ -46,6 +56,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="auditStatus != null">and audit_status = #{auditStatus}</if>
             <if test="orderType != null">and order_type = #{orderType}</if>
             <if test="applyUserId != null">and apply_user_id = #{applyUserId}</if>
+            <if test="applyUserName != null and applyUserName != ''">and fa.apply_user_name like concat('%', #{applyUserName}, '%')</if>
+            <if test="sApplyTime != null and sApplyTime != ''">and date(fa.apply_time) &gt;= #{sApplyTime}</if>
+            <if test="eApplyTime != null and eApplyTime != ''">and date(fa.apply_time) &lt;= #{eApplyTime}</if>
         </where>
         order by create_time desc
     </select>