diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemFaqController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemFaqController.java
new file mode 100644
index 000000000..1cbc37334
--- /dev/null
+++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemFaqController.java
@@ -0,0 +1,118 @@
+
+/**
+ * @Project: emis
+ * @Title: EmisWaybillProblemFaqController.java
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ * @Copyright: ShangHai Duta 2022 All rights reserved.
+ * @version v1.0
+ * @Description:
问题件FAG 控制器
+ */
+
+package com.xdadan.erp.web.emis;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.xdadan.erp.common.annotation.Log;
+import com.xdadan.erp.common.core.controller.BaseController;
+import com.xdadan.erp.common.core.domain.AjaxResult;
+import com.xdadan.erp.common.core.page.TableDataInfo;
+import com.xdadan.erp.common.enums.BusinessType;
+import com.xdadan.erp.common.utils.StringUtils;
+import com.xdadan.erp.common.utils.poi.ExcelUtil;
+
+import com.xdadan.erp.emis.domain.EmisWaybillProblemFaq;
+import com.xdadan.erp.emis.service.IEmisWaybillProblemFaqService;
+
+/**
+ * 问题件FAGController
+ *
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ */
+@RestController
+@RequestMapping("/emis/emisWaybillProblemFaq")
+public class EmisWaybillProblemFaqController extends BaseController
+{
+ @Autowired
+ private IEmisWaybillProblemFaqService emisWaybillProblemFaqService;
+
+ /**
+ * 查询问题件FAG列表
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ startPage();
+ List list = emisWaybillProblemFaqService.selectEmisWaybillProblemFaqList(emisWaybillProblemFaq);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出问题件FAG列表
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:export')")
+ @Log(title = "问题件FAG", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ List list = emisWaybillProblemFaqService.selectEmisWaybillProblemFaqList(emisWaybillProblemFaq);
+ ExcelUtil util = new ExcelUtil(EmisWaybillProblemFaq.class);
+ util.exportExcel(response, list, "问题件FAG数据");
+ }
+
+ /**
+ * 获取问题件FAG详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return AjaxResult.success(emisWaybillProblemFaqService.selectEmisWaybillProblemFaqById(id));
+ }
+
+ /**
+ * 新增问题件FAG
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:add')")
+ @Log(title = "问题件FAG", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ return toAjax(emisWaybillProblemFaqService.insertEmisWaybillProblemFaq(emisWaybillProblemFaq));
+ }
+
+ /**
+ * 修改问题件FAG
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:edit')")
+ @Log(title = "问题件FAG", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ return toAjax(emisWaybillProblemFaqService.updateEmisWaybillProblemFaq(emisWaybillProblemFaq));
+ }
+
+ /**
+ * 删除问题件FAG
+ */
+ @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemFaq:remove')")
+ @Log(title = "问题件FAG", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(emisWaybillProblemFaqService.deleteEmisWaybillProblemFaqByIds(ids));
+ }
+}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillProblemFaq.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillProblemFaq.java
new file mode 100644
index 000000000..0ab8ed40d
--- /dev/null
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillProblemFaq.java
@@ -0,0 +1,53 @@
+/**
+ * @Project: emis
+ * @Title: EmisWaybillProblemFaq.java
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ * @Copyright: ShangHai Duta 2022 All rights reserved.
+ * @version v1.0
+ * @Description: 问题件FAG 实体类
+ */
+
+package com.xdadan.erp.emis.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.xdadan.erp.common.annotation.Excel;
+import com.xdadan.erp.common.core.domain.BaseEntity;
+import com.xdadan.erp.common.core.domain.TreeEntity;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Data;
+
+
+/**
+ * @ClassName EmisWaybillProblemFaq
+ * @Description 问题件FAG
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ */
+ @Data
+public class EmisWaybillProblemFaq extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /* id */
+ private Long id;
+ /* 问题件序号 */
+ private Long probId;
+ /* 运单编号 */
+ private String billCode;
+ /* 标题 */
+ private String title;
+ /* 具体内容 */
+ private String content;
+ /* 状态 0-初始 1-启用 */
+ private Integer status;
+ /* 是否显示 1-显示 0-不显示 */
+ private String showFlag;
+ /* 针对的回复的ID */
+ private Long replayId;
+
+}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java
index 8e791950c..4d0d6cfa5 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java
@@ -10,6 +10,7 @@
*/
package com.xdadan.erp.emis.mapper;
+import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xdadan.erp.emis.domain.EmisTmsScanRecord;
@@ -68,6 +69,9 @@ public interface EmisTmsScanRecordMapper extends BaseMapper
*/
public int deleteEmisTmsScanRecordByIds(Long[] ids);
+// where billCode = #{billCode} and scan_type=#{scanType}
+// and scan_site_code=#{scanSiteCode}
+// and to_days(scan_date) = to_days(#{scanDate})
- public int checkSiteScanUnique(EmisTmsScanRecord emisTmsScanRecord);
+ public int checkSiteScanUnique(String billCode, String scanType, String scanSiteCode, Date scanDate);
}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java
index e4b74b035..d0b247c6c 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillMapper.java
@@ -68,6 +68,8 @@ public interface EmisWaybillMapper extends BaseMapper
*/
public int updateEmisWaybill(EmisWaybill emisWaybill);
+
+
/**
* 删除
*
@@ -95,4 +97,7 @@ public interface EmisWaybillMapper extends BaseMapper
public int updatePrintStatus(EmisWaybill emisWaybill);
+
+ public int updateEmisWaybillByBillCode(EmisWaybill emisWaybill);
+
}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillProblemFaqMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillProblemFaqMapper.java
new file mode 100644
index 000000000..de21c234a
--- /dev/null
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisWaybillProblemFaqMapper.java
@@ -0,0 +1,70 @@
+/**
+ * @Project: emis
+ * @Title: EmisWaybillProblemFaqMapper.java
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ * @Copyright: ShangHai Doitinfo 2022 All rights reserved.
+ * @version v1.0
+ * @Description: 问题件FAG Mapper 接口
+ * Warning : This file is generate by ai tools,don't edit!!!
+ */
+package com.xdadan.erp.emis.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.xdadan.erp.emis.domain.EmisWaybillProblemFaq;
+/**
+ * @ClassName EmisWaybillProblemFaqMapper
+ * @Description 问题件FAG Mapper 接口
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ */
+public interface EmisWaybillProblemFaqMapper extends BaseMapper
+{
+ /**
+ * 主键查询
+ * @param id
+ * @return
+ */
+ public EmisWaybillProblemFaq selectEmisWaybillProblemFaqById(Long id);
+
+ /**
+ * 查询列表
+ *
+ * @param emisWaybillProblemFaq
+ * @return 集合
+ */
+ public List selectEmisWaybillProblemFaqList(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 新增
+ *
+ * @param emisWaybillProblemFaq
+ * @return
+ */
+ public int insertEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 修改
+ *
+ * @param emisWaybillProblemFaq
+ * @return
+ */
+ public int updateEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 删除
+ *
+ * @param id 主键
+ * @return 结果
+ */
+ public int deleteEmisWaybillProblemFaqById(Long id);
+
+ /**
+ * 批量删除
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteEmisWaybillProblemFaqByIds(Long[] ids);
+}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java
index 013cc8527..a7cd45bdc 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java
@@ -153,8 +153,33 @@ public class EmisBaseService {
}
+ /**
+ * 转件登记
+ * @param billCode
+ * @param transferCode
+ * @param transferBillcode
+ * @param destCity
+ */
+ public void wayBillTransfer(String billCode,String transferCode,String transferBillcode,String destCity){
+ EmisWaybill waybill=getWaybillByBillCode(billCode);
+ if(waybill!=null){
+ EmisWaybill upd=new EmisWaybill();
+ upd.setId(waybill.getId());
+ upd.preUpdate();
+ upd.setTransferCode(transferCode);
+ upd.setTransferBillcode(transferBillcode);
+ upd.setBlDispFd("1");// 转单标识
+
+ emisWaybillMapper.updateEmisWaybill(upd);
+ }
+ }
+ /**
+ * 根据billCode 获取单号信息
+ * @param billCode
+ * @return
+ */
public EmisWaybill getWaybillByBillCode(String billCode){
if(StringUtils.isEmpty(billCode)){
return null;
@@ -163,6 +188,10 @@ public class EmisBaseService {
return emisWaybillMapper.selectEmisWaybillByBillCode(billCode);
}
+ /**
+ * 更新打印状态
+ * @param billCode
+ */
public void updatePrintStatus(String billCode) {
EmisWaybill waybill = new EmisWaybill();
@@ -173,6 +202,14 @@ public class EmisBaseService {
}
+ /**
+ * 获取打印信息
+ * @param billCode
+ * @param billCodeRange
+ * @param lang
+ * @param printType
+ * @return
+ */
public Map getWaybillPrintOrder(String billCode, String billCodeRange, String lang, String printType){
if(StringUtils.isEmpty(billCode)){
return null;
@@ -249,8 +286,53 @@ public class EmisBaseService {
}
+ /**
+ * 改变运单上站点
+ * @param billCode
+ * @param siteCode
+ * @return
+ */
+ public int changeWaybillLastSite(String billCode,String siteCode){
+ EmisWaybill emisWaybill = new EmisWaybill();
+ emisWaybill.setBillCode(billCode);
+ emisWaybill.setLastSiteCode(siteCode);
+ return emisWaybillMapper.updateEmisWaybillByBillCode(emisWaybill);
+ }
+
+ /**
+ * 改变运单下站点
+ * @param billCode
+ * @param siteCode
+ * @return
+ */
+ public int changeWaybillNextSite(String billCode,String siteCode){
+ EmisWaybill emisWaybill = new EmisWaybill();
+ emisWaybill.setBillCode(billCode);
+ emisWaybill.setNextSiteCode(siteCode);
+ return emisWaybillMapper.updateEmisWaybillByBillCode(emisWaybill);
+ }
+
+ /**
+ * 改变运单当前站点
+ * @param billCode
+ * @param siteCode
+ * @return
+ */
+ public int changeWaybillCurrentSite(String billCode,String siteCode){
+ EmisWaybill emisWaybill = new EmisWaybill();
+ emisWaybill.setBillCode(billCode);
+ emisWaybill.setCurrentSiteCode(siteCode);
+ return emisWaybillMapper.updateEmisWaybillByBillCode(emisWaybill);
+ }
+
+ /**
+ * 改变运单状态
+ * @param billCode
+ * @param waybillStatus
+ * @return
+ */
public int changeWaybillStatus(String billCode,String waybillStatus){
EmisWaybill emisWaybill = new EmisWaybill();
emisWaybill.setBillCode(billCode);
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemFaqService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemFaqService.java
new file mode 100644
index 000000000..749a7f6cb
--- /dev/null
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemFaqService.java
@@ -0,0 +1,69 @@
+ /**
+ * @Project: emis
+ * @Title: EmisWaybillProblemFaqService.java
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ * @Copyright: ShangHai Duta 2022 All rights reserved.
+ * @version v1.0
+ * @Description: 问题件FAG 服务类接口
+ */
+package com.xdadan.erp.emis.service;
+
+import java.util.List;
+import com.xdadan.erp.emis.domain.EmisWaybillProblemFaq;
+
+/**
+ * @ClassName EmisWaybillProblemFaqService
+ * @Description 问题件FAG
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ */
+public interface IEmisWaybillProblemFaqService
+{
+ /**
+ * 主键查询
+ * @param id
+ * @return
+ */
+ public EmisWaybillProblemFaq selectEmisWaybillProblemFaqById(Long id);
+
+ /**
+ * 查询问题件FAG列表
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 问题件FAG集合
+ */
+ public List selectEmisWaybillProblemFaqList(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 新增问题件FAG
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 结果
+ */
+ public int insertEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 修改问题件FAG
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 结果
+ */
+ public int updateEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq);
+
+ /**
+ * 批量删除问题件FAG
+ *
+ * @param ids 需要删除的问题件FAG主键集合
+ * @return 结果
+ */
+ public int deleteEmisWaybillProblemFaqByIds(Long[] ids);
+
+ /**
+ * 删除问题件FAG信息
+ *
+ * @param id 问题件FAG主键
+ * @return 结果
+ */
+ public int deleteEmisWaybillProblemFaqById(Long id);
+}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java
index afe97e91a..2ab8f4ad5 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java
@@ -19,12 +19,14 @@ import java.util.Map;
import com.xdadan.erp.common.core.domain.entity.SysUser;
import com.xdadan.erp.common.utils.DateUtils;
import com.xdadan.erp.emis.domain.EmisSite;
+import com.xdadan.erp.emis.domain.EmisTmsScanPicInfo;
import com.xdadan.erp.emis.domain.EmisWaybill;
import com.xdadan.erp.emis.domain.enumtype.ScanType;
import com.xdadan.erp.emis.domain.exception.EmisBizError;
import com.xdadan.erp.emis.domain.vo.scan.ScanInfo;
import com.xdadan.erp.emis.domain.vo.scan.ScanResult;
import com.xdadan.erp.emis.domain.vo.scan.ScanResultItem;
+import com.xdadan.erp.emis.mapper.EmisTmsScanPicInfoMapper;
import com.xdadan.erp.emis.service.EmisBaseService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -45,6 +47,8 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
@Autowired
private EmisTmsScanRecordMapper emisTmsScanRecordMapper;
+ @Autowired
+ private EmisTmsScanPicInfoMapper emisTmsScanPicInfoMapper;
/**
* 查询TMS扫描记录
*
@@ -153,29 +157,18 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
continue;
}
-
- EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord();
-
- // 公共部分
- emisTmsScanRecord.setBillCode(billCode);
- emisTmsScanRecord.setOrderSn(emisWaybill.getOrderSn());
- emisTmsScanRecord.setWeight(emisWaybill.getBillWeight());
-
- emisTmsScanRecord.setScanType(scanType);
- emisTmsScanRecord.setScanDate(scanDate);
- emisTmsScanRecord.setScanManCode(getCurrentUser().getEmpCode());
- emisTmsScanRecord.setScanManPhone(getCurrentUser().getPhonenumber());
- emisTmsScanRecord.setScanMan(getCurrentUser().getEmpName());
- emisTmsScanRecord.setScanSite(getCurrentUser().getOwnerSiteName());
- emisTmsScanRecord.setScanSiteCode(getCurrentUser().getOwnerSiteCode());
-
- EmisSite scanSite=getSiteByCode(emisTmsScanRecord.getScanSiteCode());
- if(scanSite!=null){
- emisTmsScanRecord.setScanSitePhone(scanSite.getPhone());
+ // 已签收不允许扫描
+ if(ScanType.SIGNED.opCode.equals(emisWaybill.getWaybillStatus())){
+ scanResultItem.setResult("fail");
+ scanResultItem.setMessage("已签收");
+ itemList.add(scanResultItem);
+ continue;
}
+
// 重复扫描
- int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(emisTmsScanRecord);
+ // 同站点,同动作,同一天不允许重复扫描
+ int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(billCode,scanType,getCurrentUser().getOwnerSiteCode(),scanDate);
if(scanCnt>0){
scanResultItem.setResult("fail");
scanResultItem.setMessage("重复扫描");
@@ -194,6 +187,37 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
+ /**
+ * 填充公共数据
+ * @param emisTmsScanRecord
+ * @param emisWaybill
+ */
+ private void fillBillBaseData(EmisTmsScanRecord emisTmsScanRecord,EmisWaybill emisWaybill){
+ // 公共部分
+ emisTmsScanRecord.setBillCode(emisWaybill.getBillCode());
+ emisTmsScanRecord.setOrderSn(emisWaybill.getOrderSn());
+ emisTmsScanRecord.setWeight(emisWaybill.getBillWeight());
+
+
+ emisTmsScanRecord.setScanManCode(getCurrentUser().getEmpCode());
+ emisTmsScanRecord.setScanManPhone(getCurrentUser().getPhonenumber());
+ emisTmsScanRecord.setScanMan(getCurrentUser().getEmpName());
+ emisTmsScanRecord.setScanSite(getCurrentUser().getOwnerSiteName());
+ emisTmsScanRecord.setScanSiteCode(getCurrentUser().getOwnerSiteCode());
+
+ EmisSite scanSite=getSiteByCode(emisTmsScanRecord.getScanSiteCode());
+ if(scanSite!=null){
+ emisTmsScanRecord.setScanSitePhone(scanSite.getPhone());
+ }
+
+ emisTmsScanRecord.setRecordMan(getCurrentUser().getEmpName());
+ emisTmsScanRecord.setRecordManCode(getCurrentUser().getEmpCode());
+ emisTmsScanRecord.setRecordManPhone(getCurrentUser().getPhonenumber());
+ emisTmsScanRecord.setRecordSiteCode(getCurrentUser().getOwnerSiteCode());
+ emisTmsScanRecord.setDataFrom("pc");
+ emisTmsScanRecord.setStatus("1");
+ emisTmsScanRecord.preInsert();
+ }
/**
* 扫描操作
* @param scanType
@@ -216,19 +240,19 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
// 开始检查数据
String[] billCodeArr = billCodeInStr.split(",");
String scanDateStr = (String)scanDataItem.get("scanDate");
-
Date scanDate = DateUtils.parseDate(scanDateStr);;
if(scanDate ==null){
scanDate = new Date();
}
-
for (String billCode:billCodeArr) {
+ // 返回结果 // 原始数据返回
ScanResultItem scanResultItem = new ScanResultItem();
scanResultItem.setBillCode(billCode);
- // 检查数据
+ scanResultItem.getData().putAll(scanDataItem);
+ // 1.运单号不存在
EmisWaybill emisWaybill = getWaybillByBillCode(billCode);
if(emisWaybill==null){
scanResultItem.setResult("fail");
@@ -238,30 +262,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
}
- scanResultItem.getData().put("billWeight",emisWaybill.getBillWeight());
- scanResultItem.getData().put("parcelQty",emisWaybill.getParcelQty());
-
- // 公共部分
- EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord();
- emisTmsScanRecord.setBillCode(billCode);
- emisTmsScanRecord.setOrderSn(emisWaybill.getOrderSn());
- emisTmsScanRecord.setWeight(emisWaybill.getBillWeight());
- emisTmsScanRecord.setScanType(scanType);
- emisTmsScanRecord.setScanDate(scanDate);
- emisTmsScanRecord.setScanManCode(getCurrentUser().getEmpCode());
- emisTmsScanRecord.setScanManPhone(getCurrentUser().getPhonenumber());
- emisTmsScanRecord.setScanMan(getCurrentUser().getEmpName());
- emisTmsScanRecord.setScanSite(getCurrentUser().getOwnerSiteName());
- emisTmsScanRecord.setScanSiteCode(getCurrentUser().getOwnerSiteCode());
-
- EmisSite scanSite=getSiteByCode(emisTmsScanRecord.getScanSiteCode());
- if(scanSite!=null){
- emisTmsScanRecord.setScanSitePhone(scanSite.getPhone());
- }
-
- // 重复扫描
+ // 2.重复扫描
// 同站点,同动作,同一天不允许重复扫描
- int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(emisTmsScanRecord);
+ int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(billCode,scanType,getCurrentUser().getOwnerSiteCode(),scanDate);
if(scanCnt>0){
scanResultItem.setResult("fail");
scanResultItem.setMessage("重复扫描");
@@ -269,25 +272,22 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
continue;
}
-
- // 原始数据返回
- scanResultItem.getData().putAll(scanDataItem);
+ // 生成扫描记录并填充公共数据
+ EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord();
+ this.fillBillBaseData(emisTmsScanRecord,emisWaybill);
+ emisTmsScanRecord.setScanType(scanType);
+ emisTmsScanRecord.setScanDate(scanDate);
// 填充特殊数据
- this.fillScanDataByScanType(scanType,emisTmsScanRecord,scanDataItem);
+ this.fillScanDataByScanType(emisTmsScanRecord,scanType,scanDataItem);
-
- emisTmsScanRecord.setRecordMan(getCurrentUser().getEmpName());
- emisTmsScanRecord.setRecordManCode(getCurrentUser().getEmpCode());
- emisTmsScanRecord.setRecordManPhone(getCurrentUser().getPhonenumber());
- emisTmsScanRecord.setRecordSiteCode(getCurrentUser().getOwnerSiteCode());
- emisTmsScanRecord.setDataFrom("pc");
- emisTmsScanRecord.setStatus("1");
- emisTmsScanRecord.preInsert();
+ // 返回数据
+ scanResultItem.getData().put("billWeight",emisWaybill.getBillWeight());
+ scanResultItem.getData().put("parcelQty",emisWaybill.getParcelQty());
emisTmsScanRecordMapper.insertEmisTmsScanRecord(emisTmsScanRecord);
// 修改运单状态
- changeWaybillStatus(billCode,scanType);
+ this.changeWaybillStatus(billCode,scanType);
scanResultItem.setResult("success");
scanResultItem.setMessage("操作成功");
@@ -298,29 +298,228 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm
return itemList;
}
- public void fillScanDataByScanType(String scanType, EmisTmsScanRecord emisTmsScanRecord, Map scanDataItem){
+ public void fillScanDataByScanType(EmisTmsScanRecord emisTmsScanRecord, String scanType, Map scanDataItem){
// 揽收扫描
if(ScanType.GOT.opCode.equals(scanType)){
- String scanWeightStr = (String)scanDataItem.get("scanWeight");
- String dispatchOrSendManCode = (String)scanDataItem.get("dispatchOrSendManCode");
+// String scanWeightStr = (String)scanDataItem.get("scanWeight");
- double scanWeight = 0.0D;
- if(!StringUtils.isEmpty(scanWeightStr)){
- scanWeight= Double.valueOf(scanWeightStr);
- emisTmsScanRecord.setScanWeight(BigDecimal.valueOf(scanWeight));
+// double scanWeight = 0.0D;
+// if(!StringUtils.isEmpty(scanWeightStr)){
+// scanWeight= Double.valueOf(scanWeightStr);
+// emisTmsScanRecord.setScanWeight(BigDecimal.valueOf(scanWeight));
+// }
+
+ String dispatchOrSendManCode = (String)scanDataItem.get("dispatchOrSendManCode");
+ if(!StringUtils.isEmpty(dispatchOrSendManCode)) {
+ emisTmsScanRecord.setDispatchOrSendManCode(dispatchOrSendManCode);
+ }else{
+ emisTmsScanRecord.setDispatchOrSendManCode(getCurrentUser().getEmpCode());
}
- emisTmsScanRecord.setDispatchOrSendManCode(dispatchOrSendManCode);
- SysUser emUser=getEmisStaffByCode(dispatchOrSendManCode);
+ SysUser emUser=getEmisStaffByCode(emisTmsScanRecord.getDispatchOrSendManCode());
if(emUser!=null){
emisTmsScanRecord.setDispatchOrSendMan(emUser.getEmpName());
emisTmsScanRecord.setDispatchOrSendManPhone(emUser.getPhonenumber());
+ }else{
+ emisTmsScanRecord.setDispatchOrSendManCode(getCurrentUser().getEmpCode());
+ emisTmsScanRecord.setDispatchOrSendMan(getCurrentUser().getEmpName());
+ emisTmsScanRecord.setDispatchOrSendManPhone(getCurrentUser().getPhonenumber());
}
+
+ // 当前站点
+ changeWaybillCurrentSite(emisTmsScanRecord.getBillCode(),emisTmsScanRecord.getScanSiteCode());
+
}
// 发件扫描
else if(ScanType.DEPARTURE.opCode.equals(scanType)){
+ // 下一站
+// String scanWeightStr = (String)scanDataItem.get("scanWeight");
+ String preOrNextStationCode = (String)scanDataItem.get("preOrNextStationCode");
+ if(!StringUtils.isEmpty(preOrNextStationCode)) {
+ EmisSite site=getSiteByCode(preOrNextStationCode);
+ emisTmsScanRecord.setPreOrNextStationCode(preOrNextStationCode);
+ emisTmsScanRecord.setPreOrNextStation(site.getSiteName());
+ emisTmsScanRecord.setPreOrNextStationPhone(site.getPhone());
+ // 当前站点
+ changeWaybillCurrentSite(emisTmsScanRecord.getBillCode(),emisTmsScanRecord.getScanSiteCode());
+ // 下一站点
+ changeWaybillNextSite(emisTmsScanRecord.getBillCode(),preOrNextStationCode);
+ }
+
+ }
+ // 到件扫描
+ else if(ScanType.ARRIVAL.opCode.equals(scanType)){
+
+ EmisWaybill waybill=getWaybillByBillCode(emisTmsScanRecord.getBillCode());
+
+ if(!StringUtils.isEmpty(waybill.getCurrentSiteCode())) {
+ EmisSite site = getSiteByCode(waybill.getCurrentSiteCode());
+ // 获取上一站
+ emisTmsScanRecord.setPreOrNextStationCode(site.getSiteCode());
+ emisTmsScanRecord.setPreOrNextStation(site.getSiteName());
+ emisTmsScanRecord.setPreOrNextStationPhone(site.getPhone());
+ }
+
+ // 改变当前站点
+ changeWaybillCurrentSite(emisTmsScanRecord.getBillCode(),emisTmsScanRecord.getScanSiteCode());
+ }
+ // 派送扫描
+ else if(ScanType.SENT.opCode.equals(scanType)){
+// 派送员
+// "dispatchOrSendManCode": "25001108",
+ String dispatchOrSendManCode = (String)scanDataItem.get("dispatchOrSendManCode");
+ if(!StringUtils.isEmpty(dispatchOrSendManCode)) {
+ emisTmsScanRecord.setDispatchOrSendManCode(dispatchOrSendManCode);
+ }else{
+ emisTmsScanRecord.setDispatchOrSendManCode(getCurrentUser().getEmpCode());
+ }
+
+ SysUser emUser=getEmisStaffByCode(emisTmsScanRecord.getDispatchOrSendManCode());
+ if(emUser!=null){
+ emisTmsScanRecord.setDispatchOrSendMan(emUser.getEmpName());
+ emisTmsScanRecord.setDispatchOrSendManPhone(emUser.getPhonenumber());
+ }else{
+ emisTmsScanRecord.setDispatchOrSendManCode(getCurrentUser().getEmpCode());
+ emisTmsScanRecord.setDispatchOrSendMan(getCurrentUser().getEmpName());
+ emisTmsScanRecord.setDispatchOrSendManPhone(getCurrentUser().getPhonenumber());
+ }
+
+ }
+ // 签收扫描
+ else if(ScanType.SIGNED.opCode.equals(scanType)){
+ // "signMan": "签收人",
+// "picUrl": "签收图片,逗号隔开",
+// "remark": "签收备注",
+ String signMan = (String)scanDataItem.get("signMan");
+ String picUrl = (String)scanDataItem.get("picUrl");
+ String remark = (String)scanDataItem.get("remark");
+ emisTmsScanRecord.setSignMan(signMan);
+ emisTmsScanRecord.setSignDate(emisTmsScanRecord.getScanDate());
+
+ // 签收站点
+ emisTmsScanRecord.setSignSite(getCurrentUser().getOwnerSiteName());
+ emisTmsScanRecord.setSignSiteCode(getCurrentUser().getOwnerSiteCode());
+
+ emisTmsScanRecord.setRemark(remark);
+
+ EmisTmsScanPicInfo emisTmsScanPicInfo = new EmisTmsScanPicInfo();
+ emisTmsScanPicInfo.setBillCode(emisTmsScanRecord.getBillCode());
+ emisTmsScanPicInfo.setPicType(scanType);
+ emisTmsScanPicInfo.setPicUrl(picUrl);
+ emisTmsScanPicInfo.preInsert();
+ emisTmsScanPicInfoMapper.insertEmisTmsScanPicInfo(emisTmsScanPicInfo);
+
+ }
+ // 留仓
+ else if(ScanType.HOLD.opCode.equals(scanType)){
+// "billCode": "T001,T002,T002",
+// "picUrl": "留仓图片,逗号隔开",
+// "remark": "留仓备注",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+
+ String picUrl = (String)scanDataItem.get("picUrl");
+ String remark = (String)scanDataItem.get("remark");
+
+ emisTmsScanRecord.setRemark(remark);
+
+ EmisTmsScanPicInfo emisTmsScanPicInfo = new EmisTmsScanPicInfo();
+ emisTmsScanPicInfo.setBillCode(emisTmsScanRecord.getBillCode());
+ emisTmsScanPicInfo.setPicType(scanType);
+ emisTmsScanPicInfo.setPicUrl(picUrl);
+ emisTmsScanPicInfo.setRemark(remark);
+ emisTmsScanPicInfo.preInsert();
+ emisTmsScanPicInfoMapper.insertEmisTmsScanPicInfo(emisTmsScanPicInfo);
+
+ }
+ // 转单扫描
+ else if(ScanType.TRANSFER.opCode.equals(scanType)){
+// "billCode": "T001,T002,T002",
+// "transferCode": "转单同行快递代码",
+// "transferBillcode": "转单同行单号",
+// "destCity": "目的城市",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.0"
+
+ String transferCode = (String)scanDataItem.get("transferCode");
+ String transferBillcode = (String)scanDataItem.get("transferBillcode");
+ String destCity = (String)scanDataItem.get("destCity");
+
+ emisTmsScanRecord.setPreOrNextStation(destCity);
+
+ // 更新waybill做转单
+ wayBillTransfer(emisTmsScanRecord.getBillCode(),transferCode,transferBillcode,destCity);
+
+ }
+ // 问题件
+ else if(ScanType.ISSUE.opCode.equals(scanType)){
+
+// "billCode": "T001,T002,T002",
+// "problemType": "问题件类型",
+// "notifySite": "寄件或收件网点编码",
+// "picUrl": "问题件图片",
+// "remark": "问题备注",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+
+ String problemType = (String)scanDataItem.get("problemType");
+ String notifySite = (String)scanDataItem.get("notifySite");
+ String picUrl = (String)scanDataItem.get("picUrl");
+ String remark = (String)scanDataItem.get("remark");
+
+ emisTmsScanRecord.setRemark(remark);
+
+ }
+ // 合包
+ else if(ScanType.CO_PACKING.opCode.equals(scanType)){
+
+// "billCode": "T001,T002,T002",
+// "bagNo": "合包袋号",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+
+ String bagNo = (String)scanDataItem.get("bagNo");
+ emisTmsScanRecord.setBagNo(bagNo);
+ }
+ else if(ScanType.UN_PACKING.opCode.equals(scanType)){
+// "billCode": "T001,T002,T002",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+// String bagNo = (String)scanDataItem.get("bagNo");
+// emisTmsScanRecord.setBagNo(bagNo);
+ // 从包里面去除
+
+ }
+ // 装车
+ else if(ScanType.LOADING.opCode.equals(scanType)){
+// "billCode": "T001",
+// "carNo": "粤Z01023",
+// "preOrNextStationCode": "25001108",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+ String carNo = (String)scanDataItem.get("carNo");
+ String preOrNextStationCode = (String)scanDataItem.get("preOrNextStationCode");
+ emisTmsScanRecord.setCarNo(carNo);
+ emisTmsScanRecord.setPreOrNextStationCode(preOrNextStationCode);
+
+ if(!StringUtils.isEmpty(preOrNextStationCode)) {
+ EmisSite site=getSiteByCode(preOrNextStationCode);
+ emisTmsScanRecord.setPreOrNextStationCode(preOrNextStationCode);
+ emisTmsScanRecord.setPreOrNextStation(site.getSiteName());
+ emisTmsScanRecord.setPreOrNextStationPhone(site.getPhone());
+ }
+
+ }
+ // 卸车
+ else if(ScanType.UN_LOADING.opCode.equals(scanType)){
+// "billCode": "T001",
+// "carNo": "粤Z01023",
+// "scanDate": "2024-05-02 12:03:05",
+// "scanWeight": "0.2"
+ String carNo = (String)scanDataItem.get("carNo");
+ emisTmsScanRecord.setCarNo(carNo);
}
}
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemFaqServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemFaqServiceImpl.java
new file mode 100644
index 000000000..0eb60d236
--- /dev/null
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemFaqServiceImpl.java
@@ -0,0 +1,104 @@
+ /**
+ * @Project: emis
+ * @Title: EmisWaybillProblemFaqServiceImpl.java
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ * @Copyright: ShangHai Duta 2022 All rights reserved.
+ * @version v1.0
+ * @Description: 问题件FAG 实体类
+ */
+
+package com.xdadan.erp.emis.service.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.xdadan.erp.emis.domain.EmisWaybillProblemFaq;
+import com.xdadan.erp.emis.mapper.EmisWaybillProblemFaqMapper;
+import com.xdadan.erp.emis.service.IEmisWaybillProblemFaqService;
+
+/**
+ * 问题件FAGService业务层处理
+ *
+ * @author linfso
+ * @date 2024-05-20 09:36:48
+ */
+@Service
+public class EmisWaybillProblemFaqServiceImpl implements IEmisWaybillProblemFaqService
+{
+ @Autowired
+ private EmisWaybillProblemFaqMapper emisWaybillProblemFaqMapper;
+
+ /**
+ * 查询问题件FAG
+ *
+ * @param id 问题件FAG主键
+ * @return 问题件FAG
+ */
+ @Override
+ public EmisWaybillProblemFaq selectEmisWaybillProblemFaqById(Long id)
+ {
+ return emisWaybillProblemFaqMapper.selectEmisWaybillProblemFaqById(id);
+ }
+
+ /**
+ * 查询问题件FAG列表
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 问题件FAG
+ */
+ @Override
+ public List selectEmisWaybillProblemFaqList(EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ return emisWaybillProblemFaqMapper.selectEmisWaybillProblemFaqList(emisWaybillProblemFaq);
+ }
+
+ /**
+ * 新增问题件FAG
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 结果
+ */
+ @Override
+ public int insertEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ return emisWaybillProblemFaqMapper.insertEmisWaybillProblemFaq(emisWaybillProblemFaq);
+ }
+
+ /**
+ * 修改问题件FAG
+ *
+ * @param emisWaybillProblemFaq 问题件FAG
+ * @return 结果
+ */
+ @Override
+ public int updateEmisWaybillProblemFaq(EmisWaybillProblemFaq emisWaybillProblemFaq)
+ {
+ return emisWaybillProblemFaqMapper.updateEmisWaybillProblemFaq(emisWaybillProblemFaq);
+ }
+
+ /**
+ * 批量删除问题件FAG
+ *
+ * @param ids 需要删除的问题件FAG主键
+ * @return 结果
+ */
+ @Override
+ public int deleteEmisWaybillProblemFaqByIds(Long[] ids)
+ {
+ return emisWaybillProblemFaqMapper.deleteEmisWaybillProblemFaqByIds(ids);
+ }
+
+ /**
+ * 删除问题件FAG信息
+ *
+ * @param id 问题件FAG主键
+ * @return 结果
+ */
+ @Override
+ public int deleteEmisWaybillProblemFaqById(Long id)
+ {
+ return emisWaybillProblemFaqMapper.deleteEmisWaybillProblemFaqById(id);
+ }
+
+}
diff --git a/emis-biz/src/main/resources/mapper/EmisWaybillMapper.xml b/emis-biz/src/main/resources/mapper/EmisWaybillMapper.xml
index f14de9f10..3d6ab1851 100644
--- a/emis-biz/src/main/resources/mapper/EmisWaybillMapper.xml
+++ b/emis-biz/src/main/resources/mapper/EmisWaybillMapper.xml
@@ -816,7 +816,18 @@
update emis_waybill
+ cust_order_id = #{custOrderId},
bill_code_sub = #{billCodeSub},
+ order_type = #{orderType},
+ order_date = #{orderDate},
+ user_id = #{userId},
+ customer_code = #{customerCode},
+ customer_name = #{customerName},
+ receive_customer_code = #{receiveCustomerCode},
+ receive_customer_name = #{receiveCustomerName},
+ third_customer_code = #{thirdCustomerCode},
+ third_customer_name = #{thirdCustomerName},
+ open_id = #{openId},
receive_name = #{receiveName},
receive_company = #{receiveCompany},
receive_mobile = #{receiveMobile},
@@ -848,6 +859,7 @@
product_type = #{productType},
time_type = #{timeType},
meter_type = #{meterType},
+ carry_type = #{carryType},
customs_clear = #{customsClear},
customs_eclaration = #{customsEclaration},
estimate_date = #{estimateDate},
@@ -883,9 +895,15 @@
volume_weight = #{volumeWeight},
currency = #{currency},
settlement_weight = #{settlementWeight},
+ scan_weight = #{scanWeight},
fee_weight = #{feeWeight},
freight = #{freight},
+ real_payment_type = #{realPaymentType},
+ real_fee = #{realFee},
+ bl_special_quote = #{blSpecialQuote},
bl_over_long = #{blOverLong},
+ bl_bill = #{blBill},
+ bl_bill_text = #{blBillText},
bl_over_weight = #{blOverWeight},
over_weight_number = #{overWeightNumber},
fee_remaker = #{feeRemaker},
@@ -899,7 +917,31 @@
insure_remark = #{insureRemark},
insure_site_code = #{insureSiteCode},
insure_date = #{insureDate},
+ bl_print = #{blPrint},
+ print_man_code = #{printManCode},
+ print_site = #{printSite},
+ print_date = #{printDate},
+ print_count = #{printCount},
+ bl_disp_fd = #{blDispFd},
+ transfer_code = #{transferCode},
+ transfer_billcode = #{transferBillcode},
+ disp_fd_date = #{dispFdDate},
+ disp_fd_reason = #{dispFdReason},
+ current_site_code = #{currentSiteCode},
+ next_site_code = #{nextSiteCode},
+ last_site_code = #{lastSiteCode},
+ register_site_code = #{registerSiteCode},
+ register_date = #{registerDate},
+ register_man_code = #{registerManCode},
take_piece_employee_code = #{takePieceEmployeeCode},
+ send_site_code = #{sendSiteCode},
+ send_date = #{sendDate},
+ dispatch_man_code = #{dispatchManCode},
+ dispatch_date = #{dispatchDate},
+ dispatch_site_code = #{dispatchSiteCode},
+ produce_bill_date = #{produceBillDate},
+ produce_bill_site_code = #{produceBillSiteCode},
+ produce_bill_man_code = #{produceBillManCode},
destination_code = #{destinationCode},
destination_province = #{destinationProvince},
destination_city = #{destinationCity},
@@ -910,16 +952,199 @@
payee = #{payee},
salesmen = #{salesmen},
operate_employee_code = #{operateEmployeeCode},
+ bl_is_question = #{blIsQuestion},
+ problem_type = #{problemType},
+ problem_cause = #{problemCause},
+ problem_delay_days = #{problemDelayDays},
bl_message = #{blMessage},
bl_accept_message = #{blAcceptMessage},
+ bl_gen_subbill = #{blGenSubbill},
+ sign_man = #{signMan},
+ sign_man_code = #{signManCode},
+ sign_site_code = #{signSiteCode},
+ sign_date = #{signDate},
+ bill_pic_send_rmk = #{billPicSendRmk},
+ bill_pic_dispatch_rmk = #{billPicDispatchRmk},
+ timezone_offset = #{timezoneOffset},
+ data_from = #{dataFrom},
+ del_flag = #{delFlag},
+ create_by = #{createBy},
+ create_time = #{createTime},
update_by = #{updateBy},
update_time = #{updateTime},
remark = #{remark},
+ create_site = #{createSite},
update_site = #{updateSite},
where id = #{id}
+
+ update emis_waybill
+
+ cust_order_id = #{custOrderId},
+ bill_code_sub = #{billCodeSub},
+ order_type = #{orderType},
+ order_date = #{orderDate},
+ user_id = #{userId},
+ customer_code = #{customerCode},
+ customer_name = #{customerName},
+ receive_customer_code = #{receiveCustomerCode},
+ receive_customer_name = #{receiveCustomerName},
+ third_customer_code = #{thirdCustomerCode},
+ third_customer_name = #{thirdCustomerName},
+ open_id = #{openId},
+ receive_name = #{receiveName},
+ receive_company = #{receiveCompany},
+ receive_mobile = #{receiveMobile},
+ receive_tel = #{receiveTel},
+ receive_country = #{receiveCountry},
+ receive_province = #{receiveProvince},
+ receive_city = #{receiveCity},
+ receive_county = #{receiveCounty},
+ receive_town = #{receiveTown},
+ receive_address = #{receiveAddress},
+ receive_postcode = #{receivePostcode},
+ receive_pcd = #{receivePcd},
+ send_name = #{sendName},
+ send_company = #{sendCompany},
+ send_mobile = #{sendMobile},
+ send_tel = #{sendTel},
+ send_country = #{sendCountry},
+ send_province = #{sendProvince},
+ send_city = #{sendCity},
+ send_county = #{sendCounty},
+ send_town = #{sendTown},
+ send_address = #{sendAddress},
+ send_postcode = #{sendPostcode},
+ send_pcd = #{sendPcd},
+ payment_type = #{paymentType},
+ calc_fee_type = #{calcFeeType},
+ cust_no = #{custNo},
+ trans_line_type = #{transLineType},
+ product_type = #{productType},
+ time_type = #{timeType},
+ meter_type = #{meterType},
+ carry_type = #{carryType},
+ customs_clear = #{customsClear},
+ customs_eclaration = #{customsEclaration},
+ estimate_date = #{estimateDate},
+ pack_type = #{packType},
+ dispatch_method = #{dispatchMethod},
+ pickup_method = #{pickupMethod},
+ pick_start_date = #{pickStartDate},
+ pick_finish_date = #{pickFinishDate},
+ pick_fail_reason = #{pickFailReason},
+ into_warehouse_code = #{intoWarehouseCode},
+ into_warehouse_name = #{intoWarehouseName},
+ into_warehouse_address = #{intoWarehouseAddress},
+ into_warehouse_contact = #{intoWarehouseContact},
+ into_warehouse_phone = #{intoWarehousePhone},
+ into_warehouse_bill_code = #{intoWarehouseBillCode},
+ warehouse_in_no = #{warehouseInNo},
+ customer_delivery_begin_time = #{customerDeliveryBeginTime},
+ customer_delivery_end_time = #{customerDeliveryEndTime},
+ goods_type = #{goodsType},
+ goods_info = #{goodsInfo},
+ goods_pics = #{goodsPics},
+ bl_prepare_in_freight = #{blPrepareInFreight},
+ prepare_in_est_fee = #{prepareInEstFee},
+ prepare_in_real_fee = #{prepareInRealFee},
+ prepare_in_express = #{prepareInExpress},
+ prepare_in_bill_code = #{prepareInBillCode},
+ prepare_in_remark = #{prepareInRemark},
+ prepare_in_supplier = #{prepareInSupplier},
+ total_weight = #{totalWeight},
+ total_volume = #{totalVolume},
+ parcel_qty = #{parcelQty},
+ bill_weight = #{billWeight},
+ volume_weight = #{volumeWeight},
+ currency = #{currency},
+ settlement_weight = #{settlementWeight},
+ scan_weight = #{scanWeight},
+ fee_weight = #{feeWeight},
+ freight = #{freight},
+ real_payment_type = #{realPaymentType},
+ real_fee = #{realFee},
+ bl_special_quote = #{blSpecialQuote},
+ bl_over_long = #{blOverLong},
+ bl_bill = #{blBill},
+ bl_bill_text = #{blBillText},
+ bl_over_weight = #{blOverWeight},
+ over_weight_number = #{overWeightNumber},
+ fee_remaker = #{feeRemaker},
+ third_code = #{thirdCode},
+ real_value = #{realValue},
+ bl_insure = #{blInsure},
+ insure_value = #{insureValue},
+ insure_value_currency = #{insureValueCurrency},
+ insure_fee_currency = #{insureFeeCurrency},
+ insure_fee = #{insureFee},
+ insure_remark = #{insureRemark},
+ insure_site_code = #{insureSiteCode},
+ insure_date = #{insureDate},
+ bl_print = #{blPrint},
+ print_man_code = #{printManCode},
+ print_site = #{printSite},
+ print_date = #{printDate},
+ print_count = #{printCount},
+ bl_disp_fd = #{blDispFd},
+ transfer_code = #{transferCode},
+ transfer_billcode = #{transferBillcode},
+ disp_fd_date = #{dispFdDate},
+ disp_fd_reason = #{dispFdReason},
+ current_site_code = #{currentSiteCode},
+ next_site_code = #{nextSiteCode},
+ last_site_code = #{lastSiteCode},
+ register_site_code = #{registerSiteCode},
+ register_date = #{registerDate},
+ register_man_code = #{registerManCode},
+ take_piece_employee_code = #{takePieceEmployeeCode},
+ send_site_code = #{sendSiteCode},
+ send_date = #{sendDate},
+ dispatch_man_code = #{dispatchManCode},
+ dispatch_date = #{dispatchDate},
+ dispatch_site_code = #{dispatchSiteCode},
+ produce_bill_date = #{produceBillDate},
+ produce_bill_site_code = #{produceBillSiteCode},
+ produce_bill_man_code = #{produceBillManCode},
+ destination_code = #{destinationCode},
+ destination_province = #{destinationProvince},
+ destination_city = #{destinationCity},
+ destination_county = #{destinationCounty},
+ dispatch_underling_site_code = #{dispatchUnderlingSiteCode},
+ destination_center_code = #{destinationCenterCode},
+ market_man_code = #{marketManCode},
+ payee = #{payee},
+ salesmen = #{salesmen},
+ operate_employee_code = #{operateEmployeeCode},
+ bl_is_question = #{blIsQuestion},
+ problem_type = #{problemType},
+ problem_cause = #{problemCause},
+ problem_delay_days = #{problemDelayDays},
+ bl_message = #{blMessage},
+ bl_accept_message = #{blAcceptMessage},
+ bl_gen_subbill = #{blGenSubbill},
+ sign_man = #{signMan},
+ sign_man_code = #{signManCode},
+ sign_site_code = #{signSiteCode},
+ sign_date = #{signDate},
+ bill_pic_send_rmk = #{billPicSendRmk},
+ bill_pic_dispatch_rmk = #{billPicDispatchRmk},
+ timezone_offset = #{timezoneOffset},
+ data_from = #{dataFrom},
+ del_flag = #{delFlag},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ remark = #{remark},
+ create_site = #{createSite},
+ update_site = #{updateSite},
+
+ where bill_code=#{billCode}
+
+
update emis_waybill set bl_print='1',print_man_code=#{printManCode},print_site=#{printSite},print_date=now(),print_count=print_count+1 where bill_code=#{billCode}
diff --git a/emis-biz/src/main/resources/mapper/EmisWaybillProblemFaqMapper.xml b/emis-biz/src/main/resources/mapper/EmisWaybillProblemFaqMapper.xml
new file mode 100644
index 000000000..396b3408a
--- /dev/null
+++ b/emis-biz/src/main/resources/mapper/EmisWaybillProblemFaqMapper.xml
@@ -0,0 +1,131 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, prob_id, bill_code, title, content, status, show_flag, replay_id, del_flag, create_by, create_time, update_by, update_time, remark, create_site, update_site from emis_waybill_problem_faq
+
+
+
+
+
+
+
+ insert into emis_waybill_problem_faq
+
+ id,
+ prob_id,
+ bill_code,
+ title,
+ content,
+ status,
+ show_flag,
+ replay_id,
+ del_flag,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ remark,
+ create_site,
+ update_site,
+
+
+ #{id},
+ #{probId},
+ #{billCode},
+ #{title},
+ #{content},
+ #{status},
+ #{showFlag},
+ #{replayId},
+ #{delFlag},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+ #{remark},
+ #{createSite},
+ #{updateSite},
+
+
+
+
+ update emis_waybill_problem_faq
+
+ prob_id = #{probId},
+ bill_code = #{billCode},
+ title = #{title},
+ content = #{content},
+ status = #{status},
+ show_flag = #{showFlag},
+ replay_id = #{replayId},
+ del_flag = #{delFlag},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ remark = #{remark},
+ create_site = #{createSite},
+ update_site = #{updateSite},
+
+ where id = #{id}
+
+
+
+ delete from emis_waybill_problem_faq where id = #{id}
+
+
+
+ delete from emis_waybill_problem_faq where id in
+
+ #{id}
+
+
+
\ No newline at end of file