Merge remote-tracking branch 'origin/beta' into beta

beta
kk 1 year ago
commit 64997c4f40
  1. 9
      jianshui-admin/src/main/java/com/jianshui/web/controller/sandbox/IndexController.java
  2. 16
      jianshui-admin/src/main/java/com/jianshui/web/controller/system/CompanyserviceController.java
  3. 32
      jianshui-common/src/main/java/com/jianshui/common/constant/RebackType.java
  4. 32
      jianshui-common/src/main/java/com/jianshui/common/constant/ServiceMode.java
  5. 11
      jianshui-common/src/main/java/com/jianshui/common/core/controller/BaseController.java
  6. 7
      jianshui-common/src/main/java/com/jianshui/common/core/domain/entity/Companyservice.java
  7. 4
      jianshui-common/src/main/java/com/jianshui/common/utils/encrypt/InvoiceEncryptUtil.java
  8. 21
      jianshui-invoice/src/main/java/com/jianshui/invoice/domain/BillInfo.java
  9. 68
      jianshui-invoice/src/main/java/com/jianshui/invoice/service/impl/BillInfoServiceImpl.java
  10. 17
      jianshui-system/src/main/java/com/jianshui/system/domain/ServiceManage.java
  11. 15
      jianshui-system/src/main/java/com/jianshui/system/service/impl/ServiceManageServiceImpl.java
  12. 8
      jianshui-system/src/main/resources/mapper/system/CompanyserviceMapper.xml
  13. 1
      jianshui-system/src/main/resources/mapper/system/ServiceManageMapper.xml
  14. 2
      jianshui-ui/src/utils/request.js
  15. 73
      jianshui-ui/src/views/invoice/billinfo/index.vue
  16. 1
      jianshui-ui/src/views/sandbox/encrypt.vue
  17. 2
      jianshui-ui/src/views/system/companyservice/companyservice_detail/list.vue
  18. 13
      jianshui-ui/src/views/system/companyservice/companyservice_prop/list.vue
  19. 37
      jianshui-ui/src/views/system/companyservice/index.vue
  20. 9
      jianshui-ui/src/views/system/manageservices/index.vue

@ -22,7 +22,12 @@ public class IndexController {
public AjaxResult encrypt(@RequestBody JSONObject requestBody) { public AjaxResult encrypt(@RequestBody JSONObject requestBody) {
String key = requestBody.getString("key"); String key = requestBody.getString("key");
String order = requestBody.getString("order"); String order = requestBody.getString("order");
String encryptTest = InvoiceEncryptUtil.encrypt(order, key); try {
return AjaxResult.success("success", encryptTest); String encryptTest = InvoiceEncryptUtil.encrypt(order, key);
return AjaxResult.success("success", encryptTest);
}catch (Exception e){
return AjaxResult.error(e.getMessage());
}
} }
} }

@ -3,7 +3,9 @@ package com.jianshui.web.controller.system;
import java.util.List; import java.util.List;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.jianshui.common.constant.RebackType;
import com.jianshui.common.core.domain.entity.Companyservice; import com.jianshui.common.core.domain.entity.Companyservice;
import org.apache.commons.lang3.StringUtils;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@ -56,6 +58,7 @@ public class CompanyserviceController extends BaseController
public void export(HttpServletResponse response, Companyservice companyservice) public void export(HttpServletResponse response, Companyservice companyservice)
{ {
List<Companyservice> list = companyserviceService.selectCompanyserviceList(companyservice); List<Companyservice> list = companyserviceService.selectCompanyserviceList(companyservice);
list.forEach(e -> e.setRebackType(RebackType.getRebackType(e.getRebackType())));
ExcelUtil<Companyservice> util = new ExcelUtil<Companyservice>(Companyservice.class); ExcelUtil<Companyservice> util = new ExcelUtil<Companyservice>(Companyservice.class);
util.exportExcel(response, list, "销方信息数据"); util.exportExcel(response, list, "销方信息数据");
} }
@ -78,6 +81,12 @@ public class CompanyserviceController extends BaseController
@PostMapping @PostMapping
public AjaxResult add(@RequestBody Companyservice companyservice) public AjaxResult add(@RequestBody Companyservice companyservice)
{ {
if (StringUtils.isBlank(companyservice.getSellertax())){
return toAjax("企业税号不能为空",false);
}
if (StringUtils.isBlank(companyservice.getSellername())){
return toAjax("企业名称不能为空",false);
}
return toAjax(companyserviceService.insertCompanyservice(companyservice)); return toAjax(companyserviceService.insertCompanyservice(companyservice));
} }
@ -89,6 +98,13 @@ public class CompanyserviceController extends BaseController
@PutMapping @PutMapping
public AjaxResult edit(@RequestBody Companyservice companyservice) public AjaxResult edit(@RequestBody Companyservice companyservice)
{ {
if (StringUtils.isBlank(companyservice.getSellertax())){
return toAjax("企业税号不能为空",false);
}
if (StringUtils.isBlank(companyservice.getSellername())){
return toAjax("企业名称不能为空",false);
}
return toAjax(companyserviceService.updateCompanyservice(companyservice)); return toAjax(companyserviceService.updateCompanyservice(companyservice));
} }

@ -0,0 +1,32 @@
package com.jianshui.common.constant;
public enum RebackType {
REBACK_TYPE_1("1", "系统推送"),
REBACK_TYPE_2("2", "SAP推送"),
REBACK_TYPE_3("3", "数据回写");
private String rebackTypeCode;
private String rebackTypeMsg;
RebackType(String rebackTypeCode, String rebackTypeMsg){
this.rebackTypeCode = rebackTypeCode;
this.rebackTypeMsg = rebackTypeMsg;
}
public String getRebackTypeMsg(){
return rebackTypeMsg;
}
public String getrebackTypeCode(){
return rebackTypeCode;
}
public static String getRebackType(String code){
for(RebackType rebackType : RebackType.values()){
if(rebackType.getrebackTypeCode().equals(code)){
return rebackType.getRebackTypeMsg();
}
}
return "未知回调方式";
}
}

@ -0,0 +1,32 @@
package com.jianshui.common.constant;
public enum ServiceMode {
SERVICE_MODE_0("0", "免费"),
SERVICE_MODE_1("1", "预付费"),
SERVICE_MODE_2("2", "定期结算");
private String serviceModeCode;
private String serviceModeMsg;
ServiceMode(String serviceModeCode, String serviceModeMsg){
this.serviceModeCode = serviceModeCode;
this.serviceModeMsg = serviceModeMsg;
}
public String getServiceModeMsg(){
return serviceModeMsg;
}
public String getServiceModeCode(){
return serviceModeCode;
}
public static String getRebackType(String code){
for(ServiceMode rebackType : ServiceMode.values()){
if(rebackType.getServiceModeCode().equals(code)){
return rebackType.getServiceModeMsg();
}
}
return "未知服务模式";
}
}

@ -143,6 +143,17 @@ public class BaseController
return result ? success() : error(); return result ? success() : error();
} }
/**
* 响应返回结果
*
* @param msg 返回信息
* @return 操作结果
*/
protected AjaxResult toAjax(String msg, boolean result)
{
return result ? AjaxResult.success(msg) : AjaxResult.error(msg);
}
/** /**
* 页面跳转 * 页面跳转
*/ */

@ -20,6 +20,7 @@ public class Companyservice {
/** /**
* 企业编号 * 企业编号
*/ */
@Excel(name = "企业编号")
private Long companyid; private Long companyid;
/** /**
@ -99,7 +100,7 @@ public class Companyservice {
* 回写方式 * 回写方式
*/ */
@Excel(name = "回写方式") @Excel(name = "回写方式")
private Long rebackType; private String rebackType;
/** 分机号 */ /** 分机号 */
// @Excel(name = "分机号") // @Excel(name = "分机号")
@ -281,11 +282,11 @@ public class Companyservice {
this.rebackurl = rebackurl; this.rebackurl = rebackurl;
} }
public Long getRebackType() { public String getRebackType() {
return rebackType; return rebackType;
} }
public void setRebackType(Long rebackType) { public void setRebackType(String rebackType) {
this.rebackType = rebackType; this.rebackType = rebackType;
} }

@ -174,6 +174,10 @@ public class InvoiceEncryptUtil {
buf = decoder.decodeBuffer(encryptKey); buf = decoder.decodeBuffer(encryptKey);
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
throw new RuntimeException("加密key处理失败");
}
if (buf != null && buf.length < 16) {
throw new RuntimeException("加密key长度不够");
} }
// 前8位为key // 前8位为key
int i; int i;

@ -159,7 +159,7 @@ public class BillInfo extends BaseEntity
private String tsfs; private String tsfs;
/** 清单标志 */ /** 清单标志 */
@Excel(name = "清单标志") @Excel(name = "清单标志 1清单0非清单")
private String qdbz; private String qdbz;
/** 清单项目名称 */ /** 清单项目名称 */
@ -167,17 +167,20 @@ public class BillInfo extends BaseEntity
private String qdxmmc; private String qdxmmc;
/** 代开标志 */ /** 代开标志 */
@Excel(name = "代开标志") @Excel(name = "代开标志 0 非代开 1 代开")
private String dkbz; private String dkbz;
/** 成品油标志 */ /** 成品油标志 */
@Excel(name = "成品油标志") @Excel(name = "成品油标志 0 非成品油 1 成品油")
private String cpybz; private String cpybz;
/** 开票状态 */ /** 开票状态 */
@Excel(name = "开票状态")
private Integer state; private Integer state;
@Excel(name = "开票状态")
private String billState;
/** 订单来源 */ /** 订单来源 */
@Excel(name = "订单来源") @Excel(name = "订单来源")
private String source; private String source;
@ -1327,10 +1330,20 @@ public class BillInfo extends BaseEntity
this.state = state; this.state = state;
} }
public void setBillState(String billState)
{
this.billState = billState;
}
public Integer getState() public Integer getState()
{ {
return state; return state;
} }
public String getBillState()
{
return billState;
}
public void setSource(String source) public void setSource(String source)
{ {
this.source = source; this.source = source;

@ -1,11 +1,11 @@
package com.jianshui.invoice.service.impl; package com.jianshui.invoice.service.impl;
import java.util.Arrays; import java.util.*;
import java.util.List;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.jianshui.common.core.domain.AjaxResult; import com.jianshui.common.core.domain.AjaxResult;
import com.jianshui.common.core.domain.entity.SysDictData;
import com.jianshui.common.utils.DateUtils; import com.jianshui.common.utils.DateUtils;
import com.jianshui.common.utils.DictUtils; import com.jianshui.common.utils.DictUtils;
import com.jianshui.common.utils.spring.SpringUtils; import com.jianshui.common.utils.spring.SpringUtils;
@ -15,12 +15,11 @@ import com.jianshui.invoice.mapper.InvoiceMapper;
import com.jianshui.queue.consumer.RedisQueueConsumer; import com.jianshui.queue.consumer.RedisQueueConsumer;
import com.jianshui.queue.dto.RedisQueueMessage; import com.jianshui.queue.dto.RedisQueueMessage;
import com.jianshui.queue.utils.RedisQueueUtil; import com.jianshui.queue.utils.RedisQueueUtil;
import com.jianshui.system.service.ISysDictTypeService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import com.jianshui.common.utils.StringUtils; import com.jianshui.common.utils.StringUtils;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.jianshui.invoice.domain.BillDetail; import com.jianshui.invoice.domain.BillDetail;
@ -43,6 +42,9 @@ public class BillInfoServiceImpl implements IBillInfoService {
@Autowired @Autowired
private InvoiceMapper invoiceMapper; private InvoiceMapper invoiceMapper;
@Autowired
private ISysDictTypeService dictTypeService;
/** /**
* 查询开票信息 * 查询开票信息
* *
@ -62,7 +64,63 @@ public class BillInfoServiceImpl implements IBillInfoService {
*/ */
@Override @Override
public List<BillInfo> selectBillInfoList(BillInfo billInfo) { public List<BillInfo> selectBillInfoList(BillInfo billInfo) {
return billInfoMapper.selectBillInfoList(billInfo);
List<BillInfo> billInfos = billInfoMapper.selectBillInfoList(billInfo);
if (CollectionUtil.isNotEmpty(billInfos)) {
Map<String,String> invoiceTypeDictMap = new HashMap<>(); ;
List<SysDictData> invoiceTypeData = dictTypeService.selectDictDataByType("invoice_type");
if (CollectionUtil.isNotEmpty(invoiceTypeData)){
invoiceTypeData.forEach(e->invoiceTypeDictMap.put(e.getDictValue(),e.getDictLabel()));
}
Map<String,String> billTypeDictMap = new HashMap<>(); ;
List<SysDictData> billTypeData = dictTypeService.selectDictDataByType("bill_type");
if (CollectionUtil.isNotEmpty(billTypeData)){
billTypeData.forEach(e->billTypeDictMap.put(e.getDictValue(),e.getDictLabel()));
}
Map<String,String> invocieStatusDictMap = new HashMap<>(); ;
List<SysDictData> invocieStatusData = dictTypeService.selectDictDataByType("invoice_status");
if (CollectionUtil.isNotEmpty(invocieStatusData)){
invocieStatusData.forEach(e->invocieStatusDictMap.put(e.getDictValue(),e.getDictLabel()));
}
Map<String,String> tsfsDictMap = new HashMap<>(); ;
List<SysDictData> tsfsData = dictTypeService.selectDictDataByType("tsfs");
if (CollectionUtil.isNotEmpty(tsfsData)){
tsfsData.forEach(e->tsfsDictMap.put(e.getDictValue(),e.getDictLabel()));
}
Map<String,String> sourceDictMap = new HashMap<>(); ;
List<SysDictData> sourceData = dictTypeService.selectDictDataByType("source");
if (CollectionUtil.isNotEmpty(sourceData)){
sourceData.forEach(e->sourceDictMap.put(e.getDictValue(),e.getDictLabel()));
}
for (BillInfo bill : billInfos) {
bill.setInvoiceType(invoiceTypeDictMap.get(bill.getInvoiceType()));
bill.setBillType(billTypeDictMap.get(bill.getBillType()));
bill.setBillState(invocieStatusDictMap.get(bill.getState()==null?"":bill.getState().toString()));
bill.setTsfs(tsfsDictMap.get(bill.getTsfs()));
bill.setSource(sourceDictMap.get(bill.getSource()));
}
}
return billInfos;
} }
/** /**

@ -21,15 +21,20 @@ public class ServiceManage extends BaseEntity
private Long id; private Long id;
/** 企业ID */ /** 企业ID */
@Excel(name = "企业ID")
private Long companyId; private Long companyId;
/** 服务类型 */ /** 服务类型 */
@Excel(name = "服务类型")
private String serviceKey; private String serviceKey;
/** 服务状态 */ /** 服务状态 */
@Excel(name = "服务状态")
private Integer state; private Integer state;
@Excel(name = "服务状态")
private String serviceState;
/** 请求报文类型 */ /** 请求报文类型 */
@Excel(name = "请求报文类型") @Excel(name = "请求报文类型")
private String requestMessageKey; private String requestMessageKey;
@ -87,10 +92,20 @@ public class ServiceManage extends BaseEntity
this.state = state; this.state = state;
} }
public void setServiceState(String serviceState)
{
this.serviceState = serviceState;
}
public Integer getState() public Integer getState()
{ {
return state; return state;
} }
public String getServiceState()
{
return serviceState;
}
public void setRequestMessageKey(String requestMessageKey) public void setRequestMessageKey(String requestMessageKey)
{ {
this.requestMessageKey = requestMessageKey; this.requestMessageKey = requestMessageKey;

@ -5,6 +5,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
import com.jianshui.common.constant.Constants; import com.jianshui.common.constant.Constants;
import com.jianshui.common.constant.ServiceMode;
import com.jianshui.common.core.domain.AjaxResult; import com.jianshui.common.core.domain.AjaxResult;
import com.jianshui.common.core.redis.RedisCache; import com.jianshui.common.core.redis.RedisCache;
import com.jianshui.common.exception.jianshui.JianshuiNoServiceException; import com.jianshui.common.exception.jianshui.JianshuiNoServiceException;
@ -13,6 +14,7 @@ import com.jianshui.common.exception.jianshui.JianshuiServiceNoSurplusException;
import com.jianshui.common.utils.DateUtils; import com.jianshui.common.utils.DateUtils;
import com.jianshui.common.utils.MessageUtils; import com.jianshui.common.utils.MessageUtils;
import com.jianshui.common.utils.StringUtils; import com.jianshui.common.utils.StringUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.jianshui.system.mapper.ServiceManageMapper; import com.jianshui.system.mapper.ServiceManageMapper;
@ -54,7 +56,18 @@ public class ServiceManageServiceImpl implements IServiceManageService {
*/ */
@Override @Override
public List<ServiceManage> selectServiceManageList(ServiceManage serviceManage) { public List<ServiceManage> selectServiceManageList(ServiceManage serviceManage) {
return serviceManageMapper.selectServiceManageList(serviceManage);
List<ServiceManage> serviceManages = serviceManageMapper.selectServiceManageList(serviceManage);
for (ServiceManage manage : serviceManages) {
if (ObjectUtils.isNotEmpty(manage.getState())){
manage.setServiceState("1".equals(manage.getState().toString())?"已启用":"已停用");
}
if (StringUtils.isNotBlank(manage.getServiceMode())){
manage.setServiceMode(ServiceMode.getRebackType(manage.getServiceMode()));
}
}
return serviceManages;
} }
/** /**

@ -66,7 +66,7 @@
<if test="sellertax != null and sellertax != ''">and sellertax = #{sellertax}</if> <if test="sellertax != null and sellertax != ''">and sellertax = #{sellertax}</if>
<if test="sellername != null and sellername != ''">and sellername like concat('%', #{sellername}, '%')</if> <if test="sellername != null and sellername != ''">and sellername like concat('%', #{sellername}, '%')</if>
<if test="phone != null and phone != ''">and phone = #{phone}</if> <if test="phone != null and phone != ''">and phone = #{phone}</if>
<if test="rebackType != null ">and reback_type = #{rebackType}</if> <if test="rebackType != null and rebackType != ''">and reback_type = #{rebackType}</if>
</where> </where>
</select> </select>
@ -106,7 +106,7 @@
<if test="identity != null">identity,</if> <if test="identity != null">identity,</if>
<if test="rebackurl != null">rebackurl,</if> <if test="rebackurl != null">rebackurl,</if>
<if test="rebackType != null">reback_type,</if> <if test="rebackType != null and rebackType != ''">reback_type,</if>
<if test="createTime != null">createtime,</if> <if test="createTime != null">createtime,</if>
<if test="createUser != null">create_user,</if> <if test="createUser != null">create_user,</if>
@ -125,7 +125,7 @@
<if test="identity != null">#{identity},</if> <if test="identity != null">#{identity},</if>
<if test="rebackurl != null">#{rebackurl},</if> <if test="rebackurl != null">#{rebackurl},</if>
<if test="rebackType != null">#{rebackType},</if> <if test="rebackType != null and rebackType != ''">#{rebackType},</if>
<if test="createTime != null">#{createTime},</if> <if test="createTime != null">#{createTime},</if>
<if test="createUser != null">#{createUser},</if> <if test="createUser != null">#{createUser},</if>
@ -149,7 +149,7 @@
<if test="rebackurl != null">rebackurl = #{rebackurl},</if> <if test="rebackurl != null">rebackurl = #{rebackurl},</if>
<if test="rebackType != null">reback_type = #{rebackType},</if> <if test="rebackType != null and rebackType != ''">reback_type = #{rebackType},</if>
<if test="createTime != null">createtime = #{createTime},</if> <if test="createTime != null">createtime = #{createTime},</if>

@ -42,6 +42,7 @@
<select id="selectServiceManageList" parameterType="ServiceManage" resultMap="ServiceManageResult"> <select id="selectServiceManageList" parameterType="ServiceManage" resultMap="ServiceManageResult">
<include refid="selectServiceManageVo"/> <include refid="selectServiceManageVo"/>
<where> <where>
<if test="companyId != null and companyId != '' ">and company_id = #{companyId}</if>
<if test="state != null ">and state = #{state}</if> <if test="state != null ">and state = #{state}</if>
<if test="requestMessageKey != null and requestMessageKey != ''">and request_message_key = <if test="requestMessageKey != null and requestMessageKey != ''">and request_message_key =
#{requestMessageKey} #{requestMessageKey}

@ -14,7 +14,7 @@ const service = axios.create({
// axios中请求配置有baseURL选项,表示请求URL公共部分 // axios中请求配置有baseURL选项,表示请求URL公共部分
baseURL: process.env.VUE_APP_BASE_API, baseURL: process.env.VUE_APP_BASE_API,
// 超时 // 超时
timeout: 10000 timeout: 1000 * 60 * 2
}) })
// request拦截器 // request拦截器

@ -30,33 +30,49 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item label="本系统订单号" prop="systemOrderno" v-show="showMore">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
<el-button type="text" @click="showMore = !showMore">
{{ showMore === false ? "展开" : "隐藏" }}
<i :class="[showMore === false ? 'el-icon-arrow-down' : 'el-icon-arrow-up']"></i>
</el-button>
</el-row>
<el-row v-show="showMore">
<el-form-item label="本系统订单号" prop="systemOrderno">
<el-input v-model="queryParams.systemOrderno" placeholder="请输入本系统订单号" clearable size="small" <el-input v-model="queryParams.systemOrderno" placeholder="请输入本系统订单号" clearable size="small"
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="客户系统订单号" prop="outTradeOrderno"> <el-form-item label="客户系统订单号" prop="outTradeOrderno" v-show="showMore">
<el-input v-model="queryParams.outTradeOrderno" placeholder="请输入客户系统订单号" clearable size="small" <el-input v-model="queryParams.outTradeOrderno" placeholder="请输入客户系统订单号" clearable size="small"
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="流水号" prop="fpqqlsh"> <el-form-item label="流水号" prop="fpqqlsh" v-show="showMore">
<el-input v-model="queryParams.fpqqlsh" placeholder="请输入流水号" clearable size="small" <el-input v-model="queryParams.fpqqlsh" placeholder="请输入流水号" clearable size="small"
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="购方税号" prop="buyerTaxnum"> <el-form-item label="购方税号" prop="buyerTaxnum" v-show="showMore">
<el-input v-model="queryParams.buyerTaxnum" placeholder="请输入购方税号" clearable size="small" <el-input v-model="queryParams.buyerTaxnum" placeholder="请输入购方税号" clearable size="small"
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
<el-button type="text" @click="showMore = !showMore">
{{ showMore === false ? "展开" : "隐藏" }}
<i :class="[showMore === false ? 'el-icon-arrow-down' : 'el-icon-arrow-up']"></i>
</el-button>
</el-row> </el-row>
<!-- <el-row v-show="showMore">-->
<!-- <el-form-item label="本系统订单号" prop="systemOrderno">-->
<!-- <el-input v-model="queryParams.systemOrderno" placeholder="请输入本系统订单号" clearable size="small"-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="客户系统订单号" prop="outTradeOrderno">-->
<!-- <el-input v-model="queryParams.outTradeOrderno" placeholder="请输入客户系统订单号" clearable size="small"-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="流水号" prop="fpqqlsh">-->
<!-- <el-input v-model="queryParams.fpqqlsh" placeholder="请输入流水号" clearable size="small"-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="购方税号" prop="buyerTaxnum">-->
<!-- <el-input v-model="queryParams.buyerTaxnum" placeholder="请输入购方税号" clearable size="small"-->
<!-- @keyup.enter.native="handleQuery"/>-->
<!-- </el-form-item>-->
<!-- </el-row>-->
<!-- <el-form-item label="购方地址" prop="buyerAddress"> <!-- <el-form-item label="购方地址" prop="buyerAddress">
<el-input <el-input
@ -456,7 +472,7 @@
@pagination="getList"/> @pagination="getList"/>
<!-- 添加或修改开票信息对话框 --> <!-- 添加或修改开票信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="销方ID" prop="companyId"> <el-form-item label="销方ID" prop="companyId">
<el-input v-model="form.companyId" placeholder="请输入销方ID"/> <el-input v-model="form.companyId" placeholder="请输入销方ID"/>
@ -788,6 +804,33 @@ export default {
form: {}, form: {},
// //
rules: { rules: {
companyId: [
{required: true, message: "销方id不能为空", trigger: "blur"}
],
systemOrderno: [
{required: true, message: "本系统订单号不能为空", trigger: "blur"}
],
outTradeOrderno: [
{required: true, message: "客户系统订单号不能为空", trigger: "blur"}
],
fpqqlsh: [
{required: true, message: "请求流水号不能为空", trigger: "blur"}
],
buyerName: [
{required: true, message: "购方名称不能为空", trigger: "blur"}
],
sellerName: [
{required: true, message: "销方名称不能为空", trigger: "blur"}
],
sellerTaxnum: [
{required: true, message: "销方税号不能为空", trigger: "blur"}
],
clerk: [
{required: true, message: "开票人不能为空", trigger: "blur"}
],
source: [
{required: true, message: "订单来源不能为空", trigger: "blur"}
],
state: [ state: [
{required: true, message: "开票状态不能为空", trigger: "blur"} {required: true, message: "开票状态不能为空", trigger: "blur"}
], ],

@ -33,6 +33,7 @@ export default {
}, },
methods: { methods: {
onSubmit() { onSubmit() {
this.requestBody.resp = ""
encrypt(this.requestBody).then(res => { encrypt(this.requestBody).then(res => {
if (res.code == 200) { if (res.code == 200) {
this.requestBody.resp = res.data this.requestBody.resp = res.data

@ -66,7 +66,7 @@
@pagination="getList"/> @pagination="getList"/>
<!-- 添加或修改销方详情对话框 --> <!-- 添加或修改销方详情对话框 -->
<el-dialog :title="title" :visible.sync="open" width="750px" append-to-body> <el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="750px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px"> <el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="是否为默认" prop="isDefault"> <el-form-item label="是否为默认" prop="isDefault">
<el-select v-model="form.isDefault" placeholder="请选择是否为默认"> <el-select v-model="form.isDefault" placeholder="请选择是否为默认">

@ -112,7 +112,7 @@
<el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="属性" prop="key"> <el-form-item label="属性" prop="key">
<el-input v-model="form.key" placeholder="请输入属性"/> <el-input v-model="form.key" :readonly="readOnly" placeholder="请输入属性"/>
</el-form-item> </el-form-item>
<el-form-item label="值" prop="value"> <el-form-item label="值" prop="value">
<el-input v-model="form.value" type="textarea" placeholder="请输入内容"/> <el-input v-model="form.value" type="textarea" placeholder="请输入内容"/>
@ -157,6 +157,10 @@ export default {
title: '', title: '',
// //
open: false, open: false,
//
updateFlag: false,
//
readOnly : false,
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
@ -198,6 +202,7 @@ export default {
cancel() { cancel() {
this.open = false this.open = false
this.reset() this.reset()
this.readOnly = false
}, },
// //
reset() { reset() {
@ -230,13 +235,17 @@ export default {
handleAdd() { handleAdd() {
this.reset() this.reset()
this.open = true this.open = true
this.updateFlag = false
this.title = '添加企业扩展属性,包括大象key等' this.title = '添加企业扩展属性,包括大象key等'
this.readOnly = false
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset() this.reset()
this.form = row this.form = row
this.open = true this.open = true
this.updateFlag = true
this.readOnly = true
this.title = '修改企业扩展属性,包括大象key等' this.title = '修改企业扩展属性,包括大象key等'
// const companyid = row.companyid // const companyid = row.companyid
// const key = row.key // const key = row.key
@ -251,7 +260,7 @@ export default {
this.$refs['form'].validate(valid => { this.$refs['form'].validate(valid => {
this.form.companyid = this.companyId this.form.companyid = this.companyId
if (valid) { if (valid) {
if (this.form.key != null) { if (this.updateFlag) {
updateProp(this.form).then(response => { updateProp(this.form).then(response => {
this.$modal.msgSuccess('修改成功') this.$modal.msgSuccess('修改成功')
this.open = false this.open = false

@ -15,6 +15,12 @@
<el-input v-model="queryParams.phone" placeholder="请输入企业联系电话" clearable size="small" <el-input v-model="queryParams.phone" placeholder="请输入企业联系电话" clearable size="small"
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="回写方式" prop="rebackType" v-show="showMore">
<el-select v-model="queryParams.rebackType" placeholder="请选择回写方式" clearable size="small">
<el-option v-for="dict in dict.type.invoice_reback_type" :key="dict.value" :label="dict.label"
:value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -25,16 +31,16 @@
</el-button> </el-button>
</el-col> </el-col>
</el-row> </el-row>
<el-row v-show="showMore"> <!-- <el-row v-show="showMore">-->
<el-col> <!-- <el-col>-->
<el-form-item label="回写方式" prop="rebackType"> <!-- <el-form-item label="回写方式" prop="rebackType">-->
<el-select v-model="queryParams.rebackType" placeholder="请选择回写方式" clearable size="small"> <!-- <el-select v-model="queryParams.rebackType" placeholder="请选择回写方式" clearable size="small">-->
<el-option v-for="dict in dict.type.invoice_reback_type" :key="dict.value" :label="dict.label" <!-- <el-option v-for="dict in dict.type.invoice_reback_type" :key="dict.value" :label="dict.label"-->
:value="dict.value"/> <!-- :value="dict.value"/>-->
</el-select> <!-- </el-select>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
</el-row> <!-- </el-row>-->
</el-form> </el-form>
@ -94,7 +100,7 @@
@pagination="getList"/> @pagination="getList"/>
<!-- 添加或修改销方信息对话框 --> <!-- 添加或修改销方信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> <el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="50%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="企业税号" prop="sellertax"> <el-form-item label="企业税号" prop="sellertax">
<el-input v-model="form.sellertax" placeholder="请输入企业税号"/> <el-input v-model="form.sellertax" placeholder="请输入企业税号"/>
@ -203,7 +209,14 @@ export default {
// //
form: {}, form: {},
// //
rules: {} rules: {
sellertax: [
{ required: true, message: "属性不能为空", trigger: "blur" }
],
sellername: [
{ required: true, message: "值不能为空", trigger: "blur" }
]
}
}; };
}, },
created() { created() {

@ -1,6 +1,10 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px"> <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="企业ID" prop="companyId">
<el-input v-model="queryParams.companyId" placeholder="请输入企业税号" clearable size="small"
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="服务状态" prop="state"> <el-form-item label="服务状态" prop="state">
<el-select v-model="queryParams.state" placeholder="请选择服务状态" clearable size="small"> <el-select v-model="queryParams.state" placeholder="请选择服务状态" clearable size="small">
<el-option <el-option
@ -193,7 +197,7 @@
/> />
<!-- 添加或修改服务管理对话框 --> <!-- 添加或修改服务管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="50%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="选择销方"> <el-form-item label="选择销方">
<el-row> <el-row>
@ -336,7 +340,8 @@ export default {
serviceMode: null, serviceMode: null,
serviceSupplierKey: null, serviceSupplierKey: null,
expireTime: null, expireTime: null,
surplus: null surplus: null,
companyId: null
}, },
// //
form: {}, form: {},

Loading…
Cancel
Save