From 41d4fd411a12ecf45ce8122448a8ad3b1a9a554e Mon Sep 17 00:00:00 2001 From: "1215525055@qq.com" <1215525055@qq.com> Date: Thu, 17 Jul 2025 16:54:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=95=86=E6=A0=87=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=20,=20=E7=94=B5=E5=AD=90=E8=BD=AF=E8=91=97=E5=A4=87?= =?UTF-8?q?=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/apporder/AppOrderController.java | 8 +- .../api/trademark/TrademarkController.java | 24 +++ .../pojo/dtos/apporder/AppOrderDTO.java | 20 ++ .../pojo/dtos/trademark/TrademarkDTO.java | 11 +- .../aishop/pojo/vos/apporder/AppOrder3VO.java | 13 +- .../pojo/vos/apporder/AppOrderCheckVO.java | 21 ++ .../aishop/pojo/vos/apporder/AppOrderVO.java | 12 ++ .../pojo/vos/trademark/TrademarkRemarkVO.java | 28 +++ .../pojo/vos/trademark/TrademarkSystemVO.java | 27 +++ .../service/apporder/IAppOrderService.java | 2 + .../apporder/impl/AppOrderServiceImpl.java | 14 +- .../impl/CorrectionServiceImpl.java | 62 +++++- .../service/trademark/ITrademarkService.java | 4 + .../trademark/impl/TrademarkServiceImpl.java | 30 ++- .../mapper/apporder/app-order-mapper.xml | 31 ++- .../mapper/trademark/trademark-mapper.xml | 17 +- .../resources/templates/apporder/list.html | 10 +- .../resources/templates/apporder/update.html | 67 ++++++- .../templates/correction/app-list.html | 51 +++-- .../templates/correction/trademark-list.html | 14 +- .../templates/correction/trademark-save.html | 40 +++- .../resources/templates/trademark/list.html | 39 ++-- .../resources/templates/trademark/update.html | 180 ++++++++++++++---- 23 files changed, 614 insertions(+), 111 deletions(-) create mode 100644 src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkRemarkVO.java create mode 100644 src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkSystemVO.java diff --git a/src/main/java/cn/com/tenlion/aishop/controller/api/apporder/AppOrderController.java b/src/main/java/cn/com/tenlion/aishop/controller/api/apporder/AppOrderController.java index f3f5db1..8231d07 100644 --- a/src/main/java/cn/com/tenlion/aishop/controller/api/apporder/AppOrderController.java +++ b/src/main/java/cn/com/tenlion/aishop/controller/api/apporder/AppOrderController.java @@ -203,11 +203,17 @@ public class AppOrderController extends DefaultBaseController { @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})*/ @PostMapping("update/success/{appOrderId}") @CheckRequestBodyAnnotation - public SuccessResult updateCheck(@PathVariable("appOrderId") String appOrderId, @RequestBody AppOrderSuccessVO appOrderSuccessVO) { + public SuccessResult updateSuccess(@PathVariable("appOrderId") String appOrderId, @RequestBody AppOrderSuccessVO appOrderSuccessVO) { appOrderService.updateSuccess(appOrderId, appOrderSuccessVO); return new SuccessResult(); } + @PostMapping("update/apply/{appOrderId}") + public SuccessResult updateSubApply(@PathVariable("appOrderId") String appOrderId) { + appOrderService.updateSubApply(appOrderId); + return new SuccessResult(); + } + /* @ApiOperation(value = "后台审核", notes = "后台审核接口") @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})*/ @PostMapping("update/check/{appOrderId}") diff --git a/src/main/java/cn/com/tenlion/aishop/controller/api/trademark/TrademarkController.java b/src/main/java/cn/com/tenlion/aishop/controller/api/trademark/TrademarkController.java index 9753c0c..834f034 100644 --- a/src/main/java/cn/com/tenlion/aishop/controller/api/trademark/TrademarkController.java +++ b/src/main/java/cn/com/tenlion/aishop/controller/api/trademark/TrademarkController.java @@ -550,6 +550,30 @@ public class TrademarkController extends DefaultBaseController { return new SuccessResult(); } + @ApiOperation(value = "修改商标申请", notes = "修改商标申请接口") + @ApiImplicitParams({ + @ApiImplicitParam(name = "trademarkId", value = "商标申请ID", paramType = "path") + }) + @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)}) + @PutMapping("update-system/{trademarkId}") + @CheckRequestBodyAnnotation + public SuccessResult updateSystem(@PathVariable("trademarkId") String trademarkId, @RequestBody TrademarkSystemVO trademarkVO) { + trademarkService.updateSystem(trademarkId, trademarkVO); + return new SuccessResult(); + } + + @ApiOperation(value = "修改商标申请", notes = "修改商标申请接口") + @ApiImplicitParams({ + @ApiImplicitParam(name = "trademarkId", value = "商标申请ID", paramType = "path") + }) + @ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)}) + @PutMapping("update-remark/{trademarkId}") + @CheckRequestBodyAnnotation + public SuccessResult updateRemark(@PathVariable("trademarkId") String trademarkId, @RequestBody TrademarkRemarkVO trademarkVO) { + trademarkService.updateRemark(trademarkId, trademarkVO); + return new SuccessResult(); + } + @ApiOperation(value = "商标申请详情", notes = "商标申请详情接口") @ApiImplicitParams({ @ApiImplicitParam(name = "trademarkId", value = "商标申请ID", paramType = "path") diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/dtos/apporder/AppOrderDTO.java b/src/main/java/cn/com/tenlion/aishop/pojo/dtos/apporder/AppOrderDTO.java index 37174e3..87fa8e3 100644 --- a/src/main/java/cn/com/tenlion/aishop/pojo/dtos/apporder/AppOrderDTO.java +++ b/src/main/java/cn/com/tenlion/aishop/pojo/dtos/apporder/AppOrderDTO.java @@ -21,6 +21,8 @@ public class AppOrderDTO { private String appOrderId; @ApiModelProperty(name = "appOrderNo", value = "订单号") private String appOrderNo; + @ApiModelProperty(name = "thereAnyFile", value = "是否有文件") + private String thereAnyFile; @ApiModelProperty(name = "appOrderPayStatus", value = "支付状态,0已退款,1已付款") private String appOrderPayStatus; @ApiModelProperty(name = "appOrderPayTime", value = "支付时间") @@ -123,6 +125,24 @@ public class AppOrderDTO { private String userUsername; @ApiModelProperty(name = "correctionCount", value = "待补正数量") private Integer waitCorrectionCount; + @ApiModelProperty(name = "startTime", value = "") + private String startTime; + + public String getStartTime() { + return startTime == null ? "" : startTime.trim(); + } + + public void setStartTime(String startTime) { + this.startTime = startTime; + } + + public String getThereAnyFile() { + return thereAnyFile == null ? "" : thereAnyFile.trim(); + } + + public void setThereAnyFile(String thereAnyFile) { + this.thereAnyFile = thereAnyFile; + } public Integer getWaitCorrectionCount() { return waitCorrectionCount == null ? 0 : waitCorrectionCount; diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/dtos/trademark/TrademarkDTO.java b/src/main/java/cn/com/tenlion/aishop/pojo/dtos/trademark/TrademarkDTO.java index b56cee4..287f486 100644 --- a/src/main/java/cn/com/tenlion/aishop/pojo/dtos/trademark/TrademarkDTO.java +++ b/src/main/java/cn/com/tenlion/aishop/pojo/dtos/trademark/TrademarkDTO.java @@ -25,7 +25,8 @@ public class TrademarkDTO { private String trademarkId; @ApiModelProperty(name = "trademarkName", value = "名称") private String trademarkName; - @ApiModelProperty(name = "trademarkDescription", value = "说明") + @ApiModelProperty(name = "trademarkRemark", value = "备注") + private String trademarkRemark; private String trademarkDescription; @ApiModelProperty(name = "trademarkContent", value = "预留") private String trademarkContent; @@ -104,6 +105,14 @@ public class TrademarkDTO { @ApiModelProperty(name = "correctionCount", value = "待补正数量") private Integer waitCorrectionCount; + public String getTrademarkRemark() { + return trademarkRemark == null ? "" : trademarkRemark.trim(); + } + + public void setTrademarkRemark(String trademarkRemark) { + this.trademarkRemark = trademarkRemark; + } + public Integer getWaitCorrectionCount() { return waitCorrectionCount == null ? 0 : waitCorrectionCount; } diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrder3VO.java b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrder3VO.java index 9f5897f..8f5a41e 100644 --- a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrder3VO.java +++ b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrder3VO.java @@ -16,13 +16,22 @@ import io.swagger.annotations.ApiModelProperty; @ApiModel public class AppOrder3VO { + @ApiModelProperty(name = "thereAnyFile", value = "是否有文件") + @CheckEmptyAnnotation(name = "是否有文件") + private String thereAnyFile; @ApiModelProperty(name = "sourceCodeDocFile", value = "源码文档") - @CheckEmptyAnnotation(name = "源码文档") private String sourceCodeDocFile; @ApiModelProperty(name = "softwareDocFile", value = "软件文档") - @CheckEmptyAnnotation(name = "软件文档") private String softwareDocFile; + public String getThereAnyFile() { + return thereAnyFile == null ? "" : thereAnyFile.trim(); + } + + public void setThereAnyFile(String thereAnyFile) { + this.thereAnyFile = thereAnyFile; + } + public String getSourceCodeDocFile() { return sourceCodeDocFile == null ? "" : sourceCodeDocFile.trim(); } diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderCheckVO.java b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderCheckVO.java index 2083f64..5584c37 100644 --- a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderCheckVO.java +++ b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderCheckVO.java @@ -17,11 +17,32 @@ import java.io.Serializable; @ApiModel public class AppOrderCheckVO implements Serializable { + @ApiModelProperty(name = "sourceCodeDocFile", value = "源码文档") + @CheckEmptyAnnotation(name = "源码文档") + private String sourceCodeDocFile; + @ApiModelProperty(name = "softwareDocFile", value = "软件文档") + @CheckEmptyAnnotation(name = "软件文档") + private String softwareDocFile; @ApiModelProperty(name = "checkStatus", value = "审核状态") @CheckEmptyAnnotation(name = "审核状态") private String checkStatus; @ApiModelProperty(name = "checkRemark", value = "审核备注") private String checkRemark; + public String getSourceCodeDocFile() { + return sourceCodeDocFile == null ? "" : sourceCodeDocFile.trim(); + } + + public void setSourceCodeDocFile(String sourceCodeDocFile) { + this.sourceCodeDocFile = sourceCodeDocFile; + } + + public String getSoftwareDocFile() { + return softwareDocFile == null ? "" : softwareDocFile.trim(); + } + + public void setSoftwareDocFile(String softwareDocFile) { + this.softwareDocFile = softwareDocFile; + } public String getCheckStatus() { return checkStatus == null ? "" : checkStatus.trim(); diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderVO.java b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderVO.java index 4154da3..e5890cd 100644 --- a/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderVO.java +++ b/src/main/java/cn/com/tenlion/aishop/pojo/vos/apporder/AppOrderVO.java @@ -20,6 +20,8 @@ public class AppOrderVO { private String appOrderId; @ApiModelProperty(name = "appOrderNo", value = "订单号") private String appOrderNo; + @ApiModelProperty(name = "thereAnyFile", value = "是否有文件") + private String thereAnyFile; @ApiModelProperty(name = "appOrderPayStatus", value = "支付状态,0已退款,1已付款") private String appOrderPayStatus; @ApiModelProperty(name = "appOrderPayTime", value = "支付时间") @@ -97,6 +99,16 @@ public class AppOrderVO { private String updateUser; @ApiModelProperty(name = "deleteStatus", value = "") private String deleteStatus; + @ApiModelProperty(name = "startTime", value = "") + private String startTime; + + public String getThereAnyFile() { + return thereAnyFile == null ? "" : thereAnyFile.trim(); + } + + public void setThereAnyFile(String thereAnyFile) { + this.thereAnyFile = thereAnyFile; + } public Integer getAppOrderPayDay() { return appOrderPayDay == null ? 0 : appOrderPayDay; diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkRemarkVO.java b/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkRemarkVO.java new file mode 100644 index 0000000..2f3d39d --- /dev/null +++ b/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkRemarkVO.java @@ -0,0 +1,28 @@ +package cn.com.tenlion.aishop.pojo.vos.trademark; + +import ink.wgink.annotation.CheckEmptyAnnotation; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * + * @ClassName: TrademarkCheckVO + * @Description: 商标申请 + * @Author: CodeFactory + * @Date: 2025-06-10 10:14:40 + * @Version: 3.0 + **/ +@ApiModel +public class TrademarkRemarkVO { + + @ApiModelProperty(name = "trademarkRemark", value = "备注") + private String trademarkRemark; + + public String getTrademarkRemark() { + return trademarkRemark == null ? "" : trademarkRemark.trim(); + } + + public void setTrademarkRemark(String trademarkRemark) { + this.trademarkRemark = trademarkRemark; + } +} diff --git a/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkSystemVO.java b/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkSystemVO.java new file mode 100644 index 0000000..d25dee2 --- /dev/null +++ b/src/main/java/cn/com/tenlion/aishop/pojo/vos/trademark/TrademarkSystemVO.java @@ -0,0 +1,27 @@ +package cn.com.tenlion.aishop.pojo.vos.trademark; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * + * @ClassName: TrademarkCheckVO + * @Description: 商标申请 + * @Author: CodeFactory + * @Date: 2025-06-10 10:14:40 + * @Version: 3.0 + **/ +@ApiModel +public class TrademarkSystemVO { + + @ApiModelProperty(name = "trademarkType", value = "类型") + private String trademarkType; + + public String getTrademarkType() { + return trademarkType == null ? "" : trademarkType.trim(); + } + + public void setTrademarkType(String trademarkType) { + this.trademarkType = trademarkType; + } +} diff --git a/src/main/java/cn/com/tenlion/aishop/service/apporder/IAppOrderService.java b/src/main/java/cn/com/tenlion/aishop/service/apporder/IAppOrderService.java index 6d409b3..80519a5 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/apporder/IAppOrderService.java +++ b/src/main/java/cn/com/tenlion/aishop/service/apporder/IAppOrderService.java @@ -207,4 +207,6 @@ public interface IAppOrderService { void updateCheck(String appOrderId, AppOrderCheckVO appOrderCheckVO); void updateSuccess(String appOrderId, AppOrderSuccessVO appOrderSuccessVO); + + void updateSubApply(String appOrderId); } \ No newline at end of file diff --git a/src/main/java/cn/com/tenlion/aishop/service/apporder/impl/AppOrderServiceImpl.java b/src/main/java/cn/com/tenlion/aishop/service/apporder/impl/AppOrderServiceImpl.java index f53d034..a2f1e1c 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/apporder/impl/AppOrderServiceImpl.java +++ b/src/main/java/cn/com/tenlion/aishop/service/apporder/impl/AppOrderServiceImpl.java @@ -33,6 +33,7 @@ import cn.com.tenlion.aishop.pojo.pos.apporder.AppOrderPO; import cn.com.tenlion.aishop.service.apporder.IAppOrderService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import io.swagger.annotations.ApiModelProperty; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -157,19 +158,30 @@ public class AppOrderServiceImpl extends DefaultBaseService implements IAppOrder params2.put("checkStatus", appOrderCheckVO.getCheckStatus()); params2.put("checkTime", DateUtil.getTime()); params2.put("checkRemark", appOrderCheckVO.getCheckRemark()); + params2.put("softwareDocFile", appOrderCheckVO.getSoftwareDocFile()); + params2.put("sourceCodeDocFile", appOrderCheckVO.getSourceCodeDocFile()); if("2".equals(appOrderCheckVO.getCheckStatus())) { params2.put("appOrderStatus", "4"); } appOrderDao.update(params2); } + @Override + public void updateSubApply(String appOrderId) { + Map params2 = getHashMap(2); + params2.put("appOrderId", appOrderId); + params2.put("startTime", DateUtil.getTime()); + params2.put("appOrderStatus", "5"); + appOrderDao.update(params2); + } + @Override public void updateSuccess(String appOrderId, AppOrderSuccessVO appOrderSuccessVO) { Map params2 = getHashMap(2); params2.put("appOrderId", appOrderId); params2.put("appOrderResultTime", DateUtil.getTime()); params2.put("appOrderResultFile", appOrderSuccessVO.getAppOrderResultFile()); - params2.put("appOrderStatus", "5"); + params2.put("appOrderStatus", "6"); appOrderDao.update(params2); } diff --git a/src/main/java/cn/com/tenlion/aishop/service/correction/impl/CorrectionServiceImpl.java b/src/main/java/cn/com/tenlion/aishop/service/correction/impl/CorrectionServiceImpl.java index 90960a9..cd6a180 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/correction/impl/CorrectionServiceImpl.java +++ b/src/main/java/cn/com/tenlion/aishop/service/correction/impl/CorrectionServiceImpl.java @@ -1,25 +1,31 @@ package cn.com.tenlion.aishop.service.correction.impl; import cn.com.tenlion.aishop.dao.apporder.IAppOrderDao; +import cn.com.tenlion.aishop.dao.trademark.ITrademarkDao; import cn.com.tenlion.aishop.pojo.dtos.apporder.AppOrderDTO; import cn.com.tenlion.aishop.pojo.dtos.goods.GoodsSimpleDTO; import cn.com.tenlion.aishop.pojo.dtos.goodsonline.GoodsonlineDTO; import cn.com.tenlion.aishop.pojo.dtos.order.OrderDTO; import cn.com.tenlion.aishop.pojo.dtos.trademark.TrademarkDTO; +import cn.com.tenlion.aishop.pojo.vos.account.PayVO; import cn.com.tenlion.aishop.pojo.vos.goodslog.GoodslogVO; import cn.com.tenlion.aishop.pojo.vos.trademark.TrademarkStatusVO; import cn.com.tenlion.aishop.service.apporder.IAppOrderService; import cn.com.tenlion.aishop.service.goodslog.IGoodslogService; import cn.com.tenlion.aishop.service.goodsonline.IGoodsonlineService; import cn.com.tenlion.aishop.service.order.IOrderService; +import cn.com.tenlion.aishop.service.remote.IRemoteService; import cn.com.tenlion.aishop.service.trademark.ITrademarkService; +import cn.com.tenlion.aishop.util.PayUtil; import cn.com.tenlion.aishop.util.SystemConfig; import cn.com.tenlion.aishop.util.TenlionSMS; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import ink.wgink.common.base.DefaultBaseService; import ink.wgink.exceptions.SaveException; +import ink.wgink.interfaces.user.IUserBaseService; import ink.wgink.pojo.ListPage; +import ink.wgink.pojo.dtos.user.UserDTO; import ink.wgink.pojo.result.SuccessResult; import ink.wgink.pojo.result.SuccessResultList; import ink.wgink.util.date.DateUtil; @@ -52,6 +58,8 @@ public class CorrectionServiceImpl extends DefaultBaseService implements ICorrec @Autowired private ICorrectionDao correctionDao; + @Autowired + private IUserBaseService userBaseService; @Override public void save(CorrectionVO correctionVO) { @@ -183,6 +191,12 @@ public class CorrectionServiceImpl extends DefaultBaseService implements ICorrec saveAppReturnId(null, correctionVO); } + @Autowired + private ITrademarkDao trademarkDao; + + @Autowired + private IRemoteService remoteService; + @Override public void saveTrademark(CorrectionVO correctionVO) { saveTrademark(null, correctionVO); @@ -227,13 +241,51 @@ public class CorrectionServiceImpl extends DefaultBaseService implements ICorrec vo.setTrademarkStatus(correctionVO.getCorrectionStatus()); iTrademarkService.updateStatus(orderDTO.getTrademarkId(), vo); } + if(correctionVO.getCorrectionStatus().equals("-1")) { + Map params2 = new HashMap<>(); + // 不通过 + params2.put("trademarkId", orderDTO.getTrademarkId());// 取消订单 + params2.put("trademarkStatus", "-1");// 取消订单 + params2.put("checkRemark", correctionVO.getCorrectionRemark()); + params2.put("checkTime", DateUtil.getTime()); + params2.put("checkStatus", "-1"); + params2.put("trademarkProgress", "3");// 回退到第三步 + params2.put("trademarkFileDepute", ""); // 清空授权书 + params2.put("trademarkPay", "0"); // 待支付 + params2.put("trademarkPayTime", ""); // 支付时间置空 + params2.put("trademarkCancelTime", DateUtil.getTime()); // 设置取消时间 + trademarkDao.update(params2); + // 执行退款 + // 生成流水记录 + PayVO payVO = new PayVO(); + payVO.setOrderId(correctionVO.getOrderId()); + payVO.setUserId(orderDTO.getCreateUser()); // 代理商userId + payVO.setAccountMoney(orderDTO.getTrademarkMoney()); + payVO.setDescription("商标申请退款." + correctionVO.getCorrectionRemark()); + remoteService.savePayIn(payVO); + // 记录日志 + GoodslogVO goodsLogVO = new GoodslogVO(); + goodsLogVO.setGoodslogType("LOG"); + goodsLogVO.setGoodslogTime(DateUtil.getTime()); + goodsLogVO.setGoodslogName("系统退款 " + PayUtil.buiderMoney(orderDTO.getTrademarkMoney()) + " 元"); + goodsLogVO.setGoodsId(correctionVO.getOrderId()); + goodsLogVO.setGoodslogContent(correctionVO.getCorrectionRemark()); + iGoodslogService.save(goodsLogVO); + } if (systemConfig.getSmsSwitch()) { if (correctionVO.getCorrectionParentId().equals("0")) { if(correctionVO.getCorrectionType().contains("2")) { + String phone = orderDTO.getLeaderPhone(); + if(StringUtils.isEmpty(phone)) { + UserDTO userDTO = userBaseService.get(orderDTO.getCreateUser()); + if(userDTO != null) { + phone = userDTO.getUserUsername(); + } + } JSONArray phoneArray = new JSONArray(); JSONObject obj = new JSONObject(); - obj.put("phone", orderDTO.getLeaderPhone()); + obj.put("phone", phone); phoneArray.add(obj); Map templateParams = new HashMap<>(); @@ -249,7 +301,13 @@ public class CorrectionServiceImpl extends DefaultBaseService implements ICorrec } public String getTrademarkDescription(String status) { - if(status.equals("4")) { + if(status.equals("-1")) { + return "已退款"; + }else if(status.equals("2")) { + return "已线下沟通"; + }else if(status.equals("3")) { + return "已接单"; + }else if(status.equals("4")) { return "不予受理"; }else if(status.equals("5")) { return "已受理"; diff --git a/src/main/java/cn/com/tenlion/aishop/service/trademark/ITrademarkService.java b/src/main/java/cn/com/tenlion/aishop/service/trademark/ITrademarkService.java index 3a7ab5e..1d8b4bb 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/trademark/ITrademarkService.java +++ b/src/main/java/cn/com/tenlion/aishop/service/trademark/ITrademarkService.java @@ -201,4 +201,8 @@ public interface ITrademarkService { void updateCheck(String trademarkId, TrademarkCheckVO trademarkCheckVO); void updateStatus(String trademarkId, TrademarkStatusVO trademarkStatusVO); + + void updateRemark(String trademarkId, TrademarkRemarkVO trademarkVO); + + void updateSystem(String trademarkId, TrademarkSystemVO trademarkVO); } \ No newline at end of file diff --git a/src/main/java/cn/com/tenlion/aishop/service/trademark/impl/TrademarkServiceImpl.java b/src/main/java/cn/com/tenlion/aishop/service/trademark/impl/TrademarkServiceImpl.java index b3e7640..db53934 100644 --- a/src/main/java/cn/com/tenlion/aishop/service/trademark/impl/TrademarkServiceImpl.java +++ b/src/main/java/cn/com/tenlion/aishop/service/trademark/impl/TrademarkServiceImpl.java @@ -148,6 +148,11 @@ public class TrademarkServiceImpl extends DefaultBaseService implements ITradema if(dto.getTrademarkProgress() >= 3) { TrademarkUserDTO dto1 = trademarkUserService.getByTrademarkId(dto.getTrademarkId()); dto.setTrademarkUserDTO(dto1); + if(dto1 == null) { + dto.setTrademarkUserDTO(new TrademarkUserDTO()); + } + }else{ + dto.setTrademarkUserDTO(new TrademarkUserDTO()); } return dto; } @@ -581,7 +586,13 @@ public class TrademarkServiceImpl extends DefaultBaseService implements ITradema params2.put("trademarkStatus", trademarkStatusVO.getTrademarkStatus()); trademarkDao.update(params2); String msg = ""; - if(trademarkStatusVO.getTrademarkStatus().equals("4")) { + if(trademarkStatusVO.getTrademarkStatus().equals("-1")) { + msg = "已退款"; + }else if(trademarkStatusVO.getTrademarkStatus().equals("2")) { + msg = "已线下沟通"; + }else if(trademarkStatusVO.getTrademarkStatus().equals("3")) { + msg = "已接单"; + }else if(trademarkStatusVO.getTrademarkStatus().equals("4")) { msg = "不予受理"; }else if(trademarkStatusVO.getTrademarkStatus().equals("5")) { msg = "已受理"; @@ -598,11 +609,26 @@ public class TrademarkServiceImpl extends DefaultBaseService implements ITradema GoodslogVO goodsLogVO = new GoodslogVO(); goodsLogVO.setGoodslogType("LOG"); goodsLogVO.setGoodslogTime(DateUtil.getTime()); - goodsLogVO.setGoodslogName("进度更信为 : " + msg); + goodsLogVO.setGoodslogName("进度更新为 : " + msg); goodsLogVO.setGoodslogStatus(""); goodsLogVO.setGoodsId(trademarkId); goodsLogVO.setGoodslogContent(""); iGoodslogService.save(goodsLogVO); } + @Override + public void updateRemark(String trademarkId, TrademarkRemarkVO trademarkVO) { + Map params2 = getHashMap(2); + params2.put("trademarkId", trademarkId); + params2.put("trademarkRemark", trademarkVO.getTrademarkRemark()); + trademarkDao.update(params2); + } + + @Override + public void updateSystem(String trademarkId, TrademarkSystemVO trademarkVO) { + Map params = HashMapUtil.beanToMap(trademarkVO); + params.put("trademarkId", trademarkId); + trademarkDao.update(params); + } + } \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/apporder/app-order-mapper.xml b/src/main/resources/mybatis/mapper/apporder/app-order-mapper.xml index 42d403a..6a0e972 100644 --- a/src/main/resources/mybatis/mapper/apporder/app-order-mapper.xml +++ b/src/main/resources/mybatis/mapper/apporder/app-order-mapper.xml @@ -29,6 +29,7 @@ + @@ -36,6 +37,8 @@ + + @@ -175,6 +178,8 @@ INSERT INTO operator_app_order( app_order_id, app_order_no, + there_any_file, + start_time, app_order_pay_status, app_order_pay_time, app_order_pay_money, @@ -223,6 +228,8 @@ ) VALUES( #{appOrderId}, #{appOrderNo}, + #{thereAnyFile}, + #{startTime}, #{appOrderPayStatus}, #{appOrderPayTime}, #{appOrderPayMoney}, @@ -351,12 +358,6 @@ scope_of_power = #{scopeOfPower}, - - source_code_doc_file = #{sourceCodeDocFile}, - - - software_doc_file = #{softwareDocFile}, - hardware_environment = #{hardwareEnvironment}, @@ -404,6 +405,12 @@ check_status = #{checkStatus}, + + software_doc_file = #{softwareDocFile}, + + + source_code_doc_file = #{sourceCodeDocFile}, + check_remark = #{checkRemark}, @@ -413,6 +420,14 @@ get_file = #{getFile}, + + + start_time = #{startTime}, + + + there_any_file = #{thereAnyFile}, + source_code_doc_file = #{sourceCodeDocFile}, + software_doc_file = #{softwareDocFile}, app_order_id = app_order_id WHERE @@ -424,6 +439,8 @@ SELECT t1.app_order_id, t1.app_order_no, + t1.there_any_file, + t1.start_time, t1.app_order_pay_status, t1.app_order_pay_time, t1.app_order_pay_money, @@ -594,6 +611,8 @@ SELECT t1.app_order_id, t1.app_order_no, + t1.there_any_file, + t1.start_time, t1.app_order_pay_status, t1.app_order_pay_time, t1.app_order_pay_money, diff --git a/src/main/resources/mybatis/mapper/trademark/trademark-mapper.xml b/src/main/resources/mybatis/mapper/trademark/trademark-mapper.xml index 11dd2c2..a4a50bc 100644 --- a/src/main/resources/mybatis/mapper/trademark/trademark-mapper.xml +++ b/src/main/resources/mybatis/mapper/trademark/trademark-mapper.xml @@ -5,6 +5,7 @@ + @@ -109,6 +110,7 @@ INSERT INTO shop_trademark( trademark_id, trademark_name, + trademark_remark, trademark_description, trademark_content, trademark_photo, @@ -148,6 +150,7 @@ ) VALUES( #{trademarkId}, #{trademarkName}, + #{trademarkRemark}, #{trademarkDescription}, #{trademarkContent}, #{trademarkPhoto}, @@ -245,6 +248,9 @@ trademark_cancel_time = #{trademarkCancelTime}, + + trademark_remark = #{trademarkRemark}, + trademark_final = #{trademarkFinal}, @@ -303,6 +309,7 @@
- 点击下载查看 + 点击下载查看 +
-
+

- 点击下载查看 + 点击下载查看 +
@@ -313,6 +316,47 @@ var viewerObj = {}; var formData = {}; + function softwareDocFileUploadFile() { + $("#softwareDocFileUploadFile").show(); + form.on('button(softwareDocFileUploadFile)', function(obj) { + top.dialog.file({ + type: 'file', + title: '上传软件文档', + width: '400px', + height: '420px', + maxFileCount: '1', + onClose: function() { + var uploadFileArray = top.dialog.dialogData.uploadFileArray; + if(typeof(uploadFileArray) != 'undefined' && uploadFileArray.length > 0) { + $("#softwareDocFile").val(uploadFileArray[0].data); + formData.softwareDocFile = uploadFileArray[0].data; + } + } + }); + }); + } + + + function sourceCodeDocUploadFile() { + $("#sourceCodeDocUploadFile").show(); + form.on('button(sourceCodeDocUploadFile)', function(obj) { + top.dialog.file({ + type: 'file', + title: '上传源码文档', + width: '400px', + height: '420px', + maxFileCount: '1', + onClose: function() { + var uploadFileArray = top.dialog.dialogData.uploadFileArray; + if(typeof(uploadFileArray) != 'undefined' && uploadFileArray.length > 0) { + $("#sourceCodeDocFile").val(uploadFileArray[0].data); + formData.sourceCodeDocFile = uploadFileArray[0].data; + } + } + }); + }); + } + function closeBox() { parent.layer.close(parent.layer.getFrameIndex(window.name)); } @@ -473,10 +517,21 @@ $("#subMit").removeClass("layui-disabled"); $("#subMit").removeAttr("disabled"); } - if(data.appOrderStatus == "4") { + if(data.appOrderStatus == "5") { $("#subMit2").removeClass("layui-disabled"); $("#subMit2").removeAttr("disabled"); } + if(data.thereAnyFile != "" && data.thereAnyFile == "0") { + if(data.appOrderStatus < 4) { + softwareDocFileUploadFile(); + sourceCodeDocUploadFile(); + } + $("#fileMsg").html("客户无材料 , 需要平台撰写"); + }else if(data.thereAnyFile != "" && data.thereAnyFile == "1"){ + $("#fileMsg").html("客户撰写的鉴别材料"); + }else{ + $("#fileMsg").html("待客户上传"); + } }, function(code, data) { top.dialog.msg(data.msg); }, function() { @@ -521,7 +576,7 @@ top.dialog.confirm(top.dataMessage.commit, function(index) { top.dialog.close(index); var loadLayerIndex; - top.restAjax.post(top.restAjax.path('api/apporder/update/check/{appOrderId}', [appOrderId]), {checkStatus: formData.field["checkStatus"], checkRemark: formData.field["checkRemark"]}, null, function(code, data) { + top.restAjax.post(top.restAjax.path('api/apporder/update/check/{appOrderId}', [appOrderId]), {softwareDocFile: $("#softwareDocFile").val(), sourceCodeDocFile: $("#sourceCodeDocFile").val(), checkStatus: formData.field["checkStatus"], checkRemark: formData.field["checkRemark"]}, null, function(code, data) { var layerIndex = top.dialog.msg(top.dataMessage.updateSuccess, { time: 0, btn: [top.dataMessage.button.yes, top.dataMessage.button.no], diff --git a/src/main/resources/templates/correction/app-list.html b/src/main/resources/templates/correction/app-list.html index 58b8cdc..b0d02ce 100644 --- a/src/main/resources/templates/correction/app-list.html +++ b/src/main/resources/templates/correction/app-list.html @@ -23,6 +23,9 @@ + @@ -131,9 +134,7 @@ }; } }; - if(appOrderStatus == 4) { - option.toolbar = '#headerToolBar'; - } + option.toolbar = '#headerToolBar'; table.render(option); } @@ -171,6 +172,7 @@ }, height: $win.height() - 90, }); + initDate(); } // 初始化日期 function initDate() { @@ -183,7 +185,21 @@ elem: '#endTime', format: 'yyyy-MM-dd' }); + var loadLayerIndex; + top.restAjax.get(top.restAjax.path('api/apporder/get/{appOrderId}', [orderId]), {}, null, function(code, data) { + if(data.appOrderStatus == "4") { + $("#subMit").removeClass("layui-disabled"); + $("#subMit").removeAttr("disabled"); + } + }, function(code, data) { + top.dialog.msg(data.msg); + }, function() { + loadLayerIndex = top.dialog.msg(top.dataMessage.loading, {icon: 16, time: 0, shade: 0.3}); + }, function() { + top.dialog.close(loadLayerIndex); + }); } + // 删除 function removeData(ids) { top.dialog.msg(top.dataMessage.delete, { @@ -238,24 +254,17 @@ } }); } else if(layEvent === 'updateEvent') { - if(checkDatas.length === 0) { - top.dialog.msg(top.dataMessage.table.selectEdit); - } else if(checkDatas.length > 1) { - top.dialog.msg(top.dataMessage.table.selectOneEdit); - } else { - layer.open({ - type: 2, - title: false, - closeBtn: 0, - area: ['100%', '100%'], - shadeClose: true, - anim: 2, - content: top.restAjax.path('route/correction/update?correctionId={correctionId}', [checkDatas[0].correctionId]), - end: function() { - reloadTable(); - } - }); - } + var layIndex; + top.restAjax.post(top.restAjax.path('api/apporder/update/apply/{appOrderId}', [orderId]), {}, null, function (code, data) { + top.dialog.msg("更新成功", {time: 1000}); + reloadTable(); + }, function (code, data) { + top.dialog.msg(data.msg); + }, function () { + layIndex = top.dialog.msg("更新中...", {icon: 16, time: 0, shade: 0.3}); + }, function () { + top.dialog.close(layIndex); + }); } else if(layEvent === 'removeEvent') { if(checkDatas.length === 0) { top.dialog.msg(top.dataMessage.table.selectDelete); diff --git a/src/main/resources/templates/correction/trademark-list.html b/src/main/resources/templates/correction/trademark-list.html index 85ba783..63016bc 100644 --- a/src/main/resources/templates/correction/trademark-list.html +++ b/src/main/resources/templates/correction/trademark-list.html @@ -77,7 +77,7 @@ return rowData; } }, - {field: 'correctionRemark', width: 180, title: '资料内容', align:'center', + {field: 'correctionRemark', width: 280, title: '资料内容', align:'center', templet: function(row) { var rowData = row[this.field]; if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') { @@ -101,7 +101,13 @@ if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') { return '-'; } - if(rowData == "4") { + if(rowData == "-1") { + return "退款【关闭订单】"; + }else if(rowData == "2") { + return "已线下沟通"; + }if(rowData == "3") { + return "已接单"; + }else if(rowData == "4") { return "不予受理"; }else if(rowData == "5") { return "已受理"; @@ -163,9 +169,9 @@ }; } }; - // if(trademarkStatus >= 3) { + if(trademarkStatus != "-1") { option.toolbar = '#headerToolBar'; - // } + } table.render(option); } diff --git a/src/main/resources/templates/correction/trademark-save.html b/src/main/resources/templates/correction/trademark-save.html index 4815758..8df6fb8 100644 --- a/src/main/resources/templates/correction/trademark-save.html +++ b/src/main/resources/templates/correction/trademark-save.html @@ -24,15 +24,21 @@
-
- - - - - - -
+
+
@@ -135,12 +141,15 @@ form.on('radio', function(data){ if(data.elem.name === 'correctionStatus') { // 精确匹配name属性 $("#correctionTitle").val(''); - if(data.value < [[${orderDTO.trademarkStatus}]]) { + if(data.value != '-1' && data.value < [[${orderDTO.trademarkStatus}]]) { layer.msg("不可以选择此进度"); data.elem.checked = false; form.render(); return false; } + if(data.value == '-1') { + layer.msg("提交后会关闭该订单 , 请谨慎操作"); + } $("#correctionTitle").val(data.elem.title); } }); @@ -234,6 +243,19 @@ // 初始化内容 function initData() { initCorrectionFilesUploadFile(); + var loadLayerIndex; + top.restAjax.get(top.restAjax.path('api/trademark/get/{trademarkId}', [orderId]), {}, null, function(code, data) { + laytpl(document.getElementById("correctionStatusTemplate").innerHTML).render(data, function(html) { + document.getElementById("correctionStatusBox").innerHTML = html; + form.render(); + }); + }, function(code, data) { + top.dialog.msg(data.msg); + }, function() { + loadLayerIndex = top.dialog.msg(top.dataMessage.loading, {icon: 16, time: 0, shade: 0.3}); + }, function() { + top.dialog.close(loadLayerIndex); + }); } initData(); diff --git a/src/main/resources/templates/trademark/list.html b/src/main/resources/templates/trademark/list.html index 6f028ac..f16b66a 100644 --- a/src/main/resources/templates/trademark/list.html +++ b/src/main/resources/templates/trademark/list.html @@ -141,16 +141,16 @@ return rowData; } }, - {field: 'trademarkName', width: 180, title: '商标名称', align:'center', + {field: 'trademarkModeName', width: 130, title: '申请类别', align:'center', templet: function(row) { var rowData = row[this.field]; - var trademarkModeName = row["trademarkModeName"]; - var trademarkMode = row["trademarkMode"]; - if(trademarkMode == 1) { - return rowData; - }else{ - return trademarkModeName; - } + return rowData; + } + }, + {field: 'trademarkName', width: 230, title: '商标名称', align:'center', + templet: function(row) { + var rowData = row[this.field]; + return rowData; } }, {field: 'trademarkDescription', width: 250, title: '商标说明', align:'center', @@ -195,8 +195,10 @@ return ''; }else if(rowData == 'image') { return ''; - }else{ + }else if(rowData == 'text-image'){ return ''; + }else { + return '-'; } } }, @@ -223,8 +225,13 @@ // 状态-1:已取消,0:待付款,1:已付款,2:已提交后台,3:已提交申请,(4:不予受理,5:已受理),6:已发初审公告,(7:部分驳回,8:全部驳回),9:完结 var rowData = row[this.field]; var progress = row["trademarkProgress"]; + var mode = row["trademarkMode"]; if(rowData == "-1") { - return "预审未通过"; + if(mode == '1') { + return "预审未通过"; + }else{ + return "已退款"; + } }else if(rowData == "0") { if(progress == 1) { return "已填写【基本信息】"; @@ -244,9 +251,17 @@ return "已提交至后台"; } }else if(rowData == "2") { - return "已提交申请"; + if(mode == '1') { + return "已提交申请"; + }else{ + return "已线下沟通"; + } }else if(rowData == "3") { - return "已提交至商标局"; + if(mode == '1') { + return "已提交至商标局"; + }else{ + return "已接单并提交至商标局"; + } }else if(rowData == "4") { return "不予受理"; }else if(rowData == "5") { diff --git a/src/main/resources/templates/trademark/update.html b/src/main/resources/templates/trademark/update.html index 79bb023..f94bb40 100644 --- a/src/main/resources/templates/trademark/update.html +++ b/src/main/resources/templates/trademark/update.html @@ -41,9 +41,9 @@
  • 商标信息
  • -
  • 商标类别
  • -
  • 申请人信息
  • -
  • 信息审核
  • +
  • 商标类别
  • +
  • 申请人信息
  • +
  • 信息审核
  • 进度沟通
  • 进度记录
@@ -84,9 +84,17 @@
-
+
+
+ +
@@ -176,28 +184,55 @@
+
+
+ +
+ +
+
+