Browse Source

nsy update 评价列表

ningsy 4 years ago
parent
commit
1f82c7f3f9

+ 83 - 0
suishenbang-order/src/main/java/com/dgtly/order/controller/EvaluateManageController.java

@@ -0,0 +1,83 @@
+package com.dgtly.order.controller;
+
+import java.util.List;
+
+import com.dgtly.order.domain.EvaluateDto;
+import com.dgtly.order.service.EvaluateService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.dgtly.common.core.controller.BaseController;
+import com.dgtly.common.core.domain.AjaxResult;
+import com.dgtly.common.utils.poi.ExcelUtil;
+import com.dgtly.common.core.page.TableDataInfo;
+
+/**
+ * 交货单基础Controller
+ * 
+ * @author dgtly
+ * @date 2020-11-12
+ */
+@Controller
+@RequestMapping("/orderBase/evaluateManage")
+public class EvaluateManageController extends BaseController
+{
+    private String prefix = "order/evaluate";
+
+    @Autowired
+    private EvaluateService evaluateServiceservice;
+
+    @RequiresPermissions("orderBase:evaluateManage:view")
+    @GetMapping()
+    public String base()
+    {
+        return prefix + "/evaluateList";
+    }
+
+    /**
+     * 查询交货单基础列表
+     */
+    @RequiresPermissions("orderBase:evaluateManage:list")
+    @PostMapping("/list")
+    @ResponseBody
+    public TableDataInfo list(EvaluateDto evaluateDto)
+    {
+        startPage();
+        evaluateDto.setIsDelete("0");
+        evaluateDto.setEvaluationStatus("y");
+        List<EvaluateDto> list = evaluateServiceservice.selectEvaluateDtoList(evaluateDto);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出交货单基础列表
+     */
+    @RequiresPermissions("orderBase:evaluateManage:export")
+    @PostMapping("/export")
+    @ResponseBody
+    public AjaxResult export(EvaluateDto evaluateDto)
+    {
+        evaluateDto.setIsDelete("0");
+        evaluateDto.setEvaluationStatus("y");
+        List<EvaluateDto> list = evaluateServiceservice.selectEvaluateDtoList(evaluateDto);
+        if(list.size() >= 10000){
+            return new AjaxResult(301,"数据大于 10000 条Excel将无法打开,请过滤查询条件");
+        }
+        ExcelUtil<EvaluateDto> util = new ExcelUtil<EvaluateDto>(EvaluateDto.class);
+        return util.exportExcel(list, "评价数据");
+    }
+
+    /**
+     * 交货单详情
+     */
+    @GetMapping("/details/{id}")
+    public String details(@PathVariable("id") Long id, ModelMap mmap)
+    {
+        EvaluateDto evaluateDto = evaluateServiceservice.selectEvaluateDtoById(id);
+        mmap.put("evaluateDto", evaluateDto);
+        return prefix + "/details";
+    }
+
+}

+ 273 - 0
suishenbang-order/src/main/java/com/dgtly/order/domain/EvaluateDto.java

@@ -0,0 +1,273 @@
+package com.dgtly.order.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.dgtly.common.annotation.Excel;
+import com.dgtly.common.core.domain.BaseEntity;
+import java.util.Date;
+
+/**
+ * 交货单基础对象 deliver_order_base
+ * 
+ * @author dgtly
+ * @date 2020-11-12
+ */
+public class EvaluateDto extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private Long id;
+
+    /** 是否删除 */
+    private String isDelete;
+
+    /** 订单号 */
+    @Excel(name = "订单号")
+    private String orderNumber;
+
+    /** 订单生成时间 */
+    @Excel(name = "订单生成时间")
+    private String orderCreationTime;
+
+    /** 交货单号 */
+    @Excel(name = "交货单号")
+    private String deliveryNumber;
+
+    /** 运单号 */
+    @Excel(name = "运单号")
+    private String shipmentNumber;
+
+    /** 订单所属 */
+    @Excel(name = "客户编码")
+    private String belongTo;
+
+    /** 经销商名称*/
+    @Excel(name = "客户名称")
+    private String customersName;
+
+    /** 确认时间 */
+    private Date confirmTime;
+
+    /** 确认人 */
+    private String confirmBy;
+
+    /** 确认通知 */
+    private String confirmNotice;
+
+    /** 发送确认信息到dis仓库 */
+    private String pushDisWarehouse;
+
+    /** 是否评价 */
+    private String evaluationStatus;
+
+    /** 评价服务态度 */
+    @Excel(name = "评价服务态度")
+    private Long evaluationServiceAttitude;
+
+    /** 评价破损情况 */
+    @Excel(name = "评价破损情况")
+    private Long evaluationDamageCondition;
+
+    /** 评价按时到达 */
+    @Excel(name = "评价按时到达")
+    private Long evaluationArriveTime;
+
+    /** 评价装卸情况 */
+    @Excel(name = "评价装卸情况")
+    private Long evaluationHandlingConditions;
+
+    /** 文字评价 */
+    @Excel(name = "文字评价")
+    private String evaluation;
+
+    public void setId(Long id)
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setIsDelete(String isDelete) 
+    {
+        this.isDelete = isDelete;
+    }
+
+    public String getIsDelete() 
+    {
+        return isDelete;
+    }
+    public void setOrderNumber(String orderNumber) 
+    {
+        this.orderNumber = orderNumber;
+    }
+
+    public String getOrderNumber() 
+    {
+        return orderNumber;
+    }
+    public void setOrderCreationTime(String orderCreationTime) 
+    {
+        this.orderCreationTime = orderCreationTime;
+    }
+
+    public String getOrderCreationTime() 
+    {
+        return orderCreationTime;
+    }
+    public void setDeliveryNumber(String deliveryNumber) 
+    {
+        this.deliveryNumber = deliveryNumber;
+    }
+
+    public String getDeliveryNumber() 
+    {
+        return deliveryNumber;
+    }
+    public void setShipmentNumber(String shipmentNumber) 
+    {
+        this.shipmentNumber = shipmentNumber;
+    }
+
+    public String getShipmentNumber() 
+    {
+        return shipmentNumber;
+    }
+    public void setBelongTo(String belongTo) 
+    {
+        this.belongTo = belongTo;
+    }
+
+    public String getBelongTo() 
+    {
+        return belongTo;
+    }
+    public void setConfirmTime(Date confirmTime) 
+    {
+        this.confirmTime = confirmTime;
+    }
+
+    public Date getConfirmTime() 
+    {
+        return confirmTime;
+    }
+    public void setConfirmBy(String confirmBy) 
+    {
+        this.confirmBy = confirmBy;
+    }
+
+    public String getConfirmBy() 
+    {
+        return confirmBy;
+    }
+    public void setConfirmNotice(String confirmNotice) 
+    {
+        this.confirmNotice = confirmNotice;
+    }
+
+    public String getConfirmNotice() 
+    {
+        return confirmNotice;
+    }
+    public void setPushDisWarehouse(String pushDisWarehouse) 
+    {
+        this.pushDisWarehouse = pushDisWarehouse;
+    }
+
+    public String getPushDisWarehouse() 
+    {
+        return pushDisWarehouse;
+    }
+    public void setEvaluationStatus(String evaluationStatus) 
+    {
+        this.evaluationStatus = evaluationStatus;
+    }
+
+    public String getEvaluationStatus() 
+    {
+        return evaluationStatus;
+    }
+    public void setEvaluationServiceAttitude(Long evaluationServiceAttitude) 
+    {
+        this.evaluationServiceAttitude = evaluationServiceAttitude;
+    }
+
+    public Long getEvaluationServiceAttitude() 
+    {
+        return evaluationServiceAttitude;
+    }
+    public void setEvaluationDamageCondition(Long evaluationDamageCondition) 
+    {
+        this.evaluationDamageCondition = evaluationDamageCondition;
+    }
+
+    public Long getEvaluationDamageCondition() 
+    {
+        return evaluationDamageCondition;
+    }
+    public void setEvaluationArriveTime(Long evaluationArriveTime) 
+    {
+        this.evaluationArriveTime = evaluationArriveTime;
+    }
+
+    public Long getEvaluationArriveTime() 
+    {
+        return evaluationArriveTime;
+    }
+    public void setEvaluationHandlingConditions(Long evaluationHandlingConditions) 
+    {
+        this.evaluationHandlingConditions = evaluationHandlingConditions;
+    }
+
+    public Long getEvaluationHandlingConditions() 
+    {
+        return evaluationHandlingConditions;
+    }
+    public void setEvaluation(String evaluation) 
+    {
+        this.evaluation = evaluation;
+    }
+
+    public String getEvaluation() 
+    {
+        return evaluation;
+    }
+
+    public String getCustomersName() {
+        return customersName;
+    }
+
+    public void setCustomersName(String customersName) {
+        this.customersName = customersName;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("isDelete", getIsDelete())
+            .append("orderNumber", getOrderNumber())
+            .append("orderCreationTime", getOrderCreationTime())
+            .append("deliveryNumber", getDeliveryNumber())
+            .append("shipmentNumber", getShipmentNumber())
+            .append("belongTo", getBelongTo())
+            .append("confirmTime", getConfirmTime())
+            .append("confirmBy", getConfirmBy())
+            .append("confirmNotice", getConfirmNotice())
+            .append("pushDisWarehouse", getPushDisWarehouse())
+            .append("evaluationStatus", getEvaluationStatus())
+            .append("evaluationServiceAttitude", getEvaluationServiceAttitude())
+            .append("evaluationDamageCondition", getEvaluationDamageCondition())
+            .append("evaluationArriveTime", getEvaluationArriveTime())
+            .append("evaluationHandlingConditions", getEvaluationHandlingConditions())
+            .append("evaluation", getEvaluation())
+            .append("customersName", getCustomersName())
+            .toString();
+    }
+}

+ 30 - 0
suishenbang-order/src/main/java/com/dgtly/order/mapper/EvaluateMapper.java

@@ -0,0 +1,30 @@
+package com.dgtly.order.mapper;
+
+import com.dgtly.order.domain.EvaluateDto;
+
+import java.util.List;
+
+/**
+ * 交货单基础Mapper接口
+ * 
+ * @author dgtly
+ * @date 2020-11-12
+ */
+public interface EvaluateMapper
+{
+    /**
+     * 查询交货单基础
+     * 
+     * @param id 交货单基础ID
+     * @return 交货单基础
+     */
+    EvaluateDto selectEvaluateDtoById(Long id);
+
+    /**
+     * 查询交货单基础列表
+     * 
+     * @param deliverOrderBase 交货单基础
+     * @return 交货单基础集合
+     */
+    List<EvaluateDto> selectEvaluateDtoList(EvaluateDto deliverOrderBase);
+}

+ 27 - 0
suishenbang-order/src/main/java/com/dgtly/order/service/EvaluateService.java

@@ -0,0 +1,27 @@
+package com.dgtly.order.service;
+
+import com.dgtly.order.domain.EvaluateDto;
+
+import java.util.List;
+
+/**
+ * 评价管理service
+ */
+public interface EvaluateService {
+    /**
+     * 查询交货单基础
+     *
+     * @param id 交货单基础ID
+     * @return 交货单基础
+     */
+    public EvaluateDto selectEvaluateDtoById(Long id);
+
+    /**
+     * 查询交货单基础列表
+     *
+     * @param deliverOrderBase 交货单基础
+     * @return 交货单基础集合
+     */
+    public List<EvaluateDto> selectEvaluateDtoList(EvaluateDto deliverOrderBase);
+
+}

+ 26 - 0
suishenbang-order/src/main/java/com/dgtly/order/service/impl/EvaluateServiceImpl.java

@@ -0,0 +1,26 @@
+package com.dgtly.order.service.impl;
+
+import com.dgtly.order.domain.EvaluateDto;
+import com.dgtly.order.mapper.EvaluateMapper;
+import com.dgtly.order.service.EvaluateService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Service
+public class EvaluateServiceImpl implements EvaluateService {
+
+    @Resource
+    private EvaluateMapper evaluateMapper;
+
+    @Override
+    public EvaluateDto selectEvaluateDtoById(Long id) {
+        return evaluateMapper.selectEvaluateDtoById(id);
+    }
+
+    @Override
+    public List<EvaluateDto> selectEvaluateDtoList(EvaluateDto evaluateDto) {
+        return evaluateMapper.selectEvaluateDtoList(evaluateDto);
+    }
+}

+ 63 - 0
suishenbang-order/src/main/resources/mapper/order/EvaluateMapper.xml

@@ -0,0 +1,63 @@
+<?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="com.dgtly.order.mapper.EvaluateMapper">
+    
+    <resultMap type="com.dgtly.order.domain.EvaluateDto" id="DeliverOrderBaseResult">
+        <result property="id"    column="id"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="isDelete"    column="is_delete"    />
+        <result property="orderNumber"    column="order_number"    />
+        <result property="orderCreationTime"    column="order_creation_time"    />
+        <result property="deliveryNumber"    column="delivery_number"    />
+        <result property="shipmentNumber"    column="shipment_number"    />
+        <result property="belongTo"    column="belong_to"    />
+        <result property="confirmTime"    column="confirm_time"    />
+        <result property="confirmBy"    column="confirm_by"    />
+        <result property="confirmNotice"    column="confirm_notice"    />
+        <result property="pushDisWarehouse"    column="push_dis_warehouse"    />
+        <result property="evaluationStatus"    column="evaluation_status"    />
+        <result property="evaluationServiceAttitude"    column="evaluation_service_attitude"    />
+        <result property="evaluationDamageCondition"    column="evaluation_damage_condition"    />
+        <result property="evaluationArriveTime"    column="evaluation_arrive_time"    />
+        <result property="evaluationHandlingConditions"    column="evaluation_handling_conditions"    />
+        <result property="evaluation"    column="evaluation"    />
+        <result property="customersName"    column="chains_name"    />
+    </resultMap>
+
+    <sql id="selectDeliverOrderBaseVo">
+       select dob.id, dob.order_number, dob.order_creation_time, dob.delivery_number,
+        dob.shipment_number, dob.belong_to, dob.confirm_time, dob.confirm_by, dob.evaluation_status,
+        dob.evaluation_service_attitude, dob.evaluation_damage_condition, dob.evaluation_arrive_time,
+        dob.evaluation_handling_conditions, dob.evaluation, cu.chains_name
+        from deliver_order_base dob
+        LEFT JOIN (select * from customers) as cu on dob.belong_to = cu.chains_code
+    </sql>
+
+    <select id="selectEvaluateDtoList" parameterType="com.dgtly.order.domain.EvaluateDto" resultMap="DeliverOrderBaseResult">
+        <include refid="selectDeliverOrderBaseVo"/>
+        <where>
+            <if test="isDelete != null  and isDelete != ''"> and dob.is_delete = #{isDelete}</if>
+            <if test="evaluationStatus != null  and evaluationStatus != ''"> and dob.evaluation_status = #{evaluationStatus}</if>
+            <if test="orderNumber != null  and orderNumber != ''"> and dob.order_number like concat('%', #{orderNumber}, '%')</if>
+            <if test="deliveryNumber != null  and deliveryNumber != ''"> and dob.delivery_number like concat('%', #{deliveryNumber}, '%')</if>
+            <if test="shipmentNumber != null  and shipmentNumber != ''"> and dob.shipment_number like concat('%', #{shipmentNumber}, '%')</if>
+            <if test="belongTo != null  and belongTo != ''"> and dob.belong_to like concat('%', #{belongTo}, '%')</if>
+            <if test="customersName != null  and customersName != ''"> and cu.chains_name like concat('%', #{customersName}, '%')</if>
+        </where>
+        GROUP BY dob.shipment_number ORDER BY dob.id desc
+
+    </select>
+    
+    <select id="selectEvaluateDtoById" parameterType="Long" resultMap="DeliverOrderBaseResult">
+        <include refid="selectDeliverOrderBaseVo"/>
+        where dob.is_delete = '0'
+        and dob.evaluation_status = 'y'
+        and dob.id = #{id}
+        limit 1
+    </select>
+</mapper>

+ 91 - 0
suishenbang-order/src/main/resources/templates/order/evaluate/details.html

@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('评价详情')" />
+    <th:block th:include="include :: datetimepicker-css" />
+</head>
+<body class="white-bg">
+    <div class="wrapper wrapper-content animated fadeInRight ibox-content">
+        <form class="form-horizontal m" id="form-base-edit" th:object="${evaluateDto}">
+            <input name="id" th:field="*{id}" type="hidden">
+            <div class="form-group">
+                <label class="col-sm-3 control-label">订单号:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{orderNumber}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">订单生成时间:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{orderCreationTime}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">交货单号:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{deliveryNumber}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">运单号:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{shipmentNumber}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">客户编码:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{belongTo}"></span>
+                </div>
+            </div>
+            <div class="form-group">
+                <label class="col-sm-3 control-label">客户名称:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{customersName}"></span>
+                </div>
+            </div>
+            <div class="form-group">
+                <label class="col-sm-3 control-label">评价服务态度:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{evaluationServiceAttitude}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">评价破损情况:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{evaluationDamageCondition}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">评价按时到达:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{evaluationArriveTime}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">评价装卸情况:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{evaluationHandlingConditions}"></span>
+                </div>
+            </div>
+            <div class="form-group">    
+                <label class="col-sm-3 control-label">文字评价:</label>
+                <div class="col-sm-8">
+                    <span class="form-control" th:text="*{evaluation}"></span>
+                </div>
+            </div>
+        </form>
+    </div>
+    <th:block th:include="include :: footer" />
+    <th:block th:include="include :: datetimepicker-js" />
+    <script type="text/javascript">
+        var prefix = ctx + "orderBase/evaluateManage";
+        $("#form-base-edit").validate({
+            focusCleanup: true
+        });
+        function submitHandler() {
+            $.modal.close();
+        }
+    </script>
+</body>
+</html>

+ 122 - 0
suishenbang-order/src/main/resources/templates/order/evaluate/evaluateList.html

@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <th:block th:include="include :: header('交货单基础列表')" />
+</head>
+<body class="gray-bg">
+     <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse">
+                <form id="formId">
+                    <div class="select-list">
+                        <ul>
+                            <li>
+                                <p>订单号:</p>
+                                <input type="text" name="orderNumber"/>
+                            </li>
+                            <li>
+                                <p>交货单号:</p>
+                                <input type="text" name="deliveryNumber"/>
+                            </li>
+                            <li>
+                                <p>运单号:</p>
+                                <input type="text" name="shipmentNumber"/>
+                            </li>
+                            <li>
+                                <p>客户编码:</p>
+                                <input type="text" name="belongTo"/>
+                            </li>
+                            <li>
+                                <p>客户名称:</p>
+                                <input type="text" name="customersName"/>
+                            </li>
+                            <li>
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="orderBase:evaluateManage:details">
+                    <i class="fa fa-edit"></i> 详情
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="orderBase:evaluateManage:export">
+                    <i class="fa fa-download"></i> 导出
+                 </a>
+            </div>
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+    <th:block th:include="include :: footer" />
+    <script th:inline="javascript">
+        var prefix = ctx + "orderBase/evaluateManage";
+
+        $(function() {
+            var options = {
+                url: prefix + "/list",
+                updateUrl: prefix + "/details/{id}",
+                exportUrl: prefix + "/export",
+                modalName: "评价列表",
+                columns: [{
+                    checkbox: true
+                },
+                {
+                    field : 'id', 
+                    title : 'id',
+                    visible: false
+                },
+                {
+                    field : 'orderNumber', 
+                    title : '订单号'
+                },
+                {
+                    field : 'orderCreationTime', 
+                    title : '订单生成时间'
+                },
+                {
+                    field : 'deliveryNumber', 
+                    title : '交货单号'
+                },
+                {
+                    field : 'shipmentNumber', 
+                    title : '运单号'
+                },
+                {
+                    field : 'belongTo', 
+                    title : '客户编码'
+                },
+                {
+                    field : 'customersName',
+                    title : '客户名称'
+                },
+                {
+                    field : 'evaluationServiceAttitude', 
+                    title : '评价服务态度'
+                },
+                {
+                    field : 'evaluationDamageCondition', 
+                    title : '评价破损情况'
+                },
+                {
+                    field : 'evaluationArriveTime', 
+                    title : '评价按时到达'
+                },
+                {
+                    field : 'evaluationHandlingConditions', 
+                    title : '评价装卸情况'
+                },
+                {
+                    field : 'evaluation', 
+                    title : '文字评价'
+                }]
+            };
+            $.table.init(options);
+        });
+    </script>
+</body>
+</html>