2 Commits 1b909fa82a ... 52217771a7

Author SHA1 Message Date
  ningsy 52217771a7 Merge remote-tracking branch 'origin/master' 4 years ago
  ningsy eb4f864501 nsy update 添加销售分部目标达成模块 4 years ago

+ 1 - 1
suishenbang-order/src/main/java/com/dgtly/order/controller/OrderSalesDetailController.java

@@ -94,7 +94,7 @@ public class OrderSalesDetailController extends BaseController
             logger.error("查找目标达成详情接口报错:"+url,e);
             throw e;
         }
-        return prefix + "/edit";
+        return prefix + "/detail";
     }
 
     /**

+ 82 - 0
suishenbang-order/src/main/java/com/dgtly/order/controller/OrderSalesGroupController.java

@@ -0,0 +1,82 @@
+package com.dgtly.order.controller;
+
+import java.util.List;
+
+import com.dgtly.order.domain.OrderSalesGroup;
+import com.dgtly.order.service.IOrderSalesGroupService;
+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.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import com.dgtly.common.annotation.Log;
+import com.dgtly.common.enums.BusinessType;
+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-12-01
+ */
+@Controller
+@RequestMapping("/order/orderSalesGroup")
+public class OrderSalesGroupController extends BaseController
+{
+    private String prefix = "order/orderSalesGroup";
+
+    @Autowired
+    private IOrderSalesGroupService orderSalesGroupService;
+
+    @RequiresPermissions("order:orderSalesGroup:view")
+    @GetMapping()
+    public String group()
+    {
+        return prefix + "/groupList";
+    }
+
+    /**
+     * 查询【销售分部目标达成】列表
+     */
+    @RequiresPermissions("order:orderSalesGroup:list")
+    @PostMapping("/list")
+    @ResponseBody
+    public TableDataInfo list(OrderSalesGroup orderSalesGroup)
+    {
+        startPage();
+        List<OrderSalesGroup> list = orderSalesGroupService.selectOrderSalesGroupList(orderSalesGroup);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出【销售分部目标达成】列表
+     */
+    @RequiresPermissions("order:orderSalesGroup:export")
+    @PostMapping("/export")
+    @ResponseBody
+    public AjaxResult export(OrderSalesGroup orderSalesGroup)
+    {
+        List<OrderSalesGroup> list = orderSalesGroupService.selectOrderSalesGroupList(orderSalesGroup);
+        ExcelUtil<OrderSalesGroup> util = new ExcelUtil<OrderSalesGroup>(OrderSalesGroup.class);
+        return util.exportExcel(list, "销售分组目标达成");
+    }
+
+    /**
+     * 修改【销售分部目标达成】
+     */
+    @GetMapping("/info/{id}")
+    public String edit(@PathVariable("id") Long id, ModelMap mmap)
+    {
+        OrderSalesGroup orderSalesGroup = orderSalesGroupService.selectOrderSalesGroupById(id);
+        mmap.put("orderSalesGroup", orderSalesGroup);
+        return prefix + "/detail";
+    }
+
+}

+ 292 - 0
suishenbang-order/src/main/java/com/dgtly/order/domain/OrderSalesGroup.java

@@ -0,0 +1,292 @@
+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;
+
+/**
+ * 【销售部目标与达成】对象 order_sales_group
+ * 
+ * @author dgtly
+ * @date 2020-12-01
+ */
+public class OrderSalesGroup extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private Long id;
+
+    /** 是否删除 */
+    @Excel(name = "是否删除")
+    private String isDelete;
+
+    /** 公司代码 */
+    @Excel(name = "公司代码")
+    private String companyCode;
+
+    /** 公司名称 */
+    @Excel(name = "公司名称")
+    private String companyName;
+
+    /** 销售大区代码 */
+    @Excel(name = "销售大区代码")
+    private String saledeptCode;
+
+    /** 销售大区名称 */
+    @Excel(name = "销售大区名称")
+    private String saledeptName;
+
+    /** 销售部代码 */
+    @Excel(name = "销售部代码")
+    private String officeCode;
+
+    /** 销售部名称 */
+    @Excel(name = "销售部名称")
+    private String officeName;
+
+    /** 销售分部/推广组 代码 */
+    @Excel(name = "销售分部/推广组 代码")
+    private String subofficeCode;
+
+    /** 销售分部/推广组 名称 */
+    @Excel(name = "销售分部/推广组 名称")
+    private String subofficeName;
+
+    /** 顾客群体 */
+    @Excel(name = "顾客群体")
+    private String customerGroup;
+
+    /** 顾客群体名称 */
+    @Excel(name = "顾客群体名称")
+    private String customerGroupName;
+
+    /** 日期 */
+    @Excel(name = "日期")
+    private String calMonth;
+
+    /** 已复核/当月出货 */
+    @Excel(name = "已复核/当月出货")
+    private String nowYearAct;
+
+    /** 预算 */
+    @Excel(name = "预算")
+    private String nowYearBud;
+
+    /** 未复核 */
+    @Excel(name = "未复核")
+    private String reviewNo;
+
+    /** 未清 */
+    @Excel(name = "未清")
+    private String uncleared;
+
+    /** 冻结 */
+    @Excel(name = "冻结")
+    private String freeze;
+
+    /** 数据更新时间(取最大时间) */
+    @Excel(name = "数据更新时间", readConverterExp = "取=最大时间")
+    private String runTime;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+
+    public String getIsDelete() {
+        return isDelete;
+    }
+    public void setIsDelete(String isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    public void setCompanyCode(String companyCode)
+    {
+        this.companyCode = companyCode;
+    }
+
+    public String getCompanyCode() 
+    {
+        return companyCode;
+    }
+    public void setCompanyName(String companyName) 
+    {
+        this.companyName = companyName;
+    }
+
+    public String getCompanyName() 
+    {
+        return companyName;
+    }
+    public void setSaledeptCode(String saledeptCode) 
+    {
+        this.saledeptCode = saledeptCode;
+    }
+
+    public String getSaledeptCode() 
+    {
+        return saledeptCode;
+    }
+    public void setSaledeptName(String saledeptName) 
+    {
+        this.saledeptName = saledeptName;
+    }
+
+    public String getSaledeptName() 
+    {
+        return saledeptName;
+    }
+    public void setOfficeCode(String officeCode) 
+    {
+        this.officeCode = officeCode;
+    }
+
+    public String getOfficeCode() 
+    {
+        return officeCode;
+    }
+    public void setOfficeName(String officeName) 
+    {
+        this.officeName = officeName;
+    }
+
+    public String getOfficeName() 
+    {
+        return officeName;
+    }
+    public void setSubofficeCode(String subofficeCode) 
+    {
+        this.subofficeCode = subofficeCode;
+    }
+
+    public String getSubofficeCode() 
+    {
+        return subofficeCode;
+    }
+    public void setSubofficeName(String subofficeName) 
+    {
+        this.subofficeName = subofficeName;
+    }
+
+    public String getSubofficeName() 
+    {
+        return subofficeName;
+    }
+    public void setCustomerGroup(String customerGroup) 
+    {
+        this.customerGroup = customerGroup;
+    }
+
+    public String getCustomerGroup() 
+    {
+        return customerGroup;
+    }
+    public void setCustomerGroupName(String customerGroupName) 
+    {
+        this.customerGroupName = customerGroupName;
+    }
+
+    public String getCustomerGroupName() 
+    {
+        return customerGroupName;
+    }
+    public void setCalMonth(String calMonth) 
+    {
+        this.calMonth = calMonth;
+    }
+
+    public String getCalMonth() 
+    {
+        return calMonth;
+    }
+    public void setNowYearAct(String nowYearAct) 
+    {
+        this.nowYearAct = nowYearAct;
+    }
+
+    public String getNowYearAct() 
+    {
+        return nowYearAct;
+    }
+    public void setNowYearBud(String nowYearBud) 
+    {
+        this.nowYearBud = nowYearBud;
+    }
+
+    public String getNowYearBud() 
+    {
+        return nowYearBud;
+    }
+    public void setReviewNo(String reviewNo) 
+    {
+        this.reviewNo = reviewNo;
+    }
+
+    public String getReviewNo() 
+    {
+        return reviewNo;
+    }
+    public void setUncleared(String uncleared) 
+    {
+        this.uncleared = uncleared;
+    }
+
+    public String getUncleared() 
+    {
+        return uncleared;
+    }
+    public void setFreeze(String freeze) 
+    {
+        this.freeze = freeze;
+    }
+
+    public String getFreeze() 
+    {
+        return freeze;
+    }
+    public void setRunTime(String runTime) 
+    {
+        this.runTime = runTime;
+    }
+
+    public String getRunTime() 
+    {
+        return runTime;
+    }
+
+    @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("companyCode", getCompanyCode())
+            .append("companyName", getCompanyName())
+            .append("saledeptCode", getSaledeptCode())
+            .append("saledeptName", getSaledeptName())
+            .append("officeCode", getOfficeCode())
+            .append("officeName", getOfficeName())
+            .append("subofficeCode", getSubofficeCode())
+            .append("subofficeName", getSubofficeName())
+            .append("customerGroup", getCustomerGroup())
+            .append("customerGroupName", getCustomerGroupName())
+            .append("calMonth", getCalMonth())
+            .append("nowYearAct", getNowYearAct())
+            .append("nowYearBud", getNowYearBud())
+            .append("reviewNo", getReviewNo())
+            .append("uncleared", getUncleared())
+            .append("freeze", getFreeze())
+            .append("runTime", getRunTime())
+            .toString();
+    }
+}

+ 31 - 0
suishenbang-order/src/main/java/com/dgtly/order/mapper/OrderSalesGroupMapper.java

@@ -0,0 +1,31 @@
+package com.dgtly.order.mapper;
+
+import com.dgtly.order.domain.OrderSalesGroup;
+
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Mapper接口
+ * 
+ * @author dgtly
+ * @date 2020-12-01
+ */
+public interface OrderSalesGroupMapper 
+{
+    /**
+     * 查询【请填写功能名称】
+     * 
+     * @param id 【请填写功能名称】ID
+     * @return 【请填写功能名称】
+     */
+    public OrderSalesGroup selectOrderSalesGroupById(Long id);
+
+    /**
+     * 查询【请填写功能名称】列表
+     * 
+     * @param orderSalesGroup 【请填写功能名称】
+     * @return 【请填写功能名称】集合
+     */
+    public List<OrderSalesGroup> selectOrderSalesGroupList(OrderSalesGroup orderSalesGroup);
+
+}

+ 32 - 0
suishenbang-order/src/main/java/com/dgtly/order/service/IOrderSalesGroupService.java

@@ -0,0 +1,32 @@
+package com.dgtly.order.service;
+
+import com.dgtly.order.domain.OrderSalesGroup;
+
+import java.util.List;
+
+/**
+ * 【请填写功能名称】Service接口
+ * 
+ * @author dgtly
+ * @date 2020-12-01
+ */
+public interface IOrderSalesGroupService 
+{
+    /**
+     * 查询【请填写功能名称】
+     * 
+     * @param id 【请填写功能名称】ID
+     * @return 【请填写功能名称】
+     */
+    public OrderSalesGroup selectOrderSalesGroupById(Long id);
+
+    /**
+     * 查询【请填写功能名称】列表
+     * 
+     * @param orderSalesGroup 【请填写功能名称】
+     * @return 【请填写功能名称】集合
+     */
+    public List<OrderSalesGroup> selectOrderSalesGroupList(OrderSalesGroup orderSalesGroup);
+
+
+}

+ 49 - 0
suishenbang-order/src/main/java/com/dgtly/order/service/impl/OrderSalesGroupServiceImpl.java

@@ -0,0 +1,49 @@
+package com.dgtly.order.service.impl;
+
+import java.util.List;
+import com.dgtly.common.utils.DateUtils;
+import com.dgtly.order.domain.OrderSalesGroup;
+import com.dgtly.order.mapper.OrderSalesGroupMapper;
+import com.dgtly.order.service.IOrderSalesGroupService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.dgtly.common.core.text.Convert;
+
+import javax.annotation.Resource;
+
+/**
+ * 【请填写功能名称】Service业务层处理
+ * 
+ * @author dgtly
+ * @date 2020-12-01
+ */
+@Service
+public class OrderSalesGroupServiceImpl implements IOrderSalesGroupService
+{
+    @Resource
+    private OrderSalesGroupMapper orderSalesGroupMapper;
+
+    /**
+     * 查询【请填写功能名称】
+     * 
+     * @param id 【请填写功能名称】ID
+     * @return 【请填写功能名称】
+     */
+    @Override
+    public OrderSalesGroup selectOrderSalesGroupById(Long id)
+    {
+        return orderSalesGroupMapper.selectOrderSalesGroupById(id);
+    }
+
+    /**
+     * 查询【请填写功能名称】列表
+     * 
+     * @param orderSalesGroup 【请填写功能名称】
+     * @return 【请填写功能名称】
+     */
+    @Override
+    public List<OrderSalesGroup> selectOrderSalesGroupList(OrderSalesGroup orderSalesGroup)
+    {
+        return orderSalesGroupMapper.selectOrderSalesGroupList(orderSalesGroup);
+    }
+}

+ 66 - 0
suishenbang-order/src/main/resources/mapper/order/OrderSalesGroupMapper.xml

@@ -0,0 +1,66 @@
+<?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.OrderSalesGroupMapper">
+    
+    <resultMap type="OrderSalesGroup" id="OrderSalesGroupResult">
+        <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="companyCode"    column="company_code"    />
+        <result property="companyName"    column="company_name"    />
+        <result property="saledeptCode"    column="saledept_code"    />
+        <result property="saledeptName"    column="saledept_name"    />
+        <result property="officeCode"    column="office_code"    />
+        <result property="officeName"    column="office_name"    />
+        <result property="subofficeCode"    column="suboffice_code"    />
+        <result property="subofficeName"    column="suboffice_name"    />
+        <result property="customerGroup"    column="customer_group"    />
+        <result property="customerGroupName"    column="customer_group_name"    />
+        <result property="calMonth"    column="cal_month"    />
+        <result property="nowYearAct"    column="now_year_act"    />
+        <result property="nowYearBud"    column="now_year_bud"    />
+        <result property="reviewNo"    column="review_no"    />
+        <result property="uncleared"    column="uncleared"    />
+        <result property="freeze"    column="freeze"    />
+        <result property="runTime"    column="run_time"    />
+    </resultMap>
+
+    <sql id="selectOrderSalesGroupVo">
+        select id, create_by, create_time, update_by, update_time, is_delete, company_code, company_name, saledept_code, saledept_name, office_code, office_name, suboffice_code, suboffice_name, customer_group, customer_group_name, cal_month, now_year_act, now_year_bud, review_no, uncleared, freeze, run_time from order_sales_group
+    </sql>
+
+    <select id="selectOrderSalesGroupList" parameterType="OrderSalesGroup" resultMap="OrderSalesGroupResult">
+        <include refid="selectOrderSalesGroupVo"/>
+        <where>  
+            <if test="isDelete != null "> and is_delete = #{isDelete}</if>
+            <if test="companyCode != null  and companyCode != ''"> and company_code = #{companyCode}</if>
+            <if test="companyName != null  and companyName != ''"> and company_name like concat('%', #{companyName}, '%')</if>
+            <if test="saledeptCode != null  and saledeptCode != ''"> and saledept_code = #{saledeptCode}</if>
+            <if test="saledeptName != null  and saledeptName != ''"> and saledept_name like concat('%', #{saledeptName}, '%')</if>
+            <if test="officeCode != null  and officeCode != ''"> and office_code = #{officeCode}</if>
+            <if test="officeName != null  and officeName != ''"> and office_name like concat('%', #{officeName}, '%')</if>
+            <if test="subofficeCode != null  and subofficeCode != ''"> and suboffice_code = #{subofficeCode}</if>
+            <if test="subofficeName != null  and subofficeName != ''"> and suboffice_name like concat('%', #{subofficeName}, '%')</if>
+            <if test="customerGroup != null  and customerGroup != ''"> and customer_group = #{customerGroup}</if>
+            <if test="customerGroupName != null  and customerGroupName != ''"> and customer_group_name like concat('%', #{customerGroupName}, '%')</if>
+            <if test="calMonth != null  and calMonth != ''"> and cal_month = #{calMonth}</if>
+            <if test="nowYearAct != null  and nowYearAct != ''"> and now_year_act = #{nowYearAct}</if>
+            <if test="nowYearBud != null  and nowYearBud != ''"> and now_year_bud = #{nowYearBud}</if>
+            <if test="reviewNo != null  and reviewNo != ''"> and review_no = #{reviewNo}</if>
+            <if test="uncleared != null  and uncleared != ''"> and uncleared = #{uncleared}</if>
+            <if test="freeze != null  and freeze != ''"> and freeze = #{freeze}</if>
+            <if test="runTime != null  and runTime != ''"> and run_time = #{runTime}</if>
+        </where>
+    </select>
+    
+    <select id="selectOrderSalesGroupById" parameterType="Long" resultMap="OrderSalesGroupResult">
+        <include refid="selectOrderSalesGroupVo"/>
+        where id = #{id}
+    </select>
+    
+</mapper>

suishenbang-order/src/main/resources/templates/order/orderSalesDetail/edit.html → suishenbang-order/src/main/resources/templates/order/orderSalesDetail/detail.html


+ 9 - 1
suishenbang-order/src/main/resources/templates/order/orderSalesDetail/orderSalesDetail.html

@@ -10,6 +10,14 @@
                 <form id="formId">
                     <div class="select-list">
                         <ul>
+                            <li>
+                                <p>销售分部代码:</p>
+                                <input type="text" name="subofficeCode"/>
+                            </li>
+                            <li>
+                                <p>销售分部名称:</p>
+                                <input type="text" name="subofficeName"/>
+                            </li>
                             <li>
                                 <p>销售员代码:</p>
                                 <input type="text" name="empId"/>
@@ -56,7 +64,7 @@
             var options = {
                 url: prefix + "/list",
                 detailUrl: prefix + "/info/{id}",
-                modalName: "销售目标达成",
+                modalName: "经销商目标达成",
                 columns: [{
                     checkbox: true
                 },

+ 128 - 0
suishenbang-order/src/main/resources/templates/order/orderSalesGroup/detail.html

@@ -0,0 +1,128 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('修改【请填写功能名称】')" />
+</head>
+<body class="white-bg">
+    <div class="wrapper wrapper-content animated fadeInRight ibox-content">
+        <form class="form-horizontal m" id="form-group-edit" th:object="${orderSalesGroup}">
+            <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="*{companyCode}"></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="*{companyName}"></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="*{saledeptCode}"></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="*{saledeptName}"></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="*{officeCode}"></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="*{officeName}"></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="*{subofficeCode}"></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="*{subofficeName}"></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="*{customerGroup}"></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="*{customerGroupName}"></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="*{calMonth}"></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="*{nowYearAct}"></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="*{nowYearBud}"></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="*{reviewNo}"></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="*{uncleared}"></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="*{freeze}"></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="*{runTime}"></span>
+                </div>
+            </div>
+        </form>
+    </div>
+    <th:block th:include="include :: footer" />
+    <script type="text/javascript">
+        var prefix = ctx + "system/group";
+        $("#form-group-edit").validate({
+            focusCleanup: true
+        });
+
+        function submitHandler() {
+            if ($.validate.form()) {
+                $.operate.save(prefix + "/edit", $('#form-group-edit').serialize());
+            }
+        }
+    </script>
+</body>
+</html>

+ 167 - 0
suishenbang-order/src/main/resources/templates/order/orderSalesGroup/groupList.html

@@ -0,0 +1,167 @@
+<!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="companyCode"/>
+                            </li>
+                            <li>
+                                <p>公司名称:</p>
+                                <input type="text" name="companyName"/>
+                            </li>
+                            <li>
+                                <p>销售大区代码:</p>
+                                <input type="text" name="saledeptCode"/>
+                            </li>
+                            <li>
+                                <p>销售大区名称:</p>
+                                <input type="text" name="saledeptName"/>
+                            </li>
+                            <li>
+                                <p>销售部代码:</p>
+                                <input type="text" name="officeCode"/>
+                            </li>
+                            <li>
+                                <p>销售部名称:</p>
+                                <input type="text" name="officeName"/>
+                            </li>
+                            <li>
+                                <p>销售分部代码:</p>
+                                <input type="text" name="subofficeCode"/>
+                            </li>
+                            <li>
+                                <p>销售分部名称:</p>
+                                <input type="text" name="subofficeName"/>
+                            </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.detail()" shiro:hasPermission="order:orderSalesGroup:info">
+                    <i class="fa fa-edit"></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 + "order/orderSalesGroup";
+
+        $(function() {
+            var options = {
+                url: prefix + "/list",
+                detailUrl: prefix + "/info/{id}",
+                exportUrl: prefix + "/export",
+                modalName: "【销售分部目标达成】",
+                columns: [{
+                    checkbox: true
+                },
+                {
+                    field : 'id', 
+                    title : 'id',
+                    visible: false
+                },
+                {
+                    field : 'companyCode', 
+                    title : '公司代码'
+                },
+                {
+                    field : 'companyName', 
+                    title : '公司名称'
+                },
+                {
+                    field : 'saledeptCode', 
+                    title : '销售大区代码'
+                },
+                {
+                    field : 'saledeptName', 
+                    title : '销售大区名称'
+                },
+                {
+                    field : 'officeCode', 
+                    title : '销售部代码'
+                },
+                {
+                    field : 'officeName', 
+                    title : '销售部名称'
+                },
+                {
+                    field : 'subofficeCode', 
+                    title : '销售分部代码'
+                },
+                {
+                    field : 'subofficeName', 
+                    title : '销售分部名称'
+                },
+                {
+                    field : 'customerGroup', 
+                    title : '顾客分组代码',
+                    visible: false
+                },
+                {
+                    field : 'customerGroupName', 
+                    title : '顾客分组名称',
+                    visible: false
+                },
+                {
+                    field : 'calMonth', 
+                    title : '日期'
+                },
+                {
+                    field : 'nowYearAct', 
+                    title : '已复核'
+                },
+                {
+                    field : 'nowYearBud', 
+                    title : '预算'
+                },
+                {
+                    field : 'reviewNo', 
+                    title : '未复核'
+                },
+                {
+                    field : 'uncleared', 
+                    title : '未清'
+                },
+                {
+                    field : 'freeze', 
+                    title : '冻结'
+                },
+                {
+                    field : 'runTime', 
+                    title : '数据更新时间'
+                },
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        var actions = [];
+                        actions.push('<a class="btn btn-success btn-xs" href="javascript:void(0)" onclick="$.operate.detail(\'' + row.id + '\')"><i class="fa fa-edit"></i>详情</a> ');
+                        return actions.join('');
+                    }
+                }]
+            };
+            $.table.init(options);
+        });
+    </script>
+</body>
+</html>