wang..123
2022-03-17 a379484c4a8ac854c9420d66d322aa0358e57343
#运费超额报表,安装逾期报表
10个文件已修改
4个文件已添加
540 ■■■■■ 已修改文件
src/main/java/zy/cloud/wms/manager/controller/ItemController.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/entity/Item.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/mapper/ItemMapper.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/ItemService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/impl/ItemServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ItemMapper.xml 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/chaoPrice/chaoPrice.js 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/chaoTime/chaoTime.js 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/itemManager/itemManager.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/chaoPrice/chaoPrice.html 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/chaoTime/chaoTime.html 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/itemBusiness/itemBusiness.html 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/itemManager/itemManager.html 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/controller/ItemController.java
@@ -11,6 +11,7 @@
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.exception.CoolException;
import lombok.val;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import zy.cloud.wms.common.web.BaseController;
@@ -49,7 +50,7 @@
        EntityWrapper<Item> wrapper = new EntityWrapper<>();
        HashSet<String> excludeField = new HashSet<>();
//        allLike(Item.class,excludeField,wrapper, (String) param.get("id"));
        allLike(Item.class,excludeField,wrapper, (String) param.get("id"));
        excludeTrash(param);
        convert(param, wrapper);
        hostEq(wrapper);
@@ -72,6 +73,39 @@
        }
    }
    @RequestMapping(value = "/item/list/chaoPirce")
    @ManagerAuth
    public R list1(@RequestParam(defaultValue = "1")Integer curr,
                  @RequestParam(defaultValue = "10")Integer limit,
                  @RequestParam(required = false)String orderByField,
                  @RequestParam(required = false)String orderByType,
                  @RequestParam Map<String, Object> param){
        val id = param.get("id");
        String uuid=null;
        if(id!=null){
            uuid = id.toString();
        }
        Page<Item> projectPlanPage = itemService.chaoPirce(toPage(curr,limit,param,Item.class),uuid);
        return R.ok(projectPlanPage);
    }
    @RequestMapping(value = "/item/list/chaoTime")
    @ManagerAuth
    public R list2(@RequestParam(defaultValue = "1")Integer curr,
                   @RequestParam(defaultValue = "10")Integer limit,
                   @RequestParam(required = false)String orderByField,
                   @RequestParam(required = false)String orderByType,
                   @RequestParam Map<String, Object> param){
        val id = param.get("id");
        String uuid=null;
        if(id!=null){
            uuid = id.toString();
        }
        Page<Item> projectPlanPage = itemService.chaoTime(toPage(curr,limit,param,Item.class),uuid);
        return R.ok(projectPlanPage);
    }
    @RequestMapping(value = "/item/add/auth")
    @ManagerAuth
    public R add(Item item) {
src/main/java/zy/cloud/wms/manager/entity/Item.java
@@ -360,6 +360,15 @@
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date realLADate;
    /**
     * 预计车辆数量
     */
    @ApiModelProperty(value= "预计车辆数量")
    @TableField("planCarnumber")
    private Integer planCarnumber;
    public Item() {}
//    Item item = new Item(
src/main/java/zy/cloud/wms/manager/mapper/ItemMapper.java
@@ -8,9 +8,12 @@
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Mapper
@Repository
public interface ItemMapper extends BaseMapper<Item> {
    List<Item> chaoPrice(Map<String, Object> map,String uuid);
    List<Item> chaoTime(Map<String, Object> map,String uuid);
}
src/main/java/zy/cloud/wms/manager/service/ItemService.java
@@ -1,11 +1,18 @@
package zy.cloud.wms.manager.service;
import com.baomidou.mybatisplus.plugins.Page;
import zy.cloud.wms.manager.entity.Item;
import com.baomidou.mybatisplus.service.IService;
import java.util.List;
public interface ItemService extends IService<Item> {
    Item selectByName(String name);
    void insertAll(Item item);
    Page<Item> chaoPirce(Page<Item> page,String uuid);
    Page<Item> chaoTime(Page<Item> page,String uuid);
}
src/main/java/zy/cloud/wms/manager/service/impl/ItemServiceImpl.java
@@ -1,6 +1,7 @@
package zy.cloud.wms.manager.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import zy.cloud.wms.manager.entity.FlowStatus;
@@ -15,6 +16,7 @@
import zy.cloud.wms.manager.service.ProjectPlanService;
import zy.cloud.wms.manager.service.ProjectTypeService;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -32,6 +34,17 @@
        return this.selectOne(new EntityWrapper<>(item));
    }
    @Override
    public Page<Item> chaoPirce(Page<Item> page,String uuid){
        page.setRecords(baseMapper.chaoPrice(page.getCondition(),uuid));
        return page;
    }
    @Override
    public Page<Item> chaoTime(Page<Item> page,String uuid){
        page.setRecords(baseMapper.chaoTime(page.getCondition(),uuid));
        return page;
    }
    @Transactional
    @Override
    public void insertAll(Item item) {
src/main/resources/application.yml
@@ -17,7 +17,7 @@
#    url: jdbc:sqlserver://127.0.0.1:51433;databasename=zypms
#    username: sa
#    password: Zoneyung@zy56$
    url: jdbc:sqlserver://127.0.0.1:1433;databasename=zypms
    url: jdbc:sqlserver://192.168.4.15:1433;databasename=zypms
    username: sa
    password: sa@123
  mvc:
src/main/resources/mapper/ItemMapper.xml
@@ -54,7 +54,29 @@
        <result column="realFADate" property="realFADate" />
        <result column="planLADate" property="planLADate" />
        <result column="realLADate" property="realLADate" />
        <result column="planCarnumber" property="planCarnumber"/>
    </resultMap>
    <select id="chaoPrice" resultMap="BaseResultMap">
        select * from man_item where 1=1 and realdeAmt>plandeAmt
        <if test="uuid!=null  and uuid!=''">
          and uuid=#{uuid}
        </if>
    </select>
    <select id="chaoTime" resultMap="BaseResultMap">
         SELECT
        *
    FROM
        (
            SELECT
                *,
                DateDiff(DAY, planinDate,realinDate) AS time_diff
            FROM
                man_item
        ) t1
    WHERE
        t1.time_diff > 0
        <if test="uuid!=null  and uuid!=''">
            and uuid=#{uuid}
        </if>
    </select>
</mapper>
src/main/webapp/static/js/chaoPrice/chaoPrice.js
New file
@@ -0,0 +1,148 @@
var pageCurr;
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).use(['table','laydate', 'form', 'admin'], function(){
    var table = layui.table;
    var $ = layui.jquery;
    var layer = layui.layer;
    var layDate = layui.laydate;
    var form = layui.form;
    var admin = layui.admin;
    // 数据渲染
    tableIns = table.render({
        elem: '#item',
        headers: {token: localStorage.getItem('token')},
        url: baseUrl+'/item/list/chaoPirce',
        page: true,
        limit: 16,
        limits: [16, 30, 50, 100, 200, 500],
        toolbar: '#toolbar',
        cellMinWidth: 50,
        cols: [[
            {type: 'checkbox'}
            // ,{field: 'id', align: 'center',title: 'ID'}
            // ,{field: 'hostId', align: 'center',title: ''}
            ,{field: 'uuid', align: 'center',title: '项目编号'}
            ,{field: 'name', align: 'center',title: '项目名称'}
            ,{field: 'inUuid', align: 'center',title: '内部编号', hide: true}
            ,{field: 'cstmrUuid$', align: 'center',title: '客户名称'}
            ,{field: 'plandeAmt', align: 'center',title: '预计运费'}
            ,{field: 'realdeAmt', align: 'center',title: '实际运费'}
            ,{field: 'dutyMan', align: 'center', title: '责任人'}
            ,{field: 'dutyDepartment', align: 'center', title: '责任部门'}
            ,{field: 'status$', align: 'center',title: '状态'}
            ,{field: 'memo', align: 'center',title: '备注'}
            // ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150}
        ]],
        request: {
            pageName: 'curr',
            pageSize: 'limit'
        },
        parseData: function (res) {
            return {
                'code': res.code,
                'msg': res.msg,
                'count': res.data.total,
                'data': res.data.records
            }
        },
        response: {
            statusCode: 200
        },
        done: function(res, curr, count) {
            // console.log(res)
            if (res.code === 403) {
                top.location.href = baseUrl+"/";
            }
            pageCurr=curr;
            limit();
        }
    });
    // 监听排序事件
    table.on('sort(item)', function (obj) {
        var searchData = {};
        $.each($('#search-box [name]').serializeArray(), function() {
            searchData[this.name] = this.value;
        });
        searchData['orderByField'] = obj.field;
        searchData['orderByType'] = obj.type;
        tableIns.reload({
            where: searchData,
            page: {curr: 1}
        });
    });
    // 搜索
    form.on('submit(search)', function (data) {
        pageCurr = 1;
        tableReload(false);
    });
    // 重置
    form.on('submit(reset)', function (data) {
        pageCurr = 1;
        clearFormVal($('#search-box'));
        tableReload(false);
    });
    // 时间选择器
    function layDateRender(mData) {
        console.log(mData)
        setTimeout(function () {
            layDate.render({
                elem: '#startTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['startTime$']):null
            });
            layDate.render({
                elem: '#realStartTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['realStartTime$']):null
            });
            layDate.render({
                elem: '#endTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['endTime$']):null
            });
            layDate.render({
                elem: '#realEndTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['realEndTime$']):null
            });
            layDate.render({
                elem: '#createTime\\$',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['createTime$']):null
            });
            layDate.render({
                elem: '#modifyTime\\$',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['modifyTime$']):null
            });
        }, 500);
    }
    layDateRender();
});
// 关闭动作
$(document).on('click','#data-detail-close', function () {
    parent.layer.closeAll();
});
function tableReload(child) {
    var searchData = {};
    $.each($('#search-box [name]').serializeArray(), function() {
        searchData[this.name] = this.value;
    });
    tableIns.reload({
        where: searchData,
        page: {curr: pageCurr}
    });
}
src/main/webapp/static/js/chaoTime/chaoTime.js
New file
@@ -0,0 +1,148 @@
var pageCurr;
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).use(['table','laydate', 'form', 'admin'], function(){
    var table = layui.table;
    var $ = layui.jquery;
    var layer = layui.layer;
    var layDate = layui.laydate;
    var form = layui.form;
    var admin = layui.admin;
    // 数据渲染
    tableIns = table.render({
        elem: '#item',
        headers: {token: localStorage.getItem('token')},
        url: baseUrl+'/item/list/chaoTime',
        page: true,
        limit: 16,
        limits: [16, 30, 50, 100, 200, 500],
        toolbar: '#toolbar',
        cellMinWidth: 50,
        cols: [[
            {type: 'checkbox'}
            // ,{field: 'id', align: 'center',title: 'ID'}
            // ,{field: 'hostId', align: 'center',title: ''}
            ,{field: 'uuid', align: 'center',title: '项目编号'}
            ,{field: 'name', align: 'center',title: '项目名称'}
            ,{field: 'inUuid', align: 'center',title: '内部编号', hide: true}
            ,{field: 'cstmrUuid$', align: 'center',title: '客户名称'}
            ,{field: 'planinDate$', align: 'center',title: '预计安装日期'}
            ,{field: 'realinDate$', align: 'center',title: '实际安装日期'}
            ,{field: 'dutyMan', align: 'center', title: '责任人'}
            ,{field: 'dutyDepartment', align: 'center', title: '责任部门'}
            ,{field: 'status$', align: 'center',title: '状态'}
            ,{field: 'memo', align: 'center',title: '备注'}
            // ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150}
        ]],
        request: {
            pageName: 'curr',
            pageSize: 'limit'
        },
        parseData: function (res) {
            return {
                'code': res.code,
                'msg': res.msg,
                'count': res.data.total,
                'data': res.data.records
            }
        },
        response: {
            statusCode: 200
        },
        done: function(res, curr, count) {
            // console.log(res)
            if (res.code === 403) {
                top.location.href = baseUrl+"/";
            }
            pageCurr=curr;
            limit();
        }
    });
    // 监听排序事件
    table.on('sort(item)', function (obj) {
        var searchData = {};
        $.each($('#search-box [name]').serializeArray(), function() {
            searchData[this.name] = this.value;
        });
        searchData['orderByField'] = obj.field;
        searchData['orderByType'] = obj.type;
        tableIns.reload({
            where: searchData,
            page: {curr: 1}
        });
    });
    // 搜索
    form.on('submit(search)', function (data) {
        pageCurr = 1;
        tableReload(false);
    });
    // 重置
    form.on('submit(reset)', function (data) {
        pageCurr = 1;
        clearFormVal($('#search-box'));
        tableReload(false);
    });
    // 时间选择器
    function layDateRender(mData) {
        console.log(mData)
        setTimeout(function () {
            layDate.render({
                elem: '#startTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['startTime$']):null
            });
            layDate.render({
                elem: '#realStartTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['realStartTime$']):null
            });
            layDate.render({
                elem: '#endTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['endTime$']):null
            });
            layDate.render({
                elem: '#realEndTime',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['realEndTime$']):null
            });
            layDate.render({
                elem: '#createTime\\$',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['createTime$']):null
            });
            layDate.render({
                elem: '#modifyTime\\$',
                type: 'datetime',
                value: mData!==null&&mData!==undefined?strToDate(mData['modifyTime$']):null
            });
        }, 500);
    }
    layDateRender();
});
// 关闭动作
$(document).on('click','#data-detail-close', function () {
    parent.layer.closeAll();
});
function tableReload(child) {
    var searchData = {};
    $.each($('#search-box [name]').serializeArray(), function() {
        searchData[this.name] = this.value;
    });
    tableIns.reload({
        where: searchData,
        page: {curr: pageCurr}
    });
}
src/main/webapp/static/js/itemManager/itemManager.js
@@ -29,8 +29,8 @@
            ,{field: 'inUuid', align: 'center',title: '内部编号', hide: true}
            // ,{field: 'cstmrUuid', align: 'center',title: '客户编号'}
            ,{field: 'progressRate', align: 'center',title: '进度'}
            ,{field: 'planCarInfo', align: 'center', title: '预计车辆信息'}
            ,{field: 'planCarInfo', align: 'center', title: '预计车辆大小'}
            ,{field: 'planCarnumber', align: 'center', title: '预计车辆数量'}
            // ,{field: 'member', align: 'center',title: '项目成员'}
            // ,{field: 'leader', align: 'center',title: '项目经理'}
            ,{field: 'plandeDate0$', align: 'center',title: '预计发货日期'}
src/main/webapp/views/chaoPrice/chaoPrice.html
New file
@@ -0,0 +1,56 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
    <link rel="stylesheet" href="../../static/css/common.css" media="all">
</head>
<body>
<!-- 搜索栏 -->
<div id="search-box" class="layui-form layui-card-header">
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="id" placeholder="编号" autocomplete="off">
        </div>
    </div>
    <!-- 待添加 -->
    <div id="data-search-btn" class="layui-btn-container layui-form-item">
        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button>
        <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button>
    </div>
</div>
<!-- 表格 -->
<div class="layui-form">
    <table class="layui-hide" id="item" lay-filter="item"></table>
</div>
<script type="text/html" id="toolbar">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button>
        <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">禁用</button>
        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button>
    </div>
</script>
<script type="text/html" id="operate">
    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a>
    <!--    <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">禁用</a>-->
</script>
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/chaoPrice/chaoPrice.js" charset="utf-8"></script>
</body>
</html>
src/main/webapp/views/chaoTime/chaoTime.html
New file
@@ -0,0 +1,56 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
    <link rel="stylesheet" href="../../static/css/common.css" media="all">
</head>
<body>
<!-- 搜索栏 -->
<div id="search-box" class="layui-form layui-card-header">
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="id" placeholder="编号" autocomplete="off">
        </div>
    </div>
    <!-- 待添加 -->
    <div id="data-search-btn" class="layui-btn-container layui-form-item">
        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button>
        <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button>
    </div>
</div>
<!-- 表格 -->
<div class="layui-form">
    <table class="layui-hide" id="item" lay-filter="item"></table>
</div>
<script type="text/html" id="toolbar">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button>
        <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">禁用</button>
        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button>
    </div>
</script>
<script type="text/html" id="operate">
    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a>
    <!--    <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">禁用</a>-->
</script>
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/chaoTime/chaoTime.js" charset="utf-8"></script>
</body>
</html>
src/main/webapp/views/itemBusiness/itemBusiness.html
@@ -98,7 +98,7 @@
                <div class="layui-form-item">
                    <label class="layui-form-label layui-form-required">产品重量: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="weight"  placeholder="请输入产品重量" lay-verify="required">
                        <input class="layui-input" name="weight" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"  placeholder="请输入产品重量" lay-verify="required">
                    </div>
                </div>
@@ -112,7 +112,7 @@
                <div class="layui-form-item">
                    <label class="layui-form-label layui-form-required">客户联系方式: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="custMobile" id="dutyMan$" placeholder="请输入联系方式" lay-verify="required">
                        <input class="layui-input" name="custMobile" id="dutyMan$" onkeyup="value=value.replace(/[^\d]/g,'').replace(/^0{1,}/g,'')" placeholder="请输入联系方式" lay-verify="required">
                    </div>
                </div>
<!--                <div class="layui-form-item">-->
@@ -163,7 +163,7 @@
                <div class="layui-form-item">
                    <label class="layui-form-label layui-form-required">售前核价金额: </label>
                    <div class="layui-input-block cool-auto-complete">
                        <input class="layui-input" name="presaleAmt" placeholder="请输入售前核价金额"  lay-vertype="tips" lay-verify="required">
                        <input class="layui-input" name="presaleAmt" placeholder="请输入售前核价金额" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')" lay-verify="number" lay-vertype="tips" lay-verify="required">
                        <!--                        <input id="createBy$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入项目类型" onfocus=this.blur()>-->
<!--                        <input id="type$" name="type$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入项目类型" onfocus=this.blur()>-->
<!--                        <div class="cool-auto-complete-window">-->
src/main/webapp/views/itemManager/itemManager.html
@@ -71,26 +71,26 @@
                <div class="layui-form-item">
                    <label class="layui-form-label">预计发货日期: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="planinDate" id="planinDate" placeholder="请输入预计发货日期" lay-vertype="tips">
                        <input class="layui-input" name="plandeDate" id="plandeDate" placeholder="请输入预计发货日期" lay-vertype="tips">
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">预计安装日期: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="plandeDate" id="plandeDate" placeholder="请输入预计安装日期" lay-vertype="tips">
                        <input class="layui-input" name="" id="planinDate" placeholder="请输入预计安装日期" lay-vertype="tips">
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">预计运费: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="plandeAmt" placeholder="请输入预计运费">
                        <input class="layui-input" name="plandeAmt" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')" placeholder="请输入预计运费">
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">预计安装费: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="planinAmt" placeholder="请输入预计安装费">
                        <input class="layui-input"  name="planinAmt" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')" placeholder="请输入预计安装费">
                    </div>
                </div>
                <div class="layui-form-item">
@@ -106,9 +106,15 @@
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">预计车辆信息: </label>
                    <label class="layui-form-label">预计车辆大小: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="planCarInfo" placeholder="请输入预计车辆信息">
                        <input class="layui-input" name="planCarInfo" placeholder="请输入预计车辆大小">
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">预计车辆数量: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="planCarnumber" placeholder="请输入预计车辆大小">
                    </div>
                </div>
            </div>
@@ -157,7 +163,7 @@
                <div class="layui-form-item">
                    <label class="layui-form-label">实际运费: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="realdeAmt" placeholder="请输入实际运费">
                        <input class="layui-input" name="realdeAmt" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')" placeholder="请输入实际运费">
                    </div>
                </div>
@@ -170,7 +176,7 @@
                <div class="layui-form-item">
                    <label class="layui-form-label">实际安装费: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="realinAmt" placeholder="请输入实际安装费" lay-vertype="tips">
                        <input class="layui-input" name="realinAmt" onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')" placeholder="请输入实际安装费" lay-vertype="tips">
                    </div>
                </div>