| | |
| | | -- save itemReport record |
| | | -- mysql |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport/itemReport.html', 'itemReport管理', null , '2', null , '1'); |
| | | |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport#view', '查询', '', '3', '0', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport#btn-add', '新增', '', '3', '1', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport#btn-edit', '编辑', '', '3', '2', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport#btn-delete', '删除', '', '3', '3', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'itemReport#btn-export', '导出', '', '3', '4', '1'); |
| | | |
| | | -- sqlserver |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport/itemReport.html', N'itemReport管理', null, '2', null, '1'); |
| | | |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport#view', N'查询', '40587', '3', '0', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport#btn-add', N'新增', '40587', '3', '1', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport#btn-edit', N'编辑', '40587', '3', '2', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport#btn-delete', N'删除', '40587', '3', '3', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'itemReport#btn-export', N'导出', '40587', '3', '4', '1'); |
| | |
| | | -- save projectPlan record |
| | | -- mysql |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan/projectPlan.html', 'projectPlan管理', null , '2', null , '1'); |
| | | |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#view', '查询', '', '3', '0', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-add', '新增', '', '3', '1', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-edit', '编辑', '', '3', '2', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-delete', '删除', '', '3', '3', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'projectPlan#btn-export', '导出', '', '3', '4', '1'); |
| | | |
| | | -- sqlserver |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan/projectPlan.html', N'projectPlan管理', null, '2', null, '1'); |
| | | |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#view', N'查询', '', '3', '0', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-add', N'新增', '', '3', '1', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-edit', N'编辑', '', '3', '2', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-delete', N'删除', '', '3', '3', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'projectPlan#btn-export', N'导出', '', '3', '4', '1'); |
New file |
| | |
| | | -- save saleProject record |
| | | -- mysql |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject/saleProject.html', 'saleProject管理', null , '2', null , '1'); |
| | | |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject#view', '查询', '', '3', '0', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject#btn-add', '新增', '', '3', '1', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject#btn-edit', '编辑', '', '3', '2', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject#btn-delete', '删除', '', '3', '3', '1'); |
| | | insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'saleProject#btn-export', '导出', '', '3', '4', '1'); |
| | | |
| | | -- sqlserver |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject/saleProject.html', N'saleProject管理', null, '2', null, '1'); |
| | | |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject#view', N'查询', '40593', '3', '0', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject#btn-add', N'新增', '40593', '3', '1', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject#btn-edit', N'编辑', '40593', '3', '2', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject#btn-delete', N'删除', '40593', '3', '3', '1'); |
| | | insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'saleProject#btn-export', N'导出', '40593', '3', '4', '1'); |
| | |
| | | generator.url="192.168.4.15:1433;databasename=zypms"; |
| | | generator.username="sa"; |
| | | generator.password="sa@123"; |
| | | generator.table="man_item_report"; |
| | | generator.packagePath="zy.cloud.wms.manager"; |
| | | generator.table="man_sale_project"; |
| | | generator.packagePath="zy.cloud.wms.common"; |
| | | generator.sqlOsType = SqlOsType.SQL_SERVER; |
| | | // generator.js = false; |
| | | // generator.html = false; |
New file |
| | |
| | | package zy.cloud.wms.common.controller; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.baomidou.mybatisplus.plugins.Page; |
| | | import com.core.common.DateUtils; |
| | | import zy.cloud.wms.common.entity.SaleProject; |
| | | import zy.cloud.wms.common.service.SaleProjectService; |
| | | import com.core.annotations.ManagerAuth; |
| | | import com.core.common.BaseRes; |
| | | import com.core.common.Cools; |
| | | import com.core.common.R; |
| | | import zy.cloud.wms.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import zy.cloud.wms.manager.entity.Cstmr; |
| | | import zy.cloud.wms.manager.service.CstmrService; |
| | | import zy.cloud.wms.system.entity.User; |
| | | import zy.cloud.wms.system.service.UserService; |
| | | |
| | | import java.util.*; |
| | | |
| | | @RestController |
| | | public class SaleProjectController extends BaseController { |
| | | |
| | | @Autowired |
| | | private SaleProjectService saleProjectService; |
| | | @Autowired |
| | | private CstmrService cstmrService; |
| | | @Autowired |
| | | private UserService userServicel; |
| | | |
| | | |
| | | @RequestMapping(value = "/saleProject/{id}/auth") |
| | | @ManagerAuth |
| | | public R get(@PathVariable("id") String id) { |
| | | return R.ok(saleProjectService.selectById(String.valueOf(id))); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProject/list/auth") |
| | | @ManagerAuth |
| | | public R list(@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){ |
| | | EntityWrapper<SaleProject> wrapper = new EntityWrapper<>(); |
| | | excludeTrash(param); |
| | | convert(param, wrapper); |
| | | if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} |
| | | if (getUserId() != 9527){ |
| | | User user = userServicel.selectOne(new EntityWrapper<User>() |
| | | .eq("id", getUserId())); |
| | | if (user.getRoleId() > 2) { |
| | | wrapper.eq("saleman",getUserId()); |
| | | } |
| | | } |
| | | return R.ok(saleProjectService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | } |
| | | |
| | | private void convert(Map<String, Object> map, EntityWrapper wrapper){ |
| | | for (Map.Entry<String, Object> entry : map.entrySet()){ |
| | | String val = String.valueOf(entry.getValue()); |
| | | if (val.contains(RANGE_TIME_LINK)){ |
| | | String[] dates = val.split(RANGE_TIME_LINK); |
| | | wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); |
| | | wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); |
| | | } else { |
| | | wrapper.like(entry.getKey(), val); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 入库逻辑改写 |
| | | * @param saleProject |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/saleProject/add/auth") |
| | | @ManagerAuth |
| | | public R add(SaleProject saleProject) { |
| | | Date now = new Date(); |
| | | saleProject.setSaleman(getUserId()); |
| | | saleProject.setUpdateBy(getUserId()); |
| | | saleProject.setUpdateTime(now); |
| | | saleProject.setCreateBy(getUserId()); |
| | | saleProject.setCreateTime(now); |
| | | saleProjectService.insert(saleProject); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProject/update/auth") |
| | | @ManagerAuth |
| | | public R update(SaleProject saleProject){ |
| | | if (Cools.isEmpty(saleProject) || null==saleProject.getId()){ |
| | | return R.error(); |
| | | } |
| | | saleProjectService.updateById(saleProject); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProject/delete/auth") |
| | | @ManagerAuth |
| | | public R delete(@RequestParam(value="ids[]") Long[] ids){ |
| | | for (Long id : ids){ |
| | | saleProjectService.deleteById(id); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProject/export/auth") |
| | | @ManagerAuth |
| | | public R export(@RequestBody JSONObject param){ |
| | | EntityWrapper<SaleProject> wrapper = new EntityWrapper<>(); |
| | | List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); |
| | | Map<String, Object> map = excludeTrash(param.getJSONObject("saleProject")); |
| | | convert(map, wrapper); |
| | | List<SaleProject> list = saleProjectService.selectList(wrapper); |
| | | return R.ok(exportSupport(list, fields)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProjectQuery/auth") |
| | | @ManagerAuth |
| | | public R query(String condition) { |
| | | EntityWrapper<SaleProject> wrapper = new EntityWrapper<>(); |
| | | wrapper.like("id", condition); |
| | | Page<SaleProject> page = saleProjectService.selectPage(new Page<>(0, 10), wrapper); |
| | | List<Map<String, Object>> result = new ArrayList<>(); |
| | | for (SaleProject saleProject : page.getRecords()){ |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("id", saleProject.getId()); |
| | | map.put("value", saleProject.getId()); |
| | | result.add(map); |
| | | } |
| | | return R.ok(result); |
| | | } |
| | | |
| | | @RequestMapping(value = "/saleProject/check/column/auth") |
| | | @ManagerAuth |
| | | public R query(@RequestBody JSONObject param) { |
| | | Wrapper<SaleProject> wrapper = new EntityWrapper<SaleProject>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val")); |
| | | if (null != saleProjectService.selectOne(wrapper)){ |
| | | return R.parse(BaseRes.REPEAT).add(getComment(SaleProject.class, String.valueOf(param.get("key")))); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/custIdQuery/auth") |
| | | @ManagerAuth |
| | | public R getCustId() { |
| | | List<Cstmr> cstmrs = cstmrService.selectList(null); |
| | | ArrayList<Map<String, Object>> result = new ArrayList<>(); |
| | | for (Cstmr cstmr : cstmrs) { |
| | | HashMap<String, Object> item = new HashMap<>(); |
| | | item.put("id",cstmr.getId()); |
| | | item.put("value",cstmr.getName()); |
| | | result.add(item); |
| | | } |
| | | return R.ok(result); |
| | | } |
| | | } |
New file |
| | |
| | | package zy.cloud.wms.common.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotations.TableId; |
| | | import com.baomidou.mybatisplus.enums.IdType; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.common.SpringUtils; |
| | | import com.core.exception.CoolException; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import com.baomidou.mybatisplus.annotations.TableField; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | import org.springframework.format.annotation.DateTimeFormat; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | |
| | | import com.baomidou.mybatisplus.annotations.TableName; |
| | | import zy.cloud.wms.manager.entity.Cstmr; |
| | | import zy.cloud.wms.manager.entity.ProjectType; |
| | | import zy.cloud.wms.manager.service.CstmrService; |
| | | import zy.cloud.wms.manager.service.ProjectTypeService; |
| | | import zy.cloud.wms.system.entity.User; |
| | | import zy.cloud.wms.system.service.UserService; |
| | | |
| | | import java.io.Serializable; |
| | | @Data |
| | | @TableName("man_sale_project") |
| | | public class SaleProject implements Serializable { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 唯一ID |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | @ApiModelProperty(value= "唯一ID") |
| | | private Long id; |
| | | |
| | | @ApiModelProperty(value= "") |
| | | @TableField("update_by") |
| | | private Long updateBy; |
| | | |
| | | @ApiModelProperty(value= "") |
| | | @TableField("update_time") |
| | | @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") |
| | | private Date updateTime; |
| | | |
| | | @ApiModelProperty(value= "") |
| | | @TableField("create_by") |
| | | private Long createBy; |
| | | |
| | | @ApiModelProperty(value= "") |
| | | @TableField("create_time") |
| | | @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") |
| | | private Date createTime; |
| | | |
| | | /** |
| | | * 状态,暂未启用 |
| | | */ |
| | | @ApiModelProperty(value= "状态,暂未启用") |
| | | private Integer status; |
| | | |
| | | /** |
| | | * 业务员 |
| | | */ |
| | | @ApiModelProperty(value= "业务员") |
| | | private Long saleman; |
| | | |
| | | /** |
| | | * 客户名称 |
| | | */ |
| | | @ApiModelProperty(value= "客户名称") |
| | | @TableField("cust_id") |
| | | private Long custId; |
| | | |
| | | /** |
| | | * 项目地址 |
| | | */ |
| | | @ApiModelProperty(value= "项目地址") |
| | | @TableField("project_addr") |
| | | private String projectAddr; |
| | | |
| | | /** |
| | | * 项目类型 |
| | | */ |
| | | @ApiModelProperty(value= "项目类型") |
| | | @TableField("project_type") |
| | | private Integer projectType; |
| | | |
| | | |
| | | @TableField("warehouse_size") |
| | | private String warehouseSize; |
| | | |
| | | /** |
| | | * 货物尺寸 |
| | | */ |
| | | @ApiModelProperty(value= "货物尺寸") |
| | | @TableField("goods_size") |
| | | private String goodsSize; |
| | | |
| | | /** |
| | | * 货物重量 |
| | | */ |
| | | @ApiModelProperty(value= "货物重量") |
| | | @TableField("goods_weight") |
| | | private String goodsWeight; |
| | | |
| | | /** |
| | | * 厂房情况 1: 新建 2: 旧改 |
| | | */ |
| | | @ApiModelProperty(value= "厂房情况 1: 新建 2: 旧改 ") |
| | | @TableField("warehouse_status") |
| | | private Integer warehouseStatus; |
| | | |
| | | /** |
| | | * 规划方案 |
| | | */ |
| | | @ApiModelProperty(value= "规划方案") |
| | | @TableField("project_scheme") |
| | | private String projectScheme; |
| | | |
| | | /** |
| | | * 报价阶段 |
| | | */ |
| | | @ApiModelProperty(value= "报价阶段") |
| | | private String offer; |
| | | |
| | | @TableField("bid") |
| | | private String bid; |
| | | |
| | | /** |
| | | * 堆垛机数量 |
| | | */ |
| | | @ApiModelProperty(value= "堆垛机数量") |
| | | @TableField("crn_num") |
| | | private Integer crnNum; |
| | | |
| | | @TableField("shelf_height") |
| | | private String shelfHeight; |
| | | |
| | | /** |
| | | * 货位数 |
| | | */ |
| | | @ApiModelProperty(value= "货位数") |
| | | @TableField("storage_num") |
| | | private String storageNum; |
| | | |
| | | /** |
| | | * 项目金额 |
| | | */ |
| | | @ApiModelProperty(value= "项目金额") |
| | | @TableField("project_fee") |
| | | private String projectFee; |
| | | |
| | | /** |
| | | * 成功率 |
| | | */ |
| | | @ApiModelProperty(value= "成功率") |
| | | @TableField("success_percentage") |
| | | private String successPercentage; |
| | | |
| | | /** |
| | | * 最近一次联系日期 |
| | | */ |
| | | @ApiModelProperty(value= "最近一次联系日期") |
| | | @TableField("last_contact") |
| | | @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") |
| | | private Date lastContact; |
| | | |
| | | /** |
| | | * 备注 |
| | | */ |
| | | @ApiModelProperty(value= "备注") |
| | | private String memo; |
| | | |
| | | public SaleProject() {} |
| | | |
| | | public SaleProject(Long updateBy,Date updateTime,Long createBy,Date createTime,Integer status,Long saleman,Long custId,String projectAddr,Integer projectType,String goodsSize,String goodsWeight,Integer warehouseStatus,String projectScheme,String offer,Integer crnNum,String storageNum,String projectFee,String successPercentage,Date lastContact,String memo) { |
| | | this.updateBy = updateBy; |
| | | this.updateTime = updateTime; |
| | | this.createBy = createBy; |
| | | this.createTime = createTime; |
| | | this.status = status; |
| | | this.saleman = saleman; |
| | | this.custId = custId; |
| | | this.projectAddr = projectAddr; |
| | | this.projectType = projectType; |
| | | this.goodsSize = goodsSize; |
| | | this.goodsWeight = goodsWeight; |
| | | this.warehouseStatus = warehouseStatus; |
| | | this.projectScheme = projectScheme; |
| | | this.offer = offer; |
| | | this.crnNum = crnNum; |
| | | this.storageNum = storageNum; |
| | | this.projectFee = projectFee; |
| | | this.successPercentage = successPercentage; |
| | | this.lastContact = lastContact; |
| | | this.memo = memo; |
| | | } |
| | | |
| | | // SaleProject saleProject = new SaleProject( |
| | | // null, // |
| | | // null, // |
| | | // null, // |
| | | // null, // |
| | | // null, // 状态,暂未启用 |
| | | // null, // 业务员 |
| | | // null, // 客户名称 |
| | | // null, // 项目地址 |
| | | // null, // 项目类型 |
| | | // null, // 货物尺寸 |
| | | // null, // 货物重量 |
| | | // null, // 厂房情况 |
| | | // null, // 规划方案 |
| | | // null, // 报价阶段 |
| | | // null, // 堆垛机数量 |
| | | // null, // 货位数 |
| | | // null, // 项目金额 |
| | | // null, // 成功率 |
| | | // null, // 最近一次联系日期 |
| | | // null // 备注 |
| | | // ); |
| | | |
| | | public Long getId() { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(Long id) { |
| | | this.id = id; |
| | | } |
| | | |
| | | public Long getUpdateBy() { |
| | | return updateBy; |
| | | } |
| | | |
| | | public void setUpdateBy(Long updateBy) { |
| | | this.updateBy = updateBy; |
| | | } |
| | | |
| | | public Date getUpdateTime() { |
| | | return updateTime; |
| | | } |
| | | |
| | | public String getUpdateTime$(){ |
| | | if (Cools.isEmpty(this.updateTime)){ |
| | | return ""; |
| | | } |
| | | return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); |
| | | } |
| | | |
| | | public void setUpdateTime(Date updateTime) { |
| | | this.updateTime = updateTime; |
| | | } |
| | | |
| | | public Long getCreateBy() { |
| | | return createBy; |
| | | } |
| | | |
| | | public void setCreateBy(Long createBy) { |
| | | this.createBy = createBy; |
| | | } |
| | | |
| | | public Date getCreateTime() { |
| | | return createTime; |
| | | } |
| | | |
| | | public String getCreateTime$(){ |
| | | if (Cools.isEmpty(this.createTime)){ |
| | | return ""; |
| | | } |
| | | return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); |
| | | } |
| | | |
| | | public void setCreateTime(Date createTime) { |
| | | this.createTime = createTime; |
| | | } |
| | | |
| | | public Integer getStatus() { |
| | | return status; |
| | | } |
| | | |
| | | public void setStatus(Integer status) { |
| | | this.status = status; |
| | | } |
| | | |
| | | public Long getSaleman() { |
| | | return saleman; |
| | | } |
| | | |
| | | public void setSaleman(Long saleman) { |
| | | this.saleman = saleman; |
| | | } |
| | | |
| | | public Long getCustId() { |
| | | return custId; |
| | | } |
| | | |
| | | public void setCustId(Long custId) { |
| | | this.custId = custId; |
| | | } |
| | | |
| | | public String getProjectAddr() { |
| | | return projectAddr; |
| | | } |
| | | |
| | | public void setProjectAddr(String projectAddr) { |
| | | this.projectAddr = projectAddr; |
| | | } |
| | | |
| | | public Integer getProjectType() { |
| | | return projectType; |
| | | } |
| | | |
| | | public void setProjectType(Integer projectType) { |
| | | this.projectType = projectType; |
| | | } |
| | | |
| | | public String getGoodsSize() { |
| | | return goodsSize; |
| | | } |
| | | |
| | | public void setGoodsSize(String goodsSize) { |
| | | this.goodsSize = goodsSize; |
| | | } |
| | | |
| | | public String getGoodsWeight() { |
| | | return goodsWeight; |
| | | } |
| | | |
| | | public void setGoodsWeight(String goodsWeight) { |
| | | this.goodsWeight = goodsWeight; |
| | | } |
| | | |
| | | public Integer getWarehouseStatus() { |
| | | return warehouseStatus; |
| | | } |
| | | |
| | | public String getWarehouseStatus$(){ |
| | | if (null == this.warehouseStatus){ return null; } |
| | | switch (this.warehouseStatus){ |
| | | case 1: |
| | | return "新建"; |
| | | case 2: |
| | | return "旧改"; |
| | | default: |
| | | return String.valueOf(this.warehouseStatus); |
| | | } |
| | | } |
| | | |
| | | public void setWarehouseStatus(Integer warehouseStatus) { |
| | | this.warehouseStatus = warehouseStatus; |
| | | } |
| | | |
| | | public String getProjectScheme() { |
| | | return projectScheme; |
| | | } |
| | | |
| | | public void setProjectScheme(String projectScheme) { |
| | | this.projectScheme = projectScheme; |
| | | } |
| | | |
| | | public String getOffer() { |
| | | return offer; |
| | | } |
| | | |
| | | public void setOffer(String offer) { |
| | | this.offer = offer; |
| | | } |
| | | |
| | | public Integer getCrnNum() { |
| | | return crnNum; |
| | | } |
| | | |
| | | public void setCrnNum(Integer crnNum) { |
| | | this.crnNum = crnNum; |
| | | } |
| | | |
| | | public String getStorageNum() { |
| | | return storageNum; |
| | | } |
| | | |
| | | public void setStorageNum(String storageNum) { |
| | | this.storageNum = storageNum; |
| | | } |
| | | |
| | | public String getProjectFee() { |
| | | return projectFee; |
| | | } |
| | | |
| | | public void setProjectFee(String projectFee) { |
| | | this.projectFee = projectFee; |
| | | } |
| | | |
| | | public String getSuccessPercentage() { |
| | | return successPercentage; |
| | | } |
| | | |
| | | public void setSuccessPercentage(String successPercentage) { |
| | | this.successPercentage = successPercentage; |
| | | } |
| | | |
| | | public Date getLastContact() { |
| | | return lastContact; |
| | | } |
| | | |
| | | public String getLastContact$(){ |
| | | if (Cools.isEmpty(this.lastContact)){ |
| | | return ""; |
| | | } |
| | | return new SimpleDateFormat("yyyy-MM-dd").format(this.lastContact); |
| | | } |
| | | |
| | | public void setLastContact(Date lastContact) { |
| | | this.lastContact = lastContact; |
| | | } |
| | | |
| | | public String getMemo() { |
| | | return memo; |
| | | } |
| | | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | /** |
| | | * 获取业务员 |
| | | * @return |
| | | */ |
| | | public String getSaleman$(){ |
| | | UserService bean = SpringUtils.getBean(UserService.class); |
| | | User user = bean.selectOne(new EntityWrapper<User>() |
| | | .eq("id", this.getSaleman())); |
| | | if (!Cools.isEmpty(user)) { |
| | | |
| | | return user.getUsername(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | /** |
| | | * 获取客户名 |
| | | * @return |
| | | */ |
| | | public String getCustId$(){ |
| | | CstmrService bean = SpringUtils.getBean(CstmrService.class); |
| | | Cstmr id1 = bean.selectOne(new EntityWrapper<Cstmr>() |
| | | .eq("id", this.getCustId())); |
| | | if (!Cools.isEmpty(id1)) { |
| | | |
| | | return id1.getName(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | /** |
| | | * 获取项目地址 |
| | | * @return |
| | | */ |
| | | public String getprojectAddr$(){ |
| | | CstmrService bean = SpringUtils.getBean(CstmrService.class); |
| | | Cstmr id1 = bean.selectOne(new EntityWrapper<Cstmr>() |
| | | .eq("id", this.getCustId())); |
| | | if (!Cools.isEmpty(id1)) { |
| | | |
| | | return id1.getAddr(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | /** |
| | | * 获取项目类型 |
| | | */ |
| | | |
| | | public String getProjectType$(){ |
| | | ProjectTypeService bean = SpringUtils.getBean(ProjectTypeService.class); |
| | | ProjectType id1 = bean.selectOne(new EntityWrapper<ProjectType>() |
| | | .eq("id", this.projectType)); |
| | | if (!Cools.isEmpty(id1)) { |
| | | return id1.getTypeName(); |
| | | } |
| | | return ""; |
| | | } |
| | | |
| | | /** |
| | | * 给货物重量添加KG |
| | | * @return |
| | | */ |
| | | public String getGoodsWeight$(){ |
| | | return this.goodsWeight + "KG"; |
| | | } |
| | | |
| | | /** |
| | | * 转换为√和× |
| | | * @return |
| | | */ |
| | | public String getProjectScheme$(){ |
| | | if (Cools.isEmpty(this.projectScheme)) { |
| | | return "×"; |
| | | } |
| | | if (this.projectScheme.equals("1")){ |
| | | return "√"; |
| | | }else { |
| | | return "×"; |
| | | } |
| | | } |
| | | public String getOffer$(){ |
| | | if (Cools.isEmpty(this.offer)) { |
| | | return "×"; |
| | | } |
| | | if (this.offer.equals("1")){ |
| | | return "√"; |
| | | }else { |
| | | return "×"; |
| | | } |
| | | } |
| | | public String getBid$(){ |
| | | if (Cools.isEmpty(this.bid)) { |
| | | return "×"; |
| | | } |
| | | if (this.bid.equals("1")){ |
| | | return "√"; |
| | | }else { |
| | | return "×"; |
| | | } |
| | | } |
| | | |
| | | public String getSuccessPercentage$(){ |
| | | return this.successPercentage + "%"; |
| | | } |
| | | } |
New file |
| | |
| | | package zy.cloud.wms.common.mapper; |
| | | |
| | | import zy.cloud.wms.common.entity.SaleProject; |
| | | import com.baomidou.mybatisplus.mapper.BaseMapper; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | import org.springframework.stereotype.Repository; |
| | | |
| | | @Mapper |
| | | @Repository |
| | | public interface SaleProjectMapper extends BaseMapper<SaleProject> { |
| | | |
| | | } |
New file |
| | |
| | | package zy.cloud.wms.common.service; |
| | | |
| | | import zy.cloud.wms.common.entity.SaleProject; |
| | | import com.baomidou.mybatisplus.service.IService; |
| | | |
| | | public interface SaleProjectService extends IService<SaleProject> { |
| | | |
| | | } |
New file |
| | |
| | | package zy.cloud.wms.common.service.impl; |
| | | |
| | | import zy.cloud.wms.common.mapper.SaleProjectMapper; |
| | | import zy.cloud.wms.common.entity.SaleProject; |
| | | import zy.cloud.wms.common.service.SaleProjectService; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | @Service("saleProjectService") |
| | | public class SaleProjectServiceImpl extends ServiceImpl<SaleProjectMapper, SaleProject> implements SaleProjectService { |
| | | |
| | | } |
| | |
| | | for (ProjectType projectType : page.getRecords()) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("id", projectType.getId()); |
| | | map.put("value", projectType.getId()); |
| | | map.put("value", projectType.getTypeName()); |
| | | result.add(map); |
| | | } |
| | | return R.ok(result); |
| | |
| | | # url: jdbc:sqlserver://127.0.0.1:51433;databasename=zypms |
| | | # username: sa |
| | | # password: Zoneyung@zy56$ |
| | | url: jdbc:sqlserver://192.168.4.15:1433;databasename=zypms_pro |
| | | url: jdbc:sqlserver://192.168.4.15:1433;databasename=zypms |
| | | username: sa |
| | | password: sa@123 |
| | | mvc: |
New file |
| | |
| | | <?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="zy.cloud.wms.common.mapper.SaleProjectMapper"> |
| | | |
| | | <!-- 通用查询映射结果 --> |
| | | <resultMap id="BaseResultMap" type="zy.cloud.wms.common.entity.SaleProject"> |
| | | <id column="id" property="id" /> |
| | | <result column="update_by" property="updateBy" /> |
| | | <result column="update_time" property="updateTime" /> |
| | | <result column="create_by" property="createBy" /> |
| | | <result column="create_time" property="createTime" /> |
| | | <result column="status" property="status" /> |
| | | <result column="saleman" property="saleman" /> |
| | | <result column="cust_id" property="custId" /> |
| | | <result column="project_addr" property="projectAddr" /> |
| | | <result column="project_type" property="projectType" /> |
| | | <result column="goods_size" property="goodsSize" /> |
| | | <result column="goods_weight" property="goodsWeight" /> |
| | | <result column="warehouse_status" property="warehouseStatus" /> |
| | | <result column="project_scheme" property="projectScheme" /> |
| | | <result column="offer" property="offer" /> |
| | | <result column="crn_num" property="crnNum" /> |
| | | <result column="storage_num" property="storageNum" /> |
| | | <result column="project_fee" property="projectFee" /> |
| | | <result column="success_percentage" property="successPercentage" /> |
| | | <result column="last_contact" property="lastContact" /> |
| | | <result column="memo" property="memo" /> |
| | | <result column="warehouse_size" property="warehouseSize" /> |
| | | <result column="bid" property="bid" /> |
| | | <result column="shelf_height" property="shelfHeight" /> |
| | | |
| | | </resultMap> |
| | | |
| | | </mapper> |
New file |
| | |
| | | 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: '#saleProject', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/saleProject/list/auth', |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 100, |
| | | cols: [[ |
| | | {type: 'checkbox'} |
| | | ,{field: 'saleman$', align: 'center',title: '业务员'} |
| | | ,{field: 'custId$', align: 'center',title: '客户名称'} |
| | | ,{field: 'projectAddr$', align: 'center',title: '项目地址'} |
| | | ,{field: 'projectType$', align: 'center',title: '项目类型'} |
| | | ,{field: 'warehouseSize', align: 'center',title: '厂房尺寸', width: 150} |
| | | ,{field: 'goodsSize', align: 'center',title: '货物尺寸' , width: 150} |
| | | ,{field: 'goodsWeight$', align: 'center',title: '货物重量'} |
| | | ,{field: 'warehouseStatus$', align: 'center',title: '厂房情况'} |
| | | |
| | | ,{field: 'projectScheme$', align: 'center',title: '规划方案'} |
| | | ,{field: 'offer$', align: 'center',title: '报价阶段'} |
| | | ,{field: 'bid$', align: 'center',title: '决标阶段'} |
| | | |
| | | ,{field: 'crnNum', align: 'center',title: '堆垛机数量'} |
| | | ,{field: 'storageNum', align: 'center',title: '货位数'} |
| | | ,{field: 'projectFee', align: 'center',title: '项目金额(万)'} |
| | | ,{field: 'successPercentage$', align: 'center',title: '成功率'} |
| | | ,{field: 'lastContact$', 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) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(saleProject)', 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} |
| | | }); |
| | | }); |
| | | |
| | | // 监听头工具栏事件 |
| | | table.on('toolbar(saleProject)', function (obj) { |
| | | var checkStatus = table.checkStatus(obj.config.id).data; |
| | | switch(obj.event) { |
| | | case 'addData': |
| | | showEditModel(); |
| | | break; |
| | | case 'deleteData': |
| | | if (checkStatus.length === 0) { |
| | | layer.msg('请选择要删除的数据', {icon: 2}); |
| | | return; |
| | | } |
| | | var ids = checkStatus.map(function (d) { |
| | | return d.id; |
| | | }); |
| | | del(ids); |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | | if (col.type === 'normal' && col.hide === false && col.toolbar == null) { |
| | | titles.push(col.title); |
| | | fields.push(col.field); |
| | | } |
| | | }); |
| | | var exportData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | exportData[this.name] = this.value; |
| | | }); |
| | | var param = { |
| | | 'saleProject': exportData, |
| | | 'fields': fields |
| | | }; |
| | | $.ajax({ |
| | | url: baseUrl+"/saleProject/export/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: JSON.stringify(param), |
| | | dataType:'json', |
| | | contentType:'application/json;charset=UTF-8', |
| | | method: 'POST', |
| | | success: function (res) { |
| | | layer.closeAll(); |
| | | if (res.code === 200) { |
| | | table.exportFile(titles,res.data,'xls'); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | | layer.msg(res.msg, {icon: 2}) |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | break; |
| | | } |
| | | }); |
| | | |
| | | // 监听行工具事件 |
| | | table.on('tool(saleProject)', function(obj){ |
| | | var data = obj.data; |
| | | switch (obj.event) { |
| | | case 'edit': |
| | | data.custName = data.custId$; |
| | | data.projectTypeId = data.projectType$; |
| | | showEditModel(data); |
| | | break; |
| | | case "del": |
| | | var ids = [data.id]; |
| | | del(ids); |
| | | break; |
| | | } |
| | | }); |
| | | |
| | | /* 弹窗 - 新增、修改 */ |
| | | function showEditModel(mData) { |
| | | console.log(mData); |
| | | admin.open({ |
| | | type: 1, |
| | | area: '800px', |
| | | title: (mData ? '修改' : '添加') + '集成项目统计表', |
| | | content: $('#editDialog').html(), |
| | | success: function (layero, dIndex) { |
| | | layDateRender(); |
| | | |
| | | form.val('detail', mData); |
| | | form.on('submit(editSubmit)', function (data) { |
| | | var loadIndex = layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/saleProject/"+(mData?'update':'add')+"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: data.field, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | layer.close(loadIndex); |
| | | if (res.code === 200){ |
| | | layer.close(dIndex); |
| | | layer.msg(res.msg, {icon: 1}); |
| | | tableReload(); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg, {icon: 2}); |
| | | } |
| | | } |
| | | }) |
| | | return false; |
| | | }); |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | layui.form.render('select'); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /* 删除 */ |
| | | function del(ids) { |
| | | layer.confirm('确定要删除选中数据吗?', { |
| | | skin: 'layui-layer-admin', |
| | | shade: .1 |
| | | }, function (i) { |
| | | layer.close(i); |
| | | var loadIndex = layer.load(2); |
| | | $.ajax({ |
| | | url: baseUrl+"/saleProject/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: {ids: ids}, |
| | | method: 'POST', |
| | | success: function (res) { |
| | | layer.close(loadIndex); |
| | | if (res.code === 200){ |
| | | layer.msg(res.msg, {icon: 1}); |
| | | tableReload(); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | | layer.msg(res.msg, {icon: 2}); |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | // 搜索 |
| | | 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() { |
| | | layDate.render({ |
| | | elem: '#updateTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#createTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#lastContact\\$', |
| | | type: 'datetime' |
| | | }); |
| | | |
| | | } |
| | | 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} |
| | | }); |
| | | } |
New file |
| | |
| | | <!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"> |
| | | <style> |
| | | .layui-table-body.layui-table-main { |
| | | overflow: scroll; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | | <!-- 搜索栏 --> |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="nodeId" class="layui-input" name="cust_id" type="text" placeholder="请输入" autocomplete="off" |
| | | style="display: none"> |
| | | <input id="nodeId$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" |
| | | placeholder="请选择客户名称" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="custIdQueryBycustId" |
| | | onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="custIdQueryBycustIdSelect" |
| | | onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="nodeId2" class="layui-input" name="project_type" type="text" placeholder="请输入" autocomplete="off" |
| | | style="display: none"> |
| | | <input id="nodeId2$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" |
| | | placeholder="请选择项目类型" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="projectTypeQueryByprojectType" |
| | | onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="projectTypeQueryByprojectTypeSelect" |
| | | onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </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" style="width: 100%"> |
| | | <table class="layui-hide" id="saleProject" lay-filter="saleProject"></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/saleProject/saleProject.js" charset="utf-8"></script> |
| | | </body> |
| | | <!-- 表单弹窗 --> |
| | | <script type="text/html" id="editDialog"> |
| | | <form id="detail" lay-filter="detail" class="layui-form admin-form"> |
| | | <input name="id" type="hidden"> |
| | | <div class="layui-row"> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">客户名称: </label> |
| | | <div class="layui-input-block cool-auto-complete"> |
| | | <input class="layui-input" name="custId" placeholder="请选择客户名称" style="display: none"> |
| | | <input id="custName" name="custName" class="layui-input cool-auto-complete-div" |
| | | onclick="autoShow(this.id)" type="text" placeholder="请选择客户名称" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="custIdQueryBycustId" |
| | | onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="custIdQueryBycustIdSelect" |
| | | onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">项目类型: </label> |
| | | <div class="layui-input-block cool-auto-complete"> |
| | | <input class="layui-input" name="projectType" placeholder="请选择项目类型" style="display: none"> |
| | | <input id="projectTypeId" name="projectTypeId" class="layui-input cool-auto-complete-div" |
| | | onclick="autoShow(this.id)" type="text" placeholder="请选择项目类型" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="projectTypeQueryByprojectType" |
| | | onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" |
| | | data-key="projectTypeQueryByprojectTypeSelect" |
| | | onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <fieldset class="layui-elem-field layui-field-title"> |
| | | <legend>现场勘察情况</legend> |
| | | </fieldset> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">厂房情况: </label> |
| | | <div class="layui-input-block"> |
| | | <select name="warehouseStatus"> |
| | | <option value="">请选择厂房情况</option> |
| | | <option value="1">新建</option> |
| | | <option value="2">旧改</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">厂房尺寸: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="warehouseSize" placeholder="请输入货物尺寸"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">货物尺寸: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="goodsSize" placeholder="请输入货物尺寸"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">货物重量: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="goodsWeight" placeholder="输入数字即可,自动追加KG" type="number"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="layui-form-item"> |
| | | <fieldset class="layui-elem-field layui-field-title"> |
| | | <legend>项目所处阶段</legend> |
| | | </fieldset> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">规划方案: </label> |
| | | <div class="layui-input-block"> |
| | | <select name="projectScheme"> |
| | | <option value="">请选择</option> |
| | | <option value="1">√</option> |
| | | <option value="2">×</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">报价阶段: </label> |
| | | <div class="layui-input-block"> |
| | | <select name="offer"> |
| | | <option value="">请选择</option> |
| | | <option value="1">√</option> |
| | | <option value="2">×</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">决标阶段: </label> |
| | | <div class="layui-input-block"> |
| | | <select name="bid"> |
| | | <option value="">请选择</option> |
| | | <option value="1">√</option> |
| | | <option value="2">×</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div class="layui-form-item"> |
| | | <fieldset class="layui-elem-field layui-field-title"> |
| | | <legend>项目规模</legend> |
| | | </fieldset> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">堆垛机数量: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="crnNum" placeholder="请输入堆垛机数量" type="number"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">货架高度: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="shelfHeight" placeholder="请输入货位数"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">货位数: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="storageNum" placeholder="请输入货位数"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">项目金额: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="projectFee" placeholder="单位为万"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">成功率: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="successPercentage" placeholder="请输入成功率"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">最近联系日期: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="lastContact" id="lastContact$" placeholder="请输入最近一次联系日期"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">备注: </label> |
| | | <div class="layui-input-block"> |
| | | <input class="layui-input" name="memo" placeholder="请输入备注"> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <hr class="layui-bg-gray"> |
| | | <div class="layui-form-item text-right"> |
| | | <button class="layui-btn" lay-filter="editSubmit" lay-submit="">保存</button> |
| | | <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button> |
| | | </div> |
| | | </form> |
| | | </script> |
| | | </html> |
| | | |