From 11aa35cf9d5c94d9715b2914212fd26465c29da9 Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期一, 18 四月 2022 08:56:17 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/common/service/impl/SaleProjectServiceImpl.java | 12 src/main/webapp/static/js/saleProject/saleProject.js | 272 +++++++++++ src/main/java/projectPlan.sql | 18 src/main/java/itemReport.sql | 18 src/main/java/zy/cloud/wms/common/controller/SaleProjectController.java | 164 ++++++ src/main/java/zy/cloud/wms/common/CodeBuilder.java | 4 src/main/java/zy/cloud/wms/common/mapper/SaleProjectMapper.java | 12 src/main/java/zy/cloud/wms/common/service/SaleProjectService.java | 8 src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java | 2 src/main/webapp/views/saleProject/saleProject.html | 290 ++++++++++++ src/main/java/saleProject.sql | 18 src/main/java/zy/cloud/wms/common/entity/SaleProject.java | 553 +++++++++++++++++++++++ src/main/resources/application.yml | 2 src/main/resources/mapper/SaleProjectMapper.xml | 34 + 14 files changed, 1,367 insertions(+), 40 deletions(-) diff --git a/src/main/java/itemReport.sql b/src/main/java/itemReport.sql index dbc0b49..e69de29 100644 --- a/src/main/java/itemReport.sql +++ b/src/main/java/itemReport.sql @@ -1,18 +0,0 @@ --- 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'); diff --git a/src/main/java/projectPlan.sql b/src/main/java/projectPlan.sql index a7972fa..e69de29 100644 --- a/src/main/java/projectPlan.sql +++ b/src/main/java/projectPlan.sql @@ -1,18 +0,0 @@ --- 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'); diff --git a/src/main/java/saleProject.sql b/src/main/java/saleProject.sql new file mode 100644 index 0000000..35d8357 --- /dev/null +++ b/src/main/java/saleProject.sql @@ -0,0 +1,18 @@ +-- 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'); diff --git a/src/main/java/zy/cloud/wms/common/CodeBuilder.java b/src/main/java/zy/cloud/wms/common/CodeBuilder.java index bf6db48..a55af7e 100644 --- a/src/main/java/zy/cloud/wms/common/CodeBuilder.java +++ b/src/main/java/zy/cloud/wms/common/CodeBuilder.java @@ -23,8 +23,8 @@ 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; diff --git a/src/main/java/zy/cloud/wms/common/controller/SaleProjectController.java b/src/main/java/zy/cloud/wms/common/controller/SaleProjectController.java new file mode 100644 index 0000000..09f010e --- /dev/null +++ b/src/main/java/zy/cloud/wms/common/controller/SaleProjectController.java @@ -0,0 +1,164 @@ +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); + } +} diff --git a/src/main/java/zy/cloud/wms/common/entity/SaleProject.java b/src/main/java/zy/cloud/wms/common/entity/SaleProject.java new file mode 100644 index 0000000..e6ad367 --- /dev/null +++ b/src/main/java/zy/cloud/wms/common/entity/SaleProject.java @@ -0,0 +1,553 @@ +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 ""; + } + + /** + * 缁欒揣鐗╅噸閲忔坊鍔燢G + * @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 + "%"; + } +} diff --git a/src/main/java/zy/cloud/wms/common/mapper/SaleProjectMapper.java b/src/main/java/zy/cloud/wms/common/mapper/SaleProjectMapper.java new file mode 100644 index 0000000..0f48299 --- /dev/null +++ b/src/main/java/zy/cloud/wms/common/mapper/SaleProjectMapper.java @@ -0,0 +1,12 @@ +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> { + +} diff --git a/src/main/java/zy/cloud/wms/common/service/SaleProjectService.java b/src/main/java/zy/cloud/wms/common/service/SaleProjectService.java new file mode 100644 index 0000000..c46b597 --- /dev/null +++ b/src/main/java/zy/cloud/wms/common/service/SaleProjectService.java @@ -0,0 +1,8 @@ +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> { + +} diff --git a/src/main/java/zy/cloud/wms/common/service/impl/SaleProjectServiceImpl.java b/src/main/java/zy/cloud/wms/common/service/impl/SaleProjectServiceImpl.java new file mode 100644 index 0000000..3034729 --- /dev/null +++ b/src/main/java/zy/cloud/wms/common/service/impl/SaleProjectServiceImpl.java @@ -0,0 +1,12 @@ +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 { + +} diff --git a/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java b/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java index d7dc3b5..db22ce8 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/ProjectTypeController.java @@ -108,7 +108,7 @@ 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); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index fd4e3a8..27e1ab9 100644 --- a/src/main/resources/application.yml +++ b/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://192.168.4.15:1433;databasename=zypms_pro + url: jdbc:sqlserver://192.168.4.15:1433;databasename=zypms username: sa password: sa@123 mvc: diff --git a/src/main/resources/mapper/SaleProjectMapper.xml b/src/main/resources/mapper/SaleProjectMapper.xml new file mode 100644 index 0000000..18eff76 --- /dev/null +++ b/src/main/resources/mapper/SaleProjectMapper.xml @@ -0,0 +1,34 @@ +<?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> diff --git a/src/main/webapp/static/js/saleProject/saleProject.js b/src/main/webapp/static/js/saleProject/saleProject.js new file mode 100644 index 0000000..e42cd4b --- /dev/null +++ b/src/main/webapp/static/js/saleProject/saleProject.js @@ -0,0 +1,272 @@ +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} + }); +} diff --git a/src/main/webapp/views/saleProject/saleProject.html b/src/main/webapp/views/saleProject/saleProject.html new file mode 100644 index 0000000..57db900 --- /dev/null +++ b/src/main/webapp/views/saleProject/saleProject.html @@ -0,0 +1,290 @@ +<!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> + -- Gitblit v1.9.1