From d699794bb024ae7d5bb66fa24070745eb92c9b05 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期四, 03 八月 2023 12:36:07 +0800 Subject: [PATCH] #核价管理功能完善 --- src/main/java/com/zy/crm/manager/controller/PriOnlineController.java | 44 +++++++++++++++++---- src/main/java/com/zy/crm/manager/entity/PriOnline.java | 24 +++++++++-- src/main/webapp/static/js/priOnline/priOnline.js | 2 src/main/webapp/static/js/plan/plan.js | 4 +- src/main/java/com/zy/crm/manager/entity/Order.java | 9 ++++ src/main/resources/mapper/PriOnlineMapper.xml | 2 + src/main/java/com/zy/crm/manager/controller/OrderController.java | 17 ++++++++ src/main/webapp/views/priOnline/priOnline.html | 6 +- 8 files changed, 87 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/zy/crm/manager/controller/OrderController.java b/src/main/java/com/zy/crm/manager/controller/OrderController.java index 9ff6024..5d99861 100644 --- a/src/main/java/com/zy/crm/manager/controller/OrderController.java +++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java @@ -120,6 +120,23 @@ return R.ok(result); } + @RequestMapping(value = "/orderQueryName/auth") + @ManagerAuth + public R queryName(String condition) { + EntityWrapper<Order> wrapper = new EntityWrapper<>(); + wrapper.like("name", condition); + wrapper.eq("user_id",getUserId()); + Page<Order> page = orderService.selectPage(new Page<>(0, 10), wrapper); + List<Map<String, Object>> result = new ArrayList<>(); + for (Order order : page.getRecords()){ + Map<String, Object> map = new HashMap<>(); + map.put("id", order.getId()); + map.put("value", order.getName()); + result.add(map); + } + return R.ok(result); + } + @RequestMapping(value = "/order/check/column/auth") @ManagerAuth public R query(@RequestBody JSONObject param) { diff --git a/src/main/java/com/zy/crm/manager/controller/PriOnlineController.java b/src/main/java/com/zy/crm/manager/controller/PriOnlineController.java index 8333bff..a4e190b 100644 --- a/src/main/java/com/zy/crm/manager/controller/PriOnlineController.java +++ b/src/main/java/com/zy/crm/manager/controller/PriOnlineController.java @@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.plugins.Page; import com.core.common.DateUtils; import com.zy.crm.manager.entity.Item; +import com.zy.crm.manager.entity.Order; import com.zy.crm.manager.entity.Pri; import com.zy.crm.manager.entity.PriOnline; import com.zy.crm.manager.service.ItemService; +import com.zy.crm.manager.service.OrderService; import com.zy.crm.manager.service.PriOnlineService; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; @@ -17,6 +19,7 @@ import com.core.domain.KeyValueVo; import com.zy.crm.common.web.BaseController; import com.zy.crm.manager.service.PriService; +import com.zy.crm.system.entity.Role; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.ClassPathResource; import org.springframework.util.ClassUtils; @@ -38,7 +41,7 @@ private PriService priService; @Autowired - private ItemService itemService; + private OrderService orderService; @RequestMapping(value = "/priOnline/{id}/auth") @ManagerAuth @@ -65,7 +68,7 @@ @RequestParam(required = false)String condition, @RequestParam Map<String, Object> param){ EntityWrapper<PriOnline> wrapper = new EntityWrapper<>(); - wrapper.setSqlSelect("id,title,create_time as createTime,filepath,item_id as itemId,order_num as orderNum,template_name as templateName,user_id as userId,status,update_time as updateTime,check_data as checkData,update_user_id as updateUserId,member_id as memberId"); + wrapper.setSqlSelect("id,title,create_time as createTime,filepath,item_id as itemId,order_num as orderNum,template_name as templateName,user_id as userId,dept_id as deptId,status,update_time as updateTime,check_data as checkData,update_user_id as updateUserId,member_id as memberId"); wrapper.in("member_id", getUserRoleBelongsToUserId("allopen")); excludeTrash(param); convert(param, wrapper); @@ -75,15 +78,33 @@ } private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ + Long deptId = getDeptId(); + boolean signUserId = false; + boolean signDeptId = false; + for (Map.Entry<String, Object> entry : map.entrySet()){ + if (entry.getKey().equals("dept_id")){ + signDeptId = true; + } + } 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 if (entry.getKey().equals("dept_id")){ + if (!val.equals("19")){ + wrapper.eq(entry.getKey(), val); + } + } else if (entry.getKey().equals("user_id") && !signDeptId){ + signUserId = true; + wrapper.eq(entry.getKey(), val); } else { wrapper.like(entry.getKey(), val); } + } + if (!signUserId && !signDeptId){ + wrapper.eq("user_id", getUserId()); } } @@ -106,6 +127,8 @@ priOnline.setOrderNum(format.format(new Date())); //鍒涘缓浜哄憳 priOnline.setUserId(getUserId()); + //鍒涘缓浜哄憳閮ㄩ棬 + priOnline.setDeptId(getDeptId()); //鏇存柊鏃堕棿 priOnline.setUpdateTime(new Date()); //鏇存柊浜哄憳 @@ -113,12 +136,14 @@ //鐘舵�侊紝鏈畬鎴� priOnline.setStatus(0); //涓氬姟鍛� - Item item = itemService.selectById(priOnline.getItemId()); - priOnline.setMemberId(item.getMember()); +// Item item = itemService.selectById(priOnline.getItemId()); + Order order = orderService.selectById(priOnline.getItemId()); + priOnline.setMemberId(order.getUserId()); + //璁剧疆椤圭洰娴佺▼ - item.setStep(2); - itemService.updateById(item); + order.setStep(2); + orderService.updateById(order); priOnlineService.insert(priOnline); return R.ok(); @@ -147,8 +172,9 @@ //鐘舵�侊紝鏈畬鎴� priOnline.setStatus(0); //涓氬姟鍛� - Item item = itemService.selectById(priOnline.getItemId()); - priOnline.setMemberId(item.getMember()); +// Item item = itemService.selectById(priOnline.getItemId()); + Order order = orderService.selectById(priOnline.getItemId()); + priOnline.setMemberId(order.getUserId()); priOnlineService.insert(priOnline); return R.ok(); @@ -285,7 +311,7 @@ for (PriOnline priOnline : page.getRecords()){ Map<String, Object> map = new HashMap<>(); map.put("id", priOnline.getId()); - map.put("value", priOnline.getOrderNum() + "/" + priOnline.getItemId$() + "/" + priOnline.getMemberId$()); + map.put("value", priOnline.getOrderNum() + "/" + priOnline.getOrderId$() + "/" + priOnline.getMemberId$()); result.add(map); } return R.ok(result); diff --git a/src/main/java/com/zy/crm/manager/entity/Order.java b/src/main/java/com/zy/crm/manager/entity/Order.java index 218df66..36c4605 100644 --- a/src/main/java/com/zy/crm/manager/entity/Order.java +++ b/src/main/java/com/zy/crm/manager/entity/Order.java @@ -173,6 +173,12 @@ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date updateTime; + + @ApiModelProperty(value= "椤圭洰杩涘害娴佺▼{1锛氶」鐩垱寤猴紝2锛氭牳浠峰鐞嗭紝3锛氫骇鍝佽垂鐢ㄦ槑缁嗭紝4锛氭姤浠烽绠楀崟锛�5锛氭姤浠峰崟}") + @TableField("step") + private int step; + + /** * 娉ㄩ噴 */ @@ -181,7 +187,7 @@ public Order() {} - public Order(Long hostId,Long deptId,Long userId,Long cstmrId,String uuid,String name,Double money,Long company,String remarks,Long director,String province,String city,String district,String town,String addr,String files,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) { + public Order(Long hostId,Long deptId,Long userId,Long cstmrId,String uuid,String name,Double money,Long company,String remarks,Long director,String province,String city,String district,String town,String addr,String files,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,Integer step,String memo) { this.hostId = hostId; this.deptId = deptId; this.userId = userId; @@ -203,6 +209,7 @@ this.createTime = createTime; this.updateBy = updateBy; this.updateTime = updateTime; + this.step = step; this.memo = memo; } diff --git a/src/main/java/com/zy/crm/manager/entity/PriOnline.java b/src/main/java/com/zy/crm/manager/entity/PriOnline.java index dab502d..45e4b45 100644 --- a/src/main/java/com/zy/crm/manager/entity/PriOnline.java +++ b/src/main/java/com/zy/crm/manager/entity/PriOnline.java @@ -8,6 +8,7 @@ import com.core.common.SpringUtils; import com.zy.crm.manager.service.ItemService; +import com.zy.crm.manager.service.OrderService; import com.zy.crm.system.entity.User; import com.zy.crm.system.service.UserService; import org.springframework.format.annotation.DateTimeFormat; @@ -70,6 +71,10 @@ @TableField("user_id") private Long userId; + @ApiModelProperty(value= "鍒涘缓浜哄憳鐢ㄦ埛閮ㄩ棬") + @TableField("dept_id") + private Long deptId; + @ApiModelProperty(value= "鐘舵�亄0锛氭湭瀹屾垚锛�1锛氬凡瀹屾垚}") @TableField("status") private Integer status; @@ -124,11 +129,20 @@ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); } - public String getItemId$() { - ItemService itemService = SpringUtils.getBean(ItemService.class); - Item item = itemService.selectById(this.itemId); - if (!Cools.isEmpty(item)){ - return String.valueOf(item.getName()); +// public String getItemId$() { +// ItemService itemService = SpringUtils.getBean(ItemService.class); +// Item item = itemService.selectById(this.itemId); +// if (!Cools.isEmpty(item)){ +// return String.valueOf(item.getName()); +// } +// return null; +// } + + public String getOrderId$() { + OrderService orderService = SpringUtils.getBean(OrderService.class); + Order order = orderService.selectById(this.itemId); + if (!Cools.isEmpty(order)){ + return String.valueOf(order.getName()); } return null; } diff --git a/src/main/resources/mapper/PriOnlineMapper.xml b/src/main/resources/mapper/PriOnlineMapper.xml index d001338..27d3a6d 100644 --- a/src/main/resources/mapper/PriOnlineMapper.xml +++ b/src/main/resources/mapper/PriOnlineMapper.xml @@ -13,6 +13,7 @@ <result column="order_num" property="orderNum" /> <result column="template_name" property="templateName" /> <result column="user_id" property="userId" /> + <result column="dept_id" property="deptId" /> <result column="status" property="status" /> <result column="update_time" property="updateTime" /> <result column="check_data" property="checkData" /> @@ -28,6 +29,7 @@ <result column="order_num" property="orderNum" /> <result column="template_name" property="templateName" /> <result column="user_id" property="userId" /> + <result column="dept_id" property="deptId" /> <result column="status" property="status" /> <result column="update_time" property="updateTime" /> </resultMap> diff --git a/src/main/webapp/static/js/plan/plan.js b/src/main/webapp/static/js/plan/plan.js index af13058..ae1fe6b 100644 --- a/src/main/webapp/static/js/plan/plan.js +++ b/src/main/webapp/static/js/plan/plan.js @@ -197,7 +197,7 @@ } }); - //婕旂ず澶氭枃浠跺垪琛� + //澶氭枃浠跺垪琛� var uploadListIns = upload.render({ elem: '#data-btn-file2' ,elemList: $('#data-btn-file3') //鍒楄〃鍏冪礌瀵硅薄 @@ -261,7 +261,7 @@ ,tds = tr.children(); tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //鏄剧ず閲嶄紶 } - ,progress: function(n, elem, e, index){ //娉ㄦ剰锛歩ndex 鍙傛暟涓� layui 2.6.6 鏂板 + ,progress: function(n, elem, e, index){ element.progress('progress-demo-'+ index, n + '%'); //鎵ц杩涘害鏉°�俷 鍗充负杩斿洖鐨勮繘搴︾櫨鍒嗘瘮 } }); diff --git a/src/main/webapp/static/js/priOnline/priOnline.js b/src/main/webapp/static/js/priOnline/priOnline.js index 8344899..09d0a0c 100644 --- a/src/main/webapp/static/js/priOnline/priOnline.js +++ b/src/main/webapp/static/js/priOnline/priOnline.js @@ -86,7 +86,7 @@ ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} ,{field: 'templateName', align: 'center',title: '妯℃澘鍚�'} ,{field: 'orderNum', align: 'center',title: '璁㈠崟鍙�'} - ,{field: 'itemId$', align: 'center',title: '椤圭洰鍚�'} + ,{field: 'orderId$', align: 'center',title: '椤圭洰鍚�'} ,{field: 'createTime$', align: 'center',title: '鍒涘缓鏃堕棿'} ,{field: 'updateTime$', align: 'center',title: '鏇存柊鏃堕棿'} ,{field: 'status$', align: 'center',title: '鐘舵��'} diff --git a/src/main/webapp/views/priOnline/priOnline.html b/src/main/webapp/views/priOnline/priOnline.html index 22f85dc..bef3762 100644 --- a/src/main/webapp/views/priOnline/priOnline.html +++ b/src/main/webapp/views/priOnline/priOnline.html @@ -98,10 +98,10 @@ <label class="layui-form-label layui-form-required">椤圭洰鍚�: </label> <div class="layui-input-block cool-auto-complete"> <input class="layui-input" name="itemId" placeholder="璇疯緭鍏ラ」鐩悕" style="display: none" lay-verify="required"> - <input id="itemId$" name="itemId$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ラ」鐩悕" onfocus=this.blur()> + <input id="orderId$" name="orderId$" 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="itemQueryBydirector" onkeyup="autoLoad(this.getAttribute('data-key'))"> - <select class="cool-auto-complete-window-select" data-key="itemQueryBydirectorSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> + <input class="cool-auto-complete-window-input" data-key="orderQueryNameBydirector" onkeyup="autoLoad(this.getAttribute('data-key'))"> + <select class="cool-auto-complete-window-select" data-key="orderQueryNameBydirectorSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> </select> </div> </div> -- Gitblit v1.9.1